OSDN Git Service
Alan Modra [Sun, 2 Mar 2003 22:07:10 +0000 (22:07 +0000)]
* emulparams/elf64alpha.sh (EXTRA_EM_FILE): Define.
(PARSE_AND_LIST_PROLOGUE, PARSE_AND_LIST_LONGOPTS,
PARSE_AND_LIST_OPTIONS, PARSE_AND_LIST_ARGS_CASES,
PARSE_AND_LIST_EPILOGUE): Don't define.
* emultempl/alphaelf.em: New file.
Thiemo Seufer [Sun, 2 Mar 2003 21:30:15 +0000 (21:30 +0000)]
* elf32-mips.c (elf_mips_howto_table_rel): Change definition of
R_MIPS_PC16 to rightshift 2.
(elf_reloc_map mips_reloc_map): Map to rightshifted BFD reloc.
(bfd_elf32_bfd_reloc_type_lookup): Support
BFD_RELOC_MIPSEMB_16_PCREL_S2.
* elf64-mips.c (mips_elf64_howto_table_rel): Change definition of
R_MIPS_PC16 to rightshift 2.
(mips_elf64_howto_table_rela): Likewise.
(mips_reloc_map): Map to rightshifted BFD reloc.
* elfn32-mips.c: The same as in elf64-mips.c.
* elfxx-mips.c (mips_elf_got_for_ibfd): Typo in comment.
(mips_elf_calculate_relocation): Handle rightshifted addends for
R_MIPS_PC16.
* reloc.c (BFD_RELOC_MIPSEMB_16_PCREL_S2): New BFD relocation for
MIPS Embedded PIC. Remove superfluous empty COMMENT.
* libbfd.h: Regenerate.
* bfd-in2.h: Regenerate.
* config/tc-mips.c (append_insn): Add handling of
BFD_RELOC_MIPSEMB_16_PCREL_S2. Avoid emitting unneeded
BFD_RELOC_16_PCREL_S2 relocs and add earlier warnings about
misaligned address and reange overflow.
(macro_build): Add handling of BFD_RELOC_MIPSEMB_16_PCREL_S2. Add
earlier warnings about misaligned address and reange overflow.
(mips_ip): Add handling of BFD_RELOC_MIPSEMB_16_PCREL_S2.
(md_apply_fix): Likewise. Fix warning output.
(tc_gen_reloc): Add handling of BFD_RELOC_MIPSEMB_16_PCREL_S2.
Allow BFD_RELOC_16_PCREL_S2 for all ABIs.
(md_convert_frag): Add handling of BFD_RELOC_MIPSEMB_16_PCREL_S2.
* gas/mips/bge.d: Reactivate external branch tests.
* gas/mips/bge.s: Likewise.
* gas/mips/bgeu.d: Likewise.
* gas/mips/bgeu.s: Likewise.
* gas/mips/blt.d: Likewise.
* gas/mips/blt.s: Likewise.
* gas/mips/bltu.d: Likewise.
* gas/mips/bltu.s: Likewise.
* gas/mips/branch-misc-2.d: New File.
* gas/mips/branch-misc-2.l: Remove.
* gas/mips/mips.exp: Adjust branch-misc-2 test.
Alan Modra [Sat, 1 Mar 2003 23:00:05 +0000 (23:00 +0000)]
daily update
Richard Henderson [Sat, 1 Mar 2003 02:44:45 +0000 (02:44 +0000)]
* elfxx-ia64.c (elfNN_ia64_relax_section): Correct bounds
for ltoff22x relaxation.
Alan Modra [Fri, 28 Feb 2003 23:43:35 +0000 (23:43 +0000)]
* bfd-in.h (_bfd): Don't define.
* bfd.c: Rename occurrences of "struct _bfd" to "struct bfd".
* syms.c: Likewise.
* bfd-in2.h: Regenerate.
Alan Modra [Fri, 28 Feb 2003 23:00:04 +0000 (23:00 +0000)]
daily update
Alan Modra [Fri, 28 Feb 2003 22:55:11 +0000 (22:55 +0000)]
* ldemul.c: Include getopt.h.
* emultempl/elf32.em: Include getopt.h earlier.
* emultempl/ticoff.em: Likewise.
Nathanael Nerode [Fri, 28 Feb 2003 18:03:31 +0000 (18:03 +0000)]
* Makefile.tpl: Rearrange.
* Makefile.in: Regenerate.
Alan Modra [Fri, 28 Feb 2003 04:46:04 +0000 (04:46 +0000)]
* emultempl/elf32.em (gld${EMULATION_NAME}_get_script): Add combreloc
support when scripts read from files.
Alan Modra [Fri, 28 Feb 2003 02:10:06 +0000 (02:10 +0000)]
* ldemul.c (ldemul_parse_args): Return FALSE by default.
* ldemul.h (struct ld_emulation_xfer_struct): Update parse_args
comment.
Alan Modra [Fri, 28 Feb 2003 01:32:31 +0000 (01:32 +0000)]
* ldemul.c (ldemul_add_options, ldemul_handle_option): New functions.
(ldemul_parse_args): Return bfd_boolean. Formatting.
* ldemul.h (ldemul_add_options, ldemul_handle_option): Declare.
(ldemul_parse_args): Adjust.
(struct ld_emulation_xfer_struct): Add add_options and handle_option.
Return bfd_boolean from parse_args.
* lexsup.c (parse_args): Malloc shortopts, longopts and
really_longopts. Call ldemul_add_options and ldemul_handle_option.
* emultempl/aix.em (gld${EMULATION_NAME}_add_options): Split out from
gld${EMULATION_NAME}_parse_args.
(gld${EMULATION_NAME}_handle_option): Likewise.
(ld_${EMULATION_NAME}_emulation): Adjust initializer.
* emultempl/armcoff.em: As for aix.em, but remove parse_args.
* emultempl/beos.em: Likewise.
* emultempl/pe.em: Likewise.
* emultempl/ticoff.em: Likewise.
* emultempl/elf32.em: Likewise. Don't duplicate long options either.
(gld${EMULATION_NAME}_add_sysroot): Prototype.
* emultempl/armelf.em (PARSE_AND_LIST_LONGOPTS): Don't duplicate
options.
* emultempl/hppaelf.em (PARSE_AND_LIST_LONGOPTS): Likewise.
* emultempl/ppc32elf.em (PARSE_AND_LIST_LONGOPTS): Likewise.
* emultempl/ppc64elf.em (PARSE_AND_LIST_LONGOPTS): Likewise.
* emultempl/armelf_oabi.em (ld_${EMULATION_NAME}_emulation): Adjust
initializer.
* emultempl/generic.em: Likewise.
* emultempl/gld960.em: Likewise.
* emultempl/gld960c.em: Likewise.
* emultempl/linux.em: Likewise.
* emultempl/lnk960.em: Likewise.
* emultempl/m68kcoff.em: Likewise.
* emultempl/mipsecoff.em: Likewise.
* emultempl/sunos.em: Likewise.
* emultempl/vanilla.em: Likewise.
* emultempl/netbsd.em (gldnetbsd_before_parse): Prototype.
Richard Henderson [Fri, 28 Feb 2003 00:22:46 +0000 (00:22 +0000)]
* elfxx-ia64.c (struct elfNN_ia64_dyn_sym_info): Add want_gotx;
(elfNN_ia64_check_relocs): Set it.
(allocate_global_data_got): Check it.
(allocate_local_got): Likewise.
(allocate_dynrel_entries): Likewise.
(elfNN_ia64_relax_ldxmov): New.
(elfNN_ia64_relax_section): Handle LTOFF22X, LDXMOV.
(elfNN_ia64_choose_gp): Split out from ...
(elfNN_ia64_final_link): ... here.
Andrew Cagney [Thu, 27 Feb 2003 23:13:32 +0000 (23:13 +0000)]
2003-02-27 Andrew Cagney <cagney@redhat.com>
* remote-sim.h (sim_open, sim_load, sim_create_inferior): Rename
_bfd to bfd.
Alan Modra [Thu, 27 Feb 2003 23:00:05 +0000 (23:00 +0000)]
daily update
Andrew Cagney [Thu, 27 Feb 2003 21:24:36 +0000 (21:24 +0000)]
2003-02-27 Andrew Cagney <cagney@redhat.com>
* bfd.c (struct bfd): Rename "struct _bfd".
* bfd-in.h: Update copyright.
(struct bfd): Rename "struct _bfd".
(_bfd): Define for backward compatibility.
* bfd-in2.h: Regenerate.
DJ Delorie [Thu, 27 Feb 2003 21:01:04 +0000 (21:01 +0000)]
merge from gcc
DJ Delorie [Thu, 27 Feb 2003 15:17:29 +0000 (15:17 +0000)]
merge from gcc
Alan Modra [Wed, 26 Feb 2003 23:00:15 +0000 (23:00 +0000)]
daily update
Alexandre Oliva [Wed, 26 Feb 2003 00:56:14 +0000 (00:56 +0000)]
* emultempl/elf32.em (gld${EMULATION_NAME}_add_sysroot): Fix
memory allocation error.
Alan Modra [Tue, 25 Feb 2003 23:00:05 +0000 (23:00 +0000)]
daily update
Nick Clifton [Tue, 25 Feb 2003 10:47:07 +0000 (10:47 +0000)]
Remove site-file support - it is obsolete.
Nick Clifton [Tue, 25 Feb 2003 10:32:33 +0000 (10:32 +0000)]
(ld_sysroot): Try to set from TOOLBINDIR too.
Alan Modra [Tue, 25 Feb 2003 04:39:32 +0000 (04:39 +0000)]
* elflink.h (elf_link_read_relocs_from_section): Don't abort with
wrong reloc sizes.
Alan Modra [Tue, 25 Feb 2003 04:14:38 +0000 (04:14 +0000)]
* elflink.h (elf_bfd_final_link): Apportion reloc counts to rel_hdr
and rel_hdr2 when initially counting input relocs rather than after
creating output reloc sections.
Alan Modra [Tue, 25 Feb 2003 03:44:46 +0000 (03:44 +0000)]
Regenerate dependencies.
Alan Modra [Tue, 25 Feb 2003 03:22:06 +0000 (03:22 +0000)]
* hppa-dis.c: Formatting.
* hppa-dis.c (print_insn_hppa): Implement fcnv instruction modifiers.
Alan Modra [Tue, 25 Feb 2003 00:20:29 +0000 (00:20 +0000)]
* hppa-dis.c (print_insn_hppa <2 bit space register>): Do not print
the space register when the value is zero.
Alan Modra [Mon, 24 Feb 2003 23:00:06 +0000 (23:00 +0000)]
daily update
DJ Delorie [Mon, 24 Feb 2003 20:26:14 +0000 (20:26 +0000)]
merge from gcc
Nick Clifton [Mon, 24 Feb 2003 18:07:22 +0000 (18:07 +0000)]
Add support for QNX style core files.
Nick Clifton [Mon, 24 Feb 2003 16:47:04 +0000 (16:47 +0000)]
Add support for kaOS as cross build target system.
Nick Clifton [Mon, 24 Feb 2003 16:37:13 +0000 (16:37 +0000)]
Add paragraph about using --disable-nls
Nick Clifton [Mon, 24 Feb 2003 16:20:28 +0000 (16:20 +0000)]
(nm --size-sort): Update description.
Alan Modra [Mon, 24 Feb 2003 04:50:04 +0000 (04:50 +0000)]
* elflink.c (_bfd_elf_create_got_section): Check existing .got
section flags before concluding that we've already been called.
Don't use register keyword.
(_bfd_elf_create_dynamic_sections): Don't use register keyword.
(_bfd_elf_create_linker_section): Formatting.
Alan Modra [Sun, 23 Feb 2003 23:00:05 +0000 (23:00 +0000)]
daily update
Chris Demetriou [Sun, 23 Feb 2003 19:52:49 +0000 (19:52 +0000)]
2003-02-23 Elias Athanasopoulos <elathan@phys.uoa.gr>
* mips-dis.c (print_mips_disassembler_options): Make 'i' unsigned,
use ARRAY_SIZE in loops.
Alan Modra [Sat, 22 Feb 2003 23:00:05 +0000 (23:00 +0000)]
daily update
DJ Delorie [Sat, 22 Feb 2003 17:08:34 +0000 (17:08 +0000)]
merge from gcc
Jim Wilson [Sat, 22 Feb 2003 00:16:29 +0000 (00:16 +0000)]
Update my address.
Alan Modra [Fri, 21 Feb 2003 23:00:05 +0000 (23:00 +0000)]
daily update
DJ Delorie [Fri, 21 Feb 2003 22:12:51 +0000 (22:12 +0000)]
merge from gcc
Nick Clifton [Fri, 21 Feb 2003 19:05:02 +0000 (19:05 +0000)]
Update Maverick tests.
Contribute test generator.
DJ Delorie [Fri, 21 Feb 2003 17:33:57 +0000 (17:33 +0000)]
merge from gcc
Nick Clifton [Fri, 21 Feb 2003 12:42:56 +0000 (12:42 +0000)]
Check for a NULL sentinel value before using it.
Nick Clifton [Fri, 21 Feb 2003 12:33:34 +0000 (12:33 +0000)]
Add v850e debug registers.
Nick Clifton [Fri, 21 Feb 2003 12:17:51 +0000 (12:17 +0000)]
Add SHT_IA_64_LOPSREG, SHT_IA_64_HIPSREG and SHT_IA_64_PRIORITY_INIT.
Add code to display these values in readelf.
Nick Clifton [Fri, 21 Feb 2003 11:36:59 +0000 (11:36 +0000)]
(ldmac, stmac): Replace MACREG with MS32 and MD32.
Nick Clifton [Fri, 21 Feb 2003 10:51:24 +0000 (10:51 +0000)]
Disable region size checking whilst relaxing sections.
Nick Clifton [Fri, 21 Feb 2003 10:35:07 +0000 (10:35 +0000)]
Applied Bob Wilson's documentation fixes.
Nick Clifton [Fri, 21 Feb 2003 10:30:35 +0000 (10:30 +0000)]
Apply Bob Wilson's documenation clean up patch
Richard Sandiford [Fri, 21 Feb 2003 10:28:27 +0000 (10:28 +0000)]
* config/tc-mips.c (prev_reloc_op_frag): New variable.
(macro): Check it to decide whether a new frag is needed.
(my_getSmallExpression): Set it.
Nick Clifton [Fri, 21 Feb 2003 10:27:06 +0000 (10:27 +0000)]
Apply Bob Wilson's linker documenation clean ups.
DJ Delorie [Fri, 21 Feb 2003 01:55:12 +0000 (01:55 +0000)]
* Makefile.tpl: Add definition of CPPFLAGS to pass into
configure-target-* as some target builds may require additional
flags for preprocessor tests.
* Makefile.in: Regenerated.
DJ Delorie [Fri, 21 Feb 2003 01:35:29 +0000 (01:35 +0000)]
merge from gcc
Alan Modra [Fri, 21 Feb 2003 01:12:13 +0000 (01:12 +0000)]
* objcopy.c (filter_symbols): Fix compilation problems with
HP-UX's C compiler.
Alexandre Oliva [Thu, 20 Feb 2003 23:38:49 +0000 (23:38 +0000)]
* configure.in (TARGET_SYSTEM_ROOT): Set default to
${exec_prefix}/${target_alias}/sys-root. Match explicit
'${exec_prefix}' (in addition to the expansion thereof) as
relocatable.
* configure: Rebuilt.
Alan Modra [Thu, 20 Feb 2003 23:00:05 +0000 (23:00 +0000)]
daily update
Daniel Jacobowitz [Thu, 20 Feb 2003 22:14:18 +0000 (22:14 +0000)]
* Makefile.in (CFILES): Add lrealpath.c.
(REQUIRED_OFILES): Add lrealpath.o.
(lrealpath.o): Add rule.
* aclocal.m4 (libiberty_NEED_DECLARATION): Add.
* configure.in: Add realpath and canonicalize_file_name to
checkfuncs and AC_CHECK_FUNCS. Use libiberty_NEED_DECLARATION
for canonicalize_file_name.
* lrealpath.c: New file.
* make-relative-prefix.c: Update documentation.
(make_relative_prefix): Simplify. Use lbasename and lrealpath.
* config.in: Regenerated.
* configure: Regenerated.
* functions.texi: Regenerated.
Daniel Jacobowitz [Thu, 20 Feb 2003 22:13:09 +0000 (22:13 +0000)]
* libiberty.h (lrealpath): Add declaration.
DJ Delorie [Thu, 20 Feb 2003 21:05:37 +0000 (21:05 +0000)]
merge from gcc
Nick Clifton [Thu, 20 Feb 2003 18:59:32 +0000 (18:59 +0000)]
Fix typo: intial -> initial.
Andrew Cagney [Thu, 20 Feb 2003 14:37:58 +0000 (14:37 +0000)]
Index: include/gdb/ChangeLog
2003-02-20 Andrew Cagney <
ac131313@redhat.com>
* remote-sim.c (gdbsim_insert_breakpoint)
(gdbsim_remove_breakpoint): Delete #ifdef SIM_HAS_BREAKPOINTS
code.
Index: include/gdb/ChangeLog
2003-02-20 Andrew Cagney <
ac131313@redhat.com>
* remote-sim.h (SIM_RC): Delete unused SIM_RC_UNKNOWN_BREAKPOINT,
SIM_RC_INSUFFICIENT_RESOURCES and SIM_RC_DUPLICATE_BREAKPOINT.
(sim_set_breakpoint, sim_clear_breakpoint): Delete declarations.
(sim_clear_all_breakpoints, sim_enable_breakpoint): Ditto.
(sim_enable_all_breakpoints, sim_disable_breakpoint): Ditto.
(sim_disable_all_breakpoints): Ditto.
Index: sim/common/ChangeLog
2003-02-20 Andrew Cagney <
ac131313@redhat.com>
* Make-common.in (SIM_NEW_COMMON_OBJS): Remove sim-break.o
(sim-break_h): Delete macro.
(sim-break.o): Delete rule.
* sim-break.c: Delete file.
* sim-break.h: Delete file.
* sim-base.h [SIM_HAVE_BREAKPOINTS]: Don't include "sim-break.h".
(STATE_BREAKPOINTS): Delete macro.
(sim_state_base): Delete field breakpoints.
* sim-module.c (modules) [SIM_HAVE_BREAKPOINTS]: Don't add
sim_break_install to array.
Alan Modra [Thu, 20 Feb 2003 09:10:18 +0000 (09:10 +0000)]
* elf32-ppc.c: Formatting.
(allocate_dynrelocs): LD and GD relocs against the same sym need
separate GOT entries.
(ppc_elf_relocate_section): Correct GOT handling for multiple GOT
entries per symbol.
Alexandre Oliva [Thu, 20 Feb 2003 09:08:42 +0000 (09:08 +0000)]
* configure.in: Propagate ORIGINAL_LD_FOR_MULTILIBS to
config.status.
* configure: Rebuilt.
Christopher Faylor [Thu, 20 Feb 2003 03:31:42 +0000 (03:31 +0000)]
* rclex.l (handle_quotes): Fix minor formatting problems introduced in previous
change.
Christopher Faylor [Thu, 20 Feb 2003 03:28:55 +0000 (03:28 +0000)]
* rclex.l: Handle strings spanning more than one line.
Alexandre Oliva [Thu, 20 Feb 2003 02:09:58 +0000 (02:09 +0000)]
* libtool.m4 (LD): Append -melf* option to LD on IRIX with GNU ld.
* ltconfig: Handle it.
* ltcf-cxx.sh: Use with_gnu_ld passed as a shell variable instead of
auto-detecting it.
Alexandre Oliva [Thu, 20 Feb 2003 01:12:28 +0000 (01:12 +0000)]
* libtool.m4 (LD): Append -melf* option to LD on IRIX with GNU ld.
* ltconfig: Handle it.
* ltcf-cxx.sh: Use with_gnu_ld passed as a shell variable instead of
auto-detecting it.
Alan Modra [Thu, 20 Feb 2003 01:02:39 +0000 (01:02 +0000)]
* ldgram.y (vers_defns): Also recurse with 'EXTERN NAME' patterns.
* ldgram.y (vers_defns): Allow optional trailing semicolon in
EXTERN NAME block;
Alexandre Oliva [Wed, 19 Feb 2003 23:51:28 +0000 (23:51 +0000)]
* ltcf-cxx.sh: Replace $linker_flags with $compiler_flags wherever
it is used as argument to $CC.
* ltcf-gcj.sh: Likewise.
Alexandre Oliva [Wed, 19 Feb 2003 23:51:03 +0000 (23:51 +0000)]
* configure.in: Introduce --enable-maintainer-mode.
* configure: Rebuilt.
* Makefile.tpl (Makefile.in, configure): Enable dependencies only
for maintainer mode.
* Makefile.in: Rebuilt.
Andrew Cagney [Wed, 19 Feb 2003 23:32:19 +0000 (23:32 +0000)]
2003-02-19 Andrew Cagney <
ac131313@redhat.com>
* configure: Regenerate using autoconf 2.13.
Alan Modra [Wed, 19 Feb 2003 23:00:06 +0000 (23:00 +0000)]
daily update
Alan Modra [Wed, 19 Feb 2003 14:14:16 +0000 (14:14 +0000)]
* elf32-hppa.c (elf32_hppa_gc_sweep_hook): Simplify dynamic reloc
removal. Localize vars. Remove unnecessary dynobj test.
* elf32-i386 (WILL_CALL_FINISH_DYNAMIC_SYMBOL): Pass SHARED instead
of INFO.
(allocate_dynrelocs): Adjust WILL_CALL_FINISH_DYNAMIC_SYMBOL uses,
and optimize.
(elf_i386_relocate_section): Likewise.
(elf_i386_gc_sweep_hook): Simplify dyn reloc removal. Localize vars.
* elf32-s390.c (elf_s390_gc_sweep_hook): Likewise.
* elf32-sh.c (sh_elf_gc_sweep_hook): Likewise.
* elf64-s390.c (elf_s390_gc_sweep_hook): Likewise.
* elf64-x86-64.c (elf64_x86_64_gc_sweep_hook): Likewise.
* elf32-sparc.c (elf32_sparc_gc_sweep_hook): Likewise. Remove
local_dynrel for section too. Don't touch HIPLT22, LOPLT10, PCPLT32
or PCPLT10 relocs. Don't subtract twice on PLT32 relocs.
Formatting.
Alan Modra [Wed, 19 Feb 2003 11:44:15 +0000 (11:44 +0000)]
* elf64-ppc.c (ELIMINATE_COPY_RELOCS): Define.
(ppc64_elf_check_relocs): Use it. Correct comment. Move SEC_ALLOC
test.
(ppc64_elf_adjust_dynamic_symbol): Use ELIMINATE_COPY_RELOCS.
(WILL_CALL_FINISH_DYNAMIC_SYMBOL): Pass SHARED instead of INFO.
(allocate_dynrelocs): Adjust WILL_CALL_FINISH_DYNAMIC_SYMBOL uses,
and optimize. Use ELIMINATE_COPY_RELOCS.
(ppc64_elf_relocate_section): Likewise.
Alan Modra [Wed, 19 Feb 2003 11:26:50 +0000 (11:26 +0000)]
* elf32-ppc.c (struct ppc_elf_dyn_relocs): Add pc_count field.
(ppc_elf_copy_indirect_symbol): Copy pc_count field.
(ELIMINATE_COPY_RELOCS): Define.
(ppc_elf_adjust_dynamic_symbol): Convert copy relocs to dynamic.
(WILL_CALL_FINISH_DYNAMIC_SYMBOL): Pass SHARED instead of INFO.
(MUST_BE_DYN_RELOC): Define.
(allocate_dynrelocs): Adjust WILL_CALL_FINISH_DYNAMIC_SYMBOL uses,
and optimize. Trim dyn_relocs.
(ppc_elf_check_relocs): Don't generate dyn_relocs when we know they'll
not be used. Do generate dyn_relocs for copy reloc avoidance. Keep
track of pc_rel dyn relocs.
(ppc_elf_relocate_section): Remove "will_become_local". Adjust
WILL_CALL_FINISH_DYNAMIC_SYMBOL use. Trim dyn relocs as per
allocate_dynrelocs. Don't recalculate "sec".
Alan Modra [Wed, 19 Feb 2003 10:46:52 +0000 (10:46 +0000)]
* app.c (do_scrub_chars): Handle '||' in two states.
Alan Modra [Wed, 19 Feb 2003 07:47:34 +0000 (07:47 +0000)]
import latest versions
Alan Modra [Tue, 18 Feb 2003 23:00:06 +0000 (23:00 +0000)]
daily update
Jason Merrill [Tue, 18 Feb 2003 20:12:50 +0000 (20:12 +0000)]
* Makefile.tpl (check-c++): Allow parallelism.
Alan Modra [Tue, 18 Feb 2003 12:54:56 +0000 (12:54 +0000)]
* ld-powerpc/tlsexe.d: Update for changed handling of invalid LD
relocs.
* ld-powerpc/tlsexe.g: Likewise.
* ld-powerpc/tlsexe.r: Likewise.
* ld-powerpc/tlsexe.t: Likewise.
Alan Modra [Tue, 18 Feb 2003 12:54:15 +0000 (12:54 +0000)]
* elf32-ppc.c (ppc_elf_relocate_section): Remove unnecessary test.
* elf64-ppc.c (ppc64_elf_tls_optimize): Decrement tlsld_got.refcount
on invalid LD relocs.
(allocate_dynrelocs): Invalid LD relocs don't use tlsld_got entry.
(ppc64_elf_relocate_section): Unify new handling of LD relocs and
tlsld_got entry. Use IS_PPC64_TLS_RELOC.
Alan Modra [Tue, 18 Feb 2003 12:52:55 +0000 (12:52 +0000)]
* ppc64.h (IS_PPC64_TLS_RELOC): Rename from IS_TLS_RELOC.
Alan Modra [Tue, 18 Feb 2003 06:11:32 +0000 (06:11 +0000)]
New tests.
Alan Modra [Tue, 18 Feb 2003 06:06:17 +0000 (06:06 +0000)]
* elf32-ppc.h: New file.
* elf32-ppc.c: Include elf32-ppc.h.
(NOP, CROR_151515, CROR_313131, TP_OFFSET, DTP_OFFSET): Define.
(struct ppc_elf_link_hash_entry): Rename "root" to "elf". Adjust uses.
Add "tls_mask" field.
(TLS_GD, TLS_LD, TLS_TPREL, TLS_DTPREL, TLS_TLS, TLS_TPRELGD): Define.
(struct ppc_elf_link_hash_table): Rename "root" to "elf". Adjust uses.
Add got, relgot, plt, relplt, dynbss, relbss, dynsbss, relsbss,
sdata, sdata2, tls_sec, tls_get_addr, tlsld_got fields.
Make use of htab shortcuts throughout file.
(ppc_elf_link_hash_newfunc): Init tls_mask field.
(ppc_elf_link_hash_table_create): Init new fields.
(ppc_elf_copy_indirect_symbol): Copy tls_mask.
(ppc_elf_howto_raw): Add tls relocs.
(ppc_elf_reloc_type_lookup): Handle them.
(ppc_elf_unhandled_reloc): New function.
(ppc_elf_create_got): Stash got section pointer in hash table,
return status. Make .rela.got too.
(ppc_elf_create_dynamic_sections): Stash section pointers in htab.
(ppc_elf_adjust_dynamic_symbol): Only set up copy relocs when
NON_GOT_REF set. Don't allocate space in .plt here..
(allocate_dynrelocs): ..do so here instead, properly ref-counting and
not allocating plt entries unnecessarily. Allocate got entries here.
(WILL_CALL_FINISH_DYNAMIC_SYMBOL): Define.
(ppc_elf_size_dynamic_sections): Allocate local got entries. Pass
"info" during allocate_dynrelocs hash traversal. Use htab section
shortcuts rather than searching for named sections. Get rid of
"plt" and "strip" booleans.
(update_local_sym_info, bad_shared_reloc): New functions.
(ppc_elf_check_relocs): Handle TLS relocs. Move .rela.got creation to
ppc_elf_create_got. Don't mark got or plt reloc syms dynamic, do so
in allocate_dynreloc. Use update_local_sym_info and bad_shared_reloc.
Disallow R_PPC_EMB_RELSDA, R_PPC_EMB_NADDR32, R_PPC_EMB_NADDR16,
R_PPC_EMB_NADDR16_LO, R_PPC_EMB_NADDR16_HI and R_PPC_EMB_NADDR16_HA
in shared libs. R_PPC_PLTREL32 is a plt reloc too. Refcount all
relocs that might use a plt entry. Set NON_GOT_REF too.
Enumerate all do-nothing relocs.
(ppc_elf_gc_sweep_hook): Simplify removal of dynrelocs. Handle
tls relocs and all plt relocs.
(ppc_elf_tls_setup, ppc_elf_tls_optimize): New functions.
(ppc_elf_finish_dynamic_symbol): Don't build got entries here.
(ppc_elf_finish_dynamic_sections): Rewrite tag code using htab
shortcuts.
(ppc_elf_relocate_section): Tidy. Handle TLS relocs. Use
bfd_elf_local_sym_name. Simplify unresolved reloc code. Build got
entries and got relocs here. Warn on non-zero got reloc addend.
Split out branch taken/not taken reloc code into a separate switch
and correct offset calculation. Allow BRTAKEN/BRNTAKEN dynamic relocs.
Split out HA reloc adjustments to separate switch statement. Don't
warn on reloc overflow if we've already warned about undefined.
Don't rebuild sym name when reporting errors. Report all possible
errors from _bfd_final_link_relocate.
(bfd_elf32_bfd_final_link): Don't define.
Alan Modra [Tue, 18 Feb 2003 06:05:07 +0000 (06:05 +0000)]
* emultempl/ppc32elf.em: New file.
* emulparams/elf32ppc.sh (EXTRA_EM_FILE): Define.
* Makefile.am (eelf32lppc.c): Depend on emultempl/ppc32elf.em.
(eelf32lppcnto.c): Likewise.
(eelf32lppcsim.c): Likewise.
(eelf32ppcnto.c): Likewise.
(eelf32ppc.c): Likewise.
(eelf32ppc_fbsd.c): Likewise.
(eelf32ppcsim.c): Likewise.
(eelf32ppclinux.c): Likewise.
Alan Modra [Tue, 18 Feb 2003 06:03:41 +0000 (06:03 +0000)]
* ppc.h: Replace DTPMOD64, TPREL64, DTPREL64 with DTPMOD32 etc.
(IS_PPC_TLS_RELOC): Define.
Alan Modra [Tue, 18 Feb 2003 04:52:21 +0000 (04:52 +0000)]
* ld.texinfo: Remove spaces between @samp and opening brace.
Alan Modra [Mon, 17 Feb 2003 23:00:05 +0000 (23:00 +0000)]
daily update
Alan Modra [Mon, 17 Feb 2003 22:57:54 +0000 (22:57 +0000)]
* elf64-ppc.c (ppc64_elf_relocate_section): Don't init "r". Don't
rebuild sym name when reporting errors.
Alan Modra [Mon, 17 Feb 2003 22:49:53 +0000 (22:49 +0000)]
* ld-powerpc/tlsexe.g: Update for 2003-02-14 elf64-ppc.c change.
Alan Modra [Mon, 17 Feb 2003 22:49:24 +0000 (22:49 +0000)]
* emultempl/ppc64elf.em (ppc_create_output_section_statements): Check
hash creator.
(ppc_before_allocation): Don't do optimizations if wrong hash table.
(gld${EMULATION_NAME}_finish): Ditto.
Nick Clifton [Mon, 17 Feb 2003 18:24:40 +0000 (18:24 +0000)]
Fix the behaviour of --allow-shlib-undefined, so that it does what it claims
to do. Add an inverse switch. Update the documentation.
Nick Clifton [Mon, 17 Feb 2003 18:13:18 +0000 (18:13 +0000)]
SEGMENT_OVERLAPS: Check that LMAs overlap as well.
Andrew Cagney [Mon, 17 Feb 2003 17:14:16 +0000 (17:14 +0000)]
Re-generate using autoconf 000227.
Geoffrey Keating [Sun, 16 Feb 2003 01:24:56 +0000 (01:24 +0000)]
* configure.in (*-*-darwin*): Rename from powerpc*-*-darwin*,
don't configure target-libobjc.
* configure: Regenerate.
Alan Modra [Sat, 15 Feb 2003 23:00:06 +0000 (23:00 +0000)]
daily update
Alan Modra [Fri, 14 Feb 2003 23:00:05 +0000 (23:00 +0000)]
daily update
DJ Delorie [Fri, 14 Feb 2003 21:15:37 +0000 (21:15 +0000)]
* Makefile.tpl (RANLIB): Define.
* Makefile.in: Regenerate.
Nick Clifton [Fri, 14 Feb 2003 11:16:09 +0000 (11:16 +0000)]
Change embedded documentation to use consistent indentation and to split up
long lines. Change informal style of description for functions lacking real
documentation.