本文由作者主观理解,只供参考:
LLVM中的IR代码是可以由前端的工具(如Clang)生成的,所以这里以此为起点进行解释。
从LLVM IR开始要经历的阶段有:
LLVM IR----1--->SelectionDAG----2-->MachineDAG----3--->MachineInstr---4--->MCInst
官方文档中Target-independent code generation algorithms 小节的解释应该是包括了上面流程的1、2、3步。该小节中说在这一串的操作中还分了8个小步骤。
Build initial DAG 这一步后就把IR转成了SelectionDAG