values whose length is less than the register size for big endian
targets.
* alpha-tdep.c (alpha_extract_return_value,
alpha_store_return_value): Use alpha_convert_register_to_*
to handle functions returning "float" correctly.
read_next_frame_reg to alpha_find_saved_regs, handle saved
floating point registers.
* mips-tdep.c: Move sigtramp handling of saved registers from
read_next_frame_reg to mips_find_saved_regs, handle saved
floating point registers.
* config/mips/tm-irix3.h, config/mips/tm-irix5.h,
config/mips/tm-mipsv4.h (SIGFRAME_FPREGSAVE_OFF): Define.
* sparc-tdep.c (sparc_pc_adjust): Fix check for `unimp'
instruction to handle functions returning structures with
large sizes properly.
and for thread_alive change from a couple weeks ago.
(extended_remote_ops): Declare and define a new target vector
for the extended remote protocol.
(extended_remote_restart): New function to restart the remote
server & process.
(remote_open): Just a stub routine.
(extended_remote_open): New function to start a remote session
using the extended gdb remote protocol.
(remote_open_1): New function containing code common to both
remote_open and extended_remote_open.
(remote_mourn, extended_remote_mourn, remote_mourn_1): Similarly.
(extended_remote_create_inferior): New function for the extended
remote target.
(initialize_remote): Add the extended_remote_ops target vector.
* gdbserver/server.c (main, case '!'): Set extended_protocol.
(main, case 'k'): If the extended protocol is in use, kill the
inferior then start a new one.
(main, case 'R'): New command to restart the remote server and
inferior process. Only supported when using the extended
protocol.
(main, server loop): If the inferior terminates while using the
extended protocol then start a new one. If getpkt fails when
using the extended protocol then exit.
New extended remote gdb protocol support; intended mainly for use with
the gdbserver testing framework that I'll be checking in soon. Also
useful for interactive remote debugging since it supports "run".
means the process is single threaded, so there's no need to add
it to the thread list. Handle case where multi-threaded process
reverts back to a single-threaded process.
* infrun.c (wait_for_inferior): Set the convenience variable
$_exitcode to the termination code of the inferior.
* top.c (quit_command): Accept optional expression to use
as parameter to exit().
* gdbserver/Makefile.in (SFILES): Add low-hppabsd.c.
* config/hppabsd.mh (XDEPFILES): Add ser-tcp.o
(GDBSERVER_DEPFILES): Add low-hppabsd.o
* config/hppaosf.mh: LIkewise.
Needed this for the gdbserver framework development. Trying to avoid doing
development work on lynx for the obvious reasons.
* gdbserver/Makefile.in (SFILES): Add low-hppabsd.c.
* config/hppabsd.mh (XDEPFILES): Add ser-tcp.o
(GDBSERVER_DEPFILES): Add low-hppabsd.o
* config/hppaosf.mh: LIkewise.
Needed this for the gdbserver framework development. Trying to avoid doing
development work on lynx for the obvious reasons.
to char, since everything passed in and out of dcache is char or casted
to appropriate type anyway.
(dcache_alloc): Move assignment of db out of test and combine separate
tests into if-else.
(dcache_peek_byte): Change ptr from unsigned char* to char*.
(dcache_peek_byte): Remove now unnecessary cast in read_memory call.
(dcache_peek): Change cast of incoming data arg.
(dcache_poke): Change cast of addr of incoming data arg.
(dcache_info): Mask data passed to printf_filtered to lsbyte only.
(dcache_info): Change printf_filtered arg from "% 2x" to " %2x".
* target.c (debug_to_thread_alive): Change return type to int and
return zero, for type compatibility with other *_thread_alive funcs.
(cleanup_target): Change cast of ignore function to match type of the
to_thread_alive member.
* defs.h (error_hook): Add ATTR_NORETURN.
* defs.h (NORETURN, ATTR_NORETURN): Switch from volatile to
__attribute__ method with gcc 2.7, to avoid gcc 2.6.3 bug.
* remote.c (remote_wait): Cast first arg to strtol, strchr, and strncmp
to "const char *" from "unsigned char *".
(remote_wait): Cast arg to putpkt and strcpy from "unsigned char *" to
"char *".
(remote_wait): Change printf format for long arg from "%d" to "%ld".
(getpkt): Remove unused variable "bp".
(remote_fetch_word, remote_store_word): Ifdef out apparently unused
functions.
* breakpoint.c (watchpoint_check): Removed unused variables
"saved_level" and "saved_frame".
* valops.c (value_arg_coerce): Add other enum TYPE_CODE_* and
default cases to switch for completeness.
* infrun.c (wait_for_inferior): Enclose "have_waited" label
in #ifdef that matches the one in which it is referenced.
* ser-unix.c (hardwire_noflush_set_tty_state): Enclose otherwise
unused variable "state" in #ifdef that matches one in which it is
referenced.
* eval.c (evaluate_subexp_standard): Remove unused variable "var".
* eval.c (evaluate_subexp_standard): Remove unused variable "tmp_symbol".
* valarith.c (value_subscript): Remove unused variable "lowerbound",
which is redeclared in a nested scope prior to use.
* printcmd.c (print_frame_nameless_args): Use "%ld" to print long
arg, not "%d".
* {mem-break.c, remote-pa.c, remote.c, saber.suppress}:
Remove unused static var "check_break_insn_size".
* buildsym.c (finish_block): Add other enum LOC_* and default
cases to switch for completeness.
ch-lang.c (type_lower_upper): Removed unused label "retry".
Add other enum TYPE_* and default cases to switch for completeness.
* f-typeprint.c (f_type_print_args): Ifdef out unused function
that may be used someday when Fortran support is complete.
* ch-valprint.c (chill_print_type_scalar): Add other enum
TYPE_* and default cases to switch for completeness.
(chill_val_print): Remove unused local var "high_bound" that
is redeclared in a nested scope prior to use.
(chill_var_print): Use "%ld" to print long arg, not "%d".
* regex.c (re_compile_fastmap, re_match_2): Add remaining enum types
and default to switches for completeness.
* minsyms.c (lookup_minimal_symbol_text): Delete unused variable
"trampoline_symbol".
(prim_record_minimal_symbol_and_info): Return NULL rather than trash.
* elfread.c (elf_symtab_read): Don't dereference NULL returns from
record_minimal_symbol_and_info.
* f-lang.c (saved_function_list_end): Ifdef out unused variable
that may be used someday.
* f-valprint.c (f_val_print): Remove unused local variable "straddr".
(coffstab_build_psymtabs): Remove staboff and stabsize parameters.
Add textaddr, textsize, and stabs parameters.
* gdb-stabs.h (struct dbx_symfile_info): Remove text_sect field.
Add text_addr and text_size fields.
(DBX_TEXT_SECT): Don't define.
(DBX_TEXT_ADDR, DBX_TEXT_SIZE): Define.
* coffread.c: Include <ctype.h>.
(struct coff_symfile_info): Remove stabsect and stabindexsect
fields. Add textaddr, textsize, and stabsects fields.
(coff_locate_sections): Record the address of the .text section,
and total the sizes of all sections with names beginning with
".text". Don't bother to record a .stab.index section (COFF
doesn't use them). Make a linked list of all sections with names
beginning with ".stab".
(coff_symfile_read): Adjust call to coffstab_build_psymtabs for
new parameters.
* dbxread.c (dbx_symfile_read): Use DBX_TEXT_ADDR and
DBX_TEXT_SIZE, rather than getting both from DBX_TEXT_SECT.
(dbx_symfile_init): Set DBX_TEXT_ADDR and DBX_TEXT_SIZE, not
DBX_TEXT_SECT.
(elfstab_build_psymtabs): Likewise.
(stabsect_build_psymtabs): Likewise.
(symbuf_sections, symbuf_left, symbuf_read): New static variables.
(fill_symbuf): If symbuf_sections is not NULL, read symbols from
multiple sections.
(coffstab_build_psymtabs): Remove staboffset and stabsize
parameters. Add textaddr, textsize, and stabsects parameters.
Set DBX_TEXT_ADDR and DBX_TEXT_SIZE, not DBX_TEXT_SECT. Handle
multiple stabs sections.
* os9kread.c (os9k_symfile_read): Use DBX_TEXT_ADDR and
DBX_TEXT_SIZE, rather than getting both from DBX_TEXT_SECT.
(os9k_symfile_init): Set DBX_TEXT_ADDR and DBX_TEXT_SIZE, not
DBX_TEXT_SECT.
PR 7241.
for OSF/1-3.x procfs support.
* configure.in (alpha-dec-osf): Use them when configuring
for OSF/1-3.x.
* configure: Updated.
* target.c: Include <string.h>.
another, save infrun's state for the old thread and load infrun's
previous state for the new thread.
* thread.c (struct thread_info): Add new fields for thread specific
state saved/restored in infrun.c.
(add_thread): Initialize new fields.
(load_infrun_state): New function.
(save_infrun_state): New function.
* thread.h (load_infrun_state): Provide external decl.
(save_infrun_state): Likewise.
More single-stepping patches for lynx-6100.
wrong thread, make sure to write the fixed PC value into the thread
that stopped. Restart all threads after single stepping over a
breakpoint for a different thread.
* breakpoint.c (set_momentary_breakpoint): Make momentary
breakpoints thread specific in a multi-threaded program.
* lynx-nat.c (child_resume): Add some comments. Correctly
choose between the single and multi-threaded step and continue
ptrace calls.
Some of the lynx-6100 single stepping fixes.
should be char *, not unsigned char *.
* dcache.h (memxferfunc): Ditto.
* monitor.c (monitor_write_memory, monitor_read_memory_single):
Ditto.
(monitor_make_srec): Let compiler figure size of hextab.
to the top of child_wait; let the machine independent code in
wait_for_inferior deal with new thread notifications.
lynx-6100 (partial)
Fixes SEGV when multi-threaded program hits a breakpoint in a new
thread.
* monitor.c: Turn on caching.
(monitor_printf): If a ^C was sent, don't expect to see its
echo.
(monitor_open): Enable caching.
(monitor_resume, monitor_load): Flush cache.
(monitor_xfer_memory): Call cache routine.
(monitor_dump_regs): New.
(monitor_fetch_registers): If monitor_dump_regs available
then use it.
(monitor_load): Don't ref exec_bfd if it's NULL.
(monitor_load_srec): Use new monitor_make_srec calling convention.
(monitor_make_srec): Rewrite to cope with two, three and four byte
addresses.
* remote-hms.c (hms_cmds): Initialze end-of-command delim.
* dcache.h, dcache.h: Rewritten.
* remote.c: Reenable caching.
(getpkt): Reduce MAX_TRIES to 3.
(remote_xfer_memory): Use dcache_xfer_memory.
* defs.h (error_hook): New.
* top.c (error_hook): New definition.
* utils.c (error): Use error_hook if initialized.
* sparcl-tdep.c (HAVE_SOCKETS): Don't define if GO32 or WIN32. Use
HAVE_SOCKETS in place of #ifndef GO32.
(INSTRUCTION_NULLIFIED): Allow specific targets to override.
* config/pa/tm-hppao.h (INSTRUCTION_NULLIFIED): Define to work
around losing mach kernel behavior.
* (create_file_win create_asm_win build_framework): Create null
bindings for meta keys to keep window from dropping down to
insertion point when meta is pressed by itself. New bindings:
Up/Down - Scroll up/down one line at a time
Next/Prior - Scroll up/down one page at a time
Home/End - Warp to current pc/end of file
* (build_framework): Turn on breakpoint menu.
* (create_command_window): Implement tab completion. Add binding
for ^C to stop target.
Don't assume the first entry on dld's library list is the main
program. Don't load the same library more than once and don't
consider the main program a shared library.
(som_solib_sharedlibrary_command): New function
(_initialize_som_solib): Add "sharedlibrary" command.
mentor-7135
* remote-hms.c (hms_open): Make static.
* mpw-config.in (MacSerial.h): Copy from version in {CIncludes},
not {MPW}Interfaces:CIncludes.
* ser-mac.c (mac_baud_rate_table): Fix value for 38400 baud.
* expression.h (enum exp_opcode): Added UNOP_LOWER, UNOP_UPPER,
UNUP_LENGTH.
* expprint.c (dump_expression): Handle the new exp_opcodes.
(print_subexp): Handle PREC_BUILTIN_FUNCTION.
(print_simple_m2_func): Removed.
(print_subexp): Remove support for Modula2 builtin functions.
* m2-lang.c (m2_op_print_tab): Add support for builtin functions.
* ch-exp.y: Parse LOWER, UPPER, and LENGTH builtins.
(write_lower_upper_value): Convenience function for LOWER and UPPER.
(upper_lower_argument, length_argument): Removed non-terminals.
* ch-lang.c (chill_op_print_tab): Entries for UPPER, LOWER, LENGTH.
(type_lower_upper): New function. Calculate LOWER/UPPER of type.
(value_chill_length): New function. Calcalate LENGTH of ARRAY/STRING.
(evaluate_subexp_chill): Handle UNOP_LOWER, UNOP_UPPER, UNOP_LENGTH.
This fixes PR 5015 (and 5826 which is a duplicate).
* defs.h: Don't declare strchr and friends if WIN32.
(DIRNAME_SEPARATOR): Move here from source.c.
(SLASH_P, SLASH_CHAR, SLASH_STRING, ROOTED_P): New macros,
symbolic definitions for filename bits.
* top.c (cd_command): Use these.
* source.c (mod_path, openp): Ditto.
* terminal.h: Disable termio/sgtty definitions if WIN32.
* findvar.c (registers_changed): Call registers_changed_hook
if it is defined.
for `watchdog' variable. This allows the user to put an upper
limit on the amount of time that GDB will wait for the target to
return from a step or continue operation. This will primarily be
used for the testsuite, where it is difficult to come up with a
reasonable timeout for things like function calls, which can take
as long as three minutes under some circumstances. If the
watchdog timer expires, GDB will generate an error that looks like
`Watchdog has expired.', and will detach from the target.
* remote-mips.c (mips_open): Setup initial frame from target.
Print it out so that user is told where the program is stopped
when they attach.
* remote-nrom.c: Loads of cleanups. Use serial code to open
network connections. Use expect() to wait for response to
download command.
* ser-tcp.c (tcp_open): Retry connection if we get ECONNREFUSED.
* serial.c serial.h (serial_open serial_fdopen serial_close):
Allow users to open the same device multiple times. They all get
to share the same serial_t. This is about the only way to have
multiple active targets use the same device (for download and
debug).
* sparcl-tdep.c: Keep #include <unistd.h> away from GO32.
* target.c: Add `targetdebug' variable. If this is non-zero,
then a special target is put at the top of the target stack which
will cause all calls through the target vector to have their args
and results printed out.
(codestream_fill): Handle byte order differences.
(setup_prologue_scan): Don't read stdarg function's "sub sp,sp,N".
(arc_get_frame_setup): Read it here.
(arc_frame_saved_pc): And here.
(arc_print_insn): New function.
(arc_set_cpu_type): Set arc_bfd_mach_type. Don't set tm_print_insn.
(_initialize_arc_tdep): Set tm_print_insn to arc_print_insn.
cpufile. Awk is not a utility required by the GNU coding
standards. This change also fixes the rigid whitespace
requirements that were required for awk.
stream for i/o with target board.
Use #error if HAVE_TERMIOS is not defined.
* sparclite/{Makefile.in, configure.in}: Converted to use
autoconf.
* sparclite/configure: New file, generated with autoconf 2.3.
hostfile, targetfile and nativefile. Awk is not a utility
required by the GNU coding standards. This change also
fixes the rigid whitespace requirements that were required
for awk.
* configure: regenerated.
target.h.
* target.h: Macros from breakpoint.c. Conditionalize based on
TARGET_HAS_HARDWARE_WATCHPOINTS.
* i386v-nat.c procfs.c: Use TARGET_HAS_HARDWARE_WATCHPOINTS
instead of TARGET_CAN_USE_HARDWARE_WATCHPOINT to enable watchpoint
code.
* config/i386/nm-linux.h, config/mips/nm-irix4.h,
config/pa/nm-hppab.h, config/sparc/tm-sparclite.h: #define
TARGET_HAS_HARDWARE_WATCHPOINTS to enable watchpoint code.
and stop_pc, and STOPPED_BY_WATCHPOINT code, back where they
were--after the switch statement on w.kind. You can't read the
registers of an inferior which has exited. Use a goto in the
STOPPED_BY_WATCHPOINT code.
* infrun.c (wait_for_inferior): Reinstate
HAVE_STEPPABLE_WATCHPOINT and HAVE_CONTINUABLE_WATCHPOINT code.
remote-mips.c, remote-os9k.c, remote-st.c: Conditionalize use of
stdarg rather than varargs on ANSI_PROTOTYPES not __STDC__; it
must match the definition of PARAMS.
start-sanitize-gdbtk
* gdbtk.c: Likewise.
end-sanitize-gdbtk
* xcoffsolib.c (sharedlibrary_command): New command.
* xcoffsolib.c (solib_info): Call xcoff_relocate_symtab.
* xcoffsolib.c: Miscellaneous cleanups.
* partial-stab.h: Ignore symbol descriptor '-' (for local
variables with negative type numbers) without complaint.
* rs6000-nat.c (vmap_ldinfo): Use bfd_stat rather than our own
local emulation thereof. Remove unused variable ostart.
error message to work with pre-ansi compilers.
(monitor_load_srec): reduced length of s-records from 128 to 32
bytes so download is more reliable with the rom68k monitor.
* rom68k-rom.c: Added trailing space to prompt string.
* config/i386/xm-i386sco.h (HAVE_STRSTR): Removed.
* config/i386/xm-go32.h, mswin/xm.h (SYS_SIGLIST_MISSING):
Removed.
* defs.h, config/{xm-lynx.h, xm-nbsd.h},
config/i386/{xm-i386bsd.h, xm-linux.h},
config/m68k/xm-hp300bsd.h, config/mips/xm-irix4.h,
config/ns32k/xm-ns32km3.h, doc/gdbint.texinfo
(PSIGNAL_IN_SIGNAL_H): Removed.
symbols, their value is the displacement from the procedure address.
* top.c (init_main): Add missing newlines to help strings for
`if' and `while' commands, fix help string for `show commands'.
target.h. Use BP_TEMPFLAG and BP_HARDWAREFLAG instead of
constants.
* infrun.c (wait_for_inferior): Enhance comment near
STOPPED_BY_WATCHPOINT.
* target.h: Macros from breakpoint.c.
config/m68k/m68kv4.mh, config/mips/{irix4.mh, irix5.mh,
mipsv4.mh}, config/sparc/sun4so2.mh (INSTALL): Removed, figured
out by autoconf.
* config/apollo68v.mh (RANLIB): Removed, figured out by autoconf.
* Makefile.in, configure.in: Converted to use autoconf
* aclocal.m4: New file, local autoconf macro definitions.
* configure: New file, generated with autoconf 2.3.
into a variable (__WINSIZE) so that it can be controlled via the
.h file.
* sparclite/sparclite.h: Add SL933 #ifdef to set __WINSIZE to 6
for the 933 board.
trap_expected_after_continue.
* (wait_for_inferior): Fix for remote watchpoints. Don't try to
insert breakpoints while target is running (this only works on
*some* native targets). This may also speed up native watchpoints
considerably.
* symfile.c, symfile.h (init_psymbol_list): New function;
consolidate duplicated copies from os9kread.c, dbxread.c
and dwarfread.c.
* defs.h: Declare info_verbose.
* xcoffread.c: Extensive changes to support psymtabs.
* (unwind_command): Clean it up and make it print things out
nicer.
* monitor.c: Add ^C handling capability (mostly ripped off from
remote.c).
* (monitor_printf): Make it check the command echo.
* (monitor_printf_noecho): Similar to above, but doesn't check
for echo.
* (monitor_stop): No longer waits for prompt. That is the job of
the caller. This makes things work much better for monitor_wait,
which waits for the prompt itself.
* (monitor_open): Deal with new monitor_stop semantics. Also,
flush input after sending init strings to get rid of junk that may
be output. Also, don't always send \r to remote. Use
monitor_ops->line_term cuz proper character isn't always \r.
* (monitor_fetch_register): Switch to completely different
algorithm to deal with lame-ass monitors which put spaces in the
middle of numbers, and prompt with a space!!!!!
* (monitor_read_memory_single): New routine to be used with
monitors that can only return one byte/short/long at a time. This
is selected via MO_GETMEM_READ_SINGLE.
* (monitor_load_srec): Use monitor_printf_noecho for sending S
records. Most targets don't echo them.
* (monitor.h): Get rid of cmd_delim. Add line_delim.
* op50n-rom.c (op50n_cmds): Fill it up. Make it work.
* w89k-rom.c: Change all eols from \r to \n. Change load_resp to
^Q to prevent error message.
* config/pa/tm-hppa.h (CALL_DUMMY (for hppro)): Add special
instruction sequence at end to make restore_pc_queue happy.
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.
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.
* 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.
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.
* 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.
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.
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.
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.
argument be an int, not a char. Using a prototype followed by an
old-style function definition in a case where an argument is
widened is a GCC-ism not supported by the native AIX compiler.
that contains a static instance of the class.
* cp-valprint.c (dont_print_vb_obstack): Renamed from
dont_print_obstack, made static.
(dont_print_statmem_obstack): New obstack, controls printing
of static member classes.
(_initialize_cp_valprint): Initialize it.
(cp_print_static_field): New function, handles printing of
static members.
(cp_print_value_fields): New parameter dont_print_statmem to
handle recursive printing of static member classes, use
cp_print_static_field to handle printing of static members.
* c-valprint.c (cp_print_value_fields): Update prototype and
call to include additional dont_print_statmem parameter.
* c-valprint.c, f-valprint.c (dont_print_obstack): Remove unused
extern declaration.
* alpha-tdep.c, findvar.c, infptrace.c: Include <string.h>.
* config/alpha/tm-alpha.h (FRAME_FIND_SAVED_REGS): Call
alpha_find_saved_regs if fi->saved_regs is still NULL.
* elfread.c (elf_symtab_read): Ensure that the filename field
of a minsym is nonempty. Ignore solib trampoline symbols from
the main symbol table, they might have a bogus value.
* procfs.c (set_proc_siginfo), config/alpha/alpha-osf2.mh:
Fix typos in comments.
pdr.framereg field of MIPS_EFI_SYMBOL_NAME symbol to -1. That way
we know whether the PDR ever got set.
* mips-tdep.c (find_proc_desc): If pdr.framereg field is -1, don't
use the PDR, just examine prologues instead.
convenience variable $_ to be the line # of the match.
* symtab.c (decode_line_1): Allow convenience variables to be
used in line specs (for breakpoints and such).
Sun make (with VPATH) work...
* monitor.c monitor.h rom68k-rom.c: Serious cleanup to make IDP
(rom68k) target work right.
* array-rom.c op50-rom.c w89k-rom.c: Partial updates to new
monitor.c interface. More work needs to be done here.
* config/m68k/tm-monitor.h: Change DECR_PC_AFTER_BREAK to 0 to
match the IDP monitor. Also, set NUM_REGS to 18 cuz there's no
floating-point for this card.
we coerce array to pointer (in case arg2 is already array).
* valops.c (call_function_by_hand): Set using_gcc to 2 if using
gcc2. Needed for REG_STRUCT_HAS_ADDR to work on sparc.
Also check REG_STRUCT_HAS_ADDR for union, array and string types.
* valops.c (call_function_by_hand): Re-arrange code for pushing
paramaters on the stack so we can do better STACK_ALIGN.
* valops.c (call_function_by_hand): Call error if the number
of arguments is fewer than parameter types in function type.
sparc64 support to here.
(sparc64_extract_struct_value_address): Deleted.
(dump_ccreg): Add a prototype so long long arg -> int.
* sparc/tm-sp64.h (USE_STRUCT_CONVENTION): Define.
(EXTRACT_STRUCT_VALUE_ADDRESS): Delete.
callers changed. Use it to handle dynamic address relocation.
(hpread_build_psymtabs): Adjust texthigh as we read each function
debug symbol. Fix computation of texthigh.
(hpread_read_subrange_type): Work around macro bugs in HP's
compilers.
(hpread_process_one_debug_symbol): Correctly map source lines.