[Lldb-commits] [lldb] [LLDB][MIPS] Fix signal SIGBUS number mismatch error on mips target (PR #132688)
via lldb-commits
lldb-commits at lists.llvm.org
Mon Mar 31 23:54:38 PDT 2025
https://github.com/yingopq updated https://github.com/llvm/llvm-project/pull/132688
>From 4cd95bb97c04fa26dc12c64ab3b6ccf9a911cc33 Mon Sep 17 00:00:00 2001
From: Ying Huang <ying.huang at oss.cipunited.com>
Date: Mon, 24 Mar 2025 03:44:41 -0400
Subject: [PATCH] [LLDB][MIPS] Fix signal SIGBUS number mismatch error on mips
target
Now, because we do not support mips debugging, if we compile LLVM
on mips target, would report error `static assertion failed:Value
mismatch for signal number SIGBUS`, so add this condition to avoid
error.
---
lldb/source/Plugins/Process/Utility/LinuxSignals.cpp | 7 +++++--
1 file changed, 5 insertions(+), 2 deletions(-)
diff --git a/lldb/source/Plugins/Process/Utility/LinuxSignals.cpp b/lldb/source/Plugins/Process/Utility/LinuxSignals.cpp
index eaecc84df15d4..580b801a7ece2 100644
--- a/lldb/source/Plugins/Process/Utility/LinuxSignals.cpp
+++ b/lldb/source/Plugins/Process/Utility/LinuxSignals.cpp
@@ -8,7 +8,10 @@
#include "LinuxSignals.h"
-#ifdef __linux__
+// mips-linux debugging is not supported and mips uses different numbers for some
+// signals (e.g. SIGBUS) on linux, so we skip the static checks below. The definitions
+// here can be used for debugging non-mips targets on a mips-hosted lldb.
+#if defined(__linux__) && !defined(__mips__)
#include <csignal>
#ifndef SEGV_BNDERR
@@ -33,7 +36,7 @@
#else
#define ADD_SIGCODE(signal_name, signal_value, code_name, code_value, ...) \
AddSignalCode(signal_value, code_value, __VA_ARGS__)
-#endif /* ifdef __linux__ */
+#endif /* if defined(__linux__) && !defined(__mips__) */
using namespace lldb_private;
More information about the lldb-commits
mailing list