LM32: Enable LRA after testing showed minimal regressions
The LM32 architecture now enables live range splitting after testing showed few regressions.
The LM32 architecture now enables live range splitting (LRA). LRA improves register allocation by splitting overly long variable live ranges, reducing register pressure and potentially improving performance. This change was made after testing showed minimal regressions.
In Details
LRA (Live Range splitting) is a register allocation technique that splits long variable live ranges into shorter ones, reducing register pressure. This commit enables LRA for the LM32 architecture by default. Search terms: LM32 register allocation.
For Context
Register allocation is the task of assigning variables to registers within a processor. When a variable's lifetime is very long and spans across multiple functions or blocks of code, it can increase register pressure, leading to spills to memory. Live Range splitting is a technique that splits these longer ranges into smaller ones, reducing the pressure on the registers and allowing the compiler to optimize better. Search terms: LM32 register allocation.