* inflow.c, ser-unix.c, ser-go32.c, ser-tcp.c, serial.h,
terminal.h: Move all the process group stuff back to inflow.c;
that's a better place for it and fixes problems with trying to get/set
the process group of a tty we're doing remote debugging on.
* terminal.h: Skip the redefine crap if HAVE_TERMIOS.
* c-exp.y, m2-exp.y: Call it instead of having our own switch on
the symbol's class.
* valops.c (value_of_variable): Use symbol_read_needs_frame to
decide whether we care about finding a frame.
New functions.
* infrun.c (normal_stop): Don't try and set the pc in the current
frame coredump if there isn't one.
* remote-sim.c (gdbsim_store_register): Don't
SWAP_TARGET_AND_HOST, sim_store_register takes bytes in raw order.
(gdbsim_wait): Set status with WSETSTOP.
* config/h8300/tm-h8300.h (sr_get_debug): Define
* config/i386/i386mach.c: Explain this is for the old (probably
non-functional and/or obsolete) Mach stuff.
* m3-nat.c, config/nm-m3.h,
i386m3-nat.c, mipsm3-nat.c, ns32km3-nat.c,
config/i386/{i386m3.mh,i386m3.mt,tm-i386m3.h,xm-i386m3.h},
config/i386/{i386mk.mh,i386mk.mt,tm-i386mk.h,xm-i386mk.h},
config/mips/{mipsm3.mh,mipsm3.mt,tm-mipsm3.h,xm-mipsm3.h},
config/ns32k/{ns32km3.mh,ns32km3.mt,tm-ns32km3.h,xm-ns32km3.h}:
New files.
PSYMTAB_TO_SYMTAB, call target_terminal_ours_for_output first.
This is needed now that wait_for_inferior passes in endaddr.
* infrun.c: Move call to target_terminal_inferior from proceed
to resume.
beyond the end of the last function in an objfile.
* coff-solib.c (coff_solib_add): Use BFD to get fields from .lib
section.
* infrun.c (wait_for_inferior): Modify test for subroutine entry
to include pc out of bounds of the previous function.
* remote.c (remote_wait): Use strtoul for parsing 'N' message.
Add code to relocate symfile_objfile->sections.
that clears the `inserted' flag for all breakpoints and deletes
any breakpoints which should go away between runs of programs.
* inflow.c (generic_mourn_inferior), infrun.c (init_wait_for_inferior),
remote-es.c (es1800_load), comments in exec.c and corelow.c:
Use it instead of mark_breakpoints_out.
* breakpoint.c (mark_breakpoints_out): Update comment, tm-rs6000.h
uses it in a completely different context.
* breakpoint.c (breakpoint_re_set_one): Add bp_call_dummy case.
regex.c to be consistent across hosts.
* source.c (_initialize_source): Initialize regex to use grep
style syntax as an approximation to POSIX basic regex syntax.
understand what it is trying to do, but I suspect it's not doing
it.
* config/ns32k/merlin.mh: Add comment about M_INSTALL.
* config/m88k/{delta88.mh,delta88v4.mh}: Remove M_INSTALL and
M_UNINSTALL; it tries to install a non-existent file gdb.z.
* Makefile.in: Remove M_INSTALL stuff; the above were the only uses.
* alpha-nat.c, alpha-tdep.c, config/alpha/alpha-osf1.mt,
config/alpha/nm-alpha.h, config/alpha/tm-alpha.h, osfsolib.c:
New files.
* Makefile.in: Add new files and dependencies.
* configure.in: Add alpha target.
* config/alpha/alpha-osf1.mh (NATDEPFILES): Add osfsolib.o
* config/alpha/alpha-osf1.mh (MH_CFLAGS): Remove, we can handle
shared libraries now.
* config/alpha/xm-alpha.h: Cleanup, get MAKEVA_* defines right.
* defs.h (CORE_ADDR): Make its type overridable via CORE_ADDR_TYPE,
provide `unsigned int' default.
* breakpoint.c (breakpoint_auto_delete): Delete only if we really
stopped for the breakpoint.
* stabsread.c, stabsread.h (define_symbol): Change valu parameter
to a CORE_ADDR.
* stabsread.c (read_range_type): Handle the case where the lower
bound overflows and the upper doesn't and the range is legal.
* infrun.c (resume): Do not step a breakpoint instruction if
CANNOT_STEP_BREAKPOINT is defined.
* inferior.h (CALL_DUMMY_LOCATION): New variant AT_ENTRY_POINT.
Now that we have the bp_call_dummy breakpoint the call dummy code
is no longer needed. PUSH_DUMMY_FRAME, PUSH_ARGUMENTS and
FIX_CALL_DUMMY can be used to set up everything for the dummy.
The breakpoint for the dummy is set at the entry point and thats it.
* blockframe.c (inside_entry_file, inside_entry_func): Do not stop
backtraces if pc is in the call dummy at the entry point.
* infcmd.c (run_stack_dummy): Handle AT_ENTRY_POINT case. Use
the expected breakpoint pc when setting up the frame for
set_momentary_breakpoint.
* symfile.c (entry_point_address): New function for AT_ENTRY_POINT
support.
* valops.c (call_function_by_hand): Handle AT_ENTRY_POINT case.
* gdb.stabs/configure.in: Use it.
* gdb.stabs/ecoff.mt, weird-ecoff.sed: Change sed script to enable
sharing with alpha.mt, redefine long to word via preprocessor.
* gdb.stabs/weird.def: Conditionally adapt storage layout of v_comb
for alpha.
* gdb.stabs/weird.exp: Handle compilation of weird.s by alpha
native cc.
* gdb.t00/teststrategy.exp: Change expect string so that we
consume the `(xgdb)' from the command echo and from the gdb prompt.
* gdb.t05/expr.exp: xfail "print unsigned int == (~0)" on the alpha.
gdb currently compares all values as long, so this failure probably
applies to any configuration where LONGEST is bigger than a target int.
* gdb.t08/comp-info.c: New file to determine if gdbme is compiled
with gcc.
* gdb.t08/Makefile.in, opaque.exp: Use it. Alpha native cc is unable
to handle opaque pointers, gcc is.
* gdb.t21/gdbme.cc, gdb.t23/gdbme.cc: operator new takes a size_t
as first argument. Include <sys/types.h> and change all operator
new definitions to use size_t.
* gdb.t21/cplusfuncs.exp: Handle changes in output for operator new
now that we use size_t.
file may now be distributed.
* i386-nlmstub.c: New file; debugging stub for i386 NetWare. Must
be compiled with NetWare header files and turned into an NLM with
nlmconv.
* values.c (record_latest_value): Fetch lazy values and set VALUE_LVAL
to not_lval.
Sun Oct 3 15:54:51 1993 Stan Shebs (shebs@rtl.cygnus.com)
* objfiles.h (objfile): New slot sym_stab_info, use by most
stab-reading formats.
depend on builtin_type_*. Instead, it is always 2, 4, and 8 bytes
like the documentation says.
* printcmd.c (decode_format) [CC_HAS_LONG_LONG]: Remove 'l' as
synonym for 'g'. This was never documented, it shouldn't depend on
CC_HAS_LONG_LONG, and I don't see what's wrong with 'g'.
instead of doing it ourself.
* blockframe.c (reinit_frame_cache): Use code which was in
generic_mourn_inferior so we can use this function even when
we have switched targets.
* corelow.c (core_detach): Call reinit_frame_cache.
* target.c (target_detach): Don't call generic_mourn_inferior
(revert yesterday's change, now handled by core_detach).
* objfiles.c (free_objfile): Detach any core file if we call
SOLIB_CLEAR. #include target.h.
and target_terminal_inferior until we are sure that the inferior
has called gdb_setpgid. This fixes PR 2900 (Schauer tracked it
down and was able to reliably reproduce it by putting a sleep()
before the gdb_setpgid()).
builtin_type_long.
* infptrace.c (fetch_register, store_inferior_register,
child_xfer_memory): Use PTRACE_XFER_TYPE for the type of ptrace
transfers. Provide an `int' default for PTRACE_XFER_TYPE.
vector<int>::vector(int) not vector<int>::vector<int>(int). See
section 14.6 of the ARM.
* gdb.t24 (demangle.exp): Remove a whole bunch of tests of the form
"_vt$MoveCmd"; these differ only in name from "_vt$foo", so they
accomplish little and slow down the testsuite.
* gdb.t24 (demangle.exp): Accept "XXX const" as well as "const XXX".
Accept spaces various places.
* symmisc.c (print_symbol): Use %02x not %2x for LOC_CONST_BYTES.
Clean up problems with targets and hosts that have 64 bit longs
and pointers and 32 bit ints.
* breakpoint.c, buildsym.c, c-lang.c, c-valprint.c, ch-lang.c,
ch-valprint.c, core.c, cp-valprint.c, dbxread.c, exec.c,
expprint.c, gdbtypes.c, infcmd.c, language.c, language.h,
m2-lang.c, maint.c, mips-tdep.c, mipsread.c, partial-stab.h,
printcmd.c, remote-vx.c, solib.c, source.c, stack.c, symfile.c,
symmisc.c, symtab.c, valops.c, valprint.c, xcoffexec.c:
Change all printf formats from %x to %lx if outputting an address.
Change la_*_format to use long format.
local_hex_string, local_hex_string_custom now take an unsigned long
argument, change all callers.
* coffread.c (read_coff_symtab): Remove superfluous cast for
complaint output.
* dbxread.c (end_psymtab): Cast MSYMBOL_INFO to long, not int.
* findvar.c, value.h (write_register): Change register value to long.
* gdbtypes.h (struct type): Change `bitsize' to long as
TYPE_FIELD_STATIC_PHYSNAME uses this field as a pointer.
* inferior.h (struct inferior_status): Change type of stop_pc to
CORE_ADDR.
* language.h (local_octal_string, local_octal_string_custom):
Remove prototype, the functions are neither defined nor used.
* mipsread.c (parse_symbol): Use temporary variable for bitsize as
f->bitsize is a long now.
* objfiles.c (add_to_objfile_sections, build_objfile_section_table):
Use unsigned long casts instead of int for abusing sections_end
pointer as integer.
* stack.c (parse_frame_specification): Change type of `args' to
CORE_ADDR for SETUP_ARBITRARY_FRAME.
* printcmd.c (make_vasize): Allow redefinition via MAKEVA_SIZE.
* mipsread.c (parse_type): Alpha cc now supports the t->continued
bit, update algorithm to match the way the compiler uses it.
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.
the pushing of the struct return address is already handled in
mips_push_arguments.
* mips-tdep.c (reinit_frame_cache_sfunc): Fix typo in prototype
declaration.
* mipsread.c (parse_symbol, parse_type, upgrade_type): Add more
sanity checks for corrupt symbol entries to avoid core dumps
reported by benson@odi.com. Obviously Ultrix 4.3A cc now has
the same problems as the OSF/1 alpha cc.
* mipsread.c (parse_lines): Iterate over the range of the compressed
line number entries, the old iteration sometimes failed to stop
and wrote past the end of the LINETABLE. Add sanity check to avoid
the same problem in case the line number info is corrupt.
* mipsread.c (parse_procedure): Adjust pdr for alpha __sigtramp.
* mipsread.c (parse_external, parse_partial_symbols): Ignore stNil
symbols that are produced for statics in .o files and stLocal symbols
that are produced for every section in OSF/1 dynamically linked
executables.
* mipsread.c (psymtab_to_symtab_1): Put out `undefined symbols'
warning only under `verbose on' as there are many undefined symbols
in a dynamically linked executable.
(TARDIRS): Add gdbserver.
* exec.c (print_section_info): Print entry point.
* i386lynx-nat.c (i386lynx_saved_pc_after_call): Move into
i386lynx-tdep.c. Add core file support.
* i386lynx-tdep.c: New module for Lynx/386 target dependant code.
* maint.c: Add `maint info sections' command to print info about all
sections that BFD knows about for exec and core files.
* sparc-tdep.c (sparc_push_dummy_frame): Update stack pointer
before putting frame on the stack. Consolidate writes to reduce
traffic for remote debugging.
* config/i386/i386lynx.mh (NATDEPFILES): Remove exec.o.
* config/i386/i386lynx.mt (TDEPFILES): Add exec.o, i386lynx-tdep.o.
* config/i386/nm-i386lynx.h: Add target_pid_to_str().
* config/i386/tm-i386lynx.h: Remove target_pid_to_str().
* sparclite/Makefile.in: Add deps to keep Sun make happy.
infcmd.c (step_1),
infrun.c (wait_for_inferior): collapse SHIFT_INST_REGS ifdef and insert macro.
* m88k-tdep.c: include ieee-float.h. new global target_is_m88110.
new const struct ext_format_m88110 for float format.
(pic_prologue_code): add braces.
(next_insn): remove unused variable buf.
(frame_find_saved_regs): remove unused variables next_addr,
saved_regs, regnum.
(frame_locals_address): remove unused variables frame, ap.
(frame_args_address): remove unused variables frame, ap.
(push_parameters): add some breaks and a default case.
* remote-bug.c: remove redundant includes of value.h, target.h,
serial.h.
(bug_open): corrected typo, sr_multi_scan -> gr_multi_scan.
(bug_fetch_register): special case sfip register for m88110.
remove flag bit masking of pc registers. This should be handled
by the ADDR_BITS_* macros.
(bug_store_register): special case sfip register for m88110.
Corrected sprint format for extended registers.
ieee-float.h. expanded to cope with m88110 extended registers.
(R0_REGNUM, XFP_REGNUM, X0_REGNUM): new macros.
(SHIFT_INST_REGS): becomes a real macro.
use from the type.
* objfiles.c: Include gdb-stabs.h for SECT_* macros.
(objfile_relocate): Relocate textlow and texthigh in psymtabs.
Relocate partial symbols. Check that minimal SYMBOL_SECTION is
nonnegative before using it.
* symtab.h: Adjust section field comment.
going to print as unsigned, handle it generally for any length
less than sizeof (LONGEST), rather than special-casing sizeof (char),
sizeof (short), and sizeof (long). Clarify comment on what this
is for.
Some of the following is in #ifdef CALL_DUMMY_BREAKPOINT_OFFSET.
* breakpoint.h (enum bptype): Add bp_call_dummy.
(struct bpstat_what): Add call_dummy field.
* infrun.c (wait_for_inferior): Deal with it.
* breakpoint.c (bpstat_what): Deal with call dummy breakpoint.
* infcmd.c (run_stack_dummy): Set the call dummy breakpoint.
* config/sparc/tm-sparc.h: Define CALL_DUMMY_BREAKPOINT_OFFSET.
* remote-sim.c: Add remote debug feature. Rename stuff to distinguish
interface to simulator from gdb-specific stuff. Other changes.
start-sanitize-v9
* remote-sp64sim.c: Renamed to remote-sim.c.
Use sr_get_debug instead of our own sim_verbose/simif_snoop.
Use gnutarget in call to bfd_openr.
Rename simif_* to gdbsim_*.
* config/sparc/sp64sim.mt: Change remote-sp64sim.c to remote-sim.c.
end-sanitize-v9
the xor and subtract. Otherwise it will not sign extend if the type
of LONGEST is larger than int.
* cp-valprint.c (cp_print_class_method): Inhibit core dump if
domain is an undefined cross reference.
* valops.c (call_function_by_hand): Set real_pc to correct
to tm-a29k.h and a29k-tdep.c and make it an enum.
* a29k-tdep.c (a29k_get_processor_type): New function. Fix many
aspects of how we detected the processor type.
* remote-udi.c, remote-adapt.c, remote-mm.c (*_open): Call it
rather than figuring out the type ourselves.
Correct sizeof(int) == sizeof(long) assumptions.
Replace stParsed hack by putting the parsed types on the pending chain.
Replace mips specific ecoff mapping by ECOFF_REG_TO_REGNUM macro,
provide default for cross debugging.
Swapping the symbol back is no longer needed as the symbol is not
modified anymore.
Add new alpha basic types, handle btTypedef, handle stStaticProc
external symbols .
Update and clean up cross_ref for alpha cc cross ref variations.
Allocate types on the type_obstack to inhibit storage leaks.
* config/mips/tm-mips.h (ECOFF_REG_TO_REGNUM): Define.
* gdbtypes.c (recursive_dump_type): Dump TYPE_TAG_NAME if it is set.
* exec.c (ignore): Return 0.
* stack.c (return_command): Fetch lazy value directly, not via
VALUE_CONTENTS, to avoid "value computed is not used".
* inflow.c (new_tty): Move osigttou inside #if.
* remote.c (remote_fetch_registers): If remote reply is short, just
note that fact and keep going (reading extra registers as all bits 0).
(remote_store_registers): Send number of registers that were found
by remote_fetch_registers.
* m68k-tdep.c, config/m68k/tm-m68k.h, config/m68k/tm-*.h: Remove
HAVE_68881. Define CANNOT_STORE_REGISTER if ptrace() can't write
floating registers.
* config/m68k/{tm-m68k-nofp.h,m68k-nofp.mt,tm-m68k-fp.h,m68k-fp.mt}:
Remove, replaced by {tm-m68k-em.h,m68k-em.mt}.
* Makefile.in, configure.in: Change accordingly.
Tue Sep 7 13:06:44 1993 Jim Kingdon (kingdon@lioth.cygnus.com)
* dbxread.c (process_one_symbol): If the value of an N_FUN for a
function is zero, use minimal symbols to get the address.
consider there may be a file compiled without -g screwing things up
(e.g. we are looking for the minimal symbol for "main" and we get the
one for "start" instead).
This is the change I mean:
* minsyms.c, symtab.h (lookup_next_minimal_symbol): New function.
* dbxread.c (process_one_symbol): Use it.
(STORE_RETURN_VAULE): Pass the correct offset of the return
register to write_register_bytes.
* hppa-tdep.c: Use target_write_pc if PCOQ_TAIL_REGNUM was not saved.