Alan Modra
4a43e768f1
bfd/
...
* elf-bfd.h (struct elf_obj_tdata): Delete dt_soname field. Add
dyn_lib_class field. Rearrange for better packing.
(elf_dt_soname): Delete.
(elf_dyn_lib_class): Define.
* elf.c (bfd_elf_set_dt_needed_name): Update comment.
(bfd_elf_set_dt_needed_soname): Delete.
(bfd_elf_set_dyn_lib_class): New function.
* elflink.h (add_dt_needed_tag): New function. Split out from..
(elf_link_add_object_symbols): ..here. Rename "name" to "soname".
Use elf_dyn_lib_class to set dt_needed and add_needed. Move fallback
initialization of soname.
(elf_link_check_versioned_symbol): Test elf_dyn_lib_class instead of
elf_dt_soname.
* bfd-in.h (enum dynamic_lib_link_class): New.
(bfd_elf_set_dt_needed_soname): Delete.
(bfd_elf_set_dyn_lib_class): Declare.
* bfd-in2.h: Regenerate.
ld/
* ld.texinfo: Add --as-needed doco.
* ldmain.c (as_needed): New global var.
* ldmain.h (as_needed): Declare.
* lexsup.c (option_values): Add OPTION_AS_NEEDED and
OPTION_NO_AS_NEEDED.
(ld_options): Likewise.
(parse_args): Handle them.
* ldlang.h (lang_input_statement_type): Add as_needed field.
* ldlang.c (new_afile): Set p->as_needed.
* emultempl/elf32.em (gld${EMULATION_NAME}_load_symbols): New function.
(gld${EMULATION_NAME}_try_needed): Use bfd_elf_set_dyn_lib_class.
(ld_${EMULATION_NAME}_emulation): Set LDEMUL_RECOGNIZED_FILE entry.
* ldlang.c (open_input_bfds): Remove useless cast.
(lang_do_assignments_1): Likewise.
(lang_for_each_input_section): Delete.
2004-03-18 12:50:20 +00:00
Alan Modra
9183ed4b1b
Switch sh-*-rtems* to ELF. Add sh-*-rtemscoff*.
2004-03-17 00:46:25 +00:00
Alan Modra
fdd12ef3c6
opcodes/
...
* ppc-dis.c (print_insn_powerpc): Don't print tabs. Handle
PPC_OPERANDS_GPR_0.
* ppc-opc.c (RA0): Define.
(RAQ, RAL, RAM, RAS, RSQ, RTQ, RSO): Use PPC_OPERAND_GPR_0.
(RAOPT): Rename from RAO. Update all uses.
(powerpc_opcodes): Use RA0 as appropriate. Add "lsdx", "lsdi",
"stsdx", "stsdi", "lmd" and "stmd" insns.
include/opcode/
* ppc.h (PPC_OPERAND_GPR_0): Define. Bump other operand defines.
gas/testsuite/
Update gas/ppc/.
ld/testsuite/
Update ld-powerpc/.
2004-03-16 00:58:43 +00:00
Nick Clifton
ee31fbd036
Honour PRIVATE keyword
2004-03-08 11:33:59 +00:00
Nathan Sidwell
68715859c7
* ld-scripts/size-1.d: Add bigendian regexps.
...
* ld-scripts/size-2.d: Set --wide for readelf.
2004-03-05 19:27:34 +00:00
Nathan Sidwell
e5caec89a0
* elf.c (map_sections_to_segments): Ignore .tbss sections for
...
layout purposes.
* ldlang.c (lang_add_section): Don't force SEC_LOAD on
SEC_THREAD_LOCAL.
(IGNORE_SECTION): Ignore .tbss sections too.
(lang_size_sections_1): .tbss sections do not advance dot.
* ld-scripts/size.exp: New.
* ld-scripts/size-[12].{d,s,t}: New.
2004-03-05 11:26:05 +00:00
Andreas Schwab
cc2f008e43
* ld.texinfo (Options): Fix example for --wrap.
2004-03-01 17:33:36 +00:00
Richard Sandiford
676a64f422
Add fr450 support.
2004-03-01 10:11:46 +00:00
Danny Smith
f5a95868e4
* pe-dll.c (fill_edata): Check that exported_symbol_sections is
...
not NULL.
2004-02-25 21:00:32 +00:00
Alexandre Oliva
9b1f5ff99b
* ld-frv/fdpic-pie-2.d: Adjust for decay of FUNCDESC relocs that
...
bind locally.
* ld-frv/fdpic-pie-8.d: Likewise.
* ld-frv/fdpic-shared-4.d: Likewise.
* ld-frv/fdpic-pie-6-fail.d: Renamed from...
* ld-frv/fdpic-pie-6.d: New test.
* ld-frv/fdpic-shared-6-fail.d: Renamed from...
* ld-frv/fdpic-shared-6.d: New test.
* ld-frv/fdpic6.ldv: New.
* ld-frv/fdpic-static-6.d: Adjust test name.
* ld-frv/fdpic-pie-8-fail.d: Removed.
* ld-frv/fdpic.exp: Run new tests.
2004-02-24 16:39:09 +00:00
Ian Lance Taylor
177b729b44
* ldlang.c (lang_check): Use %P, not %E, in error message.
2004-02-23 19:41:53 +00:00
Nathan Sidwell
1b49374200
* ldlang.h (struct lang_output_section_state): Change processed
...
field's type.
* ldexp.c (check, invalid): Remove.
(fold_name): Move valid_p assignments. Create undefined symbol
when needed. Directly exampine section's processd flag.
* ldlang.c (lang_output_section_statement_lookup): Adjust
processed field init.
(lang_size_sections_1): Allow LOADADDR when determining section's
VMA. Adjust error message. Fold data statement's expr.
(lang_size_sections): Correctly increment lang_statement_iteration.
* ld-scripts/provide.exp: New.
* ld-scripts/provide-{1,2,3}.{s,t,d}.exp: New.
* ldexp.c (fold_tree): Follow indirect symbols.
2004-02-23 10:10:02 +00:00
Alan Modra
33ed461333
* ld-scripts/data.t: Set ".other" address so location doesn't
...
depend on target alignment.
* ld-scripts/data.d: Update.
2004-02-23 09:24:46 +00:00
Nathan Sidwell
876f40905a
* ldgram.y (exp): Add two operand ALIGN.
...
* ldexp.c (fold_binary): Add ALIGN_K case.
* ld.texinfo (ALIGN): Document two operand version.
* ld-scripts/align.{s,t,exp}: New.
2004-02-20 15:31:10 +00:00
Nathan Sidwell
384d938fc8
* ldlang.c (map_input_to_output_sections): Initialize sections
...
mentioned in a data statement expression.
(lang_do_assignments_1): Add data statement's expression's
section's vma.
* ld-scripts/data.{s,t,d,exp}: New.
2004-02-19 14:08:31 +00:00
Nathan Sidwell
b6ca8815ef
* ldgram.y (statement_anywhere): Add assert rule.
...
* ldlang.c (exp_init_os): Add assert case.
* testsuite/ld-scripts/assert.{s,t,exp}: New.
2004-02-18 16:37:21 +00:00
Richard Sandiford
d25aed713b
bfd/
...
* elfxx-mips.c (mips_elf_calculate_relocation): Use
_bfd_elf_symbol_refs_local_p to decide whether to decay
a GOT_PAGE/GOT_OFST pair to GOT_DISP/addend.
(_bfd_mips_elf_check_relocs): Add a global GOT entry for GOT_PAGE
relocs if the symbol wasn't defined by a regular object file.
Don't check the symbol's dynindx.
ld/testsuite/
* ld-mips/elf/elf-rel-xgot-{n32,n64-linux}.d: Update after 2004-02-02
changes to the way large constants are added.
* ld-mips/elf/elf-rel-got-{n32,n64-linux}.d: Likewise. Adjust order
of GOT entries after today's change to the handling of GOT_PAGE
relocations.
2004-02-17 10:19:24 +00:00
Andrew Cagney
c92c35e706
Use bfd_cache_close, instead of accessing bfd->iostream directly.
2004-02-15 02:24:53 +00:00
Richard Sandiford
9bf78c997e
* emulparams/elf32bmipn32-defs.sh (OTHER_SECTIONS): Discard
...
.MIPS.content* and .MIPS.events* sections.
2004-02-14 11:45:25 +00:00
Daniel Jacobowitz
f380691611
* emulparams/armelf.sh, emulparams/armelf_linux.sh: Move
...
.note.gnu.arm.ident to after allocated sections. Mark its
address as 0.
2004-02-09 18:06:20 +00:00
Daniel Jacobowitz
4c8e70d733
* emulparams/armelf_linux.sh (COMMONPAGESIZE): Set to 4KB.
...
* emulparams/elf32bmip.sh (COMMONPAGESIZE): Likewise.
* emulparams/elf32bmipn32.sh (COMMONPAGESIZE): Likewise.
* emulparams/elf32btsmipn32.sh (COMMONPAGESIZE): Likewise.
* emulparams/shlelf_linux.sh (COMMONPAGESIZE): Likewise.
2004-02-09 17:54:25 +00:00
Nick Clifton
3255318a04
Add support for relaxing the 32bit ldc/stc instructions.
2004-02-09 12:15:57 +00:00
Nick Clifton
ff71f4f7d0
Fix typo in previous delta
2004-02-05 11:41:51 +00:00
Nick Clifton
07a68a8066
Fix thinko checking for dlls in archives.
2004-02-04 09:13:28 +00:00
Alan Modra
586196d51c
* genscripts.sh: Fix typo.
2004-01-28 13:42:26 +00:00
Alan Modra
1dd3bf6876
* genscripts.sh: Apply $LIBPATH_SUFFIX to $tool_lib and $libdir too.
2004-01-28 13:31:30 +00:00
Jakub Jelinek
13d9421f66
* emulparams/elf64_ia64.sh: Put .rela.opd into
...
OTHER_GOT_RELOC_SECTIONS instead of OTHER_PLT_RELOC_SECTIONS.
2004-01-24 16:29:40 +00:00
Daniel Jacobowitz
2df149a4c0
* ld-arm/arm-app-abs32.s, ld-arm/arm-app-abs32.r,
...
ld-arm/arm-app-abs32.d: New files.
* ld-arm/arm-elf.exp: Add arm-app-abs32 testcase.
2004-01-23 16:51:39 +00:00
Danny Smith
4d8907ac12
* pe-dll.c (pe_create_import_fixup): Clear WP_TEXT flag.
...
* ld.texinfo (--omagic): Note that writable text section
does not conform to published PE-COFF specs.
(--enable-auto-import): Likewise.
2004-01-20 21:08:16 +00:00
Alan Modra
3a0875f46c
* ld-i386/tlsbin.dd: Adjust for changed sib printing.
2004-01-18 23:14:13 +00:00
Alan Modra
e5c60db524
* emulparams/elf32ppc.sh (COMMONPAGESIZE): Define.
2004-01-15 12:38:19 +00:00
Daniel Jacobowitz
0885b73e8a
* ld-arm/arm-elf.exp: Add arm-static-app test.
...
* ld-arm/arm-static-app.s, ld-arm/arm-static-app.d,
ld-arm/arm-static-app.r: New files.
2004-01-13 21:09:18 +00:00
Nick Clifton
6bdafbeb57
* ldlang.c (lang_get_regions): Add extra parameter 'have_vma' which if true will
...
prevent the LMA region being used as a replacement for a default VMA region.
(lang_leave_output_section_statement): Pass extra parameter.
(lang_leave_overlay): Likewise.
* ld.texinfo (Output Section LMA): Document that the LMA region can be set to
the VMA region if no VMA has been set.
* ldlang.h (struct lang_output_section_phdr_list): Create a typedef for this
type. Minor formatting fixes.
2004-01-13 11:10:53 +00:00
Nick Clifton
9dfc8ab287
If dot is advanced, then assume that the section should be allocated.
2004-01-13 08:24:20 +00:00
Nick Clifton
ca9a79a174
Add support for relaxation of bit manipulation instructions.
2004-01-12 15:02:22 +00:00
Alan Modra
8325c4dd4e
* ldlang.c (IGNORE_SECTION): Don't ignore SEC_ALLOC && !SEC_LOAD
...
sections. Do ignore SEC_NEVER_LOAD sections.
(lang_size_sections_1): Remove test made redundant with the above.
2004-01-12 13:47:32 +00:00
H.J. Lu
0fb33ef4f8
2004-01-09 H.J. Lu <hongjiu.lu@intel.com>
...
* ld-selective/selective.exp: Skip ia64-*-*.
2004-01-09 21:19:15 +00:00
Daniel Jacobowitz
c787b88946
* ld-arm/arm-lib.d, ld-arm/arm-lib.r: Update for R_ARM_PLT32
...
changes.
2004-01-09 16:53:10 +00:00
Alan Modra
8349035256
* emultempl/ppc64elf.em (ppc_before_allocation): Clear cached
...
program_header_size.
2004-01-09 05:36:30 +00:00
Daniel Jacobowitz
2e73b915a9
* ld-arm/arm-app.d, ld-arm/arm-app.r, ld-arm/arm-app.s,
...
ld-arm/arm-lib.d, ld-arm/arm-lib.r, ld-arm/arm-lib.s,
ld-arm/arm-lib-plt32.d, ld-arm/arm-lib-plt32.r,
ld-arm/arm-lib-plt32.s, ld-arm/arm-elf.exp: New files.
2004-01-06 21:47:38 +00:00
Alexandre Oliva
005e11184b
2003-11-28 Alexandre Oliva <aoliva@redhat.com>
...
* emulparams/elf32frvfd.sh (EMBEDDED): Clear.
2003-11-05 Alexandre Oliva <aoliva@redhat.com>
* emulparams/elf32frvfd.sh (STACK_ADDR): Unset.
(MAXPAGESIZE): Set to 64Kb.
(OTHER_READONLY_SECTIONS): Define __ROFIXUP_LIST__ and
__ROFIXUP_END__. Don't map .rofixup.got any more.
* emulparams/elf32frv.sh (NOP): Set.
2003-10-31 Alexandre Oliva <aoliva@redhat.com>
* configure.tgt: Add frv-*-*linux*.
2003-09-30 Alexandre Oliva <aoliva@redhat.com>
* Makefile.am (ALL_EMULATIONS): Added eelf32frvfd.o.
(eelf32frvfd.c): New.
* configure.tgt <frv-*-*>: Added it to targ_extra_emuls.
* emulparams/elf32frv.sh: Reverted previous two patches.
* emulparams/elf32frvfd.sh: New.
* Makefile.in: Rebuilt.
2003-09-18 Alexandre Oliva <aoliva@redhat.com>
* emulparams/elf32frv.sh (OTHER_READONLY_SECTIONS): Added
.rofixup.got to .rofixup.
2003-09-15 Alexandre Oliva <aoliva@redhat.com>
* emulparams/elf32frv.sh (MAXPAGESIZE): Make it 256KiB, not 256B.
(TEMPLATE_NAME, GENERATE_SHLIB_SCRIPT): Set.
2004-01-06 19:19:52 +00:00
Alexandre Oliva
a9a704fc4e
* ld-frv: Update .d files with correct addresses displayed for
...
dynamic relocations.
2003-12-02 Alexandre Oliva <aoliva@redhat.com>
* ld-frv/fdpic1.s (.D0): Move to separate data section.
2003-11-28 Alexandre Oliva <aoliva@redhat.com>
* ld-frv/fdpic-static-1.d, ld-frv/fdpic-static-2.d,
* ld-frv/fdpic-static-7.d, ld-frv/fdpic-static-8.d: Update to
reflect EMBEDDED= change in linker script.
2003-11-27 Alexandre Oliva <aoliva@redhat.com>
* ld-frv: Update .d files to reflect changes in the page size, the
addition of a stack segment, the use of a NULL function descriptor
for weakundef functions and the change in the lazy funcdesc_value
in-place addend value.
2003-11-05 Alexandre Oliva <aoliva@redhat.com>
* lib/ld-lib.exp (is_elf_format): Match frv-uclinux.
2003-10-06 Alexandre Oliva <aoliva@redhat.com>
* ld-frv/fdpic-static-1.d, ld-frv/fdpic-static-2.d,
ld-frv/fdpic-static-7.d, ld-frv/fdpic-static-8.d: Addresses are
now _gp-based, not .rofixup-based.
* ld-frv/fdpic-static-6.d: Likewise. Match warning about
relocation to different section.
2003-09-30 Alexandre Oliva <aoliva@redhat.com>
* ld-frv/fdpic.exp: Add -melf32frvfd to LDFLAGS.
2003-09-19 Alexandre Oliva <aoliva@redhat.com>
* ld-frv/fdpic7.s, ld-frv/fdpic-static-7.d, ld-frv/fdpic-pie-7.d,
ld-frv/fdpic-shared-7.d: New.
* ld-frv/fdpic8.s, ld-frv/fdpic-static-8.d, ld-frv/fdpic-pie-8.d,
ld-frv/fdpic-shared-8.d: New.
* ld-frv/fdpic-pie-8-fail.d, ld-frv/fdpic-shared-8-fail.d: New.
* ld-frv/fdpic.exp: Run them.
* ld-frv/fdpic8.ldv, ld-frv/fdpic8min.ldv: New.
2003-09-18 Alexandre Oliva <aoliva@redhat.com>
* ld-frv/fdpic5.s, ld-frv/fdpic-static-5.d, ld-frv/fdpic-pie-5.d,
ld-frv/fdpic-shared-5.d: New.
* ld-frv/fdpic6.s, ld-frv/fdpic-static-6.d, ld-frv/fdpic-pie-6.d,
ld-frv/fdpic-shared-6.d: New.
* ld-frv/fdpic.exp: Run them.
* ld-frv/fdpic*.d: Add -mfdpic to assembler flags. Updated.
* ld-frv/fdpic2min.ldv: New, used by fdpic-shared-2.d.
* ld-frv/fdpic-shared-2-fail.d: New.
* ld-frv/fdpic.exp: Run it.
* ld-frv/fdpic4.s, ld-frv/fdpic-shared-4.d: New.
* ld-frv/fdpic.exp: Add new test.
* ld-frv/fdpic-pie-2.d: Remove unnecessary function descriptors.
* ld-frv/fdpic-shared-local-2.d, ld-frv/fdpic2.ldv: New.
* ld-frv/fdpic3.s, ld-frv/fdpic-shared-3.d: New.
* ld-frv/fdpic.exp: Add new tests.
* ld-frv/fdpic.exp, ld-frv/fdpic1.s, ld-frv/fdpic2.s,
* ld-frv/fdpic-static-1.d, ld-frv/fdpic-static-2.d,
* ld-frv/fdpic-pie-1.d, ld-frv/fdpic-pie-2.d,
* ld-frv/fdpic-shared-1.d, ld-frv/fdpic-shared-2.d: Renamed from
ucpic.
2003-09-15 Alexandre Oliva <aoliva@redhat.com>
* ld-frv/ucpic.exp, ld-frv/ucpic1.s, ld-frv/ucpic2.s: New.
* ld-frv/ucpic-static-1.d, ld-frv/ucpic-static-2.d: New.
* ld-frv/ucpic-pie-1.d, ld-frv/ucpic-pie-2.d: New.
* ld-frv/ucpic-shared-1.d, ld-frv/ucpic-shared-2.d: New.
2004-01-06 19:19:31 +00:00
Jakub Jelinek
060feee54d
* emulparams/elf_s390.sh (NO_SMALL_DATA): Set to yes.
...
* emulparams/elf64_s390.sh (NO_SMALL_DATA): Set to yes.
2004-01-05 09:53:31 +00:00
Alan Modra
c2df3ea5c0
typo fix
2004-01-03 12:49:29 +00:00
Alan Modra
e5caa5e0ca
* ldexp.c (align_n): Make static.
...
* ldexp.h (align_n): Delete declaration.
* ldlang.h (lang_enter_output_section_statement): Remove
block_value param.
* ldlang.c (lang_enter_output_section_statement): Likewise.
(TO_ADDR, TO_SIZE): Define.
(opb): New var.
(init_opb): New function.
(print_input_section): Call init_opb and use TO_ADDR.
(print_data_statement, print_reloc_statement): Likewise.
(print_padding_statement): Likewise.
(size_input_section): Use TO_SIZE and TO_ADDR, and global opb.
(lang_check_section_addresses): Likewise.
(lang_size_sections_1): Likewise.
(lang_do_assignments_1): Likewise.
(lang_set_startof): Likewise.
(lang_one_common): Likewise. Combine power_of_two and opb alignment.
(lang_process): Call init_opb.
(lang_abs_symbol_at_end_of): Use TO_ADDR and global opb.
(lang_enter_overlay_section): Adjust
lang_enter_output_section_statement call.
* ldgram.y: Likewise.
* mri.c (mri_draw_tree): Likewise.
* emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Likewise.
* emultempl/mmo.em (mmo_place_orphan): Likewise.
* emultempl/pe.em (gld${EMULATION_NAME}_place_orphan): Likewise.
2004-01-03 12:39:07 +00:00
Alan Modra
5e2f15758b
* ldfile.c (ldfile_set_output_arch): Add defarch param.
...
* ldfile.h (ldfile_set_output_arch): Ditto.
* emultempl/aix.em (gld${EMULATION_NAME}_before_parse): Use
ldfile_set_output_arch.
* emultempl/beos.em (gld${EMULATION_NAME}_before_parse): Ditto.
* emultempl/elf32.em (gld${EMULATION_NAME}_before_parse): Ditto.
* emultempl/linux.em (gld${EMULATION_NAME}_before_parse): Ditto.
* emultempl/mipsecoff.em (gld${EMULATION_NAME}_before_parse): Ditto.
* emultempl/pe.em (gld${EMULATION_NAME}_before_parse): Ditto.
* emultempl/sunos.em (gld${EMULATION_NAME}_before_parse): Ditto.
* ldgram.y: Adjust ldfile_set_output_arch call.
* emultempl/armcoff.em (gld${EMULATION_NAME}_before_parse): Ditto.
* emultempl/armelf.em (gld${EMULATION_NAME}_before_parse): Ditto.
* emultempl/armelf_oabi.em (gld${EMULATION_NAME}_before_parse): Ditto.
* emultempl/generic.em (gld${EMULATION_NAME}_before_parse): Ditto.
* emultempl/gld960c.em (gld960_set_output_arch): Ditto.
* emultempl/m68kcoff.em (gld${EMULATION_NAME}_before_parse): Ditto.
* emultempl/ticoff.em (gld${EMULATION_NAME}_before_parse): Ditto.
2004-01-03 11:09:07 +00:00
Nick Clifton
b50c15dce9
Add m68k-uclinux target
2004-01-02 16:37:12 +00:00
Alan Modra
c9e214e571
Split ChangeLog files.
2004-01-02 11:16:21 +00:00
Alan Modra
031d7588c2
* ld-selective/sel-dump.exp: Use is_elf_format, xfail assorted targets.
...
* ld-selective/selective.exp: Likewise.
2004-01-02 08:27:08 +00:00
Mark Mitchell
da04927b0a
* ld-srec/srec.exp (run_srec_test): Remove -fgnu-linker, since GCC
...
3.4 does not support it.
2003-12-30 16:53:31 +00:00