11
我正在用LLVM编写一个编译器。每个源文件都被编译成一个LLVM位码文件。最终链接器将所有位代码文件链接并优化为一个最终的二进制文件。是否有可能将LLVM位代码文件读入到llvm :: Module中?
我需要一种方法来读取编译器中的位码文件以访问类型信息。 LLVM文档显示名为BitcodeReader
的类,但似乎是LLVM的内部。
有没有公开的方法可以将位代码文件读入llvm::Module
?
我正在用LLVM编写一个编译器。每个源文件都被编译成一个LLVM位码文件。最终链接器将所有位代码文件链接并优化为一个最终的二进制文件。是否有可能将LLVM位代码文件读入到llvm :: Module中?
我需要一种方法来读取编译器中的位码文件以访问类型信息。 LLVM文档显示名为BitcodeReader
的类,但似乎是LLVM的内部。
有没有公开的方法可以将位代码文件读入llvm::Module
?
我通过源看向llvm-dis
工具,并发现我一直在寻找的功能:
Module *ParseBitcodeFile(MemoryBuffer *Buffer, LLVMContext& Context,
std::string *ErrMsg = 0);
从llvm/Bitcode/ReaderWriter.h
。
这正是你需要的。 – 2010-09-04 11:49:40
根据我在LLVM方面的经验,我对LLVM的内部代码有印象:没有其他东西可以读取位码文件。 – Dummy00001 2010-08-29 22:47:58