* elfxx-mips.c (mips_elf_calculate_relocation): Handle special
'__gnu_local_gp' symbol used by gas -mno-shared.
gas/ChangeLog
* config/tc-mips.c (macro_build_lui): Use '__gnu_local_gp'
instead of '_gp' for -mno-shared optimization.
(s_cpload): Ditto.
(s_abicalls): Document it in the comment.
(md_show_usage): Document the -mno-shared option.
gas/testsuite/ChangeLog
* gas/mips/elf-rel23b.d: Use '__gnu_local_gp' instead of '_gp'
for -mno-shared optimization.
* gas/mips/elf-rel25a.d: Ditto.
ld/testsuite/ChangeLog
* ld-mips-elf/multi-got-no-shared-1.s,
ld-mips-elf/multi-got-no-shared-2.s,
ld-mips-elf/multi-got-no-shared.d: New tests.
* ld-mips-elf/mips-elf.exp: Run them.
(mips_opts): Initialize it.
(HAVE_32BIT_ADDRESSES): Set to true if pointers are 32 bits wide.
(HAVE_64BIT_ADDRESSES): Redefine as !HAVE_32BIT_ADDRESSES.
(HAVE_32BIT_SYMBOLS, HAVE_64BIT_SYMBOLS): New macros.
(load_address): Use HAVE_64BIT_SYMBOLS instead of HAVE_64BIT_ADDRESSES
when deciding whether to use a symbolic %highest/%higher expansion.
(macro): Likewise. Remove o64/n32 linux hack. Always use
ADDRESS_ADD*_INSN for address addition in the expansion of "dla"
and "la". Handle constants separately from symbolic expressions in
the "ld_st:" case, using 64-bit arithmetic if HAVE_64BIT_ADDRESSES
and using load_register to load the high part of the address.
(OPTION_MSYM32, OPTION_NO_MSYM32): New macros.
(OPTION_ELF_BASE): Bump by 2.
(md_longopts): Add entries for -msym32 and -mno-sym32.
(md_parse_option): Handle them.
(usage): Document them.
(s_mipsset): Handle ".set sym32" and ".set nosym32".
(s_cpload, s_cpsetup): Use HAVE_64BIT_SYMBOLS instead of
HAVE_64BIT_ADDRESSES to detect 64-bit values of "_gp".
* doc/c-mips.texi: Document ".set sym32", ".set nosym32",
-msym32 and -mno-sym32.
for 64bit address space non-PIC. Fix formatting.
(macro): Likewise. Simplify code.
(md_parse_option): Don't bail out if -G 0 is set for PIC code.
(mips_after_parse_args): Simplify code.
* gas/sh/pcrel-hms.d: New file. Adjusted form of pcrel-coff.d for the sh-hms
target.
* gas/sh/arch/arch.exp: Expect the same failures for sh-hms port as for the
sh-coff port.
Take unsigned long arguments for PIDs.
* linux-low.c (add_process, linux_attach_lwp, linux_attach)
(linux_thread_alive, linux_wait_for_event, kill_lwp, send_sigstop)
(wait_for_sigstop, linux_resume_one_process)
(regsets_fetch_inferior_registers, linux_send_signal)
(linux_read_auxv): Likewise. Update the types of variables holding
PIDs. Update format string specifiers.
* linux-low.h (struct process_info, linux_attach_lwp): Likewise.
* remote-utils.c (prepare_resume_reply): Likewise.
* server.c (cont_thread, general_thread, step_thread)
(thread_from_wait, old_thread_from_wait, signal_pid): Change type to
unsigned long.
(handle_query): Update format specifiers.
(handle_v_cont, main): Use strtoul for thread IDs.
* server.h (struct inferior_list_entry): Use unsigned long for ID.
(add_thread, find_inferior_id, change_inferior_id, cont_thread)
(general_thread, step_thread, thread_from_wait)
(old_thread_from_wait): Update.
* target.h (struct thread_resume): Use unsigned long for THREAD.
(struct target_ops): Use unsigned long for arguments to attach and
thread_alive.
* opcodes/arc-dis.c:Add enum a4_decoding_class.
(dsmOneArcInst): Use the enum values for the decoding class
Remove redundant case in the switch for decodingClass value 11
%dtprel_lo, %tprel_hi, %tprel_lo, and %gottprel.
(parse_relocation): Check for a word break after a relocation
operator.
(md_apply_fix3): Handle TLS relocations, and mark thread-local
symbols.
2005-03-02 Jan Beulich <jbeulich@novell.com>
* Makefile.am: Add dependency of cache.o on libiberty.h.
* cache.c: Include libiberty.h.
(bfd_open_file): Use unlink_if_ordinary instead of unlink.
binutils/
2005-03-02 Jan Beulich <jbeulich@novell.com>
* ar.c (remove_output): Use unlink_if_ordinary instead of unlink.
* objcopy.c (copy_file): Likewise.
(strip_main): Likewise.
gas/
2005-03-02 Jan Beulich <jbeulich@novell.com>
* as.c (main): Use unlink_if_ordinary instead of unlink.
* messages.c (as_fatal): Likewise.
ld/
2005-03-02 Jan Beulich <jbeulich@novell.com>
* ldmain.c (remove_output): Use unlink_if_ordinary instead of unlink.
* pe-dll.c (pe_dll_generate_implib): Likewise.
2005-03-02 Jan Beulich <jbeulich@novell.com>
* config/tc-i386.c (intel_e11): If not followed by T_PTR, treat T_BYTE
etc. like normal symbol references (T_ID).
gas/testsuite/
2005-03-02 Jan Beulich <jbeulich@novell.com>
* gas/i386/intelok.d: Add -r to objdump options. Adjust expectations.
* gas/i386/intelok.s: Add checks for various special memory operands.
elf_backend_section_from_shdr hook unconditionally, and return
what it returns.
(bfd_section_from_phdr): Similarly, for elf_backend_section_from_phdr.
* elfxx-target.h (elf_backend_section_from_shdr)
(elf_backend_section_from_phdr): Default to
_bfd_elf_make_section_from_shdr and _bfd_elf_make_section_from_phdr
respectively.