Skip to content

PPC NCG: Use liveness information in CmmCall

Peter Trommler requested to merge powerpc/ghc:wip/ppc-reg-alloc into master

We make liveness information for global registers available on JMP and BCTR, which were the last instructions missing. With complete liveness information we do not need to reserve global registers in freeReg anymore. Moreover we assign R9 and R10 to callee saves registers.

Cleanup by removing Reg_Su, which was unused, from freeReg and removing unused register definitions.

The calculation of the number of floating point registers is too conservative. Just follow X86 and specify the constants directly.

Overall on PowerPC this results in 0.3 % smaller code size in nofib while runtime is slightly better in some tests.

Merge request reports