* Makefile.in (REMOTE_OBS): Rename from REMOTE_O, append
value of NETROM_OBS.
(NETROM_OBS): New variable.
* remote-nrom.c: New file, NetROM target support.
* config/a29k/a29k-udi.mt, config/i960/vxworks960.mt: Use
REMOTE_OBS instead of REMOTE_O.
start-sanitize-arc
* config/arc/arc.mt: Ditto.
end-sanitize-arc
for text symbol only.
* breakpoint.c (create_longjmp_breakpoint): call
lookup_minimal_symbol_text instead of lookup_minimal_symbol.
* symtab.h: add lookup_minimal_symbol_text prototype.
Use targetname, serialport and baud variables instead of fixed
constants.
* config/rom68k.exp: Fix copyright and comments. Remove dead code.
* config/cpu32bug.exp: New file to support cpu32bug monitors.
constants into PA instructions.
* Put #ifdefs around all signal handling code. Not generally
needed for embedded boards.
* (hppa_fix_call_dummy): Parameterize offsets into call dummy to
allow different dummys to be used by this code. Use
INSTRUCTION_SIZE instead of REGISTER_SIZE for things.
Conditionalize setup of _sr4export fixup. Improve comments.
* config/pa/tm-hppa.h: Define INSTRUCTION_SIZE. Use a different
call dummy if PA_LEVEL_0 is defined. Better comments for call
dummys. Define offsets for LDIL/LDO instructions which load
function addresses.
* config/pa/tm-pro.h: Get rid of signal handling stuff. Define
PA_LEVEL_0 to disable mucking with space regs and such.
unnecessary remoteloadprotocol and remoteloadtype support.
* (expect expect_prompt): Change names to monitor_expect and
monitor_expect_prompt. Make them global.
* (printf_monitor): Change name to monitor_printf. Make global.
* (monitor_read_memory): Flush command echo to avoid parsing
ambiguity with CPU32Bug monitor.
* (monitor_load): Remove remoteloadprotocol and remoteloadtype
support. Call target_ops->load_routine, default to
monitor_load_srec.
* (monitor_load_srec): Remove everything but S-record support.
* monitor.h (monitor_ops): Add load_routine to provide monitor
specific download capability.
* remote-est.c: Clean up copyrights and comments.
* w89k-rom.c: Use new xmodem support.
* xmodem.c xmodem.h: New files to support xmodem downloads.
* rom68k-rom.c remote-est.c: Fix copyrights, add load_routine
entry to monitor_ops.
* cpu32bug-rom.c: New file to support Moto BCC debuggers.
* config/m68k/est.mt (TDEPFILES): Add cpu32bug.o.
* config/pa/hppapro.mt (TDEPFILES): Add xmodem.o.
* alpha-tdep.c (alpha_push_arguments): Fix typo (TYPE_VALUE ->
VALUE_TYPE). Do the cast for TYPE_CODE_BOOL, TYPE_CODE_CHAR,
TYPE_CODE_ENUM, and TYPE_CODE_RANGE as well as TYPE_CODE_INT.
Sat Apr 15 14:04:32 1995 Per Bothner <bothner@cygnus.com>
* alpha-tdep.c (alpha_push_arguments): Only cast to long for
TYPE_CODE_INT.
consistency with error_begin. Also print warning_pre_print.
Document it better.
* utils.c (warning): Use it.
* utils.c (error_begin): Doc fix.
* rs6000-nat.c (vmap_ldinfo): If symfile_objfile is not part of
any vmap, nuke it.
* TODO: Remove item about printing variables in nodebug.exp. Add
item about enabling tests which are only run on some targets.
* gdb.base/watchpoint.exp: Various cleanups (make each test pass or
fail, make test names unique, use new gdb_test convention
regarding pattern, use gdb_test more, etc.).
short.
* gdb.base/nodebug.exp: Remove xfails for ecoff systems, they
are fixed by the recent mdebugread.c changes. Allow `short ()'
as type for top and middle.
nodebug_var_symbol_type as type of variables which don't have any
ecoff debug info associated with them.
(parse_symbol, parse_procedure): Use heuristics to determine if
functions were compiled without debugging info and change their
type to nodebug_function_symbol_type.
(_initialize_mdebugread): Initialize nodebug_*_symbol_type.
* source.c (line_info): Clear sal.pc for `info line' without
arguments.
send_xmodem_packet shows up to do the obvious. Lots of fixes to
xmodem downloads including resetting of block number at start of
new transfers, fix for buffer overrun problem, addition of CRC
generation code.
* (monitor_open): loadtype_str and loadproto_str now default to
first entry in monitor_ops->loadtypes.
* (monitor_wait): Lengthen register dump buf, because of verbose
Winbond monitor.
* (monitor_fetch_register): Report unimplemented registers as 0.
* (monitor_read_memory): Only do 16 byte aligned transfers
because of formatting weirdness with the Winbond monitor. Also,
ignore non-hex, non-whitespace formatting between bytes (same
monitor).
* (monitor_load): Clean up logic.
* (monitor_load_srec): Re-do xmodem support. Move lots of it
into send_xmodem_packet.
* (getacknak): Get rid of polls and timeouts. Handle CRC
requests from receiver.
* (monitor_make_srec): Efficiency improvements. Don't call
sprintf to output two digit hex numbers.
* (crcinit, docrc): New, CRC-16 support routines.
* (send_xmodem_packet): New routine to generate either CRC-16 or
checksummed xmodem packets.
* remote-est.c (est_loadtypes), rom68k-rom.c (rom68k_loadtypes):
Reduce tables down to only the load types supported by each
monitor.
* w89k-rom.c (w89k_supply_register): Parses output of Winbond
register dumps.
* (w89k_loadtypes, w89k_loadprotos): Reduce to just srec/xmodem.
* (w89k_cmds): Add clear all breakpoints, memory fill, and dump
registers commands.
nearly as I can tell, the whole thing was an accident in Stu's
change of 24 Mar 1995 (logged in ../ChangeLog), in which he meant
to replace a send/expect pair with gdb_test, but ended up only
adding the gdb_test. My change of 24 Mar 1995 and Kung's change
of 30 Mar 1995 took care of it, but left this vestigial comment
which I am now nuking.
* monitor.c (monitor_read_memory): Use previously mentioned flag
to send proper format memory examine commands to the w89k monitor.
Also, try to handle bizarre format of memory dump...
* op50-rom.c w89k-rom.c: Update to new monitor.[ch] conventions.
* Makefile.in (gdbtk.o): Use X11_CFLAGS to provide alternate
locations (per-host) for X11 include files.
* config/pa/hppahpux.mh (XM_CLIBS): Add -L/usr/lib/X11R5 to force
the use of R5 libs. (X11_CFLAGS): Add this to indicate the locs
of the R5 include files.
end-sanitize-gdbtk
* monitor.c monitor.h remote-est.c rom68k-rom.c: Add start of
support for interrupting target.
* monitor.c (monitor_open): Send stop command before doing
anything else.
* (monitor_load_srec): Fix record size calculation to prevent end
of segment from getting trashed.
* rom68k-rom.c: Update to latest version of struct monitor_ops.
* config/sparc/tm-sparc.h (FIX_CALL_DUMMY): Fix byte-order
problems. Makes DOS hosted function calling work.
* sparclite/crt0.s: Define _start to make COFF happy.
* testsuite/config/rom68k.exp (gdb_target_rom68k): Use
$targetname, $serialport and $baud instead of hardwired variables.
* testsuite/gdb.base/{sigall.exp signals.exp}: Skip these if the
target doesn't support signals.
set, set TYPE_FLAG_TARGET_STUB.
(check_stub_type): Recalculate TYPE_LENGTH for range type.
* stabsread.c (read_range_type): If index type number is followed
by '=', back up, call read_type. and assume we have a true range.
* gdbtypes.h (TYPE_FLAG_TARGET_STUB): Update comment.
This fixes PR 6632.
sparc-tdep.c (supply_gregset, supply_fpregset): Fill inaccessible
registers with zero to handle recent read_register_bytes change.
* irix4-nat.c, irix5-nat.c, mipsv4-nat.c (supply_gregset,
fill_gregset): Fix handling of CAUSE_REGNUM.
* mips-nat.c (store_inferior_registers): Handle unwritable
registers when storing a single register.
* config/mips/tm-irix3.h (CAUSE_REGNUM, BADVADDR_REGNUM):
Fix definitions.
* mdebugread.c (parse_symbol, psymtab_to_symtab_1): Clear
allocated mips_extra_func_info, if the debug info is corrupt,
the PDR to fill it in might be missing.
reason for skipping the warning was that configure.in sometimes
intentionally skipped building the executables but the tcl code
had no way of knowing. That (a) was always bogus with respect to
error handling, (b) is no longer true (right now there is no way
to skip C++ tests).
* gdb.c++/demangle.exp: Remove unused binfile and srcfile variables.
(sunpro_static_transform_name): Renamed from
solaris_static_transform_name.
* config/sparc/tm-sun4os4.h (STATIC_TRANSFORM_NAME):
Define to sunpro_static_transform_name for acc 3.0 compiled
executables.
with the real source file name.
* dbxread.c (end_psymtab): Handle static functions in the
SOFUN_ADDRESS_MAYBE_MISSING case by passing pst->filename
to lookup_minimal_symbol.
(process_one_symbol): Ignore extra outermost context from
SunPRO cc and acc.
* stabsread.c (define_symbol): Do not complain for SunPRO
static variable encoding if STATIC_TRANSFORM_NAME is defined.
* sparc-tdep.c, config/sparc/tm-sun4sol2.h
(sunpro_static_transform_name): Renamed from
solaris_static_transform_name.
* config/sparc/tm-sun4os4.h (STATIC_TRANSFORM_NAME):
Define to sunpro_static_transform_name for acc 3.0 compiled
executables.
* procfs.c, config/alpha/nm-osf2.h (PROCFS_DONT_TRACE_FAULTS):
Renamed from PROCFS_DONT_TRACE_IFAULT, don't trace any faults
if defined.
* procfs.c (info_proc_siginfo): Cast sip->si_addr to
`unsigned long' and use `lx' format for printing it.
number (we are already testing that the correct source line text
gets printed).
* gdb.base/break.exp: Make one test if $usestubs. I'm not sure
that is what is intended, but something needed to be done to get
sunos4 native working again.
* gdb.c++/misc.cc (main): Fix typo (#iffef -> #ifdef).
* findvar.c: Move default def of CANNOT_STORE_REGISTER closer to
the beginning of the code.
* (write_register_gen): New routine. Analogous to
read_register_gen.
* (write_register_bytes): Another rewrite! Make it smarter about
not updating regs with the same value.
* monitor.c (printf_monitor readchar): Use stderr instead of
stdout to output debug info. Also cleanup readchar a little.
* (expect): Make sure that excessive responses are null
terminated.
* (monitor_open): Check for magic number in monitor_ops struct.
Allow multiple commands as init strings. Also, clear all
breakpoints.
* (monitor_resume monitor_wait): Send a command to dump all the
regs for those targets which don't do so when waking up after a
continue command.
* (monitor_wait): Handle excessive response output better.
* (monitor_write_memory): Use block fill, word, and long word
commands (if they exist) to write memory more efficiently.
* General cleanups to use flag bits instead of individual flag
words in monitor_ops struct.
* (monitor_command): Return output from command.
* (monitor_load_srec): Allocate buffer only once. Use alloca.
Wait for load response string instead of using a timeout to start
sending S-records. Fix bug where value of srec_frame shrinks. If
hashmark is set, print `-' for retransmissions. General cleanups.
* (monitor_make_srec): Get rid of S-record default type kludge.
* monitor.h: Use seperate struct for memory and register
read/write commands. Memory commands can come in byte, word,
long, and longlong forms.
* (monitor_ops): Change lots of fields. Generalize some stuff.
Put all flags into flags word. Allow init to be a list of commands.
Add command for clearing all breakpoints, block fill, dumping all
registers.
* remote-est.c: Rewrite to use new monitor conventions.
* config/m68k/est.mt (TDEPFILES): Add monitor.o.
* config/m68k/tm-est.h: Set NUM_REGS to 18.
* testsuite/gdb.base/break.exp: Lots of cleanups. Use gdb_test
more thoroughly.
* findvar.c: Move default def of CANNOT_STORE_REGISTER closer to
the beginning of the code.
* (write_register_gen): New routine. Analogous to
read_register_gen.
* (write_register_bytes): Another rewrite! Make it smarter about
not updating regs with the same value.
* monitor.c (printf_monitor readchar): Use stderr instead of
stdout to output debug info. Also cleanup readchar a little.
* (expect): Make sure that excessive responses are null
terminated.
* (monitor_open): Check for magic number in monitor_ops struct.
Allow multiple commands as init strings. Also, clear all
breakpoints.
* (monitor_resume monitor_wait): Send a command to dump all the
regs for those targets which don't do so when waking up after a
continue command.
* (monitor_wait): Handle excessive response output better.
* (monitor_write_memory): Use block fill, word, and long word
commands (if they exist) to write memory more efficiently.
* General cleanups to use flag bits instead of individual flag
words in monitor_ops struct.
* (monitor_command): Return output from command.
* (monitor_load_srec): Allocate buffer only once. Use alloca.
Wait for load response string instead of using a timeout to start
sending S-records. Fix bug where value of srec_frame shrinks. If
hashmark is set, print `-' for retransmissions. General cleanups.
* (monitor_make_srec): Get rid of S-record default type kludge.
* monitor.h: Use seperate struct for memory and register
read/write commands. Memory commands can come in byte, word,
long, and longlong forms.
* (monitor_ops): Change lots of fields. Generalize some stuff.
Put all flags into flags word. Allow init to be a list of commands.
Add command for clearing all breakpoints, block fill, dumping all
registers.
* remote-est.c: Rewrite to use new monitor conventions.
* config/m68k/est.mt (TDEPFILES): Add monitor.o.
* config/m68k/tm-est.h: Set NUM_REGS to 18.
* testsuite/gdb.base/break.exp: Lots of cleanups. Use gdb_test
more thoroughly.
runto_main is a proc in gdb.exp that will do 'step' for target use
stubs.
* gdb.base/exprs.exp: ditto.
* gdb.base/interrupt.exp: ditto.
* gdb.base/opaque.exp: ditto.
* gdb.base/printcmds.exp: ditto.
* gdb.base/ptype.exp: ditto.
* gdb.base/scope.exp: ditto.
* gdb.base/setvar.exp: ditto.
* gdb.base/signals.exp: ditto.
* gdb.base/twice.exp: ditto.
* gdb.base/break.exp: no run and hit main for stubs. Change line
numbers for breakpoints and info breakpoint.
* gdb.base/break.c: Add #ifdef usestubs for set_debug_traps() and
breakpoint().
* gdb.base/callfuncs.c: ditto.
* gdb.base/exprs: ditto.
* gdb.base/interrupt.c: ditto.
* gdb.base/opaque0.c: ditto.
* gdb.base/printcmds.c: ditto.
* gdb.base/ptype.c: ditto.
* gdb.base/scope0.c: ditto.
* gdb.base/setvar.c: ditto.
* gdb.base/signals.c: ditto.
* gdb.base/twice.c: ditto.
somewhere between `read' and `main.c'. I'm pretty sure the
pattern ".*#\[0-9\].*" was slowing down pattern matching a lot,
and it isn't particularly useful.
* TODO: Remove "handle all print". Also remove item about
checking copyright date (I don't like the idea of a spurious FAIL
based on when we run the tests).
these routines much smarter about updating registers from the
target, only doing so when absolutely necessary. This really
speeds up register modification on some remote targets.
* monitor.c: More cleanups. Get rid of monitor_load_ascii_srec.
BFD makes this unnecessary. Lots of debugging speedups.
* (expect): NULL terminate return string.
* (monitor_open monitor_supply_register parse_register_dump
monitor_wait monitor_fetch_register): Switch to using GNU regexp
library to parse multi-register displays.
* (monitor_read_memory): Read multiple bytes (up to 16) at once.
* (monitor_create_inferior): Call clear_proceed_status to make run
command notice first breakpoint.
* (monitor_load): Clean up. Reset inferior_pid, set pc to start
address and reset symbol table stuff to make loads put things into
a fresh state.
* (monitor_load_srec): Lower sleep time to 1 second.
* monitor.h (struct monitor_ops): Add register_pattern and
supply_register to monitor_ops.
* rom68k-rom.c: Add new support for handling register dumps.
* config/m68k/tm-m68k.h: Define D0_REGNUM and A0_REGNUM for register
dump handling.
CANNOT_STORE_REGISTER to a better place. Fixes ptrace I/O errors
found by test suite during function calls, which attempts to write
unwritable registers.
(sh-hitachi-hms): New target.
* mpw-make.in (BISON): Use byacc instead of bison.
(VERSION): Bump to 4.14.1.
(*-pinsn.*): Remove mentions everywhere.
(all): Don't build MacGDB.
(gdb, SiowGDB): Depend on Version.r.
(Version.r): Generate from version info.
* main.c (main): Pass program name to START_PROGRESS, END_PROGRESS.
(main) [MPW]: Remove debugging hook.
* mac-xdep.c (debug_openp): New flag.
(mac_init): Set flag if env variable defined.
* ser-mac.c (mac_open): Clarify error message.
(mac_readchar): Call PROGRESS while looping.
(mac_write): Call sleep instead of sec_sleep.
(sec_sleep): Remove.
* source.c (openp) [MPW]: Only print debugging info if debugging.
* utils.c (query) [MPW]: Clarify that behavior is a bug.