diff options
author | wanglei <wanglei@loongson.cn> | 2024-12-13 10:06:55 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-12-13 10:06:55 +0800 |
commit | 6c4e70fcbbb62f38a5aab085634de5faaa5cf729 (patch) | |
tree | 966a85a97098b4c4e166caa888a3000d6d1ec29a /lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerCommon.cpp | |
parent | 3de5e8b23f5c145b13d930eb5019566d3a6f88d5 (diff) | |
download | llvm-6c4e70fcbbb62f38a5aab085634de5faaa5cf729.zip llvm-6c4e70fcbbb62f38a5aab085634de5faaa5cf729.tar.gz llvm-6c4e70fcbbb62f38a5aab085634de5faaa5cf729.tar.bz2 |
[lldb][Process] Introduce LoongArch64 hw break/watchpoint support
This patch adds support for setting/clearing hardware watchpoints and
breakpoints on LoongArch 64-bit hardware.
Refer to the following document for the hw break/watchpoint:
https://loongson.github.io/LoongArch-Documentation/LoongArch-Vol1-EN.html#control-and-status-registers-related-to-watchpoints
Fix Failed Tests:
lldb-shell :: Subprocess/clone-follow-child-wp.test
lldb-shell :: Subprocess/clone-follow-parent-wp.test
lldb-shell :: Subprocess/fork-follow-child-wp.test
lldb-shell :: Subprocess/fork-follow-parent-wp.test
lldb-shell :: Subprocess/vfork-follow-child-wp.test
lldb-shell :: Subprocess/vfork-follow-parent-wp.test
lldb-shell :: Watchpoint/ExpressionLanguage.test
Depends on: #118043
Reviewed By: SixWeining
Pull Request: https://github.com/llvm/llvm-project/pull/118770
Diffstat (limited to 'lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerCommon.cpp')
-rw-r--r-- | lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerCommon.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerCommon.cpp b/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerCommon.cpp index 324db3d..c2fe05ca 100644 --- a/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerCommon.cpp +++ b/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerCommon.cpp @@ -231,7 +231,8 @@ GDBRemoteCommunicationServerCommon::Handle_qHostInfo( host_arch.GetMachine() == llvm::Triple::aarch64_32 || host_arch.GetMachine() == llvm::Triple::aarch64_be || host_arch.GetMachine() == llvm::Triple::arm || - host_arch.GetMachine() == llvm::Triple::armeb || host_arch.IsMIPS()) + host_arch.GetMachine() == llvm::Triple::armeb || host_arch.IsMIPS() || + host_arch.GetTriple().isLoongArch()) response.Printf("watchpoint_exceptions_received:before;"); else response.Printf("watchpoint_exceptions_received:after;"); |