Add regcache raw_supply_integer and raw_collect_integer.

Use these to replace instances of MAX_REGISTER_SIZE.

	* defs.h (copy_integer_to_size): New declaration.
	* findvar.c (copy_integer_to_size): New function.
	(do_cint_test): New selftest function.
	(copy_integer_to_size_test): Likewise.
	(_initialize_findvar): Likewise.
	* mips-fbsd-tdep.c (mips_fbsd_supply_reg): Use raw_supply_integer.
	(mips_fbsd_collect_reg): Use raw_collect_integer.
	* mips-linux-tdep.c (supply_32bit_reg): Use raw_supply_integer.
	(mips64_fill_gregset): Use raw_collect_integer
	(mips64_fill_fpregset): Use raw_supply_integer.
	* regcache.c (regcache::raw_supply_integer): New function.
	(regcache::raw_collect_integer): Likewise.
	* regcache.h: (regcache::raw_supply_integer): New declaration.
	(regcache::raw_collect_integer): Likewise.
This commit is contained in:
Alan Hayward
2017-05-26 17:04:13 +01:00
parent 22e7d29331
commit b057297ab6
7 changed files with 213 additions and 69 deletions

View File

@@ -658,7 +658,10 @@ extern void store_unsigned_integer (gdb_byte *, int,
extern void store_typed_address (gdb_byte *buf, struct type *type,
CORE_ADDR addr);
extern void copy_integer_to_size (gdb_byte *dest, int dest_size,
const gdb_byte *source, int source_size,
bool is_signed, enum bfd_endian byte_order);
/* From valops.c */
extern int watchdog;