Age | Commit message (Collapse) | Author | Files | Lines |
|
necessary in more specific targets.
(HOSTING_LIBS): Include libgcc_eh.a if found.
|
|
|
|
* Makefile.in: Regenerate.
|
|
|
|
add the symbol to the linker hash table immediately.
(lang_place_undefineds): Split symbol creation out..
(insert_undefined): ..to here.
|
|
|
|
longer set to object.
* ld-mmix/undef-3.d, ld-mmix/start-1.d, ld-mmix/locto-1.d,
ld-mmix/loct-1.d, ld-mmix/locdo-1.d, ld-mmix/local7.d,
ld-mmix/local5.d, ld-mmix/local3.d, ld-mmix/local1.d,
ld-mmix/loc6.d, ld-mmix/loc4.d, ld-mmix/loc3.d, ld-mmix/loc2.d,
ld-mmix/loc1.d, ld-mmix/greg-7.d, ld-mmix/greg-6.d,
ld-mmix/greg-5.d, ld-mmix/greg-4.d, ld-mmix/greg-3.d,
ld-mmix/greg-2.d, ld-mmix/greg-19.d, ld-mmix/greg-1.d,
ld-mmix/bspec2.d, ld-mmix/bspec1.d, ld-mmix/bpo-9.d,
ld-mmix/bpo-6.d, ld-mmix/bpo-5.d, ld-mmix/bpo-4.d,
ld-mmix/bpo-3.d, ld-mmix/bpo-2.d, ld-mmix/bpo-19.d,
ld-mmix/bpo-18.d, ld-mmix/bpo-17.d, ld-mmix/bpo-16.d,
ld-mmix/bpo-14.d, ld-mmix/bpo-11.d, ld-mmix/bpo-10.d: Ditto.
|
|
* emultempl/elf32.em: Use lbasename vs. basename to fix problem where
the contents of the buffer returned from basename function will are
getting overwritten while still being used.
Approved by: Alan Modra <amodra@bigpond.net.au>
Message-ID: <20020318032031.GD1089@bubble.sa.bigpond.net.au>
|
|
* configure.tgt (x86_64-*-linux-gnu*): Configure i386 as native.
* elf_x86_64.sh (ARCH): Set to i386:x86-64
set libraries to default to lib64 paths.
|
|
|
|
|
|
* ldlang.c (lang_process): ..to here.
|
|
change. Treat emitrelocations case as for relocatable links.
|
|
|
|
warn_mismatch can't override. Check compatible and word size too.
|
|
places zero initialized data in the bss.
* ld-elfweak/dsodata.dsym: Likewise.
|
|
* ld.texinfo: Wrap @menu in @ifnottex, not @ifinfo.
|
|
|
|
DATA_SEGMENT_ALIGN.
|
|
* scripttempl/elf.sc: Put .preinit_array, .init_array and
.fini_array in the data segment.
|
|
|
|
.init_array, and .fini_array.
|
|
* ld-sh/shared-1.d, ld-sh/sh64/crangerel1.rd, ld-sh/crangerel2.rd,
ld-sh/sh64/reldl32.rd, ld-sh/sh64/reldl64.rd: Ditto.
|
|
.IA64_unwind* in a relocatable link.
|
|
|
|
|
|
* Makefile.am: Add new files earmelf_fbsd, eelf32ppc_fbsd,
eelf_i386_fbsd, eelf64_ia64_fbsd, eelf_x86_64_fbsd, eelf64_sparc_fbsd,
and eelf64alpha_fbsd.
(left this out of last patch)
|
|
* emulparams/elf64_s390.sh (ARCH): Change to "s390:64-bit".
* emulparams/elf_s390.sh (ARCH): Change to "s390:31-bit".
|
|
|
|
* ld-elfvsb/sh1.c: Fix typo in last change.
|
|
(struct ppc_link_hash_table): Add sfpr.
(ppc64_elf_link_hash_table_create): Init it.
(ppc64_elf_create_dynamic_sections): Split creation of .stub and
.glink out to..
(create_linkage_sections): ..here. Make .sfpr too.
(ppc64_elf_check_relocs): Call create_linkage_sections, and set
dynobj early.
(MIN_SAVE_FPR, MAX_SAVE_FPR): Define.
(ppc64_elf_func_desc_adjust): Look for missing ._savef* and
._restf* functions, and create as needed.
(func_desc_adjust): Only force_local for shared libs.
* emulparams/elf64ppc.sh (OTHER_TEXT_SECTIONS): Define.
|
|
* Makefile.in: Add new files earmelf_fbsd, eelf32ppc_fbsd,
eelf_i386_fbsd, eelf64_ia64_fbsd, eelf_x86_64_fbsd, eelf64_sparc_fbsd,
and eelf64alpha_fbsd.
* configure.tgt(sparc64-*-freebsd, ia64-*-freebsd, i[3456]86-*-freebsd,
x86_64-*-freebsd, arm-*-freebsd, alpha*-*-freebsd, powerpc-*-freebsd):
use a FreeBSD-specific emulation rather than the psABI one.
* emulparams/elf_fbsd.sh (ELF_INTERPRETER_NAME): Set appropriate value
for all FreeBSD ELF systems.
* emulparams/armelf_fbsd.sh: Bridge elf_fbsd.sh and the "native" psABI
emulation.
* emulparams/elf32ppc_fbsd.sh: Likewise.
* emulparams/elf64_ia64_fbsd.sh: Likewise.
* emulparams/elf64_sparc_fbsd.sh: Likewise.
* emulparams/elf64alpha_fbsd.sh: Likewise.
* emulparams/elf_i386_fbsd.sh: Likewise.
* emulparams/elf_x86_64_fbsd.sh: Likewise.
Approved by: Nick Clifton <nickc@cambridge.redhat.com>
<m3pu33yy0b.fsf@north-pole.nickc.cambridge.redhat.com>
|
|
|
|
* ld-elfvsb/sh1.c: Use #pragma weak.
|
|
* vers.exp: Do not call diff -q.
|
|
(FILL): Likewise.
|
|
_bfd_mmix_check_all_relocs when producing ELF output.
|
|
output.
* ld-mmix/sec-7m.d, ld-mmix/sec-7a.s, ld-mmix/sec-7b.s,
ld-mmix/sec-7c.s, ld-mmix/sec-7d.s, ld-mmix/sec-7e.s: New test.
|
|
|
|
and .bss.
|
|
definition. Emit a unop+nop pair.
|
|
|
|
for presence of .MMIX.reg_contents.linker_allocated before early
exit.
|
|
|
|
(FILL): Refer to the above.
|
|
* ldexp.h (etree_value_type): Add "str" field.
(union etree_union): Add "str" to "value" struct.
(exp_bigintop): Declare.
(exp_get_fill): Declare.
* ldexp.c: Include "safe-ctype.h".
(exp_intop): Set value.str to NULL.
(exp_bigintop): New function.
(new_rel): Pass in "str", and set new.str from it.
(new_rel_from_section): Set new.str to NULL.
(fold_name): Adjust calls to new_rel.
(exp_fold_tree): Likewise.
(exp_get_fill): New function.
* ldgram.y (struct big_int bigint, fill_type *fill): New.
(INT): Returns a "bigint". Adjust all code handling INTs.
(fill_opt): Returns a "fill".
(fill_exp): Split out of fill_opt, use for FILL.
* ldlang.h (struct _fill_type): New.
(fill_type): Move typedef to ldexp.h.
(lang_output_section_statement_type): "fill" is now a pointer.
(lang_fill_statement_type): Likewise.
(lang_padding_statement_type): Likewise.
(lang_add_fill): Now takes a "fill_type *" param.
(lang_leave_output_section_statement): Likewise.
(lang_do_assignments): Likewise.
(lang_size_sections): Likewise.
(lang_leave_overlay_section): Likewise.
(lang_leave_overlay): Likewise.
* ldlang.c: Include ldgram.h after ldexp.h.
(lang_output_section_statement_lookup): Adjust for fill_type change.
(print_fill_statement): Likewise.
(print_padding_statement): Likewise.
(insert_pad): Now takes a "fill_type *" arg.
(size_input_section): Likewise.
(lang_size_sections_1): Likewise.
(lang_size_sections): Likewise.
(lang_do_assignments): Likewise.
(lang_add_fill): Likewise.
(lang_leave_output_section_statement): Likewise.
(lang_leave_overlay_section): Likewise.
(lang_leave_overlay): Likewise.
Adjust all callers of the above function.
* ldlex.l: Include ldgram.h after ldexp.h. Allow hex numbers
starting with "0X" as well as "0x". Return bigint.str for hex
numbers starting with "0x" or "0X", zero bigint.str otherwise.
Always use base 16 for numbers starting with "$".
* ldmain.c: Include ldgram.h after ldexp.h.
* ldwrite.c (build_link_order): Use bfd_data_link_order in place
of bfd_fill_link_order.
* pe-dll.c: Adjust lang_do_assignments calls.
* emultempl/elf32.em: Likewise.
* emultempl/hppaelf.em: Likewise.
* emultempl/ppc64elf.em: Likewise.
* emultempl/beos.em: Include ldgram.h after ldexp.h, adjust
lang_add_assignment call.
* emultempl/pe.em: Likewise.
|
|
* ldgram.y (lang_new_vers_regex): Rename to lang_new_vers_pattern;
the pattern in question is not a regexp.
* ldlang.c: Likewise.
* ldlang.h: Likewise.
* ldlex.l (V_IDENTIFIER): Allow '[', ']', '-', '!', and '^' also.
|
|
* ldgram.y (DATA_SEGMENT_ALIGN, DATA_SEGMENT_END): New tokens.
(exp): Add DATA_SEGMENT_ALIGN (exp, exp) and DATA_SEGMENT_END (exp).
* ldexp.c (exp_data_seg): New variable.
(exp_print_token): Handle DATA_SEGMENT_ALIGN and DATA_SEGMENT_END.
(fold_binary): Handle DATA_SEGMENT_ALIGN.
(exp_fold_tree): Handle DATA_SEGMENT_END.
Pass allocation_done when recursing instead of hardcoding
lang_allocating_phase_enum.
* ldexp.h (exp_data_seg): New.
* ldlang.c (lang_size_sections_1): Renamed from lang_size_sections.
(lang_size_sections): New.
* ld.texinfo (DATA_SEGMENT_ALIGN, DATA_SEGMENT_END): Document.
* scripttempl/elf.sc: Use DATA_SEGMENT_ALIGN and DATA_SEGMENT_END
if COMMONPAGESIZE is defined.
* emulparams/elf_i386.sh (COMMONPAGESIZE): Set to 4K.
* emulparams/elf32_sparc.sh (COMMONPAGESIZE): Set to 8K.
* emulparams/elf64_sparc.sh (COMMONPAGESIZE): Set to 8K.
* emulparams/elf64alpha.sh (COMMONPAGESIZE): Set to 8K.
* emulparams/elf64_ia64.sh (COMMONPAGESIZE): Set to 16K for shared
libraries only.
|
|
hppa*-*-linux* targets.
|
|
* ld-sh/sh64/crange-2i.s: Add align to match align in crange-2h.s.
* ld-sh/sh64/crange3-cmpct.rd: Adjust to reflect modifications
in section ordering.
* ld-sh/sh64/crange3-media.rd: Likewise.
* ld-sh/sh64/crange3.rd: Likewise.
* ld-sh/sh64/crange3.dd: Likewise.
|