So, in this chapter, we looked into how simple transformations can be applied to IR. We looked into the opt tool, LLVM Pass infrastructure, the Passmanager
and how to use information of one Pass in another Pass. We ended the chapter with examples of instruction simplification and instruction combining. In the next chapter, we will see some more advanced optimizations like Loop Optimization, Scalar Evolution, and others, where we will operate at a block of code rather than individual instructions.
18.117.138.104