LLVM如何在任何其他代码之前执行模块中的代码

LLVM如何在任何其他代码之前执行模块中的代码,llvm,Llvm,我想在模块中的任何其他代码之前插入一些执行的代码 我考虑在主函数的开头调用代码。但是并不总是有一个main函数,或者它并不总是被命名为“main”。或者它是一个库,甚至没有主功能 还有其他更聪明的方法吗?您可以将希望尽早运行的代码放入函数中,然后将该函数添加到函数中。这相当于在C或C++中使用。 要从pass执行此操作,您可以使用函数,该函数在llvm/Transforms/Utils/ModuleUtils.h中声明。您可以将要提前运行的代码放入函数中,并将该函数添加到其中。这相当于在C或C+

我想在模块中的任何其他代码之前插入一些执行的代码

我考虑在主函数的开头调用代码。但是并不总是有一个main函数,或者它并不总是被命名为“main”。或者它是一个库,甚至没有主功能


还有其他更聪明的方法吗?

您可以将希望尽早运行的代码放入函数中,然后将该函数添加到函数中。这相当于在C或C++中使用。
要从pass执行此操作,您可以使用函数,该函数在
llvm/Transforms/Utils/ModuleUtils.h

中声明。您可以将要提前运行的代码放入函数中,并将该函数添加到其中。这相当于在C或C++中使用。
要从pass执行此操作,可以使用函数,该函数在
llvm/Transforms/Utils/ModuleUtils.h

@IsmailBadawi中声明,这似乎是一个很好的答案。你知道我如何从编译器传递中附加到这个变量吗?@IsmailBadawi这似乎是个好答案。你知道我如何从编译过程中附加到这个变量吗?