mirror of
https://github.com/espressif/binutils-gdb.git
synced 2025-06-26 05:47:26 +08:00
SCORE: Fill 'collect_regset' in regset structure.
Also rewrite the 'supply_regset' method, making it platform independent. To avoid code duplication, move the logic for both to a register map in regcache_map_entry format.
This commit is contained in:

committed by
Ulrich Weigand

parent
81580573ba
commit
c5741217d3
@ -32,6 +32,7 @@ enum gdb_regnum
|
||||
SCORE_RA_REGNUM = 3,
|
||||
SCORE_A0_REGNUM = 4,
|
||||
SCORE_AL_REGNUM = 7,
|
||||
SCORE_EPC_REGNUM = 37,
|
||||
SCORE_PC_REGNUM = 49,
|
||||
};
|
||||
|
||||
@ -46,37 +47,4 @@ enum gdb_regnum
|
||||
#define SCORE_INSTLEN 4
|
||||
#define SCORE16_INSTLEN 2
|
||||
|
||||
/* Forward declarations. */
|
||||
struct regset;
|
||||
|
||||
/* Linux Core file support (dirty hack)
|
||||
|
||||
S+core Linux register set definition, copy from S+core Linux. */
|
||||
struct pt_regs {
|
||||
/* Pad bytes for argument save space on the stack. */
|
||||
unsigned long pad0[6]; /* may be 4, MIPS accept 6var, SCore
|
||||
accepts 4 Var--yuchen */
|
||||
|
||||
/* Saved main processor registers. */
|
||||
unsigned long orig_r4;
|
||||
unsigned long regs[32];
|
||||
|
||||
/* Other saved registers. */
|
||||
unsigned long cel;
|
||||
unsigned long ceh;
|
||||
|
||||
unsigned long sr0; /*cnt*/
|
||||
unsigned long sr1; /*lcr*/
|
||||
unsigned long sr2; /*scr*/
|
||||
|
||||
/* saved cp0 registers */
|
||||
unsigned long cp0_epc;
|
||||
unsigned long cp0_ema;
|
||||
unsigned long cp0_psr;
|
||||
unsigned long cp0_ecr;
|
||||
unsigned long cp0_condition;
|
||||
};
|
||||
|
||||
typedef struct pt_regs elf_gregset_t;
|
||||
|
||||
#endif /* SCORE_TDEP_H */
|
||||
|
Reference in New Issue
Block a user