标记编译器构造应该应用于有关编译器编程的问题或有关编译器详细内部工作的问题。请勿使用*使用*特定编译器或编译错误的问题。
我已经编写了自己的编程语言和自托管编译器。我目前正在为编译器后端创建 ide,并且正在努力使编译器能够与 t...
在出于学习目的编写 C++ 解析器时,我有一个问题。 整数a,b; 模板 T Foo() {} int main() { 布尔 x = a < b; auto y = Foo(); } 在这里,<
我写了一个BPF目标文件,其中包括一个部分和一个静态内联函数,其定义如下: 静态内联 __attribute__((always_inline)) bpf_call_func(...); __节(“条目”)
我很难理解编译器如何处理超过 2 个节点的情况。 例如,假设我有一个程序,其中包含 3 个已定义的函数。该程序是我们的根节点和 3
我需要为 Itanium 编译代码,但似乎所有编译器(ecc、gcc、orc)都需要 Itanium 机器才能执行此操作。有什么建议吗?
所以这个问题可能看起来太新手了,但我已经在读 Steven Muchnick 的《高级编译器设计和实现》一书,在优化的第一章中它谈到了......
我需要将上下文无关文法 G 转换为 LL(1) 类型的等效文法,但我无法满足该文法属于 LL(1) 的条件。我已经进行了左分解并且
如何获取使用 Module::declare_data 声明的全局变量的地址? 我知道我可以使用 Module::declare_data_in_func 创建某种引用,但我可以使用的唯一方法......
使用 Cranelift 编译某些内容时是否有可能发出 ASM?我所说的“ASM”是指汇编器文本表示,例如Intel 语法或类似语法 现在我正在计划
在具有多个功能的模块中,我想知道特定内置通道修改了哪些功能而不对其进行检测。例如,我可以区分原始模块和修改后的模块...
编写一个编译器来确定以下输入字符串是否满足给定的 CFG (1) "(i+i)i$" (2) "(i)$" 我的项目已构建,但抛出异常 例外
我或多或少对编译器如何将 AST 转换为机器代码感到困惑。我的假设是一些编译器遍历树并用相应的汇编指令替换每个节点......
我最近一直在学习编译器,更具体地说是 Ocaml 编译器,我想知道编译器如何实际确定字符串匹配哪个正则表达式。它是否为每个re构建一个DFA...
我想快速计算 10(是的,只有 10)的 n[0..308] 次方。我想出了一些方法。 1) 双 f(int n) { 返回战俘(10.0,n); } 双 f1(int n) { 双a = 10.0; 双分辨率 = 1.0;
我正在用 C++ 编写一个应用程序,我想使用 SIMD 的内在函数。 现在我想为不同的架构(如 SSE、AVX2 和 AVX512)编写单独的代码。 我可以在运行时检查哪个硬件...
编译错误 - ICE80:64BitComponent ...使用 32BitDirectory
以下行 生成以下错误: 错误 4 ICE80:此 64BitComponent GlobalScopePackages 使用 32BitDirectory bla...
在链接器还没有链接目标文件和库文件之前,编译器如何知道预定义函数的定义?
我们知道预定义函数的定义在库文件中,链接器的工作是将库代码(已编译)链接到我们的目标文件(已创建...
我想要一个编译器,以便它能够自行编译。如您所知,自编译是“PC”的一项关键能力。 Arm板上运行着ubuntu,所以如果有办法可以看到...
我正在 VLIW 架构的下游编译器中实现 llvm-mc。在对包进行编码之前,我需要检查该包中的指令顺序是否正确。要检查此订单,我需要...
我想解析我的输入 rust 文件并获取其 AST 根作为输出。 rust 中的 syn crate 专门做到了这一点,但问题是它的返回类型是一个 File 结构,其值为 shebang ,