[Lldb-commits] [lldb] 4ab298b - [LLDB][ThreadELFCore] Set all the properties of ELFLinuxSigInfo to a non build dependent size (#117604)
via lldb-commits
lldb-commits at lists.llvm.org
Tue Nov 26 10:20:57 PST 2024
Author: Jacob Lalonde
Date: 2024-11-26T10:20:52-08:00
New Revision: 4ab298b5fbc8f48387062b2dd99ea07127c02e6b
URL: https://github.com/llvm/llvm-project/commit/4ab298b5fbc8f48387062b2dd99ea07127c02e6b
DIFF: https://github.com/llvm/llvm-project/commit/4ab298b5fbc8f48387062b2dd99ea07127c02e6b.diff
LOG: [LLDB][ThreadELFCore] Set all the properties of ELFLinuxSigInfo to a non build dependent size (#117604)
On #110065 the changes to LinuxSigInfo Struct introduced some variables
that will differ in size on 32b or 64b. I've rectified this by setting
them all to build independent types.
Added:
Modified:
lldb/source/Plugins/Process/elf-core/ThreadElfCore.h
Removed:
################################################################################
diff --git a/lldb/source/Plugins/Process/elf-core/ThreadElfCore.h b/lldb/source/Plugins/Process/elf-core/ThreadElfCore.h
index 4ebbaadebe9f90..6f8d41351a6bfb 100644
--- a/lldb/source/Plugins/Process/elf-core/ThreadElfCore.h
+++ b/lldb/source/Plugins/Process/elf-core/ThreadElfCore.h
@@ -83,10 +83,10 @@ struct ELFLinuxSigInfo {
int32_t si_errno;
int32_t si_code;
// Copied from siginfo_t so we don't have to include signal.h on non 'Nix
- // builds.
- struct {
- lldb::addr_t si_addr; /* faulting insn/memory ref. */
- short int si_addr_lsb; /* Valid LSB of the reported address. */
+ // builds. Slight modifications to ensure no 32b vs 64b
diff erences.
+ struct alignas(8) {
+ lldb::addr_t si_addr; /* faulting insn/memory ref. */
+ int16_t si_addr_lsb; /* Valid LSB of the reported address. */
union {
/* used when si_code=SEGV_BNDERR */
struct {
@@ -98,7 +98,8 @@ struct ELFLinuxSigInfo {
} bounds;
} sigfault;
- enum { eUnspecified, eNT_SIGINFO } note_type;
+ enum SigInfoNoteType : uint8_t { eUnspecified, eNT_SIGINFO };
+ SigInfoNoteType note_type;
ELFLinuxSigInfo();
More information about the lldb-commits
mailing list