[PATCH] D92934: [ARM][MachineOutliner] Add stack fixup feature.

Yvan Roux via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Dec 9 04:46:04 PST 2020


yroux created this revision.
yroux added reviewers: samparker, paquette, efriedma.
Herald added subscribers: danielkiss, hiraditya, kristof.beyls, arichardson.
yroux requested review of this revision.
Herald added a project: LLVM.
Herald added a subscriber: llvm-commits.

This patch handles cases where we have to save/restore the link register into the stack and and load/store instruction which use the stack are part of the outlined region. It checks that there will be no overflow introduced by the new offset and fixup these instructions accordingly.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D92934

Files:
  llvm/lib/Target/ARM/ARMBaseInstrInfo.cpp
  llvm/lib/Target/ARM/ARMBaseInstrInfo.h
  llvm/test/CodeGen/ARM/machine-outliner-default.mir
  llvm/test/CodeGen/ARM/machine-outliner-no-lr-save.mir
  llvm/test/CodeGen/ARM/machine-outliner-stack-fixup-arm.mir
  llvm/test/CodeGen/ARM/machine-outliner-stack-fixup-thumb.mir
  llvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/arm_generated_funcs.ll
  llvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/arm_generated_funcs.ll.generated.expected
  llvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/arm_generated_funcs.ll.nogenerated.expected

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D92934.310501.patch
Type: text/x-patch
Size: 37209 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20201209/10e50e0c/attachment.bin>


More information about the llvm-commits mailing list