[all-commits] [llvm/llvm-project] 244ad2: [ARM][MachineOutliner] Add stack fixup feature

yroux via All-commits all-commits at lists.llvm.org
Tue Jan 19 01:59:46 PST 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 244ad228f34363b508cd1096c99d8f1bbe999d85
      https://github.com/llvm/llvm-project/commit/244ad228f34363b508cd1096c99d8f1bbe999d85
  Author: Yvan Roux <yvan.roux at linaro.org>
  Date:   2021-01-19 (Tue, 19 Jan 2021)

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

  Log Message:
  -----------
  [ARM][MachineOutliner] Add stack fixup feature

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.

Differential Revision: https://reviews.llvm.org/D92934




More information about the All-commits mailing list