" ModulePassManagers"," FunctionPassManager"之间的区别是什么?和#34; BasicBlockPassManagers"在LLVM中?

时间:2018-05-09 16:15:12

标签: llvm llvm-c++-api

" ModulePassManagers"," FunctionPassManager"之间的区别是什么?和#34; BasicBlockPassManagers"在LLVM?

而且," FunctionPassManager"只能用于"功能"输入LLVM-IR?

1 个答案:

答案 0 :(得分:1)

LLVM IR细分为不同的单位。 LLVM IR的不同单位如下

  • 模块
  • 功能
  • 基本块
  • 说明

模块由功能组成,这些功能又由包含一系列指令的不同基本块组成。不同的通行证经理在LLVM-IR上的不同层面上运作。例如,它们之间的区别在于它们的抽象级别。

一些有用的链接更详细地讨论了这个问题。

Passes in LLVM

About the LLVM pass manager