This is the mail archive of the
gdb-cvs@sourceware.org
mailing list for the GDB project.
[binutils-gdb] Process record: Fix arm-linux syscall arguments
- From: Yao Qi <qiyao at sourceware dot org>
- To: gdb-cvs at sourceware dot org
- Date: 16 Mar 2016 14:57:21 -0000
- Subject: [binutils-gdb] Process record: Fix arm-linux syscall arguments
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=6b94a855beef3a301509dfac6bf5446d1953524b
commit 6b94a855beef3a301509dfac6bf5446d1953524b
Author: Yao Qi <yao.qi@linaro.org>
Date: Wed Mar 16 14:55:56 2016 +0000
Process record: Fix arm-linux syscall arguments
Arguments are passed in r0-r6 on arm linux syscall (both EABI and OABI).
This patch is to set arm_linux_record_tdep.arg{1-7} to the right
register number.
This patch fixes the following test failures...
-FAIL: gdb.reverse/getresuid-reverse.exp: check ruid record
-FAIL: gdb.reverse/getresuid-reverse.exp: check rgid record
-FAIL: gdb.reverse/pipe-reverse.exp: check pipe record
-FAIL: gdb.reverse/readv-reverse.exp: check readv record
-FAIL: gdb.reverse/readv-reverse.exp: check readv record
-FAIL: gdb.reverse/readv-reverse.exp: check readv record
-FAIL: gdb.reverse/readv-reverse.exp: check readv record
-FAIL: gdb.reverse/waitpid-reverse.exp: check waitpid record
gdb:
2016-03-16 Yao Qi <yao.qi@linaro.org>
* arm-linux-tdep.c (arm_linux_init_abi): Fix
arm_linux_record_tdep.arg1, arm_linux_record_tdep.arg2 and
arm_linux_record_tdep.arg3. Set arm_linux_record_tdep.arg4,
arm_linux_record_tdep.arg5, arm_linux_record_tdep.arg6, and
arm_linux_record_tdep.arg7.
Diff:
---
gdb/ChangeLog | 8 ++++++++
gdb/arm-linux-tdep.c | 9 ++++++---
2 files changed, 14 insertions(+), 3 deletions(-)
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 63909dd..83457dc 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,11 @@
+2016-03-16 Yao Qi <yao.qi@linaro.org>
+
+ * arm-linux-tdep.c (arm_linux_init_abi): Fix
+ arm_linux_record_tdep.arg1, arm_linux_record_tdep.arg2 and
+ arm_linux_record_tdep.arg3. Set arm_linux_record_tdep.arg4,
+ arm_linux_record_tdep.arg5, arm_linux_record_tdep.arg6, and
+ arm_linux_record_tdep.arg7.
+
2016-03-15 Keith Seitz <keiths@redhat.com>
PR breakpoints/18303
diff --git a/gdb/arm-linux-tdep.c b/gdb/arm-linux-tdep.c
index 79964bb..22f2aca 100644
--- a/gdb/arm-linux-tdep.c
+++ b/gdb/arm-linux-tdep.c
@@ -1646,10 +1646,13 @@ arm_linux_init_abi (struct gdbarch_info info,
arm_linux_record_tdep.fcntl_F_SETLK64 = 13;
arm_linux_record_tdep.fcntl_F_SETLKW64 = 14;
- arm_linux_record_tdep.arg1 = ARM_A1_REGNUM + 1;
- arm_linux_record_tdep.arg2 = ARM_A1_REGNUM + 2;
- arm_linux_record_tdep.arg3 = ARM_A1_REGNUM + 3;
+ arm_linux_record_tdep.arg1 = ARM_A1_REGNUM;
+ arm_linux_record_tdep.arg2 = ARM_A1_REGNUM + 1;
+ arm_linux_record_tdep.arg3 = ARM_A1_REGNUM + 2;
arm_linux_record_tdep.arg4 = ARM_A1_REGNUM + 3;
+ arm_linux_record_tdep.arg5 = ARM_A1_REGNUM + 4;
+ arm_linux_record_tdep.arg6 = ARM_A1_REGNUM + 5;
+ arm_linux_record_tdep.arg7 = ARM_A1_REGNUM + 6;
}
/* Provide a prototype to silence -Wmissing-prototypes. */