aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarcin Kościelnicki <koriakin@0x04.net>2015-10-30 15:52:02 +0000
committerPedro Alves <palves@redhat.com>2015-10-30 15:52:02 +0000
commit10268a4c0d64b3892397aeaafbc4b91f6a1e0dc8 (patch)
tree56127b13c2d4130c29f9ff7bab348acc07987944 /gdb/amd64-linux-tdep.c
parentgdb/linux-record: Fix size_termios for x32, amd64, aarch64 (diff)
downloadbinutils-gdb-10268a4c0d64b3892397aeaafbc4b91f6a1e0dc8.tar.gz
binutils-gdb-10268a4c0d64b3892397aeaafbc4b91f6a1e0dc8.tar.bz2
binutils-gdb-10268a4c0d64b3892397aeaafbc4b91f6a1e0dc8.zip
gdb/linux-record: Fix struct sizes for x32
While x32 syscall interface is mostly shared with x86_64, some syscalls are truly 32-bit. Correct sizes accordingly. gdb/ChangeLog: * amd64-linux-tdep.c (amd64_x32_linux_init_abi): Fix size_msghdr, size_stack_t, size_size_t, size_iovec.
Diffstat (limited to 'gdb/amd64-linux-tdep.c')
-rw-r--r--gdb/amd64-linux-tdep.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/gdb/amd64-linux-tdep.c b/gdb/amd64-linux-tdep.c
index b0950f28067..ee21635bbe1 100644
--- a/gdb/amd64-linux-tdep.c
+++ b/gdb/amd64-linux-tdep.c
@@ -2133,7 +2133,7 @@ amd64_x32_linux_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
= gdbarch_long_bit (gdbarch) / TARGET_CHAR_BIT;
amd64_x32_linux_record_tdep.size_ulong
= gdbarch_long_bit (gdbarch) / TARGET_CHAR_BIT;
- amd64_x32_linux_record_tdep.size_msghdr = 56;
+ amd64_x32_linux_record_tdep.size_msghdr = 28;
amd64_x32_linux_record_tdep.size_itimerval = 32;
amd64_x32_linux_record_tdep.size_stat = 144;
amd64_x32_linux_record_tdep.size_old_utsname = 325;
@@ -2154,7 +2154,7 @@ amd64_x32_linux_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
amd64_x32_linux_record_tdep.size_sigset_t = 8;
amd64_x32_linux_record_tdep.size_siginfo_t = 128;
amd64_x32_linux_record_tdep.size_cap_user_data_t = 8;
- amd64_x32_linux_record_tdep.size_stack_t = 24;
+ amd64_x32_linux_record_tdep.size_stack_t = 12;
amd64_x32_linux_record_tdep.size_off_t = 8;
amd64_x32_linux_record_tdep.size_stat64 = 144;
amd64_x32_linux_record_tdep.size_gid_t = 4;
@@ -2174,8 +2174,8 @@ amd64_x32_linux_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
amd64_x32_linux_record_tdep.size_serial_struct = 72;
amd64_x32_linux_record_tdep.size_serial_icounter_struct = 80;
amd64_x32_linux_record_tdep.size_hayes_esp_config = 12;
- amd64_x32_linux_record_tdep.size_size_t = 8;
- amd64_x32_linux_record_tdep.size_iovec = 16;
+ amd64_x32_linux_record_tdep.size_size_t = 4;
+ amd64_x32_linux_record_tdep.size_iovec = 8;
amd64_x32_linux_record_tdep.size_time_t = 8;
/* These values are the second argument of system call "sys_fcntl"