* elfcode.h (put_signed_word): Define.
(get_signed_word): Define.
(elf_swap_reloca_in): Use get_signed_word for the r_addend field.
(elf_swap_reloca_out): Use put_signed_word for the r_addend
field.
* elf32-m68k.c (elf_m68k_finish_dynamic_symbol): Use
bfd_get_signed_32 to set the r_addend field.
* elf64-mips.c (mips_elf64_swap_reloca_in): Use
bfd_h_get_signed_64 to set the r_addend field.
Ian Lance Taylor [Mon, 16 Jun 1997 18:41:19 +0000 (18:41 +0000)]
* elflink.h (NAME(bfd_elf,size_dynamic_sections)): Call
elf_link_assign_sym_version before elf_adjust_dynamic_symbol.
(elf_fix_symbol_flags): New static function, broken out of
elf_adjust_dynamic_symbol.
(elf_adjust_dynamic_symbol): Call elf_fix_symbol_flags.
(elf_link_assign_sym_version): Likewise. Permit a symbol to be
forced local even if NEEDS_PLT is set. When forcing a symbol to
be local, clear NEEDS_PLT.
(elf_link_output_extsym): Remove unused local bed.
Jeff Law [Fri, 13 Jun 1997 20:19:53 +0000 (20:19 +0000)]
* mn10300-tdep.c (mn10300_analyze_prologue): Fix some comments.
Add missing return statements after finding an "add imm{16,32},sp"
instruction.
(mn10300_frame_chain): Add in size of our register save area to find
our caller's frame if our caller does not have a frame pointer.
Fixes some problems debugging optimized code.
* remote-e7000.c (ctype.h): Include.
(e7000_insert_breakpoint): #if away unused arg used by unused expr.
* frame.h (generic_get_saved_register): Add prototype.
(enum lval_type): Add partial forward decl.
* dsrec.c (make_srec): Remove unused variable "type_code".
* remote-sim.c (gdbsim_wait): Handle sim_running and sim_polling
cases by just ignoring them.
(command.h): Include.
* java-exp.y (parse_number): Remove unused variable "unsigned_p".
* java-lang.c (gdbcore.h): Include for prototypes.
(type_from_class): Remove unused variable "ftype".
(type_from_class): Remove unused variable "name_length".
(evaluate_subexp_java): Add default case to handle remaining
enumerations.
* java-valprint.c (c-lang.h): Include for prototypes.
* symfile.c (simple_read_overlay_region_table): #if away
unused function.
(simple_free_overlay_region_table): Ditto.
(overlay_is_mapped): Add default case to switch.
(simple_read_overlay_region_table): Ditto.
(simple_read_overlay_region_table): Add prototype.
* symtab.c (fixup_symbol_section): Remove unused msym variable.
(fixup_psymbol_section): Ditto.
(find_pc_sect_symtab): Make distance a CORE_ADDR.
* utils.c: Add comment about t_addr being either unsigned long or
unsigned long long.
(paddr): Change formats to match actual types args are cast to.
(preg): Ditto.
(paddr_nz): Ditto.
(preg_nz): Ditto.
Fred Fish [Fri, 13 Jun 1997 14:51:32 +0000 (14:51 +0000)]
* defs.h (perror_with_name): Is a NORETURN function.
* utils.c (perror_with_name): Is a NORETURN function.
(error): Is NORETURN independently of ANSI_PROTOTYPES.
Ian Lance Taylor [Thu, 12 Jun 1997 16:30:55 +0000 (16:30 +0000)]
* dlltool.c (export_type): Add data field.
(def_exports): Add data parameter. Change all callers.
(dump_def_info): Print data field.
(gen_def_file): Likewise.
(make_one_lib_file): Handle data field by not emitting simple
label and not emitting anything in SEC_TEXT.
(dtab): Print data field.
(process_duplicates): Merge data field.
* dlltool.h (def_exports): Update declaration.
* defparse.y (expline): Accept opt_DATA. Pass it to def_exports.
(opt_DATA): New non-terminal.
Ian Lance Taylor [Thu, 12 Jun 1997 16:17:53 +0000 (16:17 +0000)]
* write.c (write_object_file): In non BFD_ASSEMBLER code, as we
step through the frags calling cvt_frag_to_fill, switch to
SEG_DATA when we reach data_frag_root.
PR 12580.
Ian Lance Taylor [Wed, 11 Jun 1997 21:18:10 +0000 (21:18 +0000)]
* dlltool.h: New file.
* deflex.l: Include dlltool.h and libiberty.h. Don't declare
strdup. Use xstrdup rather than strdup.
* defparse.y: Include bfd.h, bucomm.h, and dlltool.h.
* dlltool.c: Include dlltool.h and time.h. Make a lot of
variables and functions static. Make a lot of char * variables
and parameters const. Add declarations for static functions. Do
some reindenting. Hide more PowerPC stuff inside DLLTOOL_PPC.
Rob Savoye [Wed, 11 Jun 1997 20:09:55 +0000 (20:09 +0000)]
* configure: Use '|' instead of ":" as the seperator in
sed. Otherwise sed chokes on NT path names with drive
designators. Also look for "?:*" as the leading characters in an
absolute pathname.
Ian Lance Taylor [Wed, 11 Jun 1997 16:59:00 +0000 (16:59 +0000)]
* elflink.h (elf_link_output_extsym): Call finish_dynamic_symbol
for a symbol which is being forced to be local.
* elf32-i386.c (elf_i386_relocate_section): Write out the
relocation value for a GOT reloc for a symbol which is turning
into a local symbol.
(elf_i386_finish_dynamic_symbol): If a symbol is turning into a
local symbol, write out a RELATIVE reloc rather than a GLOB_DAT
reloc.
* elf32-m68k.c, elf32-sparc.c: Corresponding changes.
Ian Lance Taylor [Wed, 11 Jun 1997 04:01:48 +0000 (04:01 +0000)]
* elf32-i386.c (elf_i386_relocate_section): Get the relocation
value if the symbol is turning into a local symbol.
* elf32-m68k.c (elf_m68k_relocate_section): Likewise.
* elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
Ulrich Drepper [Tue, 10 Jun 1997 21:46:23 +0000 (21:46 +0000)]
(elf_link_add_object_symbols): Also read verneed
information by calling `_bfd_elf_slurp_version_tables'.
(elf_link_add_object_symbols): For undefined symbols look for
version informaiton in the verneed records.
(elf_link_add_object_symbols): Use soname of shared object
for verneed record if it is available.
Keith Seitz [Fri, 6 Jun 1997 21:47:12 +0000 (21:47 +0000)]
Modified Files:
ChangeLog sh-tdep.c config/sh/tm-sh.h
* config/sh/tm-sh.h: add define for FPSCR_REGNUM
* sh-tdep.c (sh_show_regs): print out all registers for
the current processor
Bob Manson [Wed, 4 Jun 1997 00:04:43 +0000 (00:04 +0000)]
* config/monitor.exp(gdb_target_monitor): Call gdb_file_cmd
here. Call gdb_target_exec before rebooting the target, to make
sure the connection to the target is closed.
(gdb_load): Pass the name of the executable to gdb_target_monitor.
Don't call gdb_file_cmd here; let gdb_target_monitor do it.
* config/gdbserver.exp: Pass the executable being loaded to
gdb_target_monitor. Don't call gdb_file_cmd here; let
gdb_target_monitor do it.
Ian Lance Taylor [Sat, 31 May 1997 01:57:27 +0000 (01:57 +0000)]
* elf32-sparc.c (elf32_sparc_size_dynamic_sections): Set dynindx
for a section even if it is not loaded.
Otherwise compiling this
static char bar; char *foo() { return &bar; }
without -fpic and then doing ld -shared OBJECT dumps core.
Ian Lance Taylor [Fri, 30 May 1997 16:47:49 +0000 (16:47 +0000)]
* cofflink.c (coff_link_add_symbols): If PE file, don't subtract
section VMA.
(_bfd_coff_link_input_bfd): Separate section VMA handling for
input and output files.
(_bfd_coff_generic_relocate_section): Check whether input file,
not output file, is a PE file.
Jeff Law [Wed, 28 May 1997 16:48:32 +0000 (16:48 +0000)]
* config/tc-hppa.c (tc_fix_adjustable): Reject absolute calls/jumps.
(hppa_force_relocation): Force a relocation for an absolute
call/jump.
part of gcc/12343.
* i386-dis.c (dis386[], dis386_twobyte[]): change pushl/popl
to pushS/popS for segment regs and byte constant so that
pushw/popw printed when in 16 bit data mode.
* i386-dis.c (dis386[]): change cwtl, cltd to cWtS, cStd to
print cbtw, cwtd in 16 bit data mode.
* i386-dis.c (putop): extra case W to support above.
* i386-dis.c (print_insn_x86): print addr32 prefix when given
address size prefix in 16 bit address mode.