2

我在使用 gcc 编译的程序中使用 LLVM C++ API,并且我还在同一进程中使用“ExecutionEngine”JIT。我正在使用 boost::fusion 自动将 C++ 结构提升到这个 JIT 中,并且我注意到当我以这种方式生成结构定义时,LLVM 计算的结构字段的偏移量与 gcc 不同。

有谁知道我必须做些什么才能让 LLVM 的决心与 gcc 的“一致”?我将“不透明”类转换为 LLVM 结构定义中的字节数组是否是一个问题(例如:如果结构具有 std::string 我将其转换为长度为 sizeof(std::string) 的字节数组)?

4

0 回答 0