Per Bothner [Thu, 6 Feb 1992 23:24:30 +0000 (23:24 +0000)]
* mipsread.c (parse_partial_symbols): Handle dependencies
between partial symbol tables (when not doing stabs-in-ecoff).
(This used to be handled by parse_fdr, but parse_fdr was
incompatible with handling stabs-in-ecoff, so the code
was re-written to not use parse_fdr. Unfortunately,
the logic to handle dependencies was overlooked.)
* as.c: added new option -ad for hll listings without debug info
* listing.c,listing.h: support for new listings, and more for forgiving
when lied to about where linenumbers are.
* config/obj-coffbfd.c (do_linenos_for): relocate line numbers
correctly.
* coffread.c (read_enum_type): Use the size of a target int when
describing enum.
* defs.h: added new #define for TARGET_PTR_BIT, defaults to size
of target int.
* h8300-tdep.c, remote-hms.c, tm-h8300.h: too many changes to count
* symtab.c (lookup_reference_type, lookup_ptr_type): use
TARGET_PTR_BIT to determine size of a pointer
* values.c (unpack_long): when unpacking a REF or a PTR don't
assume the size of the type.
* config/mt-coff-h8300: use EMUL like everything else
* ldlang.c: (print_padding_statement): print the right address.
* Makefile.in, config.h, ldemul.c: renamed h8300hds to h8300hms
* coffcode.h, libcoff.c: added new fielded to coff_symbol_struct
"done_lineno" so that a symbol which appears twice in the symbol
table only gets it's linenumbers relocated once. Modifed
(coff_write_native_symbol) and (coff_make_empty_symbol) to make
John Gilmore [Thu, 6 Feb 1992 06:33:15 +0000 (06:33 +0000)]
* mipsread.c (parse_symbol): Avoid clobbering enum pointer when
looking at its members. Improve guess between struct and union,
only assuming union if multiple members have offsets of zero.
Converting "[ -n" and "[ -z" into case statements looks like a small
time penalty for modern shells which have "[" builtin. I've elected
to take it anyway as a compensation for older, slower shells.
support for subdirs, multiple hosts, and multiple targets was
previously commented out. This delta removes it entirely. This makes
a small time difference on cygint.
Removing unnecessary ()'s doesn't seem to make any time difference on
cygint. I think modern shell's execute this internally without a call
to a separate shell process. I've left the change in anyway. It may
help on older, slower machines.
John Gilmore [Fri, 31 Jan 1992 20:37:24 +0000 (20:37 +0000)]
* symfile.c (reread_symbols): Whenever we reread one object
file's symbols, we must restart the scan, because the object_files
chain has been permuted.
John Gilmore [Fri, 31 Jan 1992 08:45:11 +0000 (08:45 +0000)]
* exec.c (exec_files_info): Split out into print_section_info.
Print BFD filename of each section if it's not the default one.
* core.c (core_files_info): Call print_section_info.
John Gilmore [Fri, 31 Jan 1992 07:54:12 +0000 (07:54 +0000)]
* Makefile.in: host-aout.c doesn't depend on aout-params.h.
* aout-target.h: Use TARGET_BIG_ENDIAN_P to set up vector.
* host-aout.c: Don't use aout-params.h; configure these systems
in their xm files, not in a randomly generated file.
Stu Grossman [Thu, 30 Jan 1992 19:42:52 +0000 (19:42 +0000)]
* host-aout.c: Change TARGETNAME to "a.out" to be compatible with
gdb. config/mt-hp300bsd: Change DEFAULT_VECTOR to host_aout_vec
to prevent undefined symbol.
Various lints found on PersSony
* aoutx.h: cast an enum
* coff-a29k.c: many ints in reloc structure turned to enum
* coffcode.h: more enums
* cpu-h8300.c: more enums
* opncls.c: more enums
John Gilmore [Thu, 30 Jan 1992 09:21:33 +0000 (09:21 +0000)]
* configure.in: Make Tahoe configuration work again.
* bfd-in.h: Remove trailing comma from enum declaration.
* ieee.c: Can't put byte values >0x7F into a signed char.
John Gilmore [Thu, 30 Jan 1992 09:14:21 +0000 (09:14 +0000)]
* sparc.h: Remove "cypress" architecture. Remove "fitox" and
similar instructions -- they've been renamed to "fitoq", etc.
REALLY fix tsubcctv. Fix "fcmpeq" and "fcmpq" which had wrong
number of arguments.
* h8300.h: Remove extra ; which produces compiler warning.
John Gilmore [Thu, 30 Jan 1992 09:06:49 +0000 (09:06 +0000)]
* sparc-pinsn.c: Remove kludge for preferring architectures.
Remove #ifdef's for SORT_NEEDED. We need to sort the table, now
and forever. Add `add' instruction to the set that get checked
for a preceding `sethi' in order to print an absolute address.
Corresponding changes in ../include/opcode/sparc.h needed
to eliminate garbage instructions.
* config/mh-sparc.h: now uses libgcc.a
* ldmain.c: quit using exit
* *.sc: use *(COMMON) rather than [COMMON]
* ldlex.l, lexsup.c: much thinking moved from .l and put into .c,
to allow preprocessing of .l file.
* Makefile.in: New ldlex.l mangling
* ldexp.c (fold_binary): perform expressions with % and / in
integer.
* ldfile.c (open_a): open archives on VMS in a special way
* lderror.c: forgot to check in from a long while ago
Per Bothner [Wed, 29 Jan 1992 07:52:01 +0000 (07:52 +0000)]
* Makefile.in: For libg++, make sure the -I pointing
to the gcc directory goes *after* all the libg++-local -I flags.
Also, move just-gcc dependency from just-libg++ to all-libg++.
Fred Fish [Wed, 29 Jan 1992 05:16:49 +0000 (05:16 +0000)]
Makefile.in: Add dependencies for various coff-*.o files.
elf.c: Remove extraneous paren from core_prpsinfo and core_prpstatus
macros, rename core_prpstatus to core_prstatus. Replace references to
old section "size" member with new "_raw_size" member. Implement
elf_make_empty_symbol, which is now used.
* ldgram.y: map -M behave in the same way as -Map (sets file name
to be "-".
* ldsym.c, ldlang.c: remember that size of a section is dependent on
whether or not relaxing has been done.
* ldmain.c: don't open a map file if it doesn't have a name
* relax.c: all the brains have moved into bfd.
* ldwrite.c: ammend comment
New entry point in the transfer vector - bfd_relax_section.
* aout-target.h: add to vector, call generic_relax
* bfd-in.h: add to vector
* bfd.c: add #define for vector
* bout.c: add to vector, call generic_relax
* coffcode.h: add to vector, also now has coff specific relax code
for the relaxable H8/300 relocs. Also clean up abs section cruft.
* elf.c: call generic_relax
* ieee.c: call new vector, clean up some bugs due to the creation
of bfd_abs_section
* libbfd.h: add bfd_generic_relax_section EXFUN
* oasys.c: call generic_relax
* reloc.c: implement generic_relax
* seclet.c: moved much of this into coffcode.h
* srec.c: call generic_relax
* targets.c: define new transfer vector
John Gilmore [Tue, 28 Jan 1992 02:57:37 +0000 (02:57 +0000)]
Handle debug symbols in dynamically loaded (relocated) code:
* dbxread.c (read_ofile_symtab): Fix up N_CATCH better. Pass
offset to process_one_symbol.
(process_one_symbol): Take new offset parameter. Add it into
appropriate symbol types to relocate symbols to loaded addresses.
Handle all possible symbol types, and complain() about types that
we don't expect to see.
* mipsread.c (psymtab_to_symtab_1): Pass offset of zero to
process_one_symbol (FIXME, should pass real offset).
Misc bugfixes:
* breakpoint.c (resolve_sal_pc): Split out code to resolve a
sal's PC value.
(set_breakpoint, break_command_1, until_break_command,
catch_command_1, breakpoint_re_set_one): Use it.
(breakpoint_re_set_one): Disable bkpts that don't re-set cleanly.
(breakpoint_re_set): Mention breakpoint number in error messages.
* symtab.h (resolve_sal_pc): Declare.
* infcmd.c (jump_command): Use resolve_sal_pc.
* source.c (find_source_lines): Avoid "Source file is more
recent than executable" when bfd_get_mtime gives 0.
(list_command): Shorten "FILE, line N" to "FILE:N".
* putenv.c (putenv): Avoid unportably casting pointers to unsigneds.
John Gilmore [Mon, 27 Jan 1992 22:10:05 +0000 (22:10 +0000)]
* buildsym.c (read_struct_type): Circumvent sun3 sunos "--" compiler bug.
* c-exp.y (yylex): `this' and `template' are only tokens in C++.
* target.c (target_xfer_memory): Return errno in preference to EIO.