Commit Graph

10119 Commits

Author SHA1 Message Date
H.J. Lu
ad1e85de41 Don't check IFUNC relocations in elf_*_check_relocs
* elf32-i386.c (elf_i386_check_relocs): Don't check IFUNC
	relocations here.
	* elf64-x86-64.c (elf_x86_64_check_relocs): Likewise.
2012-12-16 23:01:13 +00:00
Alan Modra
b6eb2f8639 daily update 2012-12-16 23:00:07 +00:00
H.J. Lu
73bcf23385 Also check local IFUNC references
bfd/

	PR ld/14968
	* elf32-i386.c (elf_i386_adjust_dynamic_symbol): Also check
	local IFUNC references.
	* elf64-x86-64.c (elf_x86_64_adjust_dynamic_symbol): Likewise.

ld/testsuite/

	PR ld/14968
	* ld-ifunc/ifunc-18a-i386.d: New file.
	* ld-ifunc/ifunc-18a-x86-64.d: Likewise.
	* ld-ifunc/ifunc-18a.s: Likewise.
	* ld-ifunc/ifunc-18b-i386.d: Likewise.
	* ld-ifunc/ifunc-18b-x86-64.d: Likewise.
	* ld-ifunc/ifunc-18b.s: Likewise.
	* ld-ifunc/ifunc-19a-i386.d: Likewise.
	* ld-ifunc/ifunc-19a-x86-64.d: Likewise.
	* ld-ifunc/ifunc-19a.s: Likewise.
	* ld-ifunc/ifunc-19b-i386.d: Likewise.
	* ld-ifunc/ifunc-19b-x86-64.d: Likewise.
	* ld-ifunc/ifunc-19b.s: Likewise.
2012-12-16 20:31:08 +00:00
Alan Modra
987acc137d daily update 2012-12-15 23:00:05 +00:00
Alan Modra
774094928e daily update 2012-12-14 23:00:05 +00:00
Tom Tromey
451b7c33cb gdb
* NEWS: Mention "info proc" and core files.
        * corelow.c (core_info_proc): New function.
        (init_core_ops): Set to_info_proc.
        * gdbarch.c, gdbarch.h: Rebuild.
        * gdbarch.sh (core_info_proc): New method.
        * infcmd.c (info_proc_cmd_1): Invoke target_info_proc first.
        * linux-tdep.c (linux_core_info_proc_mappings)
        (linux_core_info_proc): New functions.
        (linux_find_memory_region_ftype): New typedef.
        (linux_find_memory_regions_full): New function, from
        linux_find_memory_regions.
        (struct linux_find_memory_regions_data): New.
        (linux_find_memory_regions_thunk): New function.
        (linux_find_memory_regions): Rewrite.
        (struct linux_make_mappings_data): New.
        (linux_make_mappings_callback)
        (linux_make_mappings_corefile_notes): New functions.
        (linux_make_corefile_notes): Call linux_make_mappings_corefile_notes.
        (linux_init_abi): Call set_gdbarch_core_info_proc.
        * target.c (target_info_proc): Return 'int'.
        * target.h (target_info_proc): Update.
gdb/doc
        * gdb.texinfo (SVR4 Process Information): Mention core files.
gdb/testsuite
        * gdb.base/info-proc.exp: Add core file tests.
bfd
        * elf.c (elfcore_grok_note) <NT_FILE>: New case.
2012-12-14 15:30:38 +00:00
Alan Modra
62ea864c39 daily update 2012-12-14 00:36:48 +00:00
H.J. Lu
5ca5bb3545 Check local IFUNC calls
bfd/

2012-12-13  H.J. Lu  <hongjiu.lu@intel.com>

	PR ld/14956
	* elf32-i386.c (elf_i386_adjust_dynamic_symbol): Check local
	IFUNC calls.
	* elf64-x86-64.c (elf_x86_64_adjust_dynamic_symbol): Likewise.

ld/testsuite/

