From: Richard Earnshaw Date: Tue, 7 May 2002 12:58:51 +0000 (+0000) Subject: * arm-tdep.h (ARM_MAX_REGISTER_RAW_SIZE): Define. X-Git-Url: http://git.efficios.com/?a=commitdiff_plain;h=7bbcf283071c5971093c78e9e5655fe1b115df0b;p=deliverable%2Fbinutils-gdb.git * arm-tdep.h (ARM_MAX_REGISTER_RAW_SIZE): Define. (ARM_MAX_REGISTER_VIRTUAL_SIZE): Define. * arm-tdep.c (arm_store_return_value): Use them. Use FP_REGISTER_RAW_SIZE when setting the FPA return value. * remote-rdp.c (remote_rdp_fetch_register): Use ARM_MAX_REGISTER_RAW_SIZE. (remote_rdp_store_register): Likewise. --- diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 2abbc4812c..339bb59e88 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,13 @@ +2002-05-07 Richard Earnshaw + + * arm-tdep.h (ARM_MAX_REGISTER_RAW_SIZE): Define. + (ARM_MAX_REGISTER_VIRTUAL_SIZE): Define. + * arm-tdep.c (arm_store_return_value): Use them. + Use FP_REGISTER_RAW_SIZE when setting the FPA return value. + * remote-rdp.c (remote_rdp_fetch_register): Use + ARM_MAX_REGISTER_RAW_SIZE. + (remote_rdp_store_register): Likewise. + 2002-05-07 Michal Ludvig * dwarf2cfi.c: Code cleanup, removed unused variables, diff --git a/gdb/arm-tdep.c b/gdb/arm-tdep.c index fa0b365f83..2ea4d28909 100644 --- a/gdb/arm-tdep.c +++ b/gdb/arm-tdep.c @@ -2336,7 +2336,7 @@ arm_store_return_value (struct type *type, char *valbuf) if (TYPE_CODE (type) == TYPE_CODE_FLT) { struct gdbarch_tdep *tdep = gdbarch_tdep (current_gdbarch); - char buf[MAX_REGISTER_RAW_SIZE]; + char buf[ARM_MAX_REGISTER_RAW_SIZE]; switch (tdep->fp_model) { @@ -2344,7 +2344,7 @@ arm_store_return_value (struct type *type, char *valbuf) convert_to_extended (valbuf, buf); write_register_bytes (REGISTER_BYTE (ARM_F0_REGNUM), buf, - MAX_REGISTER_RAW_SIZE); + FP_REGISTER_RAW_SIZE); break; case ARM_FLOAT_SOFT: diff --git a/gdb/arm-tdep.h b/gdb/arm-tdep.h index 0fad4fd493..e7c56515a9 100644 --- a/gdb/arm-tdep.h +++ b/gdb/arm-tdep.h @@ -45,6 +45,10 @@ enum gdb_regnum { ARM_LAST_FP_ARG_REGNUM = ARM_F3_REGNUM }; +/* Used in target-specific code when we need to know the size of the + largest type of register we need to handle. */ +#define ARM_MAX_REGISTER_RAW_SIZE 12 +#define ARM_MAX_REGISTER_VIRTUAL_SIZE 8 /* Size of integer registers. */ #define INT_REGISTER_RAW_SIZE 4 diff --git a/gdb/remote-rdp.c b/gdb/remote-rdp.c index f6ccf1e812..d713a67878 100644 --- a/gdb/remote-rdp.c +++ b/gdb/remote-rdp.c @@ -612,7 +612,7 @@ remote_rdp_fetch_register (int regno) } else { - char buf[MAX_REGISTER_RAW_SIZE]; + char buf[ARM_MAX_REGISTER_RAW_SIZE]; if (regno < 15) rdp_fetch_one_register (1 << regno, buf); else if (regno == ARM_PC_REGNUM) @@ -642,7 +642,7 @@ remote_rdp_store_register (int regno) } else { - char tmp[MAX_REGISTER_RAW_SIZE]; + char tmp[ARM_MAX_REGISTER_RAW_SIZE]; read_register_gen (regno, tmp); if (regno < 15) rdp_store_one_register (1 << regno, tmp);