[PATCH] D42582: [lldb][PPC64] Fixed step-in stopping in the wrong line

Leandro Lupori via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Feb 1 12:15:00 PST 2018


luporl updated this revision to Diff 132448.
luporl added a comment.
Herald added subscribers: hintonda, mgorny.

Moved PPC64 specific code to a new ArchitecturePPC64 plugin.

Following Greg's and Jim Ingham's suggestions, a new GetBytesToSkip()
virtual Architecture method was added, to handle PPC64's global and
local entry points when LLDB needs to know how many bytes to skip to
get past the prologue.

I'm not sure if this matches exactly what was suggested, but I hope it's close
enough. I added a few parameters to the method, to avoid duplicating code from
ThreadPlanStepInRange. I also have made the default implementation return
LLDB_INVALID_OFFSET, in case there is an Architecture plugin but it doesn't
need/want to implement this method
(otherwise step-in would probably stop working on ARM).

- Merge branch 'master' into fix-step-in
- Moved changes to new ArchitecturePPC64 plugin
- Fixed lldb-server aborting on no arch found assert
- Fixed ArchitecturePPC64 initialization


https://reviews.llvm.org/D42582

Files:
  include/lldb/Core/Architecture.h
  source/API/SystemInitializerFull.cpp
  source/Host/common/HostInfoBase.cpp
  source/Plugins/ABI/SysV-ppc64/ABISysV_ppc64.cpp
  source/Plugins/Architecture/CMakeLists.txt
  source/Plugins/Architecture/PPC64/ArchitecturePPC64.cpp
  source/Plugins/Architecture/PPC64/ArchitecturePPC64.h
  source/Plugins/Architecture/PPC64/CMakeLists.txt
  source/Target/ThreadPlanStepInRange.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D42582.132448.patch
Type: text/x-patch
Size: 12460 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20180201/ecd13c72/attachment.bin>


More information about the llvm-commits mailing list