Chapter 6. Target-independent Code Generator
In this chapter, we will cover the following recipes:
- The life of an LLVM IR instruction
- Visualizing the LLVM IR CFG using GraphViz
- Describing the target using TableGen
- Defining an instruction set
- Adding a machine code descriptor
- Implementing the MachineInstrBuilder class
- Implementing the MachineBasicBlock class
- Implementing the MachineFunction class
- Writing an instruction selector
- Legalizing SelectionDAG
- Optimizing SelectionDAG
- Selecting instructions from the DAG
- Scheduling instructions in SelectionDAG