编辑文件后是否需要完全重建LLVM?

时间:2019-06-17 18:50:25

标签: llvm llvm-clang llvm-ir

我正在调整LLVM文件,并在构建导向器中执行“ make”操作,以使用调整后的文件重建LLVM,即使我所做的更改很小,这仍需要一段时间(我知道我的一个文件会影响其他文件)。我是否必须使用'cmake --build'。在生成目录中生成一个新的make文件,或者仅调用“ make”是正确的。重建需要一段时间吗?

2 个答案:

答案 0 :(得分:2)

我认为,大多数时间都花在重新链接二进制文件上,其中LLVM有很多(optllc等)。一种加快构建速度的选项是启用LLVM_BUILD_LLVM_DYLIBLLVM_LINK_LLVM_DYLIB,如果您主要使用{{1},则另一种方法是发出make opt而不是make }。

这些选项将使构建系统生成包含所有LLVM组件(LLVMSupport,LLVMCodegen等)的单个巨型动态库(.so或.dll),并使工具链接到该库。链接到动态库要快得多,因为您不需要为每个工具可执行文件重新链接所有静态代码。

答案 1 :(得分:1)

例如,如果您只是修改一个后端目标,那么它足以在tools / llc目录中发布 make 。这样,只有所需的工具将被重新链接,从而加快了构建过程。