Teach sparc solaris to next over shared library functions.
* solib.[hc] (find_pc_section_from_so_list): new function and
prototype.
* sparc-tdep.c (in_solib_trampoline): new function.
* symfile.[hc] (find_pc_section): new function and prototypes.
* target.[hc] (find_pc_section_from_targets): new function and
prototypes.
* config/sparc/tm-sun4sol2.h (IN_SOLIB_TRAMPOLINE): redefine to
in_solib_trampoline.
Roland Pesch [Tue, 30 Mar 1993 23:25:03 +0000 (23:25 +0000)]
ld.texinfo:
Conditionalize manual to maintain Cygnus, Hitachi versions in parallel.
(Texinfo conditionals are stable enough to permit this, at last!)
NOTE: @ignore'd passages from earlier versions DELETED; use CVS history
to retrieve if wanted.
Jim Kingdon [Tue, 30 Mar 1993 18:55:20 +0000 (18:55 +0000)]
* breakpoint.h (bpstat): New field print_it.
breakpoint.c (bpstat_print): Use it.
(print_it_normal): New function (from old bpstat_print code).
(bpstat_{alloc,stop_status}): Set print_it field.
* breakpoint.c (bpstat_stop_status): Use catch_errors when
evaluating watchpoint condition, via new function watchpoint_check.
Also stop if watchpoint disabled due to leaving its block.
* ldindr.c (add_indirect): Keep more information in the alias
symbol chain.
* ldlang.c (wild_doit): Don't inherit NEVER_LOAD section
attribute from an input section.
* ldmain.c (Q_enter_file_symbols): Common section is NEVER_LOAD by
default. (Q_enter_file_symbos): Indirect symbols now are known by
their section, not a special symbol flag.
* ldsym.c (write_file_locals): Indirect symbols aren't local.
(write_file_globals): Write the mapping for an indirect symbol.
* relax.c (build_it): When forced to write a NEVER_LOAD section,
fill it with zeros.
* aoutx.h (translate_from_native_sym_flags): Now handles indirect
symbols in a better way. (translate_to_native_sym_flag): Set the
N_INDR bit when necessary. (aout<>slurp_symbol_table): Maintain
indirect state.
* section.c: Added BFD_IND_SECTION_NAME and bfd_ind_section.
(bfd_make_section): Cope with new builtin section.
* syms.c (bfd_decode_symclass): Can now print indirect section
info.
Fred Fish [Tue, 30 Mar 1993 01:49:04 +0000 (01:49 +0000)]
* Makefile.in (clean, distclean, realclean): Recursively apply
to subdirs first, rather than last. This avoids, for example,
Makefile being removed in a parent directory before the recursive
make is run.
Jim Kingdon [Mon, 29 Mar 1993 22:25:59 +0000 (22:25 +0000)]
* xcoffread.c (sort_syms, compare_symbols): Remove.
(xcoff_symfile_read): Use sort_all_symtab_syms from symfile.c
not our own sort_syms (it is identical).
* config/obj-coffbfd.c (do_relocs_for): Fix bug where nrelocs
wasn't being stored into scnhdr.
* config/obj-coffbfd.h: Add prototype of s_get_segment.
* read.c (TC_START_LABEL): Default definition.
(read_a_source_file): Use TC_START_LABEL macro to work out
if a label has been seen.
Ian Lance Taylor [Mon, 29 Mar 1993 21:49:44 +0000 (21:49 +0000)]
* configure.in: Set BFDDEF and BFDLIB at the top of Makefile, not
the bottom (make expands variables in dependencies when the
dependencies are read, not when they are used).
Ken Raeburn [Mon, 29 Mar 1993 21:20:04 +0000 (21:20 +0000)]
(big_cons): If target_big_endian, reverse bytes being copied. (Temporary
fix -- should be cleaned up later.)
(s_ignore): Delete declaration of is_end_of_line.
(potable): Change .app-file to .appfile.
Peter Schauer [Sun, 28 Mar 1993 19:28:26 +0000 (19:28 +0000)]
* breakpoint.c (breakpoint_re_set_one): Fix storage leak.
* breakpoint.c (enable_breakpoint): Don't enable watchpoint if it
went out of scope.
* exec.c (exec_close): Fix storage leak.
* exec.c (exec_file_command): Make sure that bfd doesn't realign the
output sections when patching an executable.
* mips-nat.c (store_inferior_registers): Use REGISTER_PTRACE_ADDR
when writing all registers.
* mips-tdep.c (mips_push_dummy_frame): Save floating point registers
at the right offset in the dummy frame.
* mipsread.c (psymtab_to_symtab_1): Do not complain for stProc,
stStaticProc and stEnd symbols as they are generated by gcc-2.x.
* mipsread.c (mipscoff_new_init): Initialize stabsread and buildsym.
Roland Pesch [Sat, 27 Mar 1993 01:32:11 +0000 (01:32 +0000)]
1. Update conditional markup:
(a) to make H8 configuration come out right (first attempt since
conversion to texinfo conditionals);
(b) to exploit yesterday's makeinfo bugfix, using conditionals in menus
rather than multiple alternative menus.
2. Update H8 text to refer to H8/500 as well as H8/300.
3. Define config file gdb-config.texi as a link in Makefile, based on a
DOC_CONFIG variable.
Fred Fish [Thu, 25 Mar 1993 23:22:52 +0000 (23:22 +0000)]
List the known things that are currently sanitized away. (Sanitize
should support a separate list of these things and report them
differently from unknown things that are sanitized away).
Stu Grossman [Thu, 25 Mar 1993 23:15:31 +0000 (23:15 +0000)]
* findvar.c (read_register, write_register): Make these capable
of reading/writing registers that are shorter than REGISTER_TYPE.
* (value_from_register): Install H8500 specific code to return
proper value when register is being used as a pointer.
* h8500-tdep.c: Remove extra defines of NUM_REGS.
(h8500_skip_prologue): Use correct lengths for LINK instructions.
(FRAME_CHAIN): Change name to h8500_frame_chain. Rewrite code to
chain frames properly by combining frame pointer with T reg.
(init_extra_frame_info): Delete. It's now a macro.
(frame_args_address): Don't add PTR_SIZE. Stack args are already
offset by the correct amount off of the frame pointer.
(register_byte): Delete. It's now a macro.
(register_raw_size, register_virtual_size): Delete. Replaced by
common routine h8500_register_size, cuz there's no difference
between the raw & virtual sizes on this machine.
(register_convert_to_raw, register_convert_to_virtual): Delete,
cuz there's no difference between the raw & virtual forms.
Replaced by memcpy in tm file.
(register_virtual_type): Rename to h8500_register_virtual_type.
Get rid of pointer pseudo-regs, use _REGNUM with all reg names.
(_initialize_h8500_tdep): Get rid of crock to ensure that GDB &
emulator have same reg offsets. This is all handled in the
simulator code now.
(h8500_trapped_internalvar): New routine to detect references to
convenience vars acting as pointer pseudo-regs.
(h8500_value_trapped_internalvar): Conjure up value of pointer
pseudo-regs.
(h8500_set_trapped_internalvar): Convert set value in real
register references.
infcmd.c (read_pc, write_pc): Add h8500 specific code to handle
code segment register.
infrun.c (proceed): Simplify. Call write_pc instead of doing it
by hand.
(wait_for_inferior): Add h8500 specific code to add stack segment
when reading SP register.
remote-sim.c (fetch_register): Spacing.
tm-h8500.h: #define GDB_TARGET_IS_H8500 to make it easier to
detect cruft. Redo all register manipulation stuff. Get rid of
pointer pseudo-regs. (INIT_EXTRA_FRAME_INFO): Adds stack segment
to frame pointer. (IS_TRAPPED_INTERNALVAL,
VALUE_OF_TRAPPED_INTERNALVAR, SET_TRAPPED_INTERNALVAR): Use these
to create internal vars for pointer pseudo-regs.
Fred Fish [Thu, 25 Mar 1993 23:08:24 +0000 (23:08 +0000)]
* alldeps.mak, configure.in, i860-break.h, i860-opcode.h,
i860-pinsn.c, i860-tdep.c, config/i860/*: Remove incomplete i860
support that can't be integrated anyway due to lack of clear
authorship.
Stu Grossman [Thu, 25 Mar 1993 22:34:26 +0000 (22:34 +0000)]
* findvar.c (read_register, write_register): Make these capable
of reading/writing registers that are shorter than REGISTER_TYPE.
* (value_from_register): Install H8500 specific code to return
proper value when register is being used as a pointer.
* h8500-tdep.c: Remove extra defines of NUM_REGS.
(h8500_skip_prologue): Use correct lengths for LINK instructions.
(FRAME_CHAIN): Change name to h8500_frame_chain. Rewrite code to
chain frames properly by combining frame pointer with T reg.
(init_extra_frame_info): Delete. It's now a macro.
(frame_args_address): Don't add PTR_SIZE. Stack args are already
offset by the correct amount off of the frame pointer.
(register_byte): Delete. It's now a macro.
(register_raw_size, register_virtual_size): Delete. Replaced by
common routine h8500_register_size, cuz there's no difference
between the raw & virtual sizes on this machine.
(register_convert_to_raw, register_convert_to_virtual): Delete,
cuz there's no difference between the raw & virtual forms.
Replaced by memcpy in tm file.
(register_virtual_type): Rename to h8500_register_virtual_type.
Get rid of pointer pseudo-regs, use _REGNUM with all reg names.
(_initialize_h8500_tdep): Get rid of crock to ensure that GDB &
emulator have same reg offsets. This is all handled in the
simulator code now.
(h8500_trapped_internalvar): New routine to detect references to
convenience vars acting as pointer pseudo-regs.
(h8500_value_trapped_internalvar): Conjure up value of pointer
pseudo-regs.
(h8500_set_trapped_internalvar): Convert set value in real
register references.
infcmd.c (read_pc, write_pc): Add h8500 specific code to handle
code segment register.
infrun.c (proceed): Simplify. Call write_pc instead of doing it
by hand.
(wait_for_inferior): Add h8500 specific code to add stack segment
when reading SP register.
remote-sim.c (fetch_register): Spacing.
tm-h8500.h: #define GDB_TARGET_IS_H8500 to make it easier to
detect cruft. Redo all register manipulation stuff. Get rid of
pointer pseudo-regs. (INIT_EXTRA_FRAME_INFO): Adds stack segment
to frame pointer. (IS_TRAPPED_INTERNALVAL,
VALUE_OF_TRAPPED_INTERNALVAR, SET_TRAPPED_INTERNALVAR): Use these
to create internal vars for pointer pseudo-regs.
Ian Lance Taylor [Thu, 25 Mar 1993 22:09:27 +0000 (22:09 +0000)]
* config/obj-coffbfd.c (do_relocs_for): Remove a29k special case.
(fixup_segment): Add a29k special case; the linker is not prepared
to see a segment offset here.
Ian Lance Taylor [Thu, 25 Mar 1993 20:34:44 +0000 (20:34 +0000)]
* config/udi-gdb.exp (gdb_exit): Remove close command.
(gdb_target_udi): New procedure to set the UDI target.
(gdb_start): Don't remove *_soc files. Use gdb_target_udi.
* gdb.t00/default.exp: Added expected failures for a29k-*-udi.
Added waits for prompts after several question responses. Added
some more responses used by a29k-amd-udi-gdb.
* gdb.t01/run.exp, gdb.t06/break.exp: Added a29k-*-udi support:
pass different arguments, restart UDI connection after program
completion.
* gdb.t02/whatis.exp, gdb.t03/ptype.exp, gdb.t07/watchpoint.exp,
gdb.t08/opaque.exp, gdb.t11/list.exp, gdb.t12/scope.exp,
gdb.t15/funcargs.exp, gdb.t16/printcmds.exp, gdb.t20/misc.exp,
gdb.t21/cplusfuncs.exp: Added expected failures for a29k-*-*.
* gdb.t04/setvar.exp, gdb.t05/expr.exp, gdb.t07/watchpoint.exp,
gdb.t08/opaque.exp, gdb.t12/scope.exp, gdb.t13/bitfields.exp,
gdb.t15/funcargs.exp, gdb.t16/printcmds.exp,
gdb.t17/callfuncs.exp, gdb.t20/classes.exp, gdb.t20/inherit.exp,
gdb.t20/misc.exp, gdb.t22/virtfuncs.exp: Restart UDI connection
after program completion.
* gdb.t10/crossload.exp: Does not work for a29k-*-*, since BFD is
compiled with a SELECT_VECS setting.
* gdb.t15/funcargs.exp: Use argument to backtrace to prevent
infinite recursion.
* gdb.t20/classes.exp, gdb.t20/inherit.exp, gdb.t22/virtfuncs.exp:
Added checks for COFF results, and made them expected failures for
all targets. It would be better to make them expected failures
for COFF targets only.
Fred Fish [Thu, 25 Mar 1993 18:18:14 +0000 (18:18 +0000)]
* Makefile.in: Numerous small changes to macro definitions
and rules for building gdb distribution tree. Many macros
eliminated or merged, and rules simplified.
* alldeps.mak: Update.
* depend: Update.
Ken Raeburn [Thu, 25 Mar 1993 14:03:34 +0000 (14:03 +0000)]
Some versions of make don't like empty variable expansions on lines by
themselves (outside of dependency rules). Fix such Chill stuff to be
comments instead.