[PATCH] D67954: [LLDB] [Windows] Initial support for ARM64 register contexts

Martin Storsjö via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Sat Oct 12 13:48:46 PDT 2019


mstorsjo updated this revision to Diff 224757.
mstorsjo retitled this revision from "[LLDB] [Windows] Initial support for ARM64 debugging" to "[LLDB] [Windows] Initial support for ARM64 register contexts".
mstorsjo edited the summary of this revision.
mstorsjo added a reviewer: aleksandr.urakov.
mstorsjo added a comment.
Herald added subscribers: llvm-commits, delcypher.
Herald added a project: LLVM.

Added two lit/shell based tests that pass on both linux/arm64 and windows/arm64. I've managed to set up some sort of hacked up environment where I can run lit/shell based tests (even though the main python test driver runs in WSL, but executing native windows binaries for the tests).

I also added a NativeRegisterContext for arm64, for lldb-server. For the RegisterInfoInterface for NativeRegisterContext, I reused RegisterInfoPOSIX_arm64 instead of creating a new copy similar to it, since I didn't really see anything OS specific in there.

The tests pass both with and without use of lldb-server. However, when using lldb-server with NativeRegisterContext, while the register values are correct, I don't get a correct working backtrace with it. Without lldb-server, I get a perfect backtrace. (The tested binary uses SEH unwind tables, but DWARF debug info.) Any clues about what might be going wrong there?


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D67954/new/

https://reviews.llvm.org/D67954

Files:
  lldb/source/Plugins/Process/Windows/Common/CMakeLists.txt
  lldb/source/Plugins/Process/Windows/Common/NativeRegisterContextWindows_arm64.cpp
  lldb/source/Plugins/Process/Windows/Common/NativeRegisterContextWindows_arm64.h
  lldb/source/Plugins/Process/Windows/Common/TargetThreadWindows.cpp
  lldb/source/Plugins/Process/Windows/Common/arm64/RegisterContextWindows_arm64.cpp
  lldb/source/Plugins/Process/Windows/Common/arm64/RegisterContextWindows_arm64.h
  lldb/test/Shell/Register/Inputs/aarch64-fp-read.cpp
  lldb/test/Shell/Register/Inputs/aarch64-gp-read.cpp
  lldb/test/Shell/Register/aarch64-fp-read.test
  lldb/test/Shell/Register/aarch64-gp-read.test
  llvm/utils/lit/lit/llvm/config.py

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D67954.224757.patch
Type: text/x-patch
Size: 46446 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20191012/dc1156e1/attachment.bin>


More information about the llvm-commits mailing list