2012-12-13  H.J. Lu  <hongjiu.lu@intel.com>

	PR ld/14956
	* ld-ifunc/ifunc-14-i386.d: Renamed to ...
	* ld-ifunc/ifunc-14a-i386.d: This.

	* ld-ifunc/ifunc-14-x86-64.d: Renamed to ...
	* ld-ifunc/ifunc-14a-x86-64.d: This.

	* ld-ifunc/ifunc-14b-i386.d: New file.
	* ld-ifunc/ifunc-14b-x86-64.d: Likewise.
	* ld-ifunc/ifunc-14c-i386.d: Likewise.
	* ld-ifunc/ifunc-14c-x86-64.d: Likewise.
	* ld-ifunc/ifunc-14d-i386.d: Likewise.
	* ld-ifunc/ifunc-14d-x86-64.d: Likewise.
2012-12-13 21:07:16 +00:00
Alan Modra
7b40ae6136 daily update 2012-12-12 23:00:04 +00:00
Alan Modra
7fdee5dead daily update 2012-12-11 23:00:04 +00:00
Michael Eager
69b06cc85f Microblaze: Add support for handling TLS symbol suffixes and generating
TLS relocs for General Dynamic and Local Dynamic models.

bfd/Changelog
          * reloc.c: Add new relocations
          * bfd-in2.h: Regenerated
          * libbfd.h: Regenerated
          * elf32-microblaze.c (microblaze_elf_howto_raw):
            Add TLS relocations
            (microblaze_elf_reloc_type_lookup): Likewise
            (elf32_mb_link_hash_entry): define TLS reference types
            (elf32_mb_link_hash_table): add TLS Local dynamic GOT entry
            #define has_tls_reloc if section has TLS relocs
            (dtprel_base), (check_unique_offset): New
            (microblaze_elf_output_dynamic_relocation): output simple
            dynamic relocation into SRELOC.
            (microblaze_elf_relocate_section): Accommodate TLS relocations.
            (microblaze_elf_check_relocs): Likewise
            (update_local_sym_info): New
            (microblaze_elf_copy_indirect_symbol): Add tls_mask.
            (allocate_dynrelocs): Handle TLS symbol
            (microblaze_elf_size_dynamic_sections): Set size and offset
            (microblaze_elf_finish_dynamic_symbol): Use
             microblaze_elf_output_dynamic_relocation

gas/Changelog
          * config/tc-microblaze.c: Define TLS offsets
            (md_relax_table): Add TLS offsets
            (imm_types), (match_imm), (get_imm_otype): New to support
            TLS offsets.
            (tc_microblaze_fix_adjustable): Add TLS relocs.
            (md_convert_frag): Support TLS offsets.
            (md_apply_fix), (md_estimate_size_before_relax), (tc_gen_reloc):
            Add TLS relocs

include/Changelog
          * elf/microblaze.h: Add TLS relocs to START_RELOC_NUMBERS
2012-12-11 16:56:53 +00:00
Alan Modra
6eda113996 daily update 2012-12-10 23:00:05 +00:00
Nick Clifton
752937aa0c Add copyright notices 2012-12-10 12:48:03 +00:00
Alan Modra
f9a52e371c daily update 2012-12-09 23:00:04 +00:00
H.J. Lu
35f0d39652 Properly check indicies bigger than 4Gb
PR binutils/14933
	* archive.c (bsd_write_armap): Properly check indicies bigger
	than 4Gb.
2012-12-09 18:01:39 +00:00
Alan Modra
afa58f649b daily update 2012-12-08 23:00:05 +00:00
Alan Modra
7a684288ee daily update 2012-12-07 23:00:04 +00:00
Alan Modra
d2bcb0d1aa PR ld/14926
* elf.c (_bfd_elf_map_sections_to_segments): Include elf header
	size when determining phdr_in_segment.
2012-12-07 04:58:36 +00:00
Alan Modra
2a744ebb76 daily update 2012-12-06 23:00:05 +00:00
Yufeng Zhang
cd6fa7fd88 bfd/
2012-12-06  Yufeng Zhang  <yufeng.zhang@arm.com>

	* elf64-aarch64.c (elf64_aarch64_grok_prstatus): New function.
	(elf_backend_grok_prstatus): Define to elf64_aarch64_grok_prstatus.
2012-12-06 15:56:38 +00:00
Alan Modra
625ef6dc55 * elfxx-mips.c (allocate_dynrelocs): Correct test for symbol
defined in a regular file to include common symbols.
2012-12-06 00:09:13 +00:00
Alan Modra
ad288036a7 daily update 2012-12-05 23:00:05 +00:00
Alan Modra
79056107ed Add x86_64-*-rdos. 2012-12-05 05:48:19 +00:00
Alan Modra
68d6295870 * elf64-ppc.c (build_plt_stub): Fix off by one error in branch
to glink.
2012-12-05 04:58:51 +00:00
Alan Modra
bfc07f4d1a daily update 2012-12-04 23:00:05 +00:00
Alan Modra
db53afde99 daily update 2012-12-03 23:00:05 +00:00
Maciej W. Rozycki
e6aea42dfa PR ld/10629
* elfxx-mips.c (mips_elf_link_hash_table): Update comment for
	use_rld_obj_head.
	(_bfd_mips_elf_create_dynamic_sections): Always create a
	.rld_map section if no __rld_obj_head symbol has been seen.
2012-12-03 16:37:51 +00:00
Maciej W. Rozycki
dd2bed3aca * elf32-mips.c (mips_elf32_object_p): Return right away when the
ABI is not compatible.
	* elfn32-mips.c (mips_elf_n32_object_p): Likewise.
2012-12-03 16:33:13 +00:00
Maciej W. Rozycki
a412bee57b * elf32-tilepro.c (tilepro_elf_mkobject): New function.
(bfd_elf32_mkobject): New macro.
2012-12-03 16:30:03 +00:00
Maciej W. Rozycki
6ae68ba390 bfd/
* elf32-mips.c (bfd_elf32_mkobject): New macro.
	* elf64-mips.c (bfd_elf64_mkobject): Likewise.
	* elfn32-mips.c (bfd_elf32_mkobject): Likewise.
	* elfxx-mips.h (_bfd_mips_elf_mkobject): New prototype.
	* elfxx-mips.c (mips_elf_obj_tdata): New struct.
	(mips_elf_tdata): New macro.
	(_bfd_mips_elf_mkobject): New function.
	(mips_elf_merge_obj_attributes): Report the originating input BFD
	on attribute conflicts.

	ld/testsuite/
	* ld-mips-elf/attr-gnu-4-12.d: Update the warning message.
	* ld-mips-elf/attr-gnu-4-13.d: Likewise.
	* ld-mips-elf/attr-gnu-4-14.d: Likewise.
	* ld-mips-elf/attr-gnu-4-15.d: Likewise.
	* ld-mips-elf/attr-gnu-4-21.d: Likewise.
	* ld-mips-elf/attr-gnu-4-23.d: Likewise.
	* ld-mips-elf/attr-gnu-4-24.d: Likewise.
	* ld-mips-elf/attr-gnu-4-25.d: Likewise.
	* ld-mips-elf/attr-gnu-4-31.d: Likewise.
	* ld-mips-elf/attr-gnu-4-32.d: Likewise.
	* ld-mips-elf/attr-gnu-4-34.d: Likewise.
	* ld-mips-elf/attr-gnu-4-35.d: Likewise.
	* ld-mips-elf/attr-gnu-4-41.d: Likewise.
	* ld-mips-elf/attr-gnu-4-42.d: Likewise.
	* ld-mips-elf/attr-gnu-4-43.d: Likewise.
	* ld-mips-elf/attr-gnu-4-45.d: Likewise.
	* ld-mips-elf/attr-gnu-4-51.d: Likewise.
2012-12-03 16:17:48 +00:00
Maciej W. Rozycki
20696deded bfd/
* elfxx-mips.c (mips_elf_merge_obj_attributes): Correct messages
	for the -mdouble-float and -msingle-float cases throughout; make
	all the messages report the output file consistently on the
	left-hand side.

	ld/testsuite/
	* ld-mips-elf/attr-gnu-4-12.d: Adjust the warning expected
	according to changes to BFD.
	* ld-mips-elf/attr-gnu-4-14.d: Likewise.
	* ld-mips-elf/attr-gnu-4-31.d: Likewise.
	* ld-mips-elf/attr-gnu-4-32.d: Likewise.
	* ld-mips-elf/attr-gnu-4-34.d: Likewise.
	* ld-mips-elf/attr-gnu-4-41.d: Likewise.
2012-12-03 15:57:44 +00:00
Alan Modra
108170905a daily update 2012-12-02 23:00:04 +00:00
Alan Modra
dae66d1066 daily update 2012-12-01 23:00:05 +00:00
Alan Modra
d7893ac43a daily update 2012-11-30 23:00:03 +00:00
Alan Modra
ccd6faef2b daily update 2012-11-29 23:00:03 +00:00
Roland McGrath
a0c82a2bce bfd/
* elf-nacl.c (segment_eligible_for_headers): Disallow writable segments.
2012-11-29 19:07:53 +00:00
Hans-Peter Nilsson
17a5e4b875 Fix attribution for old patch:
2009-10-19  Edgar E. Iglesias  <edgar@axis.com>
	    Hans-Peter Nilsson  <hp@axis.com>

	* elf32-cris.c (cris_elf_relocate_section) <case R_CRIS_32_DTPREL>:
	Don't subtract the size of the TLS block for non-shared objects
	from the relocation.
2012-11-29 14:39:23 +00:00
Alan Modra
4e2cfdbdc0 daily update 2012-11-28 23:00:05 +00:00
Alan Modra
11985b7f96 daily update 2012-11-27 23:00:05 +00:00
Alan Modra
b80f948aeb daily update 2012-11-26 23:00:10 +00:00
Roland McGrath
aa6407c6ed bfd/
* elf-nacl.c (nacl_modify_segment_map): Don't crash when INFO is null.
2012-11-26 17:49:11 +00:00
Alan Modra
e898b29382 daily update 2012-11-25 23:00:05 +00:00
Alan Modra
6ee8970bb5 daily update 2012-11-24 23:00:04 +00:00
Alan Modra
ea98391bd5 daily update 2012-11-23 23:00:05 +00:00
Alan Modra
686f4cdfc5 daily update 2012-11-22 23:00:04 +00:00
Alan Modra
0f60f328f0 daily update 2012-11-21 23:00:04 +00:00
H.J. Lu
f1d8578513 Set output maxpagesize when rewriting program header
bfd/

	PR binutils/14493
	* elf.c (copy_elf_program_header): When rewriting program
	header, set the output maxpagesize to the maximum alignment
	of input PT_LOAD segments.

2012-11-21  H.J. Lu  <hongjiu.lu@intel.com>

	PR binutils/14493
	* ld-elf/maxpage5.d: New file.
	* ld-elf/maxpage5.s: Likewise.
	* ld-elf/maxpage5.t: Likewise.
2012-11-21 21:31:18 +00:00
Roland McGrath
a3f548ed85 bfd/
* elf-nacl.c (segment_nonexecutable_and_has_contents): Renamed to ...
	(segment_eligible_for_headers): ... this.  Take new arguments
	MAXPAGESIZE and SIZEOF_HEADERS.  Return false if the first section's
	start address doesn't leave space for the headers.
	(nacl_modify_segment_map): Update caller.
2012-11-21 20:13:04 +00:00
Alan Modra
579994610c daily update 2012-11-20 23:00:03 +00:00
H.J. Lu
dda8ddc56f Remove ref_dynamic_nonweak added by accident
bfd/

2012-11-20  H.J. Lu  <hongjiu.lu@intel.com>

	PR ld/14862
	* elf-bfd.h (elf_link_hash_entry): Remove ref_dynamic_nonweak
	added by accident.
	(elf_link_add_object_symbols): Don't set nor check
	ref_dynamic_nonweak.

ld/testsuite/

2012-11-20  H.J. Lu  <hongjiu.lu@intel.com>

	PR ld/14862
	* ld-elf/shared.exp (build_tests): Build libpr14862-1.o and
	libpr14862.so.
	(run_tests): Test pr14862.

	* ld-elf/pr14862-1.c: New file.
	* ld-elf/pr14862-2.c: Likewise.
	* ld-elf/pr14862.map: Likewise.
	* ld-elf/pr14862.out: Likewise.
2012-11-20 22:17:27 +00:00