R_SPARC_DISP32. Support R_SPARC_PLT32.
(sparc_reloc_map): Add BFD_RELOC_16_PCREL and BFD_RELOC_SPARC_PLT32.
(elf32_sparc_check_relocs): Handle R_SPARC_PLT32.
(elf32_sparc_relocate_section): Likewise.
* elf64-sparc.c (sparc64_elf_howto_table): Fix dst_mask for
R_SPARC_DISP32. Support R_SPARC_PLT32 and R_SPARC_PLT64.
(sparc_reloc_map): Add BFD_RELOC_16_PCREL, BFD_RELOC_64_PCREL
and BFD_RELOC_SPARC_PLT32.
(sparc64_elf_check_relocs): Handle R_SPARC_PLT32 and R_SPARC_PLT64.
(sparc64_elf_relocate_section): Likewise.
* reloc.c (bfd_reloc_code_type): Add BFD_RELOC_SPARC_PLT32.
* bfd-in2.h, libbfd.h: Rebuilt.
* config/tc-sparc.h (TC_PARSE_CONS_EXPRESSION): Define.
(sparc_cons): Provide prototype.
* config/tc-sparc.c (tc_gen_reloc): Handle BFD_RELOC_*_PCREL and
BFD_RELOC_SPARC_PLT{32,64}. Enumerate for which relocs
reloc->addend = fixp->fx_addnumber shouldn't be done instead of
enumarating for which pc relative ones it should be done.
(sparc_cons_special_reloc): New variable.
(sparc_cons): New function.
(cons_fix_new_sparc): Use sparc_cons_special_reloc.
* testsuite/gas/sparc/pcrel.s: New test.
* testsuite/gas/sparc/pcrel.d: Expected output.
* testsuite/gas/sparc/pcrel64.s: New test.
* testsuite/gas/sparc/pcrel64.d: Expected output.
* testsuite/gas/sparc/plt.s: New test.
* testsuite/gas/sparc/plt.d: Expected output.
* testsuite/gas/sparc/plt64.s: New test.
* testsuite/gas/sparc/plt64.d: Expected output.
* testsuite/gas/sparc/sparc.exp: Add pcrel, pcrel64, plt and plt64
tests.
* configure.in: Check for realpath.
* defs.h (gdb_realpath): Declare.
* symtab.h (partial_symtab): Added fullname field.
* source.c (openp): Use gdb_realpath.
(forget_cached_source_info): Clear full name of each partial
symtab.
* utils.c (gdb_realpath): New function.
* symtab.c (lookup_symtab): Removed.
(lookup_symtab_1): Renamed to lookup_symtab.
(lookup_symtab): Look for real path.
(lookup_partial_symtab): Likewise.
* maint.c (match_substring): New function. Tokenizer for
'maintenance info sections' command arguments.
(match_bfd_flag): Use match_substring.
(print_bfd_section_info): Use match_substring.
(print_objfile_section_info): Use match_substring.
(maintenance_info_sections): Use match_substring.
with HP's compiler.
* gdb.hp/gdb.objdbg/objdbg01.exp: Likewise.
* gdb.hp/gdb.objdbg/objdbg02.exp: Likewise.
* gdb.hp/gdb.objdbg/objdbg03.exp: Likewise.
* gdb.hp/gdb.objdbg/objdbg04.exp: Likewise.
* gdb.hp/gdb.defects/solib-d.exp: Update to handle building with
either HP's compilers or GCC.
a SIGBUS or SIGSEGV.
* gdb.hp/gdb.base-hp/so-thresh.exp: Remove useless send_user command.
* gdb.hp/gdb.defects/bs14602.exp: Revamp slightly so that test
can be compiled with either HP's compiler or GCC.
to match current gdb output. Update due to using auto-solib-limit
for limiting instead of overloading auto-solib-add.
* gdb.hp/gdb.base-hp/so-thresh.mk: Always use "cc" to build the
test program.
* gdb.c++/templates.exp: Use "hppa64-*-*", not "hppa2.0w-*-*"
* gdb.hp/gdb.base-hp/dollar.exp: Likewise
* gdb.hp/gdb.base-hp/pxdb.exp: Likewise.
* gdb.hp/gdb.base-hp/reg-pa64.exp: Likewise.
* gdb.hp/gdb.base-hp/reg.exp: Likewise.
* gdb.hp/gdb.compat/xdb3.exp: Likewise.
* gdb.hp/gdb.defects/bs15503.exp: Likewise.
* gdb.hp/gdb.objdbg/objdbg01.exp: Likewise
* gdb.hp/gdb.objdbg/objdbg02.exp: Likewise
* gdb.hp/gdb.objdbg/objdbg03.exp: Likewise
* gdb.hp/gdb.threads-hp/usrthbasic.exp: Likewise.
* gdb.hp/gdb.threads-hp/usrthcore.exp: Likewise.
* gdb.hp/gdb.threads-hp/usrthfork.exp: Likewise.
* ppc-linux-nat.c (ppc_ptrace_cannot_fetch_store_register):
New function.
(fetch_register): New function.
(fetch_ppc_registers): New function.
(fetch_inferior_registers): New function.
(store_register): New function.
(store_ppc_registers): New function.
(store_inferior_registers): New function.
(ppc_register_u_addr): Eliminate ustart parameter and its
uses. Make static.
(PT_READ_U, PT_WRITE_U, PTRACE_XFER_TYPE): Define if needed.
Include sys/ptrace.h.
* config/powerpc/nm-linux.h (FETCH_INFERIOR_REGISTERS): Define.
(U_REGS_OFFSET, REGISTER_U_ADDR): Delete.
* config/powerpc/linux.mh (NATDEPFILES): Delete core-aout.o.
* maint.c (maintenance_info_sections): Accept new argument
'ALLOBJ', iterate over all object files.
(print_section_table): Delete. Replaced by:
(print_section_info): New function.
(print_bfd_section_info): New function.
(print_objfile_section_info): New function.
(_initialize_maint_commands): Add help for new features.
* maint.c (maintenance_info_sections): Pass string argument to
print_section_table, so that it can be used to select sections.
(print_section_table): Change PTR to void *. Look at string arg
to select sections by name and by flag attributes.
(match_bfd_flags): New function.
(print_bfd_flags): New function.
(struct remote_state): Rename field g_packet to regs;
(free_remote_state): Update.
(init_remote_state): Add pseudo-registers to table. Initialize
in_g_packet. Drop sentinal from table.
(packet_reg_from_regnum, packet_reg_from_pnum): Update.
(remote_fetch_registers): Handle registers not in the g-packet.
(remote_store_registers): Ditto.
out of the return address register, cache that in the frame's
extra info, just as if we'd gotten it from the saved regs array;
that way, it's not a lie to set the saved_pc_valid flag.