Alan Modra
180e47e2d7
* objdump.c (remove_useless_symbols): Discard section symbols.
2004-12-30 22:33:20 +00:00
Alan Modra
83ef079838
* objdump.c (dump_symbols): Fix thinko last change. Improve error
...
messages.
2004-10-11 08:18:43 +00:00
Nick Clifton
3c9458e953
Implement a new BFD API function: bfd_is_target_special_symbol. Use this in nm
...
and objdump to skip the displaying of ARM Mapping symbols unless specifically
requested.
2004-10-08 14:54:04 +00:00
Alan Modra
c9727e01b5
bfd/
...
* bfd.c (bfd_get_synthetic_symtab): Pass counts and both symbol tables.
* elf-bfd.h (_bfd_elf_get_synthetic_symtab): Adjust.
* elf.c (_bfd_elf_get_synthetic_symtab): Adjust.
* libbfd-in.h (_bfd_nodynamic_get_synthetic_symtab): Adjust.
* targets.c (struct bfd_target <_bfd_get_synthetic_symtab>): Adjust.
* elf64-ppc.c (ppc64_elf_get_synthetic_symtab): Don't read symbols.
Use both symbol tables on non-relocatable objects. Use a common
error exit. Fix "mid" warning.
* libbfd.h: Regenerate.
* bfd-in2.h: Regenerate.
binutils/
* objdump.c (dump_bfd): Pass both symbol tables to
bfd_get_synthetic_symtab.
2004-08-28 03:05:18 +00:00
Jakub Jelinek
90e3cdf2a9
bfd/
...
* elfxx-target.h (bfd_elfNN_get_synthetic_symtab): Only define
if not yet defined.
* elf64-ppc.c (bfd_elf64_get_synthetic_symtab): Define.
(synthetic_opd, synthetic_relocatable): New variables.
(compare_symbols, compare_relocs): New helper routines.
(ppc64_elf_get_synthetic_symtab): New function.
* bfd.c (bfd_get_synthetic_symtab): Rename dynsyms argument
to relsyms.
* bfd-in2.h: Regenerated.
* elf.c (_bfd_elf_get_synthetic_symtab): Rename dynsyms argument
to relsyms. Return 0 if abfd is relocatable.
binutils/
* objdump.c (dump_bfd): For relocatable objects, pass syms instead
of dynsyms to bfd_get_synthetic_symtab.
2004-08-17 09:07:35 +00:00
Nick Clifton
ed049af3bc
Fix for PR 280 - remove duplicated raw insn output fron h8300/h8500 disassemblers
2004-07-22 16:52:43 +00:00
H.J. Lu
082b729701
bfd/
...
2004-07-21 H.J. Lu <hongjiu.lu@intel.com>
* aout-adobe.c (aout_32_section_already_linked): Defined.
* aout-target.h (MY_section_already_linked): Likewise.
* aout-tic30.c (MY_section_already_linked): Likewise.
* binary.c (binary_section_already_linked): Likewise.
* bout.c (b_out_section_already_linked): Likewise.
* coff-alpha.c (_bfd_ecoff_section_already_linked): Likewise.
* coff-mips.c (_bfd_ecoff_section_already_linked): Likewise.
* coffcode.h (coff_section_already_linked): Likewise.
* i386msdos.c (msdos_section_already_linked): Likewise.
* i386os9k.c (os9k_section_already_linked): Likewise.
* ieee.c (ieee_section_already_linked): Likewise.
* ihex.c (ihex_section_already_linked): Likewise.
* mach-o.c (bfd_mach_o_section_already_linked): Likewise.
* mmo.c (mmo_section_already_linked): Likewise.
* nlm-target.h (nlm_section_already_linked): Likewise.
* oasys.c (oasys_section_already_linked): Likewise.
* pef.c (bfd_pef_section_already_linked): Likewise.
* ppcboot.c (ppcboot_section_already_linked): Likewise.
* som.c (som_bfd_discard_group): Likewise.
* srec.c (srec_section_already_linked): Likewise.
* tekhex.c (tekhex_section_already_linked): Likewise.
* versados.c (versados_section_already_linked): Likewise.
* vms.c (vms_section_already_linked): Likewise.
* coff-target.h (_bfd_xcoff_section_already_linked): Likewise.
* xsym.c (bfd_sym_section_already_linked): Likewise.
* bfd-in.h (bfd_section_already_linked_table_init): New.
(bfd_section_already_linked_table_free): Likewise.
* coff-rs6000.c (rs6000coff_vec): Add
_bfd_generic_section_already_linked.
(pmac_xcoff_vec): Likewise.
* coff64-rs6000.c (rs6000coff64_vec): Likewise.
(aix5coff64_vec): Likewise.
* elf-bfd.h (_bfd_elf_section_already_linked): New prototype.
* elflink.c (_bfd_elf_section_already_linked): New function.
* elfxx-target.h (bfd_elfNN_section_already_linked): Defined.
* libbfd-in.h (_bfd_nolink_section_already_linked): Defined.
(_bfd_generic_section_already_linked): New.
(bfd_section_already_linked_hash_entry): Likewise.
(bfd_section_already_linked): Likewise.
(bfd_section_already_linked_table_lookup): Likewise.
(bfd_section_already_linked_table_insert): Likewise.
* linker.c (bfd_section_already_linked): New.
(_bfd_section_already_linked_table): Likewise.
(bfd_section_already_linked_table_lookup): Likewise.
(bfd_section_already_linked_table_insert): Likewise.
(already_linked_newfunc): Likewise.
(bfd_section_already_linked_table_init): Likewise.
(bfd_section_already_linked_table_free): Likewise.
(_bfd_generic_section_already_linked): Likewise.
* section.c (bfd_section): Remove comdat.
(bfd_comdat_info): Moved to ...
* bfd-in.h (coff_comdat_info): Here.
(bfd_coff_get_comdat_section): New.
* coffgen.c (bfd_coff_get_comdat_section): Likewise.
* libcoff-in.h (coff_section_tdata): Add comdat.
* coffcode.h (handle_COMDAT): Updated.
* cofflink.c (coff_link_add_symbols): Likewise.
* ecoff.c (bfd_debug_section): Likewise.
* targets.c (bfd_target): Add _section_already_linked.
(BFD_JUMP_TABLE_LINK): Updated.
* bfd-in2.h: Regenerated.
* libbfd.h: Likewise.
* libcoff.h: Likewise.
binutils/
2004-07-21 H.J. Lu <hongjiu.lu@intel.com>
* objcopy.c (filter_symbols): Use bfd_coff_get_comdat_section
to access comdat.
* objdump.c (dump_section_header): Likewise.
ld/
2004-07-21 H.J. Lu <hongjiu.lu@intel.com>
* ldlang.c (already_linked_hash_entry): Removed.
(already_linked): Likewise.
(already_linked_table): Likewise.
(section_already_linked): Call bfd_section_already_linked.
(lang_process): Replace already_linked_table_init with
bfd_section_already_linked_table_init and check return. Replace
already_linked_table_free with bfd_section_already_linked_table_free.
2004-07-21 15:42:58 +00:00
Alan Modra
135dfb4a65
* objcopy.c (copy_section): Use bfd_get_section_size instead of
...
_raw_size or bfd_get_section_size_before_reloc. Don't set reloc_done.
(compare_section_lma): Likewise.
* addr2line.c (find_address_in_section): Likewise.
* coffgrok.c (do_sections_p1): Likewise.
* dlltool.c (scan_drectve_symbols): Likewise.
* nlmconv.c (main): Likewise.
(copy_sections): Likewise.
(powerpc_mangle_relocs): Likewise.
* objdump.c (disassemble_section): Likewise.
* prdbg.c (find_address_in_section): Likewise.
* size.c (berkeley_sum): Likewise.
* srconv.c (wr_ob): Likewise.
* strings.c (strings_a_section): Likewise.
2004-06-15 01:19:13 +00:00
Alan Modra
46212538d6
* objdump.c (disassemble_section): Don't disassemble sections
...
without SEC_HAS_CONTENTS.
2004-04-24 12:39:47 +00:00
Jakub Jelinek
4c45e5c9ce
bfd/
...
* bfd.c (bfd_get_synthetic_symtab): Define.
* targets.c (BFD_JUMP_TABLE_DYNAMIC): Add
NAME##_get_synthetic_symtab.
(struct bfd_target): Add _bfd_get_synthetic_symtab.
* libbfd-in.h (_bfd_nodynamic_get_synthetic_symtab): Define.
* elf-bfd.h (struct elf_backend_data): Add plt_sym_val and
relplt_name fields.
(_bfd_elf_get_synthetic_symtab): New prototype.
* elfcode.h (elf_get_synthetic_symtab): Define.
* elf.c (_bfd_elf_get_synthetic_symtab): New function.
* elfxx-target.h (bfd_elfNN_get_synthetic_symtab): Define.
(elf_backend_plt_sym_val, elf_backend_relplt_name): Define.
(elfNN_bed): Add elf_backend_plt_sym_val and elf_backend_relplt_name.
* bfd-in2.h: Rebuilt.
* libbfd.h: Rebuilt.
* elf32-i386.c (elf_i386_plt_sym_val): New function.
(elf_backend_plt_sym_val): Define.
* elf64-x86-64.c (elf64_x86_64_plt_sym_val): New function.
(elf_backend_plt_sym_val): Define.
* elf32-s390.c (elf_s390_plt_sym_val): New function.
(elf_backend_plt_sym_val): Define.
* elf64-s390.c (elf_s390_plt_sym_val): New function.
(elf_backend_plt_sym_val): Define.
* elf32-sparc (elf32_sparc_plt_sym_val): New function.
(elf_backend_plt_sym_val): Define.
* elf64-sparc.c (sparc64_elf_plt_sym_val): New function.
(elf_backend_plt_sym_val): Define.
* elf32-ppc.c (ppc_elf_plt_sym_val): New function.
(elf_backend_plt_sym_val): Define.
* aout-target.h (MY_get_synthetic_symtab): Define.
* aout-tic30.c (MY_get_synthetic_symtab): Define.
* coff-rs6000.c (rs6000coff_vec): Add
_bfd_nodynamic_get_synthetic_symtab.
(pmac_xcoff_vec): Likewise.
* coff64-rs6000.c (rs6000coff64_vec): Add
_bfd_nodynamic_get_synthetic_symtab.
(aix5coff64_vec): Likewise.
* sunos.c (MY_get_synthetic_symtab): Define.
* vms.c (vms_get_synthetic_symtab): Define.
binutils/
* objdump.c (synthsyms, synthcount): New variables.
(disassemble_data): Use dynsyms for stripped binaries or libraries.
Add synthetized symbols.
(dump_bfd): For disassemble, initialize dynsyms always and
also synthsyms. Free synthsyms and clear {sym,dynsym,synth}count
before returning.
2004-04-22 14:45:32 +00:00
Nathan Sidwell
6f10430691
* objdump.c (struct SFILE): Replace current pointer with pos
...
offset, rename size to alloc.
(objdump_sprintf): Avoid unnecessary copies in the common case
(disassemble_bytes): Keep sfile live throughout the
function. Adjust usage appropriately.
2004-03-15 12:31:41 +00:00
Jakub Jelinek
68b3b8dc9e
* objdump.c (disassemble_bytes): Subtract rel_offset from printed
...
reloc address.
(disassemble_section): Set rel_offset to section->vma instead of
pinfo->buffer_vma.
2003-12-22 10:49:59 +00:00
Kazu Hirata
aaad4cf36a
* ChangeLog-9197: Fix comment typos.
...
* coffgrok.c: Likewise.
* filemode.c: Likewise.
* objcopy.c: Likewise.
* objdump.c: Likewise.
* prdbg.c: Likewise.
* stabs.c: Likewise.
* unwind-ia64.c: Likewise.
2003-12-06 00:06:12 +00:00
Alan Modra
3b9ad1cc1f
* objdump.c: Wrap long lines, init vars separately from decl.
...
(disassemble_section): Reset require_sec after call to
find_symbol_for_address.
2003-11-19 08:21:14 +00:00
Nick Clifton
22a398e190
Add new field to disassemble_info structure: symbol_is_valid() and use it to
...
skip displaying arm elf mapping symbols in disassembly output.
2003-11-14 15:12:44 +00:00
Alan Modra
0f6cb37fa4
* objdump.c: Revert rev 1.81 commit.
2003-11-11 01:57:04 +00:00
Nick Clifton
b2699c8b72
Remove "member" from verbose output of "-dv" in order to conform to POSIX
...
specification.
2003-11-10 17:28:33 +00:00
Nick Clifton
f24ddbddc5
Use consistent error messages for missing files.
...
Detect directories where an ordinary file is expected.
2003-11-07 12:19:34 +00:00
Kazu Hirata
50c2245bd8
* ChangeLog: Fix typos.
...
* ChangeLog-9197: Likewise.
* ChangeLog-9899: Likewise.
* NEWS: Likewise.
* ar.c: Fix comment typos.
* arsup.c: Likewise.
* coffgrok.c: Likewise.
* debug.c: Likewise.
* debug.h: Likewise.
* dlltool.c: Likewise.
* ieee.c: Likewise.
* nm.c: Likewise.
* objdump.c: Likewise.
* prdbg.c: Likewise.
* readelf.c: Likewise.
* resrc.c: Likewise.
* sysinfo.y: Likewise.
* windres.c: Likewise.
2003-10-27 13:20:32 +00:00
Nathan Sidwell
29ca8dc5bb
bfd/Changelog:
...
* libbfd-in.h (_bfd_link_section_stabs): Add string offset
parameter.
* cofflink.c (coff_link_add_symbols): Deal with split stab
sections.
* elflink.h (elf_link_add_object_symbols): Deal with split stab
sections.
* stabs.c (_bfd_link_section_stabs): Add string offset parameter.
* libbfd.h: Regenerated.
ld/ChangeLog:
* ldwrite.c (unsplittable_name): New.
(clone_section): Strip existing numeric suffix. Only truncate names
for coff targets.
(split_sections): Use unsplittable_name.
binutils/ChangeLog:
* objdump.c (read_section_stabs): Just read one section, return
pointer to it. Add size parameter.
(print_section_stabs): Add string offset parameter. Adjust.
(struct stab_section_names): Add string offset member.
(find_stabs_sections): Correct check for split section suffix,
adjust read_section_stabs and print_section_stabs calls.
(dump_stabs_section): Clear string_offset, free string table.
2003-10-07 08:53:42 +00:00
Andrew Cagney
92c2346c02
Index: opcodes/ChangeLog
...
2003-09-03 Andrew Cagney <cagney@redhat.com>
* dis-init.c (init_disassemble_info): New file and function.
* Makefile.am (CFILES): Add "dis-init.c".
(libopcodes_la_SOURCES): Add "dis-init.c".
(dis-init.lo): Specify dependencies.
* Makefile.in: Regenerate.
Index: include/ChangeLog
2003-08-27 Andrew Cagney <cagney@redhat.com>
* dis-asm.h (init_disassemble_info): Declare.
(INIT_DISASSEMBLE_INFO): Redefine as a call to
init_disassemble_info.
(INIT_DISASSEMBLE_INFO_NO_ARCH): Ditto.
Index: binutils/ChangeLog
2003-09-03 Andrew Cagney <cagney@redhat.com>
* objdump.c: Refer to init_disassemble_info in comments.
(disassemble_data): Replace INIT_DISASSEMBLE_INFO with
init_disassemble_info.
2003-09-03 23:43:18 +00:00
Nick Clifton
155e0d2321
Use bfd_map_over_sections to walk section chain.
...
Do not dump the contents of an empty section.
2003-09-03 08:26:52 +00:00
Alan Modra
d3ba05513b
* objcopy.c: Remove unnecessary prototypes and casts.
...
* objdump.c: Remove unnecessary casts.
* readelf.c: Convert to C90. Remove unnecessary prototypes and casts.
(get_osabi_name): Move so we don't need a forward declaration.
2003-08-05 14:40:54 +00:00
Alan Modra
43ac988152
* objdump.c (include_paths, include_path_count): New vars.
...
(usage): Describe --include.
(long_options): Add "include".
(add_include_path): New function.
(struct print_file_list): Make filename const. Add modname.
(try_print_file_open, update_source_path): New functions.
(show_line): Use them.
(main): Handle 'I' option. Don't check for NULL xrealloc arg.
2003-08-04 14:29:34 +00:00
Alan Modra
fd7bb956ee
* objdump.c: Remove unnecessary prototypes.
...
(disassemble_bytes): Add rel_offset parameter. Simplify reloc skipping
code, and print relocs when dump_dynamic_reloc_info.
(disassemble_data): Read and handle dynamic relocs. Correct reloc
skip code. Formatting.
(dump_bfd): Don't dump dynamic relocs when disassembling.
2003-07-30 03:54:15 +00:00
Nick Clifton
46dca2e0ea
Update to Iso C.
2003-07-29 15:40:37 +00:00
Nick Clifton
f1e2bc6264
Do not ignore sections without the LOAD flag when disassemble_all is true.
...
Only print a message about disassembling a section if it contains some data.
2003-07-24 14:06:07 +00:00
Nick Clifton
51cdc6e056
* objdump.c: New command line option --debugging-tags.
...
* doc/binutils.texi: Document new command line option.
* prdbg.c: Code to print the debug info as tags compatible with ctags.
* budbg.h: Adjust prototype.
* NEWS: Mention new switch
2003-07-22 13:33:32 +00:00
Nick Clifton
31e0f3cd45
* objdump.c (main) :Accept multiple -M switch.
...
* doc/binutils.texi: Document that multiple -M switches are accepted and that
a single -M switch can contain comma separated options.
* arm-dis.c (parse_arm_disassembler_option): Do not expect option string to be
NUL terminated.
(parse_disassembler_options): Allow options to be space or comma separated.
2003-07-18 11:34:41 +00:00
Nick Clifton
073fbac62c
* objdump.c (main): Issue a warning message if multiple -M
...
switches are used.
* doc/binutils.texi (objdump): Update documentation about -M
option.
2003-07-17 17:02:46 +00:00
Alan Modra
1049f94e8e
Correct spelling of "relocatable".
2003-06-25 06:40:27 +00:00
H.J. Lu
6e50c90cfe
2003-04-30 H.J. Lu <hjl@gnu.org>
...
* objdump.c (only): Change it to char **.
(only_size): New.
(only_used): New.
(disassemble_data): Check only as an array.
(dump_data): Likewise.
(dump_relocs): Likewise.
(main): Treat only as an array.
2003-05-01 00:40:41 +00:00
Alexandre Oliva
335a186916
* objdump.c (dump_data): Don't truncate the address to long; make
...
the width large enough, and uniform for all entries in a section.
2003-04-01 00:32:47 +00:00
Nick Clifton
06d86cf78e
Move display_info() function into bucomm.c
2003-03-24 11:28:35 +00:00
Nick Clifton
98a91d6ae2
(disassemble_data): Use disasm_info.fprintf_func not printf for emitting new
...
lines.
2003-03-17 11:16:51 +00:00
Nick Clifton
f0c8c24a69
Fix help messages about demangling styles
2003-02-13 09:53:07 +00:00
Alan Modra
b34976b65a
s/boolean/bfd_boolean/ s/true/TRUE/ s/false/FALSE/. Simplify
...
comparisons of bfd_boolean vars with TRUE/FALSE. Formatting.
2002-11-30 08:39:46 +00:00
Alan Modra
8ab56b6f54
* objdump.c (dump_data): Correct addr_offset for opb != 1.
2002-10-21 02:18:58 +00:00
Alan Modra
6e1a7e9a11
* Makefile.am: Run "make dep-am".
...
* objdump.c: #include "bfdver.h".
* version.c: Likewise.
* Makefile.in: Regenerate.
* config.in: Regenerate.
* configure: Regenerate.
* po/POTFILES.in: Regenerate.
2002-10-14 12:07:58 +00:00
Alan Modra
fe0507eba5
* objdump.c (dump_bfd): Restore lines accidentally deleted in
...
last commit.
2002-08-28 12:32:06 +00:00
Nick Clifton
026df7c5e6
Add TMS320C4x support
2002-08-28 10:38:51 +00:00
Alan Modra
a1df01d1e4
* nm.c (display_rel_file): Don't report "no symbols" as an error.
...
* objdump.c (slurp_symtab): Likewise.
(slurp_dynamic_symtab): Likewise.
(dump_symbols): Likewise. Do print "no symbols" to stdout.
2002-08-26 10:14:15 +00:00
Nick Clifton
b5e2a4f34a
Replace 'gnu-new-abi' with 'gnu-v3'
2002-08-14 15:12:07 +00:00
Alan Modra
a6637ec0ed
* budemang.c: New file, "demangle" function.
...
* budemang.h: New file.
* addr2line.c (translate_addresses): Use "demangle".
* nm.c (print_symname): Likewise.
* objdump.c (objdump_print_symname): Likewise.
(dump_symbols): Likewise. Also, don't use bfd_asymbol_name macro
here since that obfuscates.
* rdcoff.c: Don't #include demangle.h.
* Makefile.am (CFILES): Add budemang.c, emul_aix.c,
emul_vanilla.c. Remove emul_$(EMULATION).c. Sort.
(HFILES): Add budemang.h. Sort.
(nm_new_SOURCES, objdump_SOURCES, addr2line_SOURCES): Add budemang.c.
Run "make dep-am".
* Makefile.in: Regenerate.
* po/POTFILES.in: Regenerate.
2002-07-02 04:21:25 +00:00
Alan Modra
b1f88ebebf
* bucomm.c: Replace CONST with const.
...
* nm.c: Likewise.
* objdump.c: Likewise.
2002-06-08 07:38:30 +00:00
Alan Modra
28b18af1b9
* objdump.c: Fix formatting.
2002-06-03 13:02:04 +00:00
Jakub Jelinek
13ae64f3c7
* elf.c (_bfd_elf_make_section_from_shdr): Set SEC_THREAD_LOCAL
...
for symbols from SHF_TLS section.
(_bfd_elf_print_private_bfd_data): Add PT_TLS.
(elf_fake_sections): Set SHF_TLS for SEC_THREAD_LOCAL sections.
(map_sections_to_segments): Build PT_TLS segment if necessary.
(assign_file_positions_for_segments): Likewise.
(get_program_header_size): Account for PT_TLS segment.
(swap_out_syms): Set type of BSF_THREAD_LOCAL symbols and symbols from
SEC_THREAD_LOCAL sections to STT_TLS.
* reloc.c: Add 386 and IA-64 TLS relocs.
* section.c (SEC_THREAD_LOCAL): Define.
(SEC_CONSTRUCTOR_TEXT, SEC_CONSTRUCTOR_DATA, SEC_CONSTRUCTOR_BSS):
Remove.
* elflink.h (elf_link_add_object_symbols): Support .tcommon.
(size_dynamic_sections): If DF_STATIC_TLS, set DF_FLAGS
unconditionally.
(struct elf_final_link_info): Add first_tls_sec.
(elf_bfd_final_link): Set first_tls_sec.
Compute elf_hash_table (info)->tls_segment.
(elf_link_output_extsym): Handle STT_TLS symbols.
(elf_link_input_bfd): Likewise.
* syms.c (BSF_THREAD_LOCAL): Define.
* bfd-in2.h: Rebuilt.
* libbfd.h: Rebuilt.
* elf32-i386.c (elf_i386_tls_transition, dtpoff_base, tpoff,
elf_i386_mkobject, elf_i386_object_p): New functions.
(elf_howto_table): Add TLS relocs.
(elf_i386_reloc_type_lookup): Support TLS relocs.
(elf_i386_info_to_howto_rel): Likewise.
(struct elf_i386_link_hash_entry): Add tls_type.
(struct elf_i386_obj_tdata): New.
(elf_i386_hash_entry, elf_i386_tdata, elf_i386_local_got_tls_type):
New macros.
(struct elf_i386_link_hash_table): Add tls_ldm_got.
(link_hash_newfunc): Clear tls_type.
(elf_i386_check_relocs): Support TLS relocs.
(elf_i386_gc_sweep_hook): Likewise.
(allocate_dynrelocs): Likewise.
(elf_i386_size_dynamic_sections): Likewise.
(elf_i386_relocate_section): Likewise.
(elf_i386_finish_dynamic_symbol): Likewise.
(bfd_elf32_mkobject, elf_backend_object_p): Define.
* elfxx-ia64.c (struct elfNN_ia64_dyn_sym_info): Add tprel_offset,
dtpmod_offset, dtprel_offset, tprel_done, dtpmod_done, dtprel_done,
want_tprel, want_dtpmod, want_dtprel.
(elfNN_ia64_tprel_base, elfNN_ia64_dtprel_base): New functions.
(ia64_howto_table): Add TLS relocs, rename R_IA64_LTOFF_TP22 to
R_IA64_LTOFF_TPREL22.
(elf_code_to_howto_index): Add TLS relocs.
(elfNN_ia64_check_relocs): Support TLS relocs.
(allocate_global_data_got): Account for TLS .got data.
(allocate_dynrel_entries): Account for TLS dynamic relocations.
(elfNN_ia64_install_value): Supprt TLS relocs.
(set_got_entry): Support TLS relocs.
(elfNN_ia64_relocate_section): Likewise.
* config/obj-elf.c (elf_common): Renamed from obj_elf_common.
(obj_elf_common): Call elf_common.
(obj_elf_tls_common): New function.
(elf_pseudo_tab): Support .tls_common.
(special_sections): Add .tdata and .tbss.
(obj_elf_change_section): Set SEC_THREAD_LOCAL for SHF_TLS
sections.
(obj_elf_parse_section_letters): Support T in section flags (SHF_TLS).
(obj_elf_parse_section_letters): Include T in error message.
* config/tc-ppc.c (ppc_section_letter): Likewise.
* config/tc-alpha.c (alpha_elf_section_letter): Likewise.
(tc_gen_reloc): Handle SEC_THREAD_LOCAL the same way as
SEC_MERGE.
* config/tc-sparc.c (md_apply_fix3): Likewise.
* config/tc-i386.c (tc_i386_fix_adjustable): Add TLS relocs.
Define them if not BFD_ASSEMBLER.
(lex_got): Support @TLSGD, @TLSLDM, @GOTTPOFF, @TPOFF, @DTPOFF
and @NTPOFF.
(md_apply_fix3): Add TLS relocs.
* config/tc-ia64.c (enum reloc_func): Add FUNC_DTP_MODULE,
FUNC_DTP_RELATIVE, FUNC_TP_RELATIVE, FUNC_LT_DTP_MODULE,
FUNC_LT_DTP_RELATIVE, FUNC_LT_TP_RELATIVE.
(pseudo_func): Support @dtpmod(), @dtprel() and @tprel().
(ia64_elf_section_letter): Include T in error message.
(md_begin): Support TLS operators.
(md_operand): Likewise.
(ia64_gen_real_reloc_type): Support TLS relocs.
* testsuite/gas/i386/tlspic.s: New file.
* testsuite/gas/i386/tlsd.s: New file.
* testsuite/gas/i386/tlsnopic.s: New file.
* testsuite/gas/i386/tlsd.d: New file.
* testsuite/gas/i386/tlsnopic.d: New file.
* testsuite/gas/i386/tlspic.d: New file.
* testsuite/gas/i386/i386.exp: Add tlsd, tlsnopic and tlspic tests.
* testsuite/gas/ia64/tls.s: New file.
* testsuite/gas/ia64/tls.d: New file.
* testsuite/gas/ia64/ia64.exp: Add tls test.
* write.c (adjust_reloc_syms): Don't change symbols in
SEC_THREAD_LOCAL sections to STT_SECTION + addend.
* elf/common.h (PT_TLS, SHF_TLS, STT_TLS, DF_STATIC_TLS): Define.
* elf/ia64.h (R_IA64_LTOFF_TPREL22): Renamed from R_IA64_LTOFF_TP22.
* elf/i386.h: Add TLS relocs.
* scripttempl/elf.sc: Add .rel{,a}.t{bss,data}, .tdata and .tbss.
* ldlang.c (lang_add_section): Set SEC_THREAD_LOCAL for
output section if necessary. Handle .tbss.
(lang_size_sections): Clear _raw_size for .tbss section
(it allocates space in PT_TLS segment only).
* ldwrite.c (build_link_order): Build link order for .tbss too.
* readelf.c (get_segment_type): Add PT_TLS.
(get_elf_section_flags): Add SHF_TLS.
(get_dynamic_flags): Optimize. Add DF_STATIC_TLS.
(process_dynamic_segment): Use puts instead of printf.
(get_symbol_type): Support STT_TLS.
* objdump.c (dump_section_header): Remove SEC_CONSTRUCTOR_TEXT,
SEC_CONSTRUCTOR_DATA, SEC_CONSTRUCTOR_BSS.
Add SEC_THREAD_LOCAL.
2002-05-23 13:12:53 +00:00
Kazu Hirata
0af11b59ba
* filemode.c: Fix formatting.
...
* ieee.c: Likewise.
* is-ranlib.c: Likewise.
* is-strip.c: Likewise.
* maybe-ranlib.c: Likewise.
* maybe-strip.c: Likewise.
* nlmconv.c: Likewise.
* nm.c: Likewise.
* not-ranlib.c: Likewise.
* not-strip.c: Likewise.
* objcopy.c: Likewise.
* objdump.c: Likewise.
2002-05-21 19:34:58 +00:00
Thiemo Seufer
21611032e1
* objdump.c (dump_headers): Fix output formatting for ELF32
...
architectures in a BFD64 enabled toolchain.
* bfd/bfd.c (bfd_get_arch_size): Remove bfd_set_error call for
non-ELF targets.
2002-05-21 16:21:18 +00:00
Daniel Jacobowitz
d7a283d444
2002-01-29 Daniel Jacobowitz <drow@mvista.com>
...
* objdump.c: Include "getopt.h" after "bucomm.h" so that
__GNU_LIBRARY__ will be defined.
* size.c: Likewise.
2002-01-29 16:46:37 +00:00