llvm-project
5fd96019 - Make the RA to save CSRs.

Commit
107 days ago
Make the RA to save CSRs. In `finalizeLowering` we copy all callee-saved registers from a physical register to a virtual one. In all return blocks we copy do the reverse. This has two effects: (1) It tells the optimizer that the value of callee-saved registers has to be preserved (2) Allows the optimizer to work on CSRs. In particular, we get shrink-wrapping "for free" - the register allocator will spill / restore CSRs if needed.
Author
Mikhail Gudim
Committer
Parents
Loading