我希望从现有的 LLVM IR 代码创建一个 LLVM 模块。
我发现的两种方法如下:
ParseIRFile- 这接受文件名并生成模块ParseIR - 这接受 MemoryBuffer 并生成一个模块当 LLVM IR 已作为std::stringor读取到字符串时,我想创建一个模块const char *。
有没有办法将 IR 字符串转换为llvm::MemoryBuffer?
我在一位同事的帮助下解决了这个问题。
您将这样做:
std::string IRString = readfile("add.ll");
MemoryBuffer *mem = MemoryBuffer::getMemBuffer(IRString);
Run Code Online (Sandbox Code Playgroud)