llvm - 写一个传递,检查文件中是否存在函数

时间:2018-02-25 12:20:24

标签: llvm llvm-clang llvm-gcc llvm-c++-api

我想在这里实现的目标很简单。我需要我的传递来遍历文件中的函数(因此,FunctionPass)并检查其中一个是否是我正在寻找的那个。我想以干净,简单的方式实现这一目标。

到目前为止,我正在从我正在运行传递的文件中的函数中提取以下信息:

  • 名称
  • 返回类型
  • 数字+参数类型

我已经有了我正在寻找的功能的这个信息,我已经考虑过将这些信息与提取的信息进行比较,看看是否有匹配。

但有更好的方法吗?

1 个答案:

答案 0 :(得分:1)

如果您在modulePass中拥有该功能的名称,则可以尝试Module->getFunction(StringRef name) 见:llvm::Module Class Reference