从其他模块导入功能

时间:2013-05-18 23:12:03

标签: c++ llvm

假设模块f_a中的函数m_a调用模块f_b中的另一个函数m_b。这是模块m_a的唯一引用。现在,我想使模块m_a自包含,即消除对其他模块的引用。但是,模块m_b的大小非常大。 (在这种情况下,它包含快速/准确和单/双实现中的所有数学函数)。有没有办法只使用LLVM C ++ API将函数f_b添加到模块m_a?或者我是否必须使用链接器API并将整个模块m_b合并到m_a

2 个答案:

答案 0 :(得分:1)

使用文本编辑器并将功能切换到目标模块。如果链接整个m_b,链接器应该仍然能够检测到它的大部分未被使用,并在创建最终可执行文件时丢弃它们。你想要解决的问题究竟是什么?

答案 1 :(得分:1)

一般来说,您需要链接器,模块b中的函数可以使用仅在那里声明的变量和其他函数,您应该检查代码以便能够为通用函数执行此操作。链接器将是适用于所有情况的解决方案。

相关问题