(double_scan, multi_scan): generalize double_scan into a scan
for multiple patterns. Rename to multi_scan.
(bug_wait, bug_write_inferior_memory): adapt to use the new
multi_scan in order to catch and represent target bus errors.
(bug_scan): currently unused, so comment out.
(bug_quiet): removed. Replaced with a standard user settable boolean.
Set language for psymtab and symtab.
* mipsread.c (new_symbol): Set language and initialize demangled
name for symbol.
* symmisc.c (print_symbol): Use SYMBOL_SOURCE_NAME when printing
the symbol type.
* symtab.c (decode_line_1): Inhibit coredumps with cfront executables.
it conditionalized on 4.3 vs. 4.4.
* config/m68k/nm-hp300bsd.h: Move REGISTER_U_ADDR out of 4.3 and
4.4 sections; it was identical and now works for 4.4.
non-existent files nm-delta.h, etc.
* config/m68k/tm-delta68.h: Define CANNOT_STORE_REGISTER.
* delta68-nat.c: Add "[0]" in offsetof argument.
* delta68-nat.c (_initialize_kernel_u_addr): Don't try to set up
nl with initializer, just assign to it. Check n_scnum field on
return.
(FP_REGNUM): define in terms of SP_REGNUM
rather than by absolute number. Also clearly comment that this
is a convenient lie in order to decrease future confusion.
(ACTUAL_FP_REGNUM): new macro for FP.
(FRAME_CHAIN_VALID): removed. Standard default works fine.
* m88k-tdep.c (frame_chain_valid): redundant, so removed.
(NEXT_PROLOGUE_INSN): removed unused fourth arg, fixed all
callers.
(read_next_frame_reg): declare static.
(examine_prologue): removed unused variabel insn2, rename insn1
to insn, rewrote comment about finding fp, sp, etc. set frame_fp
based on ACTUAL_FP_REGNUM rather than FP_REGNUM which is
actually a scammed alias for SP_REGNUM on m88k.
the saved pc from sigcontext on the stack for BSD signal handling.
* config/i386/tm-i386bsd.h (SIGTRAMP_START, SIGTRAMP_END, FRAME_CHAIN,
FRAMELESS_FUNCTION_INVOCATION, FRAME_SAVED_PC, SIGCONTEXT_PC_OFFSET):
Define to make backtracing through sigtramp work.
* config/vax/tm-vax.h (SIGTRAMP_START, SIGTRAMP_END, TARGET_UPAGES,
FRAME_SAVED_PC, SIGCONTEXT_PC_OFFSET): Ditto.
Use the function name when calling IN_SIGTRAMP.
* config/m68k/tm-m68k.h (SIG_PC_FP_OFFSET, SIG_SP_FP_OFFSET):
Define for correct handling of bachtraces through _sigtramp.
* m68k-tdep.c (m68k_find_saved_regs): Adjust saved sp for fake
sigtramp frames.
* mipsread.c (parse_type): Handle corrupt TIR info with complaint
instead of core dump.
* mipsread.c (parse_partial_symbols): Put static symbols into the
mimimal symbol table, use proper mst_types for all minimal symbols.
* stack.c (frame_info, print_frame_info): Use the starting source
line number on a line boundary if backtracing through sigtramp.
simply save encode this fact as the process group and return
success rather than an error.
(set_tty_state): if process group is -1, do not reset the
process group.
(hardwire_reachar): comment change.
GDBSERVER_DEPFILES. Also remove much (but not all that could be
removed) crud inherited from gdb Makefile.in.
* config/i386/i386lynx.mh, config/sparc/sun4os4.mh: Define GDBSERVER_*.
* gdbserver/README: Say it works on Sun and change configuration
instructions slightly.
* core.c: Add commands to set and show it.
* Callers to bfd_*open*: Pass gnutarget instead of NULL as target.
* environ.c (set_in_environ): For GNUTARGET, use set_gnutarget not
putenv.
* symtab.c (decode_line_1): Give error on unmatched single quote.
function.
* dwarfread.c (add_partial_symbol): Remove code to add minimal
symbols and remove comment about limitations. Experiments show
that now that gdb handles the ELF symtab better for creating
minimal symbols, that no additional information is added by
examining the DWARF information, and in fact, given the
limitations, the DWARF code was actually making things worse.
from the data symbols and give them the correct minimal_symbol_type.
Add file static symbols to the minimal symbol table, not just
global symbols. Add absolute symbols as well (like _edata, _end).
Redo stabs-in-elf special symbol handling now that file static
symbols are entered into the into the minimal symbol table.
from the data symbols and give them the correct minimal_symbol_type.
Add file static symbols to the minimal symbol table, not just
global symbols. Ignore symbols that are section names and file names.
* dwarfread.c (add_partial_symbol): Add comment about limitations
of DWARF symbols for distinquishing data from bss when adding
minimal symbols. Add file local symbols to minimal symbols.
* gdbserver/remote-inflow.c (create_inferior): Fix comments, and
error msg. Setup seperate process group for child.
* (write_inferior_memory): Sleep for 1 second and retry on ptrace
failure.
* Makefile.in (CLIBS): Reorder to make Lynx ld happy.
* (HFILES): New file thread.h.
* (OBS): New file thread.c.
* configure.in: Host config for Lynx/386.
* fork-child.c (fork_inferior): Call init_thread_list().
* infrun.c (resume): Add pid to invocation of target_resume().
* (wait_for_inferior): Pay attention to pid from target_wait().
Multi-threading code now uses this to determine what to do.
* inftarg.c (child_wait): Conditionalize based on CHILD_WAIT macro.
Use target_pid_to_str() macro throughout when printing pid.
* inferior.h (child_resume): Add pid to prototype.
* hppab-nat.c hppah-nat.c infptrace.c (child_resume): Pass in pid as
argument, instead of using inferior_pid.
* procfs.c (procfs_resume): Pass in pid as argument. Ignored for
now. Use target_pid_to_str() macro throughout for printing process id.
* remote-adapt.c (adapt_resume): Pass in pid as argument.
* remote-eb.c (eb_resume): Pass in pid as argument.
* remote-es.c (es1800_resume): Pass in pid as argument.
* remote-hms.c (hms_resume): Pass in pid as argument.
* remote-mips.c (mips_resume): Pass in pid as argument.
* remote-mm.c (mm_resume): Pass in pid as argument.
* remote-monitor.c (monitor_resume): Pass in pid as argument.
* remote-nindy.c (nindy_resume): Pass in pid as argument.
* remote-sa.sparc.c (remote_resume): Pass in pid as argument.
* remote-sim.c (rem_resume): Pass in pid as argument.
* remote-sp64sim.c (simif_resume): Pass in pid as argument.
* remote-st.c (st2000_resume): Pass in pid as argument.
* remote-udi.c (udi_resume): Pass in pid as argument.
* remote-vx.c (vx_resume): Pass in pid as argument.
* remote-z8k.c (rem_resume): Pass in pid as argument.
* remote.c (remote_resume): Pass in pid as argument.
* solib.c (solid_create_inferior_hook): Pass inferior_pid to
target_resume().
* target.c (normal_pid_to_str): New routine to print out process
ID normally.
* target.h (struct target_ops): Add pid to prototype at
to_resume(). (target_resume): Add pid argument.
* (target_pid_to_str): Default definition for normal type pids.
* thread.c, thread.c: New modules for multi thread/process control.
* tm-hppa.h (TARGET_WRITE_PC): Define.
* hppa-tdep.c (hppa_fix_call_dummy): If in a syscall,
then return the address of the dummy itself rather than
the address of $$dyncall.
(target_write_pc): New function to store a new PC.
conditions, they might contain symbol table references.
* mipsread.c (parse_symbol): Handle opaque struct definitions and
type naming for stTypedef symbols.
was adequate in gdb 3.5 but not now.
* valops.c (typecmp): An array in t2 matches a pointer in t1.
* valops.c (typecmp): When comparing type1& to type2, compare
type1 and type2 as leniently as if we were comparing type1 to
type2.
baseclass doesn't have a name.
* values.c (vb_match): New function, which finds the virtual
base class pointer even if the types are nameless.
(baseclass_{addr,offset}): Use it.
* nindy-share/*, remote-nindy.c: Extensive hacking to make it
conform to GDB conventions like using memcpy not bcopy, serial.h,
etc. This is to make it host on Solaris, AIX, etc.
* Makefile.in: Reflect removed nindy-share files.
* config/i960/nindy960.mt (TDEPFILES): Remove ttybreak.o.
* nindy-share/*, remote-nindy.c: Extensive hacking to make it
conform to GDB conventions like using memcpy not bcopy, serial.h,
etc. This is to make it host on Solaris, AIX, etc.
* Makefile.in: Reflect removed nindy-share files.
<memory.h>.
Include <malloc.h> rather than declaring malloc functions ourself.
* ser-unix.c (set_tty_state): Don't ignore errors setting process
group.
* inflow.c (terminal_inferior): If attach_flag set, ignore errors
from set_tty_state.
we have breakpoints or watchpoints as we might have to ignore internal
breakpoints.
Fix gdb core dumps after `file newfile' commands.
* symtab.h, symfile.c (clear_symtab_users): New routine which
unconditionally clears symtab users. clear_symtab_users_once
commented out as it was a noop anyway.
* objfiles.c (free_objfile): Don't call clear_symtab_users_once.
* objfiles.c (free_all_objfiles), symfile.c (new_symfile_objfile),
xcoffexec.c (exec_close): Call clear_symtab_users if necessary.
* symfile.c (syms_from_objfile): Install cleanups for errors during
symbol reading.
* coffread.c, dbxread.c, mipsread.c, xcoffread.c (*_symfile_read):
Lint cleanup code, call do_cleanups explicitly.
* symfile.c (symbol_file_add): Call new_symfile_objfile and
reinit_frame_cache _after_ the new symbols are read in.
command. Now we use unwind info by default if we can find it.
* config/sparc: Move VARIABLES_INSIDE_BLOCK and SUN_FIXED_LBRAC_BUG
to tm-sparc.h so they are shared between Solaris and SunOS4.
* dbxread.c (process_one_symbol): Deal with SunOS4 acc N_STSYM and
N_GSYM functions.
(can't include it in nm-*.h file because it causes conflicts with
a.out symbol definitions).
* hp300ux-nat.c (fetch_core_registers): Commented out; obsolete.
* config/m68k/hp300hpux.mh (NATDEPFILES): Added coredep.o and
corelow.o.
* config/m68k/nm-hp300hpux.h (NEED_SYS_CORE_H): Defined.
(REGISTER_U_ADDR): Defined.
* config/m68k/xm-hp300hpux.h (HAVE_TERMIOS): Define instead of
HAVE_TERMIO.
* config/pa/xm-hppah.h: Likewise.
an stBlock, skip over the fields of the inner one.
* mips-tdep.c (init_extra_frame_info): If in lenient prologue, call
heuristic_proc_desc rather than just assuming registers not saved.
restrictions for mips hosts.
* config/mips/{xm-irix3.h, xm-mips.h, xm-news-mips.h, xm-riscos.h}:
Use it.
* mips-tdep.c (init_extra_frame_info): Do not check for
mips_in_lenient_prologue if it is a dummy frame.
`b 123' and `b foo' if foo is a static function.
* symtab.c (decode_line_1, decode_line_2): New argument `canonical'
to return canonical line specs if requested by the caller.
* breakpoint.c, source.c, symtab.c, symtab.h: Change prototypes and
callers accordingly.
* symtab.c (build_canonical_line_spec): New helper function which
constructs the canonical line spec.
* breakpoint.c (break_command_1): Use canonical line spec instead
of command string as addr_string if necessary.
* source.c (line_info): Fix storage leak.
but not the others.
* symm-tdep.c: Remove exec_file_command.
[_SEQUENT_] (ptx_coff_regno_to_gdb, register_addr): New functions.
A few miscellaneous cleanups.
* symm-nat.c: Renamed from symm-xdep.c.
* All symmetry dependent files: Many changes.
but not the others.
* symm-tdep.c: Remove exec_file_command.
[_SEQUENT_] (ptx_coff_regno_to_gdb, register_addr): New functions.
A few miscellaneous cleanups.
* symm-nat.c: Renamed from symm-xdep.c.
* All symmetry dependent files: Many changes.
Use read_memory_nobpt.
(is_delayed, mips_in_lenient_prologue): New functions.
(init_extra_frame_info): If in the prologue, don't use saved registers.
* config/mips/tm-mips.h: Declare mips_skip_prologue.
(find_proc_framesize): Return 0 for linker stubs.
(rp_saved): Tell the caller where rp is saved.
(frame_chain_valid): Return 1 for linker stubs.
(frame_saved_pc): Use return value from rp_saved.