[all-commits] [llvm/llvm-project] df552e: Update the CFA to use $sp when $fp is restored on ...

Jason Molenda via All-commits all-commits at lists.llvm.org
Wed May 4 14:54:35 PDT 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: df552edb08c4a1f7600b97444f6315a63c998c59
      https://github.com/llvm/llvm-project/commit/df552edb08c4a1f7600b97444f6315a63c998c59
  Author: Jason Molenda <jason at molenda.com>
  Date:   2022-05-04 (Wed, 04 May 2022)

  Changed paths:
    M lldb/source/Plugins/UnwindAssembly/InstEmulation/UnwindAssemblyInstEmulation.cpp
    M lldb/unittests/UnwindAssembly/ARM64/TestArm64InstEmulation.cpp

  Log Message:
  -----------
  Update the CFA to use $sp when $fp is restored on arm64

In UnwindAssemblyInstEmulation we correctly recognize when a LDP
restores the fp & lr in an epilogue, and mark them as having the
caller's contents now, but we don't update the CFA register rule
at that point to indicate that the CFA is now calculated in terms
of $sp.  This doesn't impact the backtrace because the register
contents are all <same> now, but it can confuse the stepper when
the StackID changes mid-epilogue.

Differential Revision: https://reviews.llvm.org/D124492
rdar://92064415




More information about the All-commits mailing list