This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[PATCH] Move ARM_CPSR_GREGNUM to arch/arm-linux.h


This patch moves macro ARM_CPSR_GREGNUM to arch/arm-linux.h so that it
can be used in GDBserver side.  I'll push it in.

gdb:

2016-04-20  Yao Qi  <yao.qi@linaro.org>

	* arm-linux-tdep.h (ARM_CPSR_GREGNUM): Move it to ...
	* arch/arm-linux.h: ... here.

gdb/gdbserver:

2016-04-20  Yao Qi  <yao.qi@linaro.org>

	* linux-aarch32-low.c: Include "arch/arm-linux.h".
	(arm_fill_gregset): Use ARM_CPSR_GREGNUM rather than magic
	number 16.
	* linux-aarch32-low.c (arm_store_gregset): Likewise.
---
 gdb/arch/arm-linux.h              | 3 +++
 gdb/arm-linux-tdep.h              | 3 ---
 gdb/gdbserver/linux-aarch32-low.c | 5 +++--
 3 files changed, 6 insertions(+), 5 deletions(-)

diff --git a/gdb/arch/arm-linux.h b/gdb/arch/arm-linux.h
index dfd634c..ed83da9 100644
--- a/gdb/arch/arm-linux.h
+++ b/gdb/arch/arm-linux.h
@@ -20,6 +20,9 @@
 #ifndef ARM_LINUX_H
 #define ARM_LINUX_H
 
+/* The index to access CSPR in user_regs defined in GLIBC.  */
+#define ARM_CPSR_GREGNUM 16
+
 /* There are a couple of different possible stack layouts that
    we need to support.
 
diff --git a/gdb/arm-linux-tdep.h b/gdb/arm-linux-tdep.h
index 99f1777..be18a64 100644
--- a/gdb/arm-linux-tdep.h
+++ b/gdb/arm-linux-tdep.h
@@ -24,9 +24,6 @@ struct regcache;
 				+ 2 * INT_REGISTER_SIZE \
 				+ 8 + INT_REGISTER_SIZE)
 
-/* The index to access CSPR in user_regs defined in GLIBC.  */
-#define ARM_CPSR_GREGNUM 16
-
 /* Support for register format used by the NWFPE FPA emulator.  Each
    register takes three words, where either the first one, two, or
    three hold a single, double, or extended precision value (depending
diff --git a/gdb/gdbserver/linux-aarch32-low.c b/gdb/gdbserver/linux-aarch32-low.c
index 2bbbb24..0c4b140 100644
--- a/gdb/gdbserver/linux-aarch32-low.c
+++ b/gdb/gdbserver/linux-aarch32-low.c
@@ -17,6 +17,7 @@
 
 #include "server.h"
 #include "arch/arm.h"
+#include "arch/arm-linux.h"
 #include "linux-low.h"
 #include "linux-aarch32-low.h"
 
@@ -65,7 +66,7 @@ arm_fill_gregset (struct regcache *regcache, void *buf)
   for (i = ARM_A1_REGNUM; i <= ARM_PC_REGNUM; i++)
     collect_register (regcache, i, &regs[i]);
 
-  collect_register (regcache, ARM_PS_REGNUM, &regs[16]);
+  collect_register (regcache, ARM_PS_REGNUM, &regs[ARM_CPSR_GREGNUM]);
 }
 
 /* Supply GP registers contents, stored in BUF, to REGCACHE.  */
@@ -84,7 +85,7 @@ arm_store_gregset (struct regcache *regcache, const void *buf)
   for (; i < ARM_PS_REGNUM; i++)
     supply_register (regcache, i, zerobuf);
 
-  supply_register (regcache, ARM_PS_REGNUM, &regs[16]);
+  supply_register (regcache, ARM_PS_REGNUM, &regs[ARM_CPSR_GREGNUM]);
 }
 
 /* Collect NUM number of VFP registers from REGCACHE to buffer BUF.  */
-- 
1.9.1


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]