* mpw-configure: Conditionalize more Makefile insertions,
set MAYBE_TARGET_DEFAULT for gcc, set NATDEPFILES for gdb,
delete Makefile.tem, compute target_{cpu,vendor,os}.
* mpw-config.in: Forward-include most .h files in include into
extra-include.
(readline): Don't build.
mpw-build.in (install): Install GDB.
mpw-README: Update/add helpful comments.
Ian Lance Taylor [Thu, 17 Mar 1994 21:22:30 +0000 (21:22 +0000)]
* Makefile.in: Built nm.new and strip.new to avoid problems with
collect when . is in PATH.
(STRIP_PROG): Change from strip to strip.new.
(NM_PROG): Change from nm to nm.new.
(install): Remove the .new when installing.
Jim Kingdon [Thu, 17 Mar 1994 18:54:48 +0000 (18:54 +0000)]
* aoutx.h, elfcode.h, coff-alpha.c, bout.c, ecoff.c, ecofflink.c,
elf32-hppa.c, elf32-mips.c, linker.c, som.c, sunos.c: If malloc(0)
returns NULL, it is not an error. It's possible that some of
these checks are not necessary (because the size can never be
zero), but putting in the checks is the conservative thing to do
in light of the fact that some of these malloc calls replaced
unchecked alloca calls, in which a zero argument would work fine.
Ian Lance Taylor [Thu, 17 Mar 1994 17:29:15 +0000 (17:29 +0000)]
* reloc.c (bfd_generic_get_relocated_section_contents): Don't fail
if malloc (0) fails. bfd_canonicalize_reloc returning 0 is not a
failure indication, it merely means there are no relocs.
Ian Lance Taylor [Wed, 16 Mar 1994 22:22:17 +0000 (22:22 +0000)]
* config/obj-coffbfd.c (adjust_stab_section): Initialize
stabstrseg to SEG_UNKNOWN, not -1. After loop, check whether it
is not SEG_UNKNOWN rather than checking whether it is >= 0.
Ian Lance Taylor [Wed, 16 Mar 1994 22:16:02 +0000 (22:16 +0000)]
* config/tc-mips.c (mips_align): Take new argument, label, and use
it instead of global insn_label.
(s_align, s_cons, s_float_cons, s_gpword): Save insn_label before
call to mips_emit_delay and pass it to mips_align.
Jim Kingdon [Wed, 16 Mar 1994 20:09:55 +0000 (20:09 +0000)]
* printcmd.c: Remove "set print fast-symbolic-addr off" command.
The which it worked around was fixed on 25 Feb 94 in coffread.c,
so I'm nuking the command.
* symtab.c (find_addr_symbol): Comment out, no longer used.
Jim Kingdon [Wed, 16 Mar 1994 20:04:14 +0000 (20:04 +0000)]
* gdb.texinfo (Print Settings): Don't document "set print
fast-symbolic-addr off". The bug which it worked around was fixed
on 25 Feb 94 in coffread.c, so I'm nuking the command.
Jim Kingdon [Wed, 16 Mar 1994 18:05:57 +0000 (18:05 +0000)]
* main.c (main): Don't init_source_path for the -cd argument. Now
that source_path doesn't contain the current_directory from when
GDB started up, init_source_path is no longer useful (and is
harmful because it clobbers a source_path set in $HOME/.gdbinit).
Jim Kingdon [Wed, 16 Mar 1994 16:57:39 +0000 (16:57 +0000)]
* lib/gdb.exp: Set prompt to (gdb) if it isn't already set.
(default_gdb_exit): Replace all the hair with sending "quit" to
the process with a simple close.
Jim Kingdon [Wed, 16 Mar 1994 15:30:12 +0000 (15:30 +0000)]
* TODO: Remove item about line numbers being off. It is useless
and confusing without a reproducible test case (it mentions
proceed(), but I was able to step through proceed without trouble).
Jeff Law [Wed, 16 Mar 1994 08:03:46 +0000 (08:03 +0000)]
* som.c (som_prep_for_fixups): Detect section symbols based
on either the lack of private data or the symbol flags. Do not
munge section symbol names anymore -- they no longer confuse GDB.
(som_begin_writing): Leave space for an exec header if writing
an executable.
(som_slurp_symbol_table): Recognize both forms of section symbol
names "L$0\002" and "$<FOO>$". Change the name of "L$0\002"
section symbols to be the name of the section they represent.
Debugging symbols begin with "L$0\001", not just "L$".
Jeff Law [Wed, 16 Mar 1994 07:04:42 +0000 (07:04 +0000)]
* objcopy.c (filter_symbols): Use bfd_is_local_label to determine
if a symbol represents a compiler-generated local label.
(copy_object): Give the BFD backends a chance to copy any private
bfd data from the input BFD to the output BFD.
(setup_section): Give the BFD backends a chance to copy any private
section data from the input section to the output section.
* libbfd.c (bfd_generic_is_local_label): New function.
* *-core.c: Provide default definitions for new functions in
the target vector which all point to bfd_false.
* aout-target.h, coffcode.h, elf32-target.h elf64-target.h, ieee.c
libaout.h, libecoff.h, nlm-target.h, oasys.c, srec.c, tekhex.c
Default new vectors for copying private backend data to bfd_true.
Default new vector for determining if a symbol is a local label
to bfd_generic_is_local_label.
* som.c (som_bfd_copy_private_section_data): New function.
(som_bfd_is_local_label): New function.
(som_bfd_copy_private_bfd_data): For now default to bfd_true.
* elf32-hppa.c (hppa_elf_is_local_label): New function.
Peter Schauer [Tue, 15 Mar 1994 21:46:32 +0000 (21:46 +0000)]
For Sunos 4.x targets, enable gdb to set breakpoints in shared
library functions before the executable is run. Retrieve dynamic
symbols from stripped executables.
* symtab.h (minimal_symbol_type): Add mst_solib_trampoline type.
* parse.c (write_exp_msymbol), symmisc.c (dump_msymbols),
symtab.c (list_symbols): Handle mst_solib_trampoline.
* minsyms.c (lookup_minimal_symbol): Handle mst_solib_trampoline
for all targets, remove IBM6000_TARGET dependencies.
* dbxread.c (read_dbx_dynamic_symtab): New function.
* dbxread.c (dbx_symfile_read): Use it.
* dbxread.c (SET_NAMESTRING): Set namestring to
"<bad string table index>" instead of "foo" if the string index is
corrupt.
* xcoffread.c (read_xcoff_symtab): Use mst_solib_trampoline instead
of mst_unknown.
* symtab.c (list_symbols): Take from_tty as parameter and pass it
to break_command. Handle mst_file_* minimal symbol types.
Jim Kingdon [Tue, 15 Mar 1994 18:40:51 +0000 (18:40 +0000)]
* environ.c (set_in_environ): Eliminate special handling of PATH and
GNUTARGET.
* putenv.c: Removed, conflicts with system declaration of
putenv on RS/6000 running AIX 3.2.5, and above change makes it
unnecessary.
* Makefile.in: Change accordingly.
* procfs.c (procfs_create_inferior): Change comment accordingly.
Jeff Law [Tue, 15 Mar 1994 05:21:51 +0000 (05:21 +0000)]
* som.c (som_prep_for_fixups): A relocation involving the section
symbol for the *ABS* section is really a relocation involving
no symbol.
(som_slurp_symbol_table): Do not set BSF_GLOBAL or BSF_EXPORT for
undefined symbols. Correctly distinguish between debugger symbols
and section symbols.
Ken Raeburn [Tue, 15 Mar 1994 03:05:24 +0000 (03:05 +0000)]
(VMS_Initialized_Data_Size): Cache symbol values to reduce number of lookups
with S_GET_VALUE. Skip debug symbols to avoid "a really nasty bug". (From
Holger Teutsch, [email protected].)
(VMS_write_object_file): For "__vt.*" symbols, set S_GET_OTHER field. (Also
from Holger Teutsch.) Watch for a would-be register mask that spans frags.
Ian Lance Taylor [Mon, 14 Mar 1994 20:00:34 +0000 (20:00 +0000)]
* m68k-dis.c (ext_format_68881): Don't declare.
(print_insn_m68k): If an instruction uses place 'i', it uses at
least four fixed bytes.
(print_insn_arg): Don't bump p by 2 for case 'I', place 'i'. For
extended float, convert to double using floatformat_to_double, not
ieee_extended_to_double, and fetch the data before converting it.
Jeff Law [Mon, 14 Mar 1994 19:43:01 +0000 (19:43 +0000)]
* som.c (som_object_setup): Set EXEC_P, D_PAGED, WP_TEXT, and
HAS_RELOC based on the object's magic number.
(make_unique_section): Delete function. BFD and its users are
prepared to handle multiple sections with the same name.
(setup_sections): Allocate space on the BFD's obstack to hold
section names. Use bfd_make_setion_anyway rather than the
obsolete make_unique_section.
(som_prep_headers): Choose the correct SOM magic number based
on the BFD's flags.
(som_bfd_fill_in_ar_symbols): Return false, not NULL on error.
Mark Eichin [Sat, 12 Mar 1994 05:37:38 +0000 (05:37 +0000)]
Changes to 68k-lynx to make it handle symbols in common sections "properly",
ie. the way "real" 68k coff implementations seem to do it, rather than like
the way it's traditionally done. Fixes lifted from the i386-coff version.
Ian Lance Taylor [Sat, 12 Mar 1994 03:26:12 +0000 (03:26 +0000)]
* nlmconv.c (main): For PowerPC, call powerpc_build_stubs and
powerpc_resolve_stubs. Use __GOT0, not __toc_start. Handle it if
the start and end symbols are not in the text section.
(struct powerpc_stub): New struct definition.
(powerpc_stubs, powerpc_stub_insns): New static variables.
(powerpc_initial_got_size): New static variable.
(powerpc_build_stubs): New function.
(powerpc_resolve_stubs): New function.
(powerpc_mangle_relocs): Clear extraneous data in .got section.
Rearrange reloc handling to handle ELF relocs that are not
partial_inplace. Resolve PC relative relocs.
Ian Lance Taylor [Fri, 11 Mar 1994 23:00:17 +0000 (23:00 +0000)]
* config/tc-mips.c (mips_ip): Accept numbers between 0x8000 and
0xffff for 'j' to be compatible with MIPS assembler. These
numbers are actually treated as negative.
Jim Kingdon [Fri, 11 Mar 1994 16:31:57 +0000 (16:31 +0000)]
* breakpoint.c (_initialize_breakpoint): Update docstring for
tbreak to match what the code actually does. Don't mention tbreak
in docstrings for "enable once" or "enable breakpoints once".
Peter Schauer [Fri, 11 Mar 1994 09:03:07 +0000 (09:03 +0000)]
* sunos.c (sunos_read_dynamic_info): Assume that dynamic info
is always located at the start of the data section to allow
recovery of the dynamic info from a stripped executable.
* ecoff.c (ecoff_styp_to_sec_flags): Handle STYP_PDATA, STYP_XDATA
and STYP_COMMENT.
Jim Kingdon [Thu, 10 Mar 1994 18:25:33 +0000 (18:25 +0000)]
* symfile.h (ADD_PSYMBOL_VT_TO_LIST): Don't put a semicolon after
while (0). That defeats the whole purpose of using do . . . while (0).
* mdebugread.c (parse_partial_symbols): Don't use ?: expression as
list for ADD_PSYMBOL_TO_LIST; the macro takes its address and
using a ?: expression as an lvalue is not portable.
Jim Kingdon [Thu, 10 Mar 1994 18:21:02 +0000 (18:21 +0000)]
* stabsread.c (define_symbol): If REG_STRUCT_HAS_ADDR, also
convert a LOC_ARG to a LOC_REF_ARG. Update code which combines
'p' and 'r' symbol descriptors into a single symbol to look for a
LOC_REF_ARG.
* README, config/sparc/tm-sparc.h: Update comments.
Peter Schauer [Thu, 10 Mar 1994 09:28:18 +0000 (09:28 +0000)]
* mdebugread.c (parse_type): Do not complain for types with
an `indexNil' aux index, these are simply undefined types.
Remove indexNil check from caller of parse_type.
* mdebugread.c (parse_partial_symbols): Do not enter
stGlobal, scCommon symbols into the minimal symbol table, their
value is the size of the common, not its address.
Handle scInit, scFini, scPData and scXData sections.
Use minimal symbol type mst_file_* for stLabel symbols, instead of
mst_*.
Enter stProc symbols into the global_psymbols list once, not into
the static_psymbols_list.
Get rid of dummy psymtab if it is empty, to allow proper detection
of stripped executables.
* mdebugread.c (cross_ref): Allow cross references to Fortran
common blocks.