Aarch64 NCG: Use encoded immediates for literals.
Try to generate instr x2, <imm> instead of mov x1, lit instr x2, x1 When possible. This get's rid if quite a few redundant mov instructions. I believe this causes a metric decrease for LargeRecords as we reduce register pressure. ------------------------- Metric Decrease: LargeRecord -------------------------
Showing
- compiler/GHC/CmmToAsm/AArch64/CodeGen.hs 154 additions, 19 deletionscompiler/GHC/CmmToAsm/AArch64/CodeGen.hs
- compiler/GHC/CmmToAsm/AArch64/Instr.hs 10 additions, 7 deletionscompiler/GHC/CmmToAsm/AArch64/Instr.hs
- compiler/GHC/CmmToAsm/AArch64/Ppr.hs 1 addition, 0 deletionscompiler/GHC/CmmToAsm/AArch64/Ppr.hs
- compiler/GHC/CmmToAsm/AArch64/Regs.hs 9 additions, 0 deletionscompiler/GHC/CmmToAsm/AArch64/Regs.hs
Loading
Please register or sign in to comment