forked from Imagelibrary/binutils-gdb
Add common AARCH64 REGNUM defines
gdb/ * aarch64-tdep.h (enum aarch64_regnum): Remove. * arch/aarch64.h: New file. gdbserver/ * linux-aarch64-low.c (aarch64_fill_gregset): Replace defines with REGNO. (aarch64_store_gregset): Likewise. (aarch64_fill_fpregset): Likewise. (aarch64_store_fpregset): Likewise.
This commit is contained in:
@@ -1,3 +1,11 @@
|
||||
2017-10-25 Alan Hayward <alan.hayward@arm.com>
|
||||
|
||||
* linux-aarch64-low.c (aarch64_fill_gregset): Replace defines
|
||||
with REGNO.
|
||||
(aarch64_store_gregset): Likewise.
|
||||
(aarch64_fill_fpregset): Likewise.
|
||||
(aarch64_store_fpregset): Likewise.
|
||||
|
||||
2017-10-21 Simon Marchi <simon.marchi@ericsson.com>
|
||||
|
||||
* gdbthread.h (find_thread, for_each_thread): New functions.
|
||||
|
||||
@@ -38,6 +38,7 @@
|
||||
#include <sys/uio.h>
|
||||
|
||||
#include "gdb_proc_service.h"
|
||||
#include "arch/aarch64.h"
|
||||
|
||||
/* Defined in auto-generated files. */
|
||||
void init_registers_aarch64 (void);
|
||||
@@ -47,18 +48,6 @@ extern const struct target_desc *tdesc_aarch64;
|
||||
#include <sys/reg.h>
|
||||
#endif
|
||||
|
||||
#define AARCH64_X_REGS_NUM 31
|
||||
#define AARCH64_V_REGS_NUM 32
|
||||
#define AARCH64_X0_REGNO 0
|
||||
#define AARCH64_SP_REGNO 31
|
||||
#define AARCH64_PC_REGNO 32
|
||||
#define AARCH64_CPSR_REGNO 33
|
||||
#define AARCH64_V0_REGNO 34
|
||||
#define AARCH64_FPSR_REGNO (AARCH64_V0_REGNO + AARCH64_V_REGS_NUM)
|
||||
#define AARCH64_FPCR_REGNO (AARCH64_V0_REGNO + AARCH64_V_REGS_NUM + 1)
|
||||
|
||||
#define AARCH64_NUM_REGS (AARCH64_V0_REGNO + AARCH64_V_REGS_NUM + 2)
|
||||
|
||||
/* Per-process arch-specific data we want to keep. */
|
||||
|
||||
struct arch_process_info
|
||||
@@ -109,10 +98,10 @@ aarch64_fill_gregset (struct regcache *regcache, void *buf)
|
||||
int i;
|
||||
|
||||
for (i = 0; i < AARCH64_X_REGS_NUM; i++)
|
||||
collect_register (regcache, AARCH64_X0_REGNO + i, ®set->regs[i]);
|
||||
collect_register (regcache, AARCH64_SP_REGNO, ®set->sp);
|
||||
collect_register (regcache, AARCH64_PC_REGNO, ®set->pc);
|
||||
collect_register (regcache, AARCH64_CPSR_REGNO, ®set->pstate);
|
||||
collect_register (regcache, AARCH64_X0_REGNUM + i, ®set->regs[i]);
|
||||
collect_register (regcache, AARCH64_SP_REGNUM, ®set->sp);
|
||||
collect_register (regcache, AARCH64_PC_REGNUM, ®set->pc);
|
||||
collect_register (regcache, AARCH64_CPSR_REGNUM, ®set->pstate);
|
||||
}
|
||||
|
||||
static void
|
||||
@@ -122,10 +111,10 @@ aarch64_store_gregset (struct regcache *regcache, const void *buf)
|
||||
int i;
|
||||
|
||||
for (i = 0; i < AARCH64_X_REGS_NUM; i++)
|
||||
supply_register (regcache, AARCH64_X0_REGNO + i, ®set->regs[i]);
|
||||
supply_register (regcache, AARCH64_SP_REGNO, ®set->sp);
|
||||
supply_register (regcache, AARCH64_PC_REGNO, ®set->pc);
|
||||
supply_register (regcache, AARCH64_CPSR_REGNO, ®set->pstate);
|
||||
supply_register (regcache, AARCH64_X0_REGNUM + i, ®set->regs[i]);
|
||||
supply_register (regcache, AARCH64_SP_REGNUM, ®set->sp);
|
||||
supply_register (regcache, AARCH64_PC_REGNUM, ®set->pc);
|
||||
supply_register (regcache, AARCH64_CPSR_REGNUM, ®set->pstate);
|
||||
}
|
||||
|
||||
static void
|
||||
@@ -135,9 +124,9 @@ aarch64_fill_fpregset (struct regcache *regcache, void *buf)
|
||||
int i;
|
||||
|
||||
for (i = 0; i < AARCH64_V_REGS_NUM; i++)
|
||||
collect_register (regcache, AARCH64_V0_REGNO + i, ®set->vregs[i]);
|
||||
collect_register (regcache, AARCH64_FPSR_REGNO, ®set->fpsr);
|
||||
collect_register (regcache, AARCH64_FPCR_REGNO, ®set->fpcr);
|
||||
collect_register (regcache, AARCH64_V0_REGNUM + i, ®set->vregs[i]);
|
||||
collect_register (regcache, AARCH64_FPSR_REGNUM, ®set->fpsr);
|
||||
collect_register (regcache, AARCH64_FPCR_REGNUM, ®set->fpcr);
|
||||
}
|
||||
|
||||
static void
|
||||
@@ -148,9 +137,9 @@ aarch64_store_fpregset (struct regcache *regcache, const void *buf)
|
||||
int i;
|
||||
|
||||
for (i = 0; i < AARCH64_V_REGS_NUM; i++)
|
||||
supply_register (regcache, AARCH64_V0_REGNO + i, ®set->vregs[i]);
|
||||
supply_register (regcache, AARCH64_FPSR_REGNO, ®set->fpsr);
|
||||
supply_register (regcache, AARCH64_FPCR_REGNO, ®set->fpcr);
|
||||
supply_register (regcache, AARCH64_V0_REGNUM + i, ®set->vregs[i]);
|
||||
supply_register (regcache, AARCH64_FPSR_REGNUM, ®set->fpsr);
|
||||
supply_register (regcache, AARCH64_FPCR_REGNUM, ®set->fpcr);
|
||||
}
|
||||
|
||||
/* Enable miscellaneous debugging output. The name is historical - it
|
||||
|
||||
Reference in New Issue
Block a user