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.
This commit is contained in:
Yao Qi 2016-03-16 14:55:56 +00:00
parent 5f2b6bc955
commit 6b94a855be
2 changed files with 14 additions and 3 deletions

View File

@ -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

View File

@ -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. */