[all-commits] [llvm/llvm-project] 937ab6: [ARM][MachineOutliner] Emit more CFI instructions

Momchil Velikov via All-commits all-commits at lists.llvm.org
Mon Nov 9 07:26:56 PST 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 937ab6a7853ddb65373edec77f6d86741106cefb
      https://github.com/llvm/llvm-project/commit/937ab6a7853ddb65373edec77f6d86741106cefb
  Author: Momchil Velikov <momchil.velikov at arm.com>
  Date:   2020-11-09 (Mon, 09 Nov 2020)

  Changed paths:
    M llvm/lib/Target/ARM/ARMBaseInstrInfo.cpp
    M llvm/lib/Target/ARM/ARMBaseInstrInfo.h
    M llvm/test/CodeGen/ARM/machine-outliner-calls.mir
    A llvm/test/CodeGen/ARM/machine-outliner-cfi-1.ll
    A llvm/test/CodeGen/ARM/machine-outliner-cfi-2.ll
    A llvm/test/CodeGen/ARM/machine-outliner-cfi-3.ll

  Log Message:
  -----------
  [ARM][MachineOutliner] Emit more CFI instructions

This patch make the outliner emit CFI instructions in a few more
places:

  * after LR is restored, but before the return in an outlined
  function

  * around save/restore of LR to/from a register at calls to outlined
  functions

  * around save/restore of LR to/from the stack at calls to outlined
  functions

The latter two only when the function does NOT spill LR. If the
function spills LR, then outliner generated saves/restores around
calls are not considered interesting for unwinding the frame.

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




More information about the All-commits mailing list