Jim Kingdon [Fri, 28 Jan 1994 21:10:07 +0000 (21:10 +0000)]
* config/m68k/tm-monitor.h: Changes to bring this into accordance
with the old tm-m68k-em.h:
(GDBINIT_FILENAME, DEFAULT_PROMPT): Remove.
(HAVE_68881): Don't undefine; this #define is obsolete.
(REGISTER_NAMES): Don't muck with it; what tm-m68k.h has is fine.
Add FIXME regarding GET_LONGJMP_TARGET.
Ken Raeburn [Fri, 28 Jan 1994 20:05:56 +0000 (20:05 +0000)]
* lib/ld.exp (simple_diff): Indicate failure if files have different numbers of
lines. Don't muck with $differences to avoid indicating a pass, just return.
Also got rid of trailing whitespace on some lines.
David MacKenzie [Fri, 28 Jan 1994 19:36:53 +0000 (19:36 +0000)]
* ldlex.l: Add rule to catch invalid input characters instead of
printing them. Include "ldmain.h" for program_name decl.
(lex_warn_invalid): New function.
* Makefile.in: Add dependency.
Ian Lance Taylor [Fri, 28 Jan 1994 16:30:29 +0000 (16:30 +0000)]
* config/obj-coff.c (obj_coff_section_header_append): Do not
declare if BFD_ASSEMBLER.
(stack_pop): Correct test for stack underflow.
(obj_coff_endef, obj_coff_dim, obj_coff_line, obj_coff_size,
obj_coff_scl, obj_coff_tag, obj_coff_type, obj_coff_val): Declare
type of ignored argument to avoid gcc warning.
(align): Removed unused function.
Jim Kingdon [Fri, 28 Jan 1994 02:18:39 +0000 (02:18 +0000)]
* main.c (baud_rate): Add FIXME comment about printing -1 value.
* remote-utils.c (usage): Fix message to be accurate and conform
more closely to normal conventions.
* remote-utils.c (gr_files_info): Have the exec_bfd test control
whether to show information about exec_bfd, and not control whether
to show information about device and speed.
* remote-utils.c (gr_open): If sr_get_device returns NULL, give
usage message, don't dump core.
* remote-bug.c (bug_write_memory): Use alloca, not GCC extension
for variable size array.
(bug_fetch_register, bug_store_register): Rename "value" to
"fpreg_buf" because some compilers don't like variables whose
names are the same as types.
(bug_store_register): Use a cast when converting char * to
unsigned char *.
Ken Raeburn [Fri, 28 Jan 1994 01:37:02 +0000 (01:37 +0000)]
New Alpha support files, based on files from CMU.
Still to do:
- fix floating-point handling
- figure out if we can adapt to using ../opcodes/alpha-opc.h
- gcc bootstrap testing
- 32-bit mode support?
- test cross-assembly
Ken Raeburn [Fri, 28 Jan 1994 01:21:53 +0000 (01:21 +0000)]
* as.h: If __GNUC__ and inline are both undefined, define inline away.
* write.c (cvt_frag_to_fill): Don't assume that fr_var for rs_align or rs_org
frags will be 1.
(relax_segment): For rs_align, if fr_var is not 1, complain if
required padding is not a multiple of the size of the pad pattern.
(fixup_segment): Leave gp-relative relocations alone. For pcrel relocations
referring to the same segment, clear fx_pcrel when clearing fx_addsy.
* as.h: Adjust comments on rs_align.
* write.c, config/obj-{aout,bout,coff*}.c, config/tc-sparc.c: Query the fx_done
field instead of fx_addsy to see if the fixup still needs to be applied. Set
fx_done and clear fx_addsy both, for now. If TC_HANDLES_FX_DONE isn't defined,
assume md_apply_fix will only clear fx_addsy, and set fx_done accordingly after
returning.
* config/tc-sparc.h (TC_HANDLES_FX_DONE): Define.
* config/obj-coff.c (dot_text_symbol, dot_data_symbol, dot_bss_symbol): Defined
here, static.
* config/obj-aout.c [BFD_ASSEMBLER]: Undef NO_RELOC before including aout/aout64.h.
* write.c (write_object_file): If EMIT_SECTION_SYMBOLS is false, don't write
out a section symbol even if it's used in a relocation; assume relocations will
handle section numbers somehow. Rename "punt_it" label to "punt_it_if_unused"
to reflect it's true use.
(EMIT_SECTION_SYMBOLS): Default to 1.
(adjust_reloc_syms): Don't create a new symbol for an absolute
reference; just use the absolute section symbol.
(write_relocs): Make printout of reloc values dependent on flag DEBUG3, not
DEBUG2.
* config/obj-aout.h (EMIT_SECTION_SYMBOLS): Define as 0.
* config/obj-ecoff.h (EMIT_SECTION_SYMBOLS): Ditto.
Jim Kingdon [Fri, 28 Jan 1994 00:46:43 +0000 (00:46 +0000)]
* symmisc.c (maintenance_print_symbols): Don't refer to the name
of the command in error message (the text was referring to the old
name of the command).
* symmisc.c (dump_symtab): Fix args to fprintf_filtered.
Ken Raeburn [Fri, 28 Jan 1994 00:03:38 +0000 (00:03 +0000)]
* symbols.c (dot_text_symbol, dot_data_symbol, dot_bss_symbol): Deleted.
(symbol_begin): Moved to end of file, so function inlining can work better.
(fb_label_count, fb_label_max): Default C static initializers are sufficient.
* symbols.h (dot_text_symbol, dot_data_symbol, dot_bss_symbol): Declarations
deleted.
Jim Kingdon [Thu, 27 Jan 1994 23:55:10 +0000 (23:55 +0000)]
* c-typeprint.c (c_type_print_base): Have SHOW == 0 mean to print
full details on structure elements without names. This partially
reverts the changes of 1 Jul 1993 and 31 Aug 1993; I think this aspect
of those changes was accidental.
Jim Kingdon [Thu, 27 Jan 1994 20:19:13 +0000 (20:19 +0000)]
* Makefile.in (version.c), main.c (print_gdb_version): Use
host_alias and target_alias, not host_canonical and
target_canonical, to print configuration.
Jim Kingdon [Thu, 27 Jan 1994 01:23:50 +0000 (01:23 +0000)]
* parse.c (write_exp_msymbol): Use new type msymbol_addr_type instead
of builtin_type_long. It is necessary to get a type which is
TARGET_PTR_BIT bits in size; builtin_type_long might not be big enough.
Jim Kingdon [Thu, 27 Jan 1994 01:12:06 +0000 (01:12 +0000)]
Fix many sins which will come up in 32 bit x 64 bit GDB, and
various miscellaneous things discovered in the process:
* printcmd.c, defs.h (print_address_numeric): New function.
* c-valprint.c (c_val_print), ch-valprint.c (chill_val_print)
breakpoint.c (describe_other_breakpoints, breakpoint_1, mention),
cp-valprint.c (cplus_print_value), infcmd.c (jump_command),
printcmd.c, stack.c, symfile.c, symmisc.c, valprint.c:
Use it.
* utils.c, defs.h (gdb_print_address): New function.
* expprint (dump_expression), gdbtypes.h: Use it.
* breakpoint.c (describe_other_breakpoints),
symmisc.c (dump_symtab, print_symbol):
Use filtered not unfiltered I/O.
(remove_breakpoints): Remove BREAKPOINT_DEBUG code. Might as well
just run gdb under a debugger for this (and it had problems with
printing addresses, how to print b->shadow, etc.).
* buildsym.c (make_blockvector), core.c (memory_error),
exec.c (print_section_info), maint.c (print_section_table),
mdebugread.c (parse_procedure), solib.c, source.c, symfile.c,
symmisc.c, symtab.c, valops.c, valprint.c, xcoffexec.c:
Add comments saying code is broken. Marked with "FIXME-32x64".
* dbxread.c (process_one_symbol), partial-stab.h (default),
remote-vx.c (vx_run_files_info):
Don't cast int being passed to local_hex_string.
* symmisc.c (print_symbol): Don't cast long being passed to %lx.
* symtab.h (general_symbol_info): Add comment about SYMBOL_VALUE
only being a long.
* symmisc.c (print_symbol): Print "offset" in message for LOC_ARG
and LOC_LOCAL.
* printcmd.c (print_address): Remove #if 0 code with ADDR_BITS_REMOVE.
* source.c: Include <sys/types.h> regardless of USG.
Jim Kingdon [Thu, 27 Jan 1994 00:36:05 +0000 (00:36 +0000)]
Fix many sins which will come up in 32 bit x 64 bit GDB, and
various miscellaneous things discovered in the process:
* printcmd.c, defs.h (print_address_numeric): New function.
* c-valprint.c (c_val_print), ch-valprint.c (chill_val_print)
breakpoint.c (describe_other_breakpoints, breakpoint_1, mention),
cp-valprint.c (cplus_print_value), infcmd.c (jump_command),
printcmd.c, stack.c, symfile.c, symmisc.c, valprint.c:
Use it.
* utils.c, defs.h (gdb_print_address): New function.
* expprint (dump_expression), gdbtypes.h: Use it.
* breakpoint.c (describe_other_breakpoints),
symmisc.c (dump_symtab, print_symbol):
Use filtered not unfiltered I/O.
(remove_breakpoints): Remove BREAKPOINT_DEBUG code. Might as well
just run gdb under a debugger for this (and it had problems with
printing addresses, how to print b->shadow, etc.).
* buildsym.c (make_blockvector), core.c (memory_error),
exec.c (print_section_info), maint.c (print_section_table),
mdebugread.c (parse_procedure), solib.c, source.c, symfile.c,
symmisc.c, symtab.c, valops.c, valprint.c, xcoffexec.c:
Add comments saying code is broken. Marked with "FIXME-32x64".
* dbxread.c (process_one_symbol), partial-stab.h (default),
remote-vx.c (vx_run_files_info):
Don't cast int being passed to local_hex_string.
* symmisc.c (print_symbol): Don't cast long being passed to %lx.
* symtab.h (general_symbol_info): Add comment about SYMBOL_VALUE
only being a long.
* symmisc.c (print_symbol): Print "offset" in message for LOC_ARG
and LOC_LOCAL.
* printcmd.c (print_address): Remove #if 0 code with ADDR_BITS_REMOVE.
* source.c: Include <sys/types.h> regardless of USG.
David MacKenzie [Wed, 26 Jan 1994 22:11:18 +0000 (22:11 +0000)]
* objcopy.c (filter_bytes): New function.
(copy_section): Call it.
(copy_options, copy_usage, copy_main): Add --byte option to
activate it. Appropriate the -b option (which was an undocumented
synonym for -F) for it, also. Add --interleave, -i option for
additional control.
(setup_section, copy_section, mangle_section): Renamed with no `s'
on the end.
* objcopy.1, binutils.texi: Document the new options.
* objdump.c (display_target_tables, display_target_list):
New functions broken out of display_info.
Eliminate some magic constants. Use more meaningful variable names.
(dump_bfd_header): New function broken out of display_bfd.
(dump_section_header): New function broken out of dump_headers.
(remove_useless_symbols): Don't shadow global variable name with
parameter.
(objdump_print_address): Fix backward test.
Stan Shebs [Wed, 26 Jan 1994 04:24:30 +0000 (04:24 +0000)]
* Makefile.in: Format variable definitions consistently.
(LD_PROG): Remove unnecessary variables from link command,
change variable LOADLIBES to EXTRALIBS.
* mpw-config.in: New file, MPW configuration fragment.
* mpw-build.in: New file, MPW build script fragment.
* mpw-make.in: New file, MPW makefile fragment.
(This file is semi-automatically generated from Makefile.in.)
* ldfile.c (slash): If MPW, set to `:'.
* ldlex.l (TRUE_FALSE_ALREADY_DEFINED): If MPW, set this to
prevent redefinition errors.
Peter Schauer [Tue, 25 Jan 1994 21:03:56 +0000 (21:03 +0000)]
* valops.c (value_assign): Set `type' after coercing toval.
* c-valprint.c (c_val_print), ch-valprint.c (chill_val_print):
Use extract_unsigned_integer to get the address of a reference.
Ian Lance Taylor [Tue, 25 Jan 1994 18:20:50 +0000 (18:20 +0000)]
* archive.c (do_slurp_bsd_armap, bfd_slurp_bsd_armap_f2): Do not
try to overlay the internal carsyms on the external symdefs. That
can not work if the size of a host pointer is larger than 4 bytes.
Jim Kingdon [Tue, 25 Jan 1994 16:56:24 +0000 (16:56 +0000)]
* som.c, som.h (bfd_som_set_section_attributes,
bfd_som_set_subsection_attributes): Change parameters from char
to int. Following a prototype with an old-style function definition
in the presence of widened parameters is a GCC-ism not supported
by the HP compiler in ANSI mode.
Jim Kingdon [Tue, 25 Jan 1994 16:39:10 +0000 (16:39 +0000)]
* paread.c (read_unwind_info): Just assign to objfile->obj_private,
not OBJ_UNWIND_INFO. Assigning to a cast is a GCC-ism which
the HP compiler in ANSI mode doesn't like.
* main.c: When defaulting HAVE_SIGSETMASK based on USG, just do it
based on USG, rather than defining HAVE_SIGSETMASK to an expression
containing defined. This is for the HP compiler in ANSI mode.
David MacKenzie [Tue, 25 Jan 1994 13:27:56 +0000 (13:27 +0000)]
* objdump.c (display_file): Remove call to list_matching_formats.
It would never be called.
(list_matching_formats): Take an arg giving the list of matching
formats.
(display_bfd): Pass the arg, and get it filled in by calling
bfd_check_format_matches instead of bfd_check_format.
(display_info, display_info_table): target_vector was renamed to
bfd_target_vector.
Ian Lance Taylor [Tue, 25 Jan 1994 01:52:48 +0000 (01:52 +0000)]
* coff-alpha.c (alpha_ecoff_object_p): New function. Set size of
.pdata section based on lnnoptr field, not section header.
(alpha_relocate_section): Don't bother to check if r_symndx >= 0,
since it is unsigned.
(ecoffalpha_little_vec): Use alpha_ecoff_object_p rather than
coff_object_p.
* ecoff.c (ecoff_new_section_hook): Set alignment_power field of
.pdata section to 3.
(ecoff_compute_section_file_positions): Save the size of the
.pdata section in the line_filepos field, and actually align the
.pdata section to an alignment power of 4.
(ecoff_compute_reloc_file_positions): Set output_has_begun after
calling ecoff_compute_section_file_positions.
(ecoff_write_object_contents): Set s_lnnoptr for the .pdata
section from the line_filepos field. Set vstamp for the optional
header from the vstamp of the symbolic header.
(ecoff_bfd_final_link): Set vstamp of the symbolic header to the
vstamp used by the first object file in the link.
Ian Lance Taylor [Tue, 25 Jan 1994 00:26:33 +0000 (00:26 +0000)]
* ecoff.c (ecoff_frob_symbol): New function. Put undefined
symbols of known size in the undefined section. Put small common
symbols in a .scommon section.
* ecoff.h (ecoff_frob_symbol): Declare.
* config/obj-ecoff.h (obj_frob_symbol): Define.
* config/obj-elf.c (obj_elf_write_symbol_p, obj_elf_write_symbol,
obj_elf_frob_symbol): Removed unused functions.
* config/obj-elf.h (obj_frob_symbol, obj_write_symbol): Removed
unused macros.
(obj_elf_frob_symbol, obj_elf_write_symbol): Removed declarations
of unused functions.
(obj_frob_symbol): Define if ECOFF_DEBUGGING.
Ian Lance Taylor [Tue, 25 Jan 1994 00:24:57 +0000 (00:24 +0000)]
* tc-mips.c (g_switch_seen): New static variable.
(md_parse_option): Set g_switch_seen for -G option.
(s_option): If creating PIC code, force the GP size to be 0. Warn
if -G switch used with a non-zero value.
Ian Lance Taylor [Mon, 24 Jan 1994 23:54:51 +0000 (23:54 +0000)]
* elfcode.h (swap_out_syms): Use elf_section_from_bfd_section to
get the index of a common section, rather than always using
SHN_COMMON (MIPS has multiple common sections).
David MacKenzie [Mon, 24 Jan 1994 23:38:03 +0000 (23:38 +0000)]
* objdump.c (display_file): Remove call to list_matching_formats.
It would never be called.
(list_matching_formats): Take an arg giving the list of matching
formats.
(display_bfd): Pass the arg, and get it filled in by calling
bfd_check_format_matches instead of bfd_check_format.
* binutils.texi (objdump): Note some limitations of -h section
address printing.
David MacKenzie [Mon, 24 Jan 1994 23:33:23 +0000 (23:33 +0000)]
* format.c (bfd_check_format_matches): New function.
(bfd_check_format): Call it.
(bfd_matching_formats): Function removed.
* targets.c: Replace the vector added on Jan 21 with a count of
entries in default_vector.
* bfd-in2.h: Regenerated.
Fred Fish [Mon, 24 Jan 1994 19:36:12 +0000 (19:36 +0000)]
Since gdb distributions must be sanitized, and it is easy to forget to
run Sanitize during the build process, cause the distribution build process
to emit a appropriate message and quit when run in an unsanitized tree.
Ian Lance Taylor [Mon, 24 Jan 1994 18:05:08 +0000 (18:05 +0000)]
* bout.c (calljx_callback, callj_callback): Use get_value to get
the symbol value and check for undefined symbols.
(get_value): If the symbol is undefined, look it up in the linker
hash table.
(b_out_get_relocated_section_contents): For PCREL24 and PCREL13
use get_value to get the symbol value and check for undefined
symbols.
* reloc16.c (bfd_coff_reloc16_get_value): If the symbol is
undefined, look it up in the linker hash table.
Ian Lance Taylor [Mon, 24 Jan 1994 17:59:18 +0000 (17:59 +0000)]
* ldlang.c (relaxing): Removed global variable.
(lang_size_sections): If the canonical symbols have not already
been read in, read them in before relaxing.
* ldlang.h (relaxing): Removed declaration.