[PATCH] D123394: [CodeGen] Late cleanup of redundant address/immediate definitions.

Nemanja Ivanovic via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Sun May 8 08:08:20 PDT 2022


nemanjai added a comment.

This is fine from a PPC perspective. What would make more of an impact would be the ability to common partial immediate materializations such as happen in prologue/epilogue when a stack frame is very large. Perhaps this can be extended to do that in the future. It would eliminate things like:

  lis 11, 16
  ori 11, 11, 256 
  stxvx 53, 31, 11                        # 16-byte Folded Spill
  lis 11, 16
  ori 11, 11, 272 
  stxvx 54, 31, 11                        # 16-byte Folded Spill
  lis 11, 16
  ori 11, 11, 288 
  stxvx 55, 31, 11                        # 16-byte Folded Spill
  lis 11, 16
  ori 11, 11, 304 
  stxvx 56, 31, 11                        # 16-byte Folded Spill

Of course, that would involve changing the subsequent `ori` instructions to `addi` and would likely be very PPC-specific. I just bring it up here in case SystemZ has the same issue.


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D123394/new/

https://reviews.llvm.org/D123394



More information about the llvm-commits mailing list