From 6885166d994162c92dc9053bdf2d87e67a452db3 Mon Sep 17 00:00:00 2001 From: Yao Qi Date: Wed, 20 Apr 2016 12:31:53 +0100 Subject: [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. gdb: 2016-04-20 Yao Qi * arm-linux-tdep.h (ARM_CPSR_GREGNUM): Move it to ... * arch/arm-linux.h: ... here. gdb/gdbserver: 2016-04-20 Yao Qi * linux-aarch32-low.c: Include "arch/arm-linux.h". (arm_fill_gregset): Use ARM_CPSR_GREGNUM rather than magic number 16. (arm_store_gregset): Likewise. --- gdb/ChangeLog | 5 +++++ gdb/arch/arm-linux.h | 3 +++ gdb/arm-linux-tdep.h | 3 --- gdb/gdbserver/ChangeLog | 7 +++++++ gdb/gdbserver/linux-aarch32-low.c | 5 +++-- 5 files changed, 18 insertions(+), 5 deletions(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index bd6b06bb42..10d5d2c225 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,8 @@ +2016-04-20 Yao Qi + + * arm-linux-tdep.h (ARM_CPSR_GREGNUM): Move it to ... + * arch/arm-linux.h: ... here. + 2016-04-19 John Baldwin * amd64bsd-nat.c (amd64bsd_fetch_inferior_registers): Change xstateregs diff --git a/gdb/arch/arm-linux.h b/gdb/arch/arm-linux.h index dfd634c5ff..ed83da9c7f 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 99f1777028..be18a64b63 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/ChangeLog b/gdb/gdbserver/ChangeLog index 364d75532c..c2901305b1 100644 --- a/gdb/gdbserver/ChangeLog +++ b/gdb/gdbserver/ChangeLog @@ -1,3 +1,10 @@ +2016-04-20 Yao Qi + + * linux-aarch32-low.c: Include "arch/arm-linux.h". + (arm_fill_gregset): Use ARM_CPSR_GREGNUM rather than magic + number 16. + (arm_store_gregset): Likewise. + 2016-04-16 Walfred Tedeschi * Makefile.in (clean): Add removal for i386-avx-mpx.c, diff --git a/gdb/gdbserver/linux-aarch32-low.c b/gdb/gdbserver/linux-aarch32-low.c index 2bbbb24657..0c4b140364 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, ®s[i]); - collect_register (regcache, ARM_PS_REGNUM, ®s[16]); + collect_register (regcache, ARM_PS_REGNUM, ®s[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, ®s[16]); + supply_register (regcache, ARM_PS_REGNUM, ®s[ARM_CPSR_GREGNUM]); } /* Collect NUM number of VFP registers from REGCACHE to buffer BUF. */ -- 2.34.1