S-record download code into srec.c.
* srec.c srec.h: New files. Contain S-record loading routines
formerly in monitor.c.
* serial.c serial.h: New routine just like fprintf, but uses
serial_t instead of FILE *.
* sh-tdep.c (frame_find_saved_regs init_extra_frame_info):
Don't add four to saved pc (makes things match manual). Also, fix
bug where we didn't get pc from stack frame correctly.
* config/sh/tm-sh.h (SAVED_PC_AFTER_CALL): Don't add four to
saved pc. Real hardware does this for you.
* sh3-rom.c (sh3_load): New routine. Sets up for download then
calls generic S-record loader.
* config/h8300/h8300.mt, config/h8500/h8500.mt,
config/m68k/monitor.mt, config/pa/hppapro.mt, config/sh/sh.mt:
Add srec.o to TDEPFILES.
sh3 monitor support.
* monitor.c: Cleanup regexp compilation stuff to make it easier
to use several regexps.
* monitor.h: Get rid of struct rom_cmd_data. It's no longer used.
* config/m68k/tm-monitor.h: Don't redefine NUM_REGS here. It just
causes GDB to crash.
(BC_BREAKPOINTS): Disable.
* sh-tdep.c (print_insn): Cope with big and little endian machines.
* sh/sh.mt: Use libsim.a
* sh/tm-sh.h (TARGET_BYTE_ORDER_SELECTABLE): New
(BREAKPOINT): Changed to be byteorder independent.
hppa-tdep.c (pa_print_fp_reg), infcmd.c (do_registers_info),
valops.c (value_assign): Use REGISTER_CONVERT_TO_* only if
REGISTER_CONVERTIBLE is defined, otherwise just copy the content.
Pass desired type to REGISTER_CONVERT_TO_*.
* config/m68k/tm-m68k.h, config/i960/tm-i960.h (REGISTER_CONVERT_*):
Pass length of desired type to store/extract_floating.
* config/i386/tm-arm.h, config/i386/tm-i386aix.h,
config/i386/tm-sun386.h, config/i386/tm-symmetry.h,
config/m88k/tm-m88k.h config/rs6000/tm-rs6000.h (REGISTER_CONVERT_*):
Use extract_floating and store_floating with length of desired type.
* config/m68k/tm-news.h (STORE,EXTRACT_RETURN_VALUE): Add type
parameter to REGISTER_CONVERT_*.
* config/a29k/tm-a29k.h, config/convex/tm-convex.h,
config/gould/tm-np1.h, config/gould/tm-pn.h, config/h8300/tm-h8300.h,
config/h8500/tm-h8500.h, config/i386/tm-i386v.h,
config/mips/tm-mips.h, config/ns32k/tm-merlin.h,
config/ns32k/tm-umax.h, config/pa/tm-hppa.h, config/pyr/tm-pyr.h,
config/sh/tm-sh.h, config/sparc/tm-sparc.h, config/tahoe/tm-tahoe.h,
config/vax/tm-vax.h, config/z8k/tm-z8k.h (REGISTER_CONVERTIBLE,
REGISTER_CONVERT_TO_RAW, REGISTER_CONVERT_TO_VIRTUAL): Remove
versions for which REGISTER_CONVERTIBLE is always false.
* z8k-tdep.c (register_convert_to_virtual, register_convert_to_raw):
Remove, no longer used.
* alpha-tdep.c (alpha_register_convert_to_raw,
alpha_register_convert_to_virtual): New routines to handle
the different raw formats in alpha floating point registers.
* config/alpha/tm-alpha.h (REGISTER_CONVERTIBLE,
REGISTER_CONVERT_TO_VIRTUAL, REGISTER_CONVERT_TO_RAW): Use them.
about SHIFT_INST_REGS.
* exec.c (exec_file_command): Set text_end based on all code readonly
sections, not just ".text".
* defs.h, infcmd.c, config/z8k/tm-z8k.h, config/m88k/tm-m88k.h,
config/sh/tm-sh.h, config/h8300/tm-h8300.h, config/h8500/tm-h8500.h,
z8k-tdep.c: Remove all references to ADDR_BITS_SET.
* config/m88k/tm-m88k.h: Define TARGET_WRITE_PC.
* config/m88k/tm-m88k.h: Add definitions for calling functions.
host.
* sh-tdep.c (frame_find_saved_regs): Use NUM_REGS rather than hard
wired (and wrong) constant.
* values.c (unpack_long): Add case to unpack when target object is
sizeof(int).
* config/sh/tm-sh.h (REGISTER_NAMES): Know about the news ones the
simulator defines.