将.rdata和.data部分合并到文本部分

时间:2014-05-16 23:40:04

标签: c++ visual-studio llvm

我有一个程序,我在运行时执行C ++代码,就像在JIT中一样。程序运行时,动态创建C ++代码,使用LLVM转换为LLVM IR和obj。然后它加载文本部分并运行它。当只有一个文本部分时,程序运行正常。当有.data / .rdata部分时,我想知道如何运行它。当可以将.rdata合并到.text时,Visual Studio链接器具有/ MERGE。我如何实现这一点 - 以便我可以将obj中的部分合并到一个文本部分?

1 个答案:

答案 0 :(得分:0)

您可以在Visual Studio中使用/MERGE选项。

  

/ MERGE选项将第一部分(from)与第二部分(to)组合在一起,将结果部分命名为。例如,/ merge:.rdata =。text。   如果第二部分不存在,LINK将重命名该部分。   / MERGE选项对于创建VxD和覆盖编译器生成的节名称非常有用。

https://msdn.microsoft.com/en-us/library/wxz26dz2.aspx