llvm-ir 相关问题

LLVM中间表示

LLVM通证不执行单静态赋值。

我使用的是预制的LLVM 6.0,当我执行llvm pass -mem2reg来生成SSA时,IR代码保持原样,没有被改变。但是当我使用预制的LLVM 3.8做同样的事情时,llvm ...

回答 1 投票 0

将LLVM传递给特定的基本块

是否可以将LLVM转换过程应用于特定的基本块,而不是整个IR?我知道如何对整个IR应用通行证:$ opt –S –instcombine test.ll –o out.ll但是...

回答 1 投票 0

鉴于LLVM IR,我们可以生成Clang AST吗?

这个问题纯粹是从研究的角度来看,现在我没有考虑它的任何实际方面。就像我们的反编译器可以接收二进制代码并生成LLVM IR一样,...

回答 1 投票 0

发出IR的段错误,用于`printf`调用

我希望使用系统printf能够从我正在为其编写编译器的编程语言中打印单个整数,如print(3)所示。执行...

回答 1 投票 0

运行LLVM opt hotcoldsplit问题

热冷分裂是LLVM中代码优化的有效方法。内置的LLVM传递位于:/llvm/lib/Transforms/IPO/HotColdSplitting.cpp实际上,我想将此传递用于...

回答 1 投票 0

malloc或_Znwm,我们应该在LLVM IR系统中使用

虽然在LLVM中申请堆中的内存,我们可以使用malloc,但是IR clang ++编译的c ++代码使用_Znwm(_ZdlPv而不是free)。为什么?我们应该选择哪一个呢?源代码:类...

回答 1 投票 0

是否有任何api可以通过llvm Transformation Pass初始化我的自定义类对象?如果不是,实现此目标的最佳策略是什么?

我正在实现llvm转换过程。在某种程度上,我需要初始化我的自定义类对象并调用其方法。举例来说:Foo * foo = new Foo(3); foo -...

回答 1 投票 3

llc引发错误:constexpr需要整数操作数

我一直在尝试使用llvm进行代码生成。我目前正在尝试为变量声明生成IR。这是一个示例:let sum:float = 8 * 3 * 4 + 6 * 9;当我生成IR时...

回答 1 投票 0

了解LLVM IR链接类型内部吗?

LLVM IR链接类型介绍了内部的链接类型,但是我不理解STB_LOCAL和ELF词。此链接类型提取的内容是什么?和private和...

回答 1 投票 0

操作系统和体系结构之间的FILE结构是否一致?

对于以下C代码片段,LLVM将在下面生成IR。 #include #include int main(){printf(“ Hello world \ n”); fflush(NULL);返回0; }; ... ] >>

回答 2 投票 1

无法将自定义生成的LLVM IR与Clang生成的IR链接

我一直在尝试将llvm C ++ api生成的IR与Clang ++生成的另一个IR文件进行链接。 Clang的输入文件是我要从第一个IR文件调用的函数。但是llvm-link ...

回答 1 投票 0

在编译LLVM IR时使用LLVM标头

我正在尝试将C代码片段编译为LLVM IR。我需要#include适当的LLVM头文件,例如Module.h(#include“ llvm / Module.h”)。对于编译,我使用:c ++ -g prog.cpp llvm-config -...

回答 1 投票 1

如何在LLVM中提取Icmp inst或binaryOperator Inst的目标位置?

现在,我想获得一个Icmp Inst的目标位置,例如,如果我得到一个Icmp Inst,例如:%cmp = icmp sgt i32%0,1我如何获得目标位置'%cmp'?对于BinaryOperator ...

回答 1 投票 0

LLVM克隆函数传递到其他模块

我正在创建LLVM传递,并以opt作为库加载,它从硬编码模块获取功能,并将其功能克隆到输入模块。布尔MyPass :: runOnModule(llvm :: Module&M){...

回答 1 投票 0

Writing LLVM int / string input

我正在尝试从AST生成llvm-ir。为了显示我添加的整数输出,常量* CalleeF = TheModule-> getOrInsertFunction(“ printf”,FunctionType :: get(IntegerType :: getInt32Ty(Context),...

回答 1 投票 3

在运行时使用LLVM-IR段错误生成的代码

我正在编写一个玩具编译器,并且使用llvm 10作为它的后端。我想要拥有的功能之一是链表类型,就像函数式编程一样。 IR I供应...

回答 1 投票 0

LLVM循环简化遍历

我可能会误解LLVM和传递如何工作的一些基本概念,无论如何,这是我的问题:我目前正在通过传递runOnModule(https://llvm.org/doxygen / ...]的传递。 >

回答 1 投票 0

LLVM-如何将参数传递给函数调用|错误:调用签名错误的函数

void print(char * s){printf(“%s \ n”,s);我想在llvm传递中插入对上述函数的调用。这是我的llvm密码:Function * printFunc = M.getFunction(“ print”); ...

回答 1 投票 0

如何从LLVM IR的指令元数据中提取操作数?

我正在尝试提取LLVM IR中的if指令中正在使用的操作数。例如:对于类似if(x == 10)的指令,我希望x和10作为输出。这不是应该怎么做:如果...

回答 1 投票 3

llvm llc命令无法识别

我正在尝试编译以下llvm ir代码:define i32 @main()#0 {ret i32 42}上面的代码存储在一个名为main.ll的文件中,然后,在其中运行“ llc main.ll”命令提示符,但我...

回答 1 投票 1

© www.soinside.com 2019 - 2024. All rights reserved.