Jeff Law [Tue, 29 Jun 1999 01:28:25 +0000 (01:28 +0000)]
è
* elf-hppa.c (elf_hppa_howto_table): Use bfd_elf_generic_reloc as
relocation function.
* elf32-hppa.c (hppa_elf_reloc): Kill unused/unwanted function.
Mark Mitchell [Sun, 27 Jun 1999 21:23:34 +0000 (21:23 +0000)]
* elf32-mips.c (MIPS_ELF_SRDATA_SECTION_NAME): New macro.
(MIPS_ELF_OPTIONS_SECTION_NAME): Likewise.
(MIPS_ELF_STUB_SECTION_NAME): Likewise.
(_bfd_mips_elf_section_from_shdr): Use them.
(_bfd_mips_elf_fake_sections): Likewise. Add .srdata to the list
of GP-relative sections.
(_bfd_mips_elf_set_section_contents): Use them.
(_bfd_mips_elf_section_processing): Share code between .sdata and
.lit4/.lit8 sections. Set appropriate flags for .srdata.
(mips_elf_additional_program_headers): Add handling for
PT_MIPS_OPTIONS segment on IRIX6.
(mips_elf_modify_segment_map): Likeiwse.
(mips_elf_final_link): Set EF_MIPS_CPIC when required by the ABI.
Include the options sections on IRIX6. Don't look for GP-relative
sections by name; use SHF_MIPS_GPREL instead.
(ELF_DYNAMIC_INTERPRETER): Adjust to use /usr/lib32/libc.so.1 for
the N32 ABI.
(mips_elf_create_dynamic_sections): Don't muck about with section
alignments and such on IRIX6.
(mips_elf_adjust_dynamic_symbol): Use MIPS_ELF_STUB_SECTION_NAME.
(mips_elf_size_dynamic_sections): Likewise. Adjust to handle the
fact that ELF_DYNAMIC_INTERPRETER is no longer a constant. Use
bfd_zalloc rather than bfd_alloc and memset.
(mips_elf_finish_dynamic_symbol): Use MIPS_ELF_STUB_SECTION_NAME.
Don't assert the existence of .rld_map on IRIX6.
(mips_elf_finish_dynamic_sections): Use MIPS_ELF_STUB_SECTION_NAME.
Mark Mitchell [Sun, 27 Jun 1999 11:05:15 +0000 (11:05 +0000)]
* elf32-mips.c (mips_elf_swap_msym_in): New function.
(mips_elf_swap_msym_out): New function.
(mips_elf_create_msym_section): Likewise.
(MIPS_ELF_MSYM_SECTION_NAME): New macro.
(_bfd_mips_elf_final_write_processing): Set sh_link for .msym.
(_bfd_mips_elf_section_from_shdr): Reject an SHT_MIPS_MSYM
section not named .msym.
(_bfd_mips_elf_fake_sections): Use MIPS_ELF_MSYM_SECTION_NAME, not
.msym directly. Set appropriate attributes for the .msym
section.
(mips_elf_link_hash_entry): Add min_dyn_reloc_index field.
(mips_elf_link_hash_newfunc): Clear it.
(mips_elf_create_dynamic_sections): Create the .msym section
on IRIX6.
(mips_elf_size_dynamic_sections): Allocate space for the
.msym section. Add a DT_MIPS_MSYM entry.
(mips_elf_finish_dynamic_symbol): Write out a .msym entry for
the symbol.
(mips_elf_finish_dynamic_sections): Assign a value for
DT_MIPS_MSYM. Add .msym entries for the section symbols as well.
Mark Mitchell [Sat, 26 Jun 1999 21:17:49 +0000 (21:17 +0000)]
* elf32-mips.c (irix_compat_t): New enumeration.
(ABI_N32_P): New macro.
(IRIX_COMPAT): Likewise.
(SGI_COMPAT): Implement in terms of IRIX_COMPAT.
(mips_elf_relocate_section): Fix typo.
David Mosberger <davidm@hpl.hp.com>
* dwarf2dbg.c (dwarf2_gen_line_info): Don't call
out_end_sequence() when the address decreases due to a new frag.
(gen_dir_list): Set ls.file[i].dir to j + 1 (not j) because file
numbering starts with 1.
David Mosberger <davidm@hpl.hp.com>
* dwarf2.c (struct arange): New type.
(struct comp_unit): Replace LOW and HIGH by member ARANGE.
(arange_add): New function.
(decode_line_info): Keep track of address ranges that a compilation
unit covers.
(comp_unit_contains_address): Return true if address is contained
in _any_ of the address ranges associated with a compilation unit.
(_bfd_dwarf2_find_nearest_line): Call comp_unit_find_nearest_line
on the first comp_unit that contains the address.
David Mosberger <davidm@hpl.hp.com>
* dwarf2.c (struct dwarf2_debug): Add member dwarf_line_buffer.
(decode_line_info): Add variable STASH and initialize it to point
to the per-bfd dwarf2_debug info. Remove static variable
dwarf_line_buffer and use stash->dwarf_line_buffer in its place.
Jeff Law [Thu, 24 Jun 1999 20:01:44 +0000 (20:01 +0000)]
ð
* elf-hppa.c (elf_hppa_final_write_processing): New function.
* elf32-hppa.c: Remove everything related to symbol extension
sections & records. Use the common elf_hppa_final_write_processing.
Jeff Law [Thu, 24 Jun 1999 20:01:42 +0000 (20:01 +0000)]
d
* elf-hppa.c (elf_hppa_final_write_processing): New function.
* elf32-hppa.c: Remove everything related to symbol extension
sections & records. Use the common elf_hppa_final_write_processing.
Ian Lance Taylor [Tue, 22 Jun 1999 21:01:24 +0000 (21:01 +0000)]
From Franz Sirl <Franz.Sirl-kernel@lauterbach.com>:
* elf32-ppc.c (ppc_elf_size_dynamic_sections): Set unused dynindx
field to 0, not -1.
(ppc_elf_finish_dynamic_sections): Check for positive section
dynindx field, rather than comparing against -1.
(ppc_elf_relocate_section): Only return false if undefined_symbol
or reloc_overflow fail, not always upon encountering an error.
Ian Lance Taylor [Tue, 22 Jun 1999 20:39:46 +0000 (20:39 +0000)]
Based on patches from Mumit Khan <khan@xraylith.wisc.EDU>:
* configure.in: Define EXECUTABLE_SUFFIX.
* dlltool.c: Include "dyn-string.h". Include <stdarg.h> based on
ANSI_PROTOTYPES, not __STDC__.
(outfile): Remove.
(gen_exp_file): Change uses of outfile to use alloca.
(make_one_lib_file, make_head, make_tail): Likewise.
(gen_lib_file): Likewise.
(look_for_prog): New static function.
(deduce_name): Rewrite to use look_for_prog.
(mcore_elf_gen_out_file): Use dyn_string_t rather than outfile.
* dllwrap.c: Don't include <stdio.h>, <errno.h>, <string.h>,
<stdlib.h>, or <unistd.h>. Include <sys/stat.h> and either
<stdarg.h> or <varargs.h>.
(driver_name): Initialize to NULL, not "gcc".
(dlltool_name): Initialize to NULL, not "dlltool".
(display, inform, look_for_prog, deduce_name): New static
functions.
(usage): Mention -mno-cygwin.
(OPTION_MNO_CYGWIN): Define.
(main): Handle -mno-cygwin. Deduce driver_name and dlltool_name.
* resrc.c (look_for_default): Make static. Remove unused local
path. Check using EXECUTABLE_SUFFIX.
(read_rc_file): Allocate enough space to hold EXECUTABLE_SUFFIX.
* Makefile.am: Rebuild dependencies.
(dllwrap_LDADD): Add $(INTLLIBS).
* configure, Makefile.in, config.in: Rebuild.
Ian Lance Taylor [Tue, 22 Jun 1999 19:04:42 +0000 (19:04 +0000)]
* subsegs.c (subseg_text_p): Rewrite non BFD_ASSEMBLER case to use
a list of names, to try obj_segment_name, and to try abbreviated
names when using COFF without long section names.
Jeff Law [Tue, 22 Jun 1999 12:20:30 +0000 (12:20 +0000)]
* elf-hppa.h: New file. Common stuff for elf32 and elf64 PA
support.
* elf32-hppa.c: Include elf-hppa.h.
(ARCH_SIZE): Define.
(elf_hppa_reloc_type_lookup): Delete. Found in the common code
now.
(elf32_hppa_info_to_howto): Similarly.
(elf_hppa_howto_table): Similarly.
(elf_hppa_reloc_type_lookup): Similarly.
(hppa_elf_gen_reloc_type): Similarly.
* elf32-hppa.h (ELF_HOWTO_TALBE, N_PARISC_RELOCS): Delete.
Ian Lance Taylor [Mon, 21 Jun 1999 10:11:52 +0000 (10:11 +0000)]
* alpha-dis.c: Don't include <stdlib.h>.
* arm-dis.c: Include "sysdep.h".
* tic30-dis.c: Don't include <stdlib.h> or <string.h>. Include
"sysdep.h".
* Makefile.am: Rebuild dependencies.
* Makefile.in: Rebuild.
Ian Lance Taylor [Mon, 21 Jun 1999 10:03:29 +0000 (10:03 +0000)]
* config/tc-arm.c (ldst_extend): Add parentheses to avoid
warning.
(do_ldst): Move assignment out of if condition.
(md_apply_fix3): Add casts to avoid printf format warnings. Add
parentheses to avoid warning.
Jeff Law [Fri, 18 Jun 1999 13:35:16 +0000 (13:35 +0000)]
* tc-hppa.c: General cleanups of ELF support. No more spaces
and subspaces for ELF.
(GDB_DEBUG_SPACE_NAME): Delete definition for ELF.
(GDB_STRINGS_SUBSPACE_NAME): Likewise.
(GDB_SYMBOLS_SUBSPACE_NAME): Likewise
(UNWIND_SECTION_NAME): Likewise.
(space/subspace related structures): Conditionalize definitions
on OBJ_SOM.
(space/subspace directives and support routines): Conditionalize
definitions and references/uses on OBJ_SOM.
(label_symbol_struct): For ELF, track the symbol's segment. For
SOM track its space.
(pa_define_label, pa_undefine_label, pa_get_label): Corresponding
changes.
(USE_ALIASES): Kill for both SOM & ELF.
(pa_def_subspaces, pa_def_spaces): Corresponding changes.
(pa_space, pa_subspace): Corresponding changes.
(pa_spaces_begin): Corresponding chagnes.
(md_begin): Do not muck around with space/subspace stuff for
OBJ_ELF.
(md_apply_fix): Temporarily disable argument relocation stuff
for OBJ_ELF.
(tc_gen_reloc): Temporarily disable relocation generation for
OBJ_ELF
(pa_build_unwind_subspace): Similarly.
Ian Lance Taylor [Sun, 13 Jun 1999 19:38:06 +0000 (19:38 +0000)]
* cg_dfn.c: Include "libiberty.h"
(DFN_INCR_DEPTH): Define instead of DFN_DEPTH.
(dfn_stack): Define as pointer rather than array.
(pre_visit): Reallocate dfn_stack as needed.
Ian Lance Taylor [Sun, 13 Jun 1999 19:02:25 +0000 (19:02 +0000)]
* objdump.c (disassemble_bytes): If the disassembler returns an
error, print out anything it may have printed to the buffer. From
H.J. Lu <hjl@gnu.org>.
Ian Lance Taylor [Sun, 13 Jun 1999 17:04:42 +0000 (17:04 +0000)]
Rework last checkin to the following:
* i386-dis.c (FWAIT_OPCODE): Define.
(used_prefixes): New static variable.
(fetch_data): Don't print an error message if we have already
fetched some bytes successfully.
(ckprefix): Clear used_prefixes. Use FWAIT_OPCODE, not 0x9b.
(prefix_name): New static function.
(print_insn_i386): If setjmp fails, indicating a data error, but
we have managed to fetch some bytes, print the first one as a
prefix or a .byte pseudo-op. If fwait is followed by a non
floating point instruction, print the first prefix. Set
used_prefixes when prefixes are used. If any prefixes were not
used after disassembling the instruction, print the first prefix
instead of printing the instruction.
(putop): Set used_prefixes when prefixes are used.
(append_seg, OP_E, OP_G, OP_REG, OP_I, OP_sI, OP_J): Likewise.
(OP_DIR, OP_SIMD_Suffix): Likewise.
Mark Mitchell [Sun, 13 Jun 1999 14:49:51 +0000 (14:49 +0000)]
* elf-bfd.h (_bfd_elf_link_adjust_dynindx): New function.
* elflink.c (_bfd_elf_link_adjust_dynindx): Define it.
* elflink.h (elf_link_remove_section_and_adjust_dynindices): New
function.
(bfd_elf_size_dynamic_sections): Use it.