小编Kun*_*Lee的帖子

如何将IR保存到文件并将其构建为可执行文件?

现在我使用clang将我的.c文件构建到.s文件中.而且我已经使用llvm API修改了IR.但是,现在我无法将修改后的IR保存到文件中.我想使用"LLVMWriteBitcodeToFile",但我找不到"LLVMOpaqueModule"的结构; 我想使用"WriteBitcodeToFile",它总是显示"类型不匹配".我还想知道如何将IR文件构建到可执行文件.

接下来是我用来保存模块的两种方法:

1,首先使用WriteBitcodeToFile

bool unbuffered = false; 
llvm::raw_ostream ro(unbuffered); 
WriteBitcodeToFile(m, ro); 
Run Code Online (Sandbox Code Playgroud)

2,二次使用LLVMWriteBitcodeToFile

const char *Path = "hello2.s"; 
int ans = LLVMWriteBitcodeToFile(m, Path); 
Run Code Online (Sandbox Code Playgroud)

注意:m是Module实例的一个点

build llvm llvm-ir

7
推荐指数
1
解决办法
5926
查看次数

标签 统计

build ×1

llvm ×1

llvm-ir ×1