Ian Lance Taylor [Sat, 28 Oct 1995 05:50:14 +0000 (05:50 +0000)]
* config/tc-ppc.c (md_pseudo_table): Add "data" and "text".
(ppc_csect): Move most of the code to ppc_change_csect, and call
it.
(ppc_change_csect): New static function, taken from ppc_csect.
(ppc_section): New static function.
(ppc_saw_abs): New static varable.
(ppc_frob_symbol): Create aux entry for absolute symbols. Warn if
a symbol has no csect.
(ppc_adjust_symtab): New function.
* config/tc-ppc.h (tc_adjust_symtab): Define if OBJ_XCOFF.
(ppc_adjust_symtab): Declare if OBJ_XCOFF.
* emulparams/m68knbsd.h: Ditto.
(TEXT_START_ADDR, NONPAGED_TEXT_START_ADDR): We have 8K pagesize.
(EXECUTABLE_SYMBOLS): Hardcode __DYNAMIC to zero for the time
being.
* emulparams/m68k4knbsd.sh: New file.
* scripttempl/aout.sc: Expand EXECUTABLE_SYMBOLS if relocating.
* m68knetbsd.c: Ditto as well as add support for the m68k4k object
format.
* netbsd.h: Double ditto (incl. m68k4k support). NetBSD's text
segments includes the a.out header. See to that the magic number
*always* is big-endian.
* configure.in, configure: Separate i386 & mips NetBSD
configurations from other BSD ones. Don't assume DEC is the only
thing NetBSD/mips run on. Add {m68k,ns32k,sparc}-*-netbsd*
configurations. Add support for m68k4k NetBSD object format.
Niklas Hallqvist [Sat, 28 Oct 1995 00:34:10 +0000 (00:34 +0000)]
Separate i386 & mips NetBSD configurations from other BSD ones. Don't assume
DEC is the only thing NetBSD/mips run on. Add {m68k,ns32k,sparc}-*-netbsd*
configurations. Add support for m68k4k NetBSD object format.
Ian Lance Taylor [Fri, 27 Oct 1995 22:21:43 +0000 (22:21 +0000)]
* emultempl/aix.em: Include ldctor.h.
(gld${EMULATION_NAME}_after_open): New static function.
(gld${EMULATION_NAME}_before_allocation): Call find_relocs.
(gld${EMULATION_NAME}_find_relocs): New static function.
(gld${EMULATION_NAME}_find_exp_assignment): New static function.
(ld_${EMULATION_NAME}_emulation): Use new after_open function.
* scripttempl/aix.sc: Use CONSTRUCTORS in .data.
* ldctor.c (struct set_info): Move definition into ldctor.h.
(struct set_element): Likewise.
(sets): Make non-static.
(ldctor_add_set_entry): Add name parameter. Save it in the new
set element.
(ldctor_build_sets): Avoid being called twice. Pass set element
name to lang_add_reloc.
* ldctor.h (struct set_info): Move definition here from ldctor.c.
(struct set_element): Likewise. Add new field name.
(sets): Declare.
(ldctor_add_set_entry): Declare new name parameter.
* ldwrite.c (build_link_order): Don't insist that either name or
section be NULL in a lang_reloc_statement.
* ldmain.c (add_to_set): Pass NULL to ldctor_add_new_set_entry for
new name parameter.
(constructor_callback): Pass name to ldctor_add_new_set_entry for
new name parameter.
Ian Lance Taylor [Fri, 27 Oct 1995 22:20:19 +0000 (22:20 +0000)]
* xcofflink.c: More improvements, mostly to fix handling of
constructors and a few other special cases.
* coff-rs6000.c (rs6000coff_vec): Set symbol_leading_char back to
zero, reverting yesterday's change.
* bfd-in.h (bfd_xcoff_link_record_set): Declare.
(bfd_xcoff_link_count_reloc): Declare.
(bfd_xcoff_record_link_assignment): Declare.
* bfd-in2.h: Rebuild.
Stu Grossman [Fri, 27 Oct 1995 17:48:36 +0000 (17:48 +0000)]
* breakpoint.c (breakpoint_re_set): #ifdef GET_LONGJMP_TARGET
around calls to create_longjmp_breakpoint. Why install the
breakpoints if we can't find the longjmp target?
* infrun.c (wait_for_inferior): Cleanup comments near call test.
* remote-mips.c: Fixed a bunch of prototypes to avoid char/int
complaint from picky compilers. Add comment to mips_expect.
Replace all instances of sr_get_debug with remote_debug.
* (mips_readchar): Don't jam init string to monitor.
mips_initialize() handles that.
* (mips_receive_header): Print better message when we get too
much garbage.
* (mips_request): Allow caller to pass in buff to allow them to
analyze the returned message.
* (mips_initialize): Re-do initialization to try sending a BREAK,
a ^C, and then a download escape sequence. Cleanup protocol
startup. Eliminate sleeps. Clear breakpoints (if using monitor
breakpoints). Re-init frame.
* (mips_detach): Close down target.
start-sanitize-gm
* (mips_resume): Pass signal down to target.
* (mips_create_inferior): Start target with TARGET_SIGNAL_PWR.
end-sanitize-gm
* (mips_wait): Handle return status with registers, or breakpoint stuff.
* (mips_kill): Add ^C handling.
* (mips_insert_breakpoint mips_remove_breakpoint): Call new
breakpoint stuff if enabled.
* (calculate_mask remote_mips_set_watchpoint
remote_mips_remove_watchpoint remote_mips_stopped_by_watchpoint):
Hardware watchpoint/breakpoint stuff.
* (common_breakpoint): Common code for new monitor breakpoint commands.
* (mips_load): Don't use `prompt'. It's a global variable.
* top.c (dont_repeat_command): New command for use in
user-defined commands to suppress auto-repeat (by hittin return key).
start-sanitize-gm
* utils.c (request_quit): Call target_kill here. Good idea.
Needs a better implementation.
end-sanitize-gm
* valops.c: Add start of auto function-call abandonment capability.
Stu Grossman [Fri, 27 Oct 1995 16:39:10 +0000 (16:39 +0000)]
* configure.in: Make sure that CC is undefined (as opposed to
null) if toplevel/config/mh-{host} doesn't define it. Fixes a
problem with autoconf trying to configure on a host without GCC.
* config.sub: Add `magic' as an OS target for General Magic.
Stan Shebs [Fri, 27 Oct 1995 05:39:36 +0000 (05:39 +0000)]
* mpw-configure: Set host alias from choice of host compiler,
only use generic MPW Makefile sed if present, edit a file
named "hacked_Makefile.in" instead of "Makefile.in" if present.
* mpw-README: Add problem notes about CW6 and CW7.
Stan Shebs [Fri, 27 Oct 1995 05:19:11 +0000 (05:19 +0000)]
* config/xm-mpw.h: New file, all-Mac host support.
* config/m68k/xm-mpw.h: Move most definitions into generic Mac
support.
* config/powerpc/xm-mpw.h: New file, PowerMac host support.
Stan Shebs [Fri, 27 Oct 1995 05:04:44 +0000 (05:04 +0000)]
* mpw-config.in: Add support for PowerMac host, add beginnings
of native support.
* mpw-make.sed: Disable subdir recursion, edit out useless rule.
* mac-xdep.c (Values.h): Don't include.
(GestaltEqu.h): Include Gestalt.h instead.
(do_mouse_down): Comment out control tracking, needs to be
updated to use UPP before will work on PowerMac.
Brendan Kehoe [Thu, 26 Oct 1995 23:54:44 +0000 (23:54 +0000)]
* regex.h: Renamed to gnu-regex.h.
* regex.c: Renamed to gnu-regex.c.
* Makefile.in (POSSLIBS): Refer to gnu-regex.h and gnu-regex.c.
(REGEX, REGEX1): Change to gnu-regex.o instead of regex.o.
(regex.o): Renamed to gnu-regex.o; refer to gnu-regex.c.
(irix5-nat.o, osfsolib.o, gnu-regex.o, solib.o, source.o, symtab.o):
Likewise.
* irix5-nat.c, osfsolib.c, gnu-regex.c, solib.c, source.c, symtab.c):
Include "gnu-regex.h" instead of "regex.h".
* alpha-tdep.c (in_prologue): Rename to alpha_in_prologue, to
avoid conflicts with symtab.h.
Ian Lance Taylor [Thu, 26 Oct 1995 18:25:13 +0000 (18:25 +0000)]
* xcofflink.c: Numerous changes to get closer to a working XCOFF
linker.
* libcoff-in.h (struct xcoff_tdata): Add full_aouthdr,
toc_section, and entry_section fields.
(struct xcoff_section_tdata): Remove ldrel_count field.
* libcoff.h: Rebuild.
* coffcode.h (coff_mkobject_hook): Initialize new xcoff_data
fields.
(coff_compute_section_file_positions): If RS6000COFF_C, generate
full a.out header if full_aouthdr is set in xcoff_data.
(coff_write_object_contents): Likewise. Set o_snentry and o_sntoc
based on sections stored in xcoff_data.
* coff-rs6000.c (xcoff_copy_private_bfd_data): Copy new xcoff_data
fields.
* coffgen.c (coff_get_symbol_info): If fix_value is set, fix the
value stored in ret rather than returning a pointer value.
Per Bothner [Wed, 25 Oct 1995 22:23:40 +0000 (22:23 +0000)]
* Makefile.in (taz): Grep for '^diststuff:' or '^info:' in
sub-directory Makefiles, instead of using DISTSTUFFDIRS and
DISTDOCDIRS.
(DISTSTUFFDIRS, DISTDOCDIRS): Removed - no longer used.
(newlib.tar.gz): Don't pass DISTDOCDIRS to recursive make.
Jeff Law [Wed, 25 Oct 1995 22:23:33 +0000 (22:23 +0000)]
* som.c (som_slurp_string_table): Allocate the strings with malloc
since they're free'd by free_cached_info.
(som_slurp_symbol_table): Similarly for the symbol table.
Fixes crash (nm /lib/libc.a on hpux10).
Per Bothner [Wed, 25 Oct 1995 21:54:55 +0000 (21:54 +0000)]
* Makefile.in (DISTDOCDIRS): Remove ld gprof bnutils gas libg++ gdb
and gnats, because they are now subsumed by DISTSTUFFDIRS.
Move bfd to DISTSTUFFDIRS.
Ian Lance Taylor [Wed, 25 Oct 1995 16:33:02 +0000 (16:33 +0000)]
* sunos.c (bfd_sunos_record_link_assignment): Don't do anything if
output_bfd is not SunOS.
(bfd_sunos_size_dynamic_sections): Likewise. Don't scan relocs of
non-SunOS input files.
PR 8270.
Ian Lance Taylor [Wed, 25 Oct 1995 15:49:27 +0000 (15:49 +0000)]
* emultempl/aix.em: Add support for various AIX linker options,
for AIX import and export files, and for AIX shared objects.
* scripttempl/aix.sc: Add .pad. Put .ds just before the TOC.
* config/pa/hppahpux.mh: Remove hardcoding of X locations.
* Makefile.in: Use X11_CFLAGS, X11_LDFLAGS and X11_LIBS.
* configure.in: Link X statically on Solaris, SunOS and HPUX.
Stan Shebs [Wed, 25 Oct 1995 00:54:55 +0000 (00:54 +0000)]
* configure.in: Add xcofflink.o to pmac_xcoff_vec.
* configure: Rebuild.
* mpw-config.in: Add xcofflink.c.o to powerpc-apple-macos.
* coff-pmac.c: Include coff-rs6000.c instead of duplicating its
contents.
(pmac_xcoff_vec): Update to use new xcoff support.
* coff-rs6000.c (xcoff_generic_stat_arch_elt): Make static.
(xcoff_write_armap): Declare buf as unsigned char.
* xcofflink.c (xcoff_link_add_symbols): Declare a local as PTR.
Stu Grossman [Tue, 24 Oct 1995 21:31:07 +0000 (21:31 +0000)]
* monitor.c (monitor_expect_regexp): Same as monitor_expect, but
with the obvious extension. (monitor_read_memory_single): Use
regexp for getmem.resp_delim because of parsing ambiguities caused
by certain monitors. (monitor_read_memory): Use new regexp stuff
to parse getmem.resp_delim.
* sh3-rom.c: Finish off table. Use new regexp capability for
getmem commands.
Jeff Law [Tue, 24 Oct 1995 21:26:51 +0000 (21:26 +0000)]
* config/tc-hppa.c (md_pseudo_table): Add new ".nsubspa" opcode.
(pa_subspace): For ".nsubspa", always create a new subspace
with the given attributes, even if one already exists with the
same name.
So we can put every function into its own $CODE$ subspace.
Stu Grossman [Tue, 24 Oct 1995 21:22:56 +0000 (21:22 +0000)]
* infrun.c (wait_for_inferior): Disable questionable code near
the step range test. Replace call detection test with much
simpler (and more efficient) test that doesn't require prologue
examination (as often).
* symtab.c symtab.h (in_prologue): New function that indicates
whether or not we are in a function prologue. This uses the
symbol table, and then falls back to prologue examination if that
fails. It's much more efficient for remote debugging because it
avoids examining memory, which is very slow. This is used in
wait_for_inferior to determine if we've made a function call that
needs to be skipped over (for next/nexti).
* mips-tdep.c (after_prologue): New function, returns the PC
after the prologue. Uses PDRs and the symbol table.
(mips_find_saved_regs): Use in_prologue() to avoid costly
prologue examination if possible.
(mips_skip_prologue): Use after_prologue() if possible to avoid
costly prologue examination.
The revision 2.48 change (grossman 1995/10/16) had unfortunately
broken the prompt spotting for the <RISQ> variant of the IDT
monitor. Also took this opportunity to add the vr4300 configure.in
options.
Renamed the VR4300 specific emulparams files to 8.3 unique names,
since the old names could cause problems when hosting the source tree
on non-Un*x systems.