在LLVM中是否存在MachineFunction CFG和IR Function CFG的一对一映射?

时间:2018-05-06 21:23:27

标签: compiler-construction llvm llvm-ir codegen control-flow-graph

您可以在LLVM IR Function级别和CodeGen MachineFunction级别拥有CFG。这是一对一的映射吗?我的意思是,那些具有相似控制流的CFG中有(Machine)BasicBlock个相同的数量吗?我知道指令的数量可能因显而易见的原因而有所不同,但我很想知道结构是否保持不变。

1 个答案:

答案 0 :(得分:0)

  

这是一对一的映射吗?我的意思是,有相同数量的   (机器)那些具有类似控制流的CFG中的BasicBlocks?

否则在Basic块级别没有一对一的映射。其中一个原因是没有确切的替代" PHI"节点可能。生成' SELECT'和' SELECT_CC'节点重新构造机器基本块表示。