OSDN Git Service
Nick Clifton [Wed, 3 Dec 2008 14:50:56 +0000 (14:50 +0000)]
include/elf/
* common.h (STT_IFUNC): Define.
elfcpp/
* elfcpp.h (enum STT): Add STT_IFUNC.
bfd/
* syms.c (struct bfd_symbol): Add new flag BSF_INDIRECT_FUNCTION.
Remove redundant flag BFD_FORT_COMM_DEFAULT_VALUE. Renumber flags
to remove gaps.
(bfd_print_symbol_vandf): Return 'i' for BSF_INDIRECT_FUNCTION.
(bfd_decode_symclass): Likewise.
* elf.c (swap_out_syms): Translate BSF_INDIRECT_FUNCTION into
STT_IFUNC.
(elf_find_function): Treat STT_IFUNC in the same way as STT_FUNC.
(_bfd_elf_is_function_type): Likewise.
* elf32-arm.c (arm_elf_find_function): Likewise.
(elf32_arm_adjust_dynamic_symbol): Likewise.
(elf32_arm_swap_symbol_in): Likewise.
(elf32_arm_additional_program_headers): Likewise.
* elf32-i386.c (is_indirect_symbol): New function.
(elf_i386_check_relocs): Also generate dynamic relocs for
relocations against STT_IFUNC symbols.
(allocate_dynrelocs): Likewise.
(elf_i386_relocate_section): Likewise.
* elf64-x86-64.c (is_indirect_symbol): New function.
(elf64_x86_64_check_relocs): Also generate dynamic relocs for
relocations against STT_IFUNC symbols.
(allocate_dynrelocs): Likewise.
(elf64_x86_64_relocate_section): Likewise.
* elfcode.h (elf_slurp_symbol_table): Translate STT_IFUNC into
BSF_INDIRECT_FUNCTION.
* elflink.c (_bfd_elf_adjust_dynamic_reloc_section): Add support
for STT_IFUNC symbols.
(get_ifunc_reloc_section_name): New function.
(_bfd_elf_make_ifunc_reloc_section): New function.
* elf-bfd.h (struct bfd_elf_section_data): Add indirect_relocs field.
* bfd-in2.h: Regenerate.
gas/
* config/obj-elf.c (obj_elf_type): Add support for STT_IFUNC type.
* doc/as.texinfo: Document new feature.
* NEWS: Mention new feature.
gas/testsuite/
* gas/elf/type.s: Add test of STT_IFUNC symbol type.
* gas/elf/type.e: Update expected disassembly.
* gas/elf/elf.exp: Update grep of symbol types.
ld/
* NEWS: Mention new feature.
* pe-dll.c (process_def_file): Replace use of redundant
BFD_FORT_COMM_DEFAULT_VALUE with 0.
* scripttempl/elf.sc: Add .rel.ifunc.dyn and .rela.ifunc.dyn
sections.
ld/testsuite/
* ld-mips-elf/reloc-1-n32.d: Updated expected output for reloc
descriptions.
* ld-mips-elf/reloc-1-n64.d: Likewise.
* ld-i386/ifunc.d: New test.
* ld-i386/ifunc.s: Source file for the new test.
* ld-i386/i386.exp: Run the new test.
Alan Modra [Wed, 3 Dec 2008 00:00:05 +0000 (00:00 +0000)]
daily update
gdbadmin [Wed, 3 Dec 2008 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***
Doug Evans [Tue, 2 Dec 2008 19:20:23 +0000 (19:20 +0000)]
* infrun.c (handle_inferior_event): Remove redundant resetting of
stepping_past_singlestep_breakpoint.
Andreas Schwab [Tue, 2 Dec 2008 16:43:06 +0000 (16:43 +0000)]
* Makefile.def: configure-target-boehm-gc depends on
all-target-libstdc++-v3.
* Makefile.in: Regenerate.
Pedro Alves [Tue, 2 Dec 2008 15:52:13 +0000 (15:52 +0000)]
* target.h (target_get_osdata): Describe.
* osdata.h (make_cleanup_osdata_free): Declare.
* osdata.c (osdata_item_clear): Define even if HAVE_LIBEXPAT is
not defined.
(osdata_free_cleanup): New.
(make_cleanup_osdata_free): New.
(get_osdata): Fix leak.
(info_osdata_command): Use make_cleanup_osdata_free.
(info_processes_command): Delete.
(_initialize_osdata): Drop undocumented "info processes" alias.
* mi/mi-main.c (mi_cmd_list_thread_groups): Fix leak.
Jan Kratochvil [Tue, 2 Dec 2008 14:50:59 +0000 (14:50 +0000)]
gdb/
Fix resolving external references to TLS variables.
* findvar.c: Include `objfiles.h'.
(read_var_value <LOC_UNRESOLVED>): New variable `obj_section'. Handle
SEC_THREAD_LOCAL variables.
* printcmd.c (address_info <LOC_UNRESOLVED>): Handle SEC_THREAD_LOCAL
variables.
gdb/testsuite/
Test resolving external references to TLS variables.
* gdb.threads/tls.exp: New tests to examine A_THREAD_LOCAL and
FILE2_THREAD_LOCAL.
(testfile2, srcfile2): New variables.
* gdb.threads/tls.c (file2_thread_local)
(function_referencing_file2_thread_local): New.
* gdb.threads/tls2.c: New file.
Doug Evans [Tue, 2 Dec 2008 09:52:31 +0000 (09:52 +0000)]
* infrun.c (handle_inferior_event): Delete unused local tp.
Tristan Gingold [Tue, 2 Dec 2008 09:18:45 +0000 (09:18 +0000)]
2008-12-02 Tristan Gingold <gingold@adacore.com>
* config.bfd: Add x86_64-*-darwin*
Vladimir Prus [Tue, 2 Dec 2008 08:01:15 +0000 (08:01 +0000)]
MI non-stop and multiprocess docs.
* gdb.texinfo (GDB/MI): New section 'GDB/MI General Design'
(GDB/MI Output Records): New section 'GDB/MI Frame Information'
Adjust documentation for *stopped, document =thread-created,
=thread-exited, =thread-group-created and =thread-group-exited.
(GDB/MI Thread Commands): Document the 'state' field in
-thread-info output.
(GDB/MI Program Execution): Mention --all and --thread-group
options.
(GDB/MI Variable Objects): Describe floating and fixed variable
objects.
(GDB/MI Miscellaneous Commands): Document -list-thread-groups.
Vladimir Prus [Tue, 2 Dec 2008 07:57:35 +0000 (07:57 +0000)]
Implement -list-thread-groups --available
* Makefile.in (XMLFILES): Add osdata.dtd.
(SFILES): Add osdata.c.
(COMMON_OBS): Add osdata.o.
* linux-nat.c: Include pwd.h, sys/types.h, gdb_dirent.h and xml-support.h.
(linux_nat_xfer_osdata): New function.
(linux_xfer_partial): Handle TARGET_OBJECT_OSDATA.
* osdata.c: New file.
* osdata.h: New file.
* remote.c (PACKET_qXfer_osdata): New packet enum.
(remote_protocol_features): Add "qXfer:osdata:read".
(remote_read_qxfer): Handle TARGET_OBJECT_OSDATA.
(extended_remote_can_run): New.
(init_extended_remote_ops): Set to_can_run to
extended_remote_can_run.
(_initialize_remote): Add packet config command for
"qXfer:osdata:read".
* xml-support.c (obstack_xml_printf): New function.
* xml-support.h (obstack_xml_printf): Declare.
* target.c (target_get_osdata): New function.
* target.h (enum target_object): Add TARGET_OBJECT_OSDATA.
(target_os_data): Declare.
* features/osdata.dtd: New file.
* mi/mi-main.c (mi_list_thread_groups): Handle the --available
option.
Doug Evans [Tue, 2 Dec 2008 04:42:45 +0000 (04:42 +0000)]
* infrun.c (proceed): Delete unused local stop_signal.
Ben Elliston [Tue, 2 Dec 2008 03:21:45 +0000 (03:21 +0000)]
* config.sub, config.guess: Update from upstream sources.
gdbadmin [Tue, 2 Dec 2008 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Tue, 2 Dec 2008 00:00:09 +0000 (00:00 +0000)]
daily update
Cary Coutant [Mon, 1 Dec 2008 19:50:49 +0000 (19:50 +0000)]
gold/ChangeLog:
* plugin.cc (ld_plugin_message): Change format parameter to const.
Fix mismatch between new[] and delete.
include/ChangeLog:
* plugin-api.h (ld_plugin_message): Change format parameter to const.
Cary Coutant [Mon, 1 Dec 2008 19:05:46 +0000 (19:05 +0000)]
* plugin-api.h: Fix syntax error when compiling with C++.
Joel Sherrill [Mon, 1 Dec 2008 16:10:45 +0000 (16:10 +0000)]
2008-12-01 Joel Sherrill <joel.sherrill@oarcorp.com>
* compile.c: Add const to remove warning.
gdbadmin [Mon, 1 Dec 2008 00:00:32 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Mon, 1 Dec 2008 00:00:05 +0000 (00:00 +0000)]
daily update
gdbadmin [Sun, 30 Nov 2008 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Sun, 30 Nov 2008 00:00:05 +0000 (00:00 +0000)]
daily update
Dave Anglin [Sat, 29 Nov 2008 00:26:39 +0000 (00:26 +0000)]
* hpux-core.c: Don't include sys/file.h.
Alan Modra [Sat, 29 Nov 2008 00:00:06 +0000 (00:00 +0000)]
daily update
gdbadmin [Sat, 29 Nov 2008 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***
Joel Brobecker [Fri, 28 Nov 2008 23:26:53 +0000 (23:26 +0000)]
* gdb.ada/int_deref.exp: Convert the addresses into long_integer
rather than integer, as integer might not be big enough when
on 64bit targets.
Jan Kratochvil [Fri, 28 Nov 2008 21:58:06 +0000 (21:58 +0000)]
2008-11-25 monitor.c (monitor_insert_breakpoint): Remove, already in log before.
Thiemo Seufer [Fri, 28 Nov 2008 18:02:15 +0000 (18:02 +0000)]
* aoutx.h (NAME): Add case statements for bfd_mach_mips14000,
bfd_mach_mips16000.
* archures.c (bfd_architecture): Add .#defines for bfd_mach_mips14000,
bfd_mach_mips16000.
* bfd-in2.h: Regenerate.
* cpu-mips.c: Add enums I_mips14000, I_mips16000.
(arch_info_struct): Add refs to R14000, R16000.
* elfxx-mips.c (mips_set_isa_flags): Handle bfd_mach_mips14000,
bfd_mach_mips16000.
(mips_mach_extensions): Map R14000, R16000 to R10000.
* config/tc-mips.c (hilo_interlocks): Handle CPU_R14000, CPU_R16000.
(mips_cpu_info_table): Add r14000, r16000.
* doc/c-mips.texi: Add entries for 14000, 16000.
* mips-dis.c (mips_arch_choices): Add r14000, r16000.
* mips.h: Define CPU_R14000, CPU_R16000.
(OPCODE_IS_MEMBER): Include R14000, R16000 in test.
gdbadmin [Fri, 28 Nov 2008 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Fri, 28 Nov 2008 00:00:05 +0000 (00:00 +0000)]
daily update
Joseph Myers [Thu, 27 Nov 2008 17:22:09 +0000 (17:22 +0000)]
Merge from GCC:
2008-11-21 Kai Tietz <kai.tietz@onevision.com>
Fix PR/25502
* mh-mingw (BOOT_CFLAGS): Add -Wno-pedantic-ms-format switch.
2008-11-12 Steve Ellcey <sje@cup.hp.com>
PR target/27880
* unwind_ipinfo.m4 (GCC_CHECK_UNWIND_GETIPINFO): Change from
link test to target based test.
Joseph Myers [Thu, 27 Nov 2008 17:14:57 +0000 (17:14 +0000)]
Merge from GCC:
2007-12-02 Matthias Klose <doko@ubuntu.com>
* config-ml.in: Remove 64bit configure tests.
2008-05-14 Rafael Espindola <espindola@google.com>
* config-ml.in: don't handle --enable-shared and --enable-static.
2008-09-02 Sebastian Pop <sebastian.pop@amd.com>
Tobias Grosser <grosser@fim.uni-passau.de>
Jan Sjodin <jan.sjodin@amd.com>
Harsha Jagasia <harsha.jagasia@amd.com>
Dwarakanath Rajagopal <dwarak.rajagopal@amd.com>
Konrad Trifunovic <konrad.trifunovic@inria.fr>
Adrien Eliche <aeliche@isty.uvsq.fr>
Merge from graphite branch.
* configure: Regenerate.
* Makefile.in: Regenerate.
* configure.ac (host_libs): Add ppl and cloog.
Add checks for PPL and CLooG.
* Makefile.def (ppl, cloog): Added modules and dependences.
* Makefile.tpl (PPLLIBS, PPLINC, CLOOGLIBS, CLOOGINC): New.
(HOST_PPLLIBS, HOST_PPLINC, HOST_CLOOGLIBS, HOST_CLOOGINC): New.
2008-09-03 Richard Guenther <rguenther@suse.de>
* configure.ac: Always pass -DCLOOG_PPL_BACKEND to the
cloog test.
* configure: Re-generate.
2008-09-03 Sebastian Pop <sebastian.pop@amd.com>
* configure.ac (--with-cloog-polylib): New.
(--disable-cloog-version-check): New.
(--disable-ppl-version-check): New.
* configure: Re-generate.
2008-09-05 Richard Guenther <rguenther@suse.de>
* configure.ac: Initialize clooglibs to -lcloog.
* configure: Re-generate.
2008-10-13 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
* configure.ac (MPFR check): Bump minimum version to 2.3.0 and
recommended version to 2.3.2.
* configure: Regenerate.
2008-10-31 Ben Elliston <bje@au.ibm.com>
* configure.ac (spu-*-*): Remove special case.
* configure: Regenerate.
Complete comment text from GCC version of:
2008-08-31 Aaron W. LaFramboise <aaronavay62@aaronwl.com>
* configure.ac (RPATH_ENVVAR): Use PATH on Windows.
(GCC_SHLIB_SUBDIR): New.
* Makefile.tpl (HOST_LIB_PATH_gcc): Use GCC_SHLIB_SUBDIR.
* configure: Regenerate.
* Makefile.in: Regenerate.
Tristan Gingold [Thu, 27 Nov 2008 15:20:39 +0000 (15:20 +0000)]
2008-11-27 Tristan Gingold <gingold@adacore.com>
* configure.ac: Build gdb for i?86-*-darwin*
* configure: Regenerated.
M R Swami Reddy [Thu, 27 Nov 2008 12:26:49 +0000 (12:26 +0000)]
* Add PIC support for CR16 target.
* elf32-cr16.c (R_CR16_GOT_REGREL20, R_CR16_GOTC_REGREL20 and
R_CR16_GLOB_DAT): New macros
(cr16_elf_howto_table): Add entries for for R_CR16_GOT_REGREL20,
R_CR16_GOTC_REGREL20 and R_CR16_GLOB_DAT.
(cr16_reloc_map): Ditto
(_bfd_cr16_elf_create_got_section): New function to create GOT section.
(_bfd_cr16_elf_create_dynamic_sections): New function to create dynamic
section.
(_bfd_cr16_elf_adjust_dynamic_symbol): New function to adjust symbol
defined by dynamic object.
(_bfd_cr16_elf_size_dynamic_sections): New function to find the size
of dynamic section.
(_bfd_cr16_elf_finish_dynamic_symbol): New function to handle dynamic
symbols.
(_bfd_cr16_elf_finish_dynamic_symbol): New function to handle dynamic
sections.
(bfd_cr16_elf32_create_embedded_relocs): New function to create
embedded relocs in .emreloc section in memory for .data.rel section.
(_bfd_cr16_elf_reloc_type_class): New function for classify reloc types.
(cr16_elf_check_relocs): New function for checking reloc types in
first phase.
(cr16_elf_final_link_relocate): Update for handling the new reloc
types R_CR16_GOT_REGREL20 and R_CR16_GOTC_REGREL20.
(elf32_cr16_relax_section): Update relax implementation.
* reloc.c (bfd_reloc_code_type): Add entries for R_CR16_GOT_REGREL20,
R_CR16_GOTC_REGREL20 and R_CR16_GLOB_DAT.
* bfd-in.h (bfd_boolean bfd_cr16_elf32_create_embedded_relocs): Declared
* libbfd.h, bfd-in2.h: Regenerate.
M R Swami Reddy [Thu, 27 Nov 2008 11:35:39 +0000 (11:35 +0000)]
* cr16.h (R_CR16_GOT_REGREL20, R_CR16_GOTC_REGREL20 and
R_CR16_GLOB_DAT): New relocations.
M R Swami Reddy [Thu, 27 Nov 2008 11:30:33 +0000 (11:30 +0000)]
* cr16-dis.c (match_opcode): Truncate mcode to 32 bit and
adjusted the mask for 32-bit branch instruction.
Alan Modra [Thu, 27 Nov 2008 10:47:23 +0000 (10:47 +0000)]
* ppc-opc.c (extract_sprg): Correct operand range check.
Jerome Guitton [Thu, 27 Nov 2008 09:52:55 +0000 (09:52 +0000)]
* gdb.cp/formatted-ref.exp: Add equality test.
* gdb.ada/formatted_ref.exp: Ditto.
Tristan Gingold [Thu, 27 Nov 2008 09:23:01 +0000 (09:23 +0000)]
gdb:
2008-11-27 Tristan Gingold <gingold@adacore.com>
* NEWS: Add entry for new native configuration: Darwin.
* configure.host: Add Darwin host.
* configure.tgt: Add Darwin target.
* defs.h (enum gdb_osabi): Add GDB_OSABI_DARWIN.
* osabi.c (gdb_osabi_names): Add name for Darwin abi.
* i386-darwin-nat.c: New file.
* i386-darwin-tdep.c: New file.
* machoread.c: New file.
* darwin-nat-info.c: New file.
* darwin-nat.c: New file.
* darwin-nat.h: New file.
* darwin.defs: New file.
* config/i386/darwin.mh: New file.
gdb/doc:
2008-11-27 Tristan Gingold <gingold@adacore.com>
* gdb.texinfo (Darwin): Document Darwin specific features.
Alan Modra [Thu, 27 Nov 2008 00:00:04 +0000 (00:00 +0000)]
daily update
gdbadmin [Thu, 27 Nov 2008 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***
Tristan Gingold [Wed, 26 Nov 2008 16:32:59 +0000 (16:32 +0000)]
2008-11-26 Tristan Gingold <gingold@adacore.com>
* MAINTAINERS: Add myself for write after approval privileges.
Jerome Guitton [Wed, 26 Nov 2008 16:27:26 +0000 (16:27 +0000)]
* value.h (allocate_value_lazy): New function declaration.
(value_free): Remove macro, make it a function.
* value.c (value): Move actual content outside of the memory space
of the struct; add a pointer to this actual content.
(allocate_value_lazy, allocate_value_contents): New function.
(allocate_value): Reimplement using these two new functions.
(value_contents_raw, value_contents_all_raw): If no memory
has been allocated yet for the actual content, allocate it.
(value_contents_all): Resync with struct value's changes.
(value_free): New function.
(value_copy, value_primitive_field): Use new function
allocate_value_lazy to allocate lazy values.
(value_change_enclosing_type): Resync with struct value's changes.
As the value is not reallocated, remove the special handling for
the value chain (now obsolete).
* valops.c (value_at_lazy): Use new function allocate_value_lazy.
(value_fetch_lazy): Allocate value content. Use allocate_value_lazy
to allocate lazy values.
(value_slice): Use allocate_value_lazy to allocate lazy values.
Joel Sherrill [Wed, 26 Nov 2008 14:24:12 +0000 (14:24 +0000)]
2008-11-24 Joel Sherrill <joel.sherrill@oarcorp.com>
* arminit.c, iwmmxt.c: Include <string.h> to
eliminate warning.
Andreas Schwab [Wed, 26 Nov 2008 10:49:06 +0000 (10:49 +0000)]
Fix typo.
Andreas Schwab [Wed, 26 Nov 2008 10:43:18 +0000 (10:43 +0000)]
(NEXTBYTE, NEXTWORD, NEXTLONG, NEXTULONG, NEXTSINGLE)
(NEXTDOUBLE, NEXTEXTEND, NEXTPACKED): Fix error handling.
(save_printer, save_print_address): Remove.
(fetch_data): Don't use them.
(match_insn_m68k): Always restore printing functions.
(print_insn_m68k): Don't save/restore printing functions.
Jan Kratochvil [Wed, 26 Nov 2008 05:36:38 +0000 (05:36 +0000)]
2008-11-25 ia64-tdep.c change: Reflect current `disable' in the ChangeLog entry.
Jan Kratochvil [Wed, 26 Nov 2008 05:27:45 +0000 (05:27 +0000)]
Fix automatic restoration of breakpoints memory for ia64.
* ia64-tdep.c: New #if check on BREAKPOINT_MAX vs. BUNDLE_LEN.
(ia64_memory_insert_breakpoint): New comment part for SHADOW_CONTENTS
content. Remove variable instr. New variable cleanup. Force
automatic breakpoints restoration. PLACED_SIZE and SHADOW_LEN are now
set larger, to BUNDLE_LEN - 2. Variable `bundle' type update. Return
error if even just final target_write_memory has failed.
(ia64_memory_remove_breakpoint): Rename variables bundle to bundle_mem
and instr to instr_saved. New variables bundle_saved and
instr_breakpoint. Comment new reasons why we need to disable automatic
restoration of breakpoints. Assert PLACED_SIZE and SHADOW_LEN. New
check of the original memory content. Return error if even just final
target_write_memory has failed.
(ia64_breakpoint_from_pc): Implement the emulation of permanent
breakpoints compatible with current bp_loc_is_permanent.
(template_encoding_table): Make it `const'.
* breakpoint.c (bp_loc_is_permanent): Support unsupported software
breakpoints. New variables `cleanup' and `retval'.
* monitor.c (monitor_insert_breakpoint): Remove unused variable `bp'.
Jan Kratochvil [Wed, 26 Nov 2008 05:26:40 +0000 (05:26 +0000)]
* gdbint.texinfo (Target Conditionals): Extend the
gdbarch_breakpoint_from_pc description.
Jan Kratochvil [Wed, 26 Nov 2008 05:25:56 +0000 (05:25 +0000)]
* gdb.base/breakpoint-shadow.exp, gdb.base/breakpoint-shadow.c: New.
* gdb.base/start.exp: New comment about an alternative - `runto_main'.
Alan Modra [Wed, 26 Nov 2008 01:04:10 +0000 (01:04 +0000)]
include/
PR 7047
* bfdlink.h (struct bfd_elf_version_expr): Delete "symbol".
Add "literal".
bfd/
PR 7047
* configure.in: Bump version.
* configure: Regenerate.
* elflink.c (_bfd_elf_link_assign_sym_version): Continue matching
against version nodes when a global match is a wildcard. Similarly
continue matching on local wildcard matches, rather than only
continuing for "*". Have any global wildcard match override a
local wildcard match. Correct logic hiding unversioned symbol.
(bfd_elf_size_dynamic_sections): Update for changes to struct
bfd_elf_version_expr.
ld/
PR 7047
* emultempl/ppc64elf.em (gld${EMULATION_NAME}_new_vers_pattern): Update
for changes to struct bfd_elf_version_expr.
* ldlang.c (lang_vers_match, version_expr_head_hash): Likewise.
(version_expr_head_eq, lang_finalize_version_expr_head): Likewise.
(lang_register_vers_node): Likewise.
(lang_new_vers_pattern): Likewise. Ensure "literal" is set when
no glob chars found in "pattern".
(realsymbol): Correct backslash quote logic.
* ld.texinfo (VERSION): Warn about global wildcards.
Alan Modra [Wed, 26 Nov 2008 00:00:04 +0000 (00:00 +0000)]
daily update
gdbadmin [Wed, 26 Nov 2008 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***
Joel Brobecker [Tue, 25 Nov 2008 19:07:09 +0000 (19:07 +0000)]
* configure.in: Deactivate large-file support on native x86-solaris
as well unless the user explicitly requested it.
* configure: Regenerate.
Joseph Myers [Tue, 25 Nov 2008 15:53:26 +0000 (15:53 +0000)]
bfd:
* elf32-arm.c (elf32_arm_final_link_relocate): Do not turn
branches to undefine weak symbols into branches to the next
instruction if creating PLT entries for those symbols.
ld/testsuite:
* ld-arm/thumb2-bl-undefweak.d, ld-arm/thumb2-bl-undefweak.s: New.
* ld-arm/arm-elf.exp: Run thumb2-bl-undefweak test.
Nick Clifton [Tue, 25 Nov 2008 13:03:54 +0000 (13:03 +0000)]
* elflink.c (is_reloc_section): New function. Returns true if the
given name matches the name of the reloc-containing section
associated with the given section.
(get_dynamic_reloc_section_name): New function. Computes the name
of the section that contains the dynamic relocs associated with
the given section.
(_bfd_elf_get_dynamic_reloc_section): New function. Returns a
pointer to the section containing the dynamic relocs associated
with the given section.
(_bfd_elf_make_dynamic_reloc_section): New function. Creates a
section to contain the dynamic relocs associated with a given
section.
* elf-bfd.h: Prototype the new functions.
* elf-m10300.c (mn10300_elf_check_relocs): Use new functions.
(mn10300_elf_final_link_relocs): Likewise.
* elf32-arm.c (reloc_section_p): Delete - replaced by new
functions.
(elf32_arm_final_link_relocate): Use new functions.
(elf32_arm_check_relocs): Likewise.
* elf32-cris.c (cris_elf_relocate_section): Likewise.
(elf_cris_check_relocs): Likewise.
* elf32-hppa.c (elf32_hppa_check_relocs): Likewise.
* elf32-i370.c (i370_elf_check_relocs): Likewise.
(i370_elf_relocate_section): Likewise.
* elf32-i386.c (elf_i386_check_relocs): Likewise.
* elf32-m32r.c (m32r_elf_relocate_section): Likewise.
(m32r_elf_check_relocs): Likewise.
* elf32-m68k.c (elf_m68k_check_relocs): Likewise.
* elf32_ppc.c (ppc_elf_check_relocs): Likewise.
(ppc_elf_relocate_section): Likewise.
* elf32-s390.c (elf_s390_check_relocs): Likewise.
* elf32-sh.c (sh_elf_relocate_section): Likewise.
(sh_elf_check_relocs): Likewise.
* elf32-vax.c (elf_vax_check_relocs): Likewise.
(elf_vax_relocate_section): Likewise.
* elf64-alpha.c (elf64_alpha_check_relocs): Likewise.
* elf64-ppc.c (ppc64_elf_check_relocs): Likewise.
* elf64-s390.c (elf_s390_check_relocs): Likewise.
* elf64-sh64.c (sh_elf64_relocate_section): Likewise.
* elf64-x86-64.c (elf64_x86_64_check_relocs): Likewise.
* elfxx-sparc.c (_bfd_sparc_elf_check_relocs): Likewise.
* elf32-bfin.c (bfin_check_relocs): Remove redundant local
variable 'sreloc'.
(bfin_relocate_section): Likewise.
* elf32-v850.c (v850_elf_check_relocs): Likewise.
Nick Clifton [Tue, 25 Nov 2008 10:33:06 +0000 (10:33 +0000)]
* m68k-dis.c: Rewrite to remove use of setjmp/longjmp.
Hans-Peter Nilsson [Tue, 25 Nov 2008 04:02:12 +0000 (04:02 +0000)]
Implement TLS for CRIS.
* elf32-cris.c: Include limits.h.
(TLSHOWTO16): Redefine in terms of and move contents to...
(TLSHOWTO16X): New macro.
(TLSHOWTO16S, LGOT_REG_NDX, LGOT_DTP_NDX, LGOT_ALLOC_NELTS_FOR)
(elf_cris_hash_entry): New macros.
(cris_elf_howto_table): Make R_CRIS_16_DTPREL,
R_CRIS_16_GOT_TPREL, R_CRIS_16_TPREL check overflow for signed,
not unsigned values.
(cris_info_to_howto_rela): Make r_type a enum elf_cris_reloc_type,
not unsigned int.
(struct elf_cris_link_hash_entry): New members reg_got_refcount,
tprel_refcount, and dtp_refcount.
(struct elf_cris_link_hash_table): New member dtpmod_refcount.
(elf_cris_link_hash_newfunc): Initialize new members.
(elf_cris_link_hash_table_create): Similar.
(cris_final_link_relocate, elf_cris_reloc_type_class): Use a
temporary variable when testing the relocation type.
(cris_elf_gc_mark_hook): Ditto. Add default case where needed.
(cris_elf_gc_sweep_hook): Ditto. Handle reference-counting for
the new assembly-generated relocs. Rewrite refcount handling to
set temporary variables to pointers to reloc-specific variables
and entry size and common code for the update.
(additional_relocation_error_msg_count): New variable.
(cris_elf_relocate_section): Use a function-local variable srelgot
for the .rela.got section instead of looking it up for every need.
Make r_type a enum elf_cris_reloc_type, not int. Actually set
symname for non-local symbols. Handle new assembly-generated
relocs. For overflow, emit additional messages for the new 16-bit
relocs as well as R_CRIS_16_GOTPLT and R_CRIS_16_GOT.
(elf_cris_finish_dynamic_symbol): Use elf_cris_finish_dynamic_symbol
instead of plain casts. Check new hash entry member
reg_got_refcount when checking whether to emit a GOT entry.
(elf_cris_finish_dynamic_sections): Update head comment to warn
about emitting relocs here. Use a temporary variable when testing
the relocation type.
(elf_cris_discard_excess_program_dynamics)
(elf_cris_adjust_gotplt_to_got): Handle reference counting change
regarding h->reg_got_refcount.
(cris_elf_check_relocs): Rewrite refcount handling to set
temporary variables and entry size and common code for the update
for local symbols. Use new macro elf_cris_hash_entry. Adjust
allocation for change in reference counting of GOT entries for
local symbols.
(elf_cris_size_dynamic_sections): Adjust calculated size of
.got.plt and .rela.got if we need a GOT entry for a
R_CRIS_DTPMOD relocation.
(elf_cris_got_elt_size): New function.
(elf_backend_got_elt_size): Define.
Hans-Peter Nilsson [Tue, 25 Nov 2008 03:08:13 +0000 (03:08 +0000)]
* cris.h (R_CRIS_32_TPREL): Correct comment.
(R_CRIS_DTPMOD): Open up for use elsewhere than the fourth GOT entry.
gdbadmin [Tue, 25 Nov 2008 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Tue, 25 Nov 2008 00:00:09 +0000 (00:00 +0000)]
daily update
Tom Tromey [Mon, 24 Nov 2008 23:21:15 +0000 (23:21 +0000)]
* ada-lang.c (value_from_contents_and_address): Move...
* value.c: ... here.
* ada-lang.h (value_from_contents_and_address): Move
declaration...
* value.h: ... here.
Doug Evans [Mon, 24 Nov 2008 21:01:36 +0000 (21:01 +0000)]
* Makefile.in (VERSION,DIST,LINT,LINTFLAGS): Delete, unused.
Tom Tromey [Mon, 24 Nov 2008 18:10:11 +0000 (18:10 +0000)]
2008-11-24 Paul Pluzhnikov <ppluzhnikov@google.com>
* valprint.c (val_print_array_elements): Pass correct
element address to val_print.
Daniel Jacobowitz [Mon, 24 Nov 2008 18:05:02 +0000 (18:05 +0000)]
* server.c (handle_v_run): Always use the supplied argument list.
Jan Kratochvil [Mon, 24 Nov 2008 17:05:42 +0000 (17:05 +0000)]
Fix access of an already freed memory.
* parse.c (parse_field_expression): Call xstrdup on `*name'.
* completer.c (expression_completer): Free fieldname.
Daniel Jacobowitz [Mon, 24 Nov 2008 16:53:44 +0000 (16:53 +0000)]
PR gdb/2474
* remote.c (remote_read_description_p): New function.
(remote_start_remote): Try to fetch the target description
before adding shared libraries. Try again later if the
target is running but stopped.
(remote_open_1): Mark extended targets as exited by default.
(remote_read_description): Check target_has_execution.
Jerome Guitton [Mon, 24 Nov 2008 13:52:05 +0000 (13:52 +0000)]
* alpha-mdebug-tdep.c (alpha_mdebug_frame_unwind_cache): Use
the frame address in block instead of the return address to
locate the mdebug PDR of the frame.
Alan Modra [Mon, 24 Nov 2008 00:00:06 +0000 (00:00 +0000)]
daily update
gdbadmin [Mon, 24 Nov 2008 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Sun, 23 Nov 2008 00:00:05 +0000 (00:00 +0000)]
daily update
gdbadmin [Sun, 23 Nov 2008 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***
Vladimir Prus [Sat, 22 Nov 2008 12:14:33 +0000 (12:14 +0000)]
* gdb.texinfo (M68K Features): Fix typo.
Joel Brobecker [Sat, 22 Nov 2008 04:41:45 +0000 (04:41 +0000)]
Remove the unused BPSTAT_WHAT_CHECK_SHLIBS_RESUME_FROM_HOOK.
* breakpoint.h (enum bpstat_what_main_action): Remove
BPSTAT_WHAT_CHECK_SHLIBS_RESUME_FROM_HOOK.
* breakpoint.c (bpstat_what): Delete catch_shlib_event from enum class.
Remove the BPSTAT_WHAT_CHECK_SHLIBS_RESUME_FROM_HOOK column from
variable table.
* infrun.c (wait_for_inferior): Remove handling of
BPSTAT_WHAT_CHECK_SHLIBS_RESUME_FROM_HOOK.
gdbadmin [Sat, 22 Nov 2008 00:00:04 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Sat, 22 Nov 2008 00:00:04 +0000 (00:00 +0000)]
daily update
Tom Tromey [Fri, 21 Nov 2008 22:35:57 +0000 (22:35 +0000)]
* configure: Rebuild.
* configure.ac: Merge calls to AC_CHECK_FUNCS, AC_CHECK_HEADERS,
AC_CHECK_DECLS, and AC_CHECK_MEMBERS.
sterling [Fri, 21 Nov 2008 22:13:30 +0000 (22:13 +0000)]
2008-11-21 Sterling Augustine <sterling@tensilica.com>
* xtensa-isa.c (xtensa_state_is_shared_or): New function.
2008-11-21 Sterling Augustine <sterling@tensilica.com>
* xtensa-isa-internal.h (XTENSA_STATE_IS_SHARED_OR): New flag.
* xtensa-isa.h (xtensa_state_is_shared_or): New prototype.
2008-11-21 Sterling Augustine <sterling@tensilica.com>
* config/tc-xtensa.c (check_t1_t2_reads_and_writes): Call
xtensa_state_is_shared_or to allow multiple opcodes within a
single FLIX bundle to write to these special states.
DJ Delorie [Fri, 21 Nov 2008 15:04:35 +0000 (15:04 +0000)]
merge from gcc
Tom Tromey [Fri, 21 Nov 2008 14:59:55 +0000 (14:59 +0000)]
* python/python-internal.h (PyGILState_Ensure): New define.
(PyGILState_Release): Likewise.
(PyEval_InitThreads): Likewise.
(PyThreadState_Swap): Likewise.
(PyEval_InitThreads): Likewise.
* python/python.c (_initialize_python): Initialize threads.
Release GIL.
(eval_python_from_control_command): Acquire GIL.
(python_command): Likewise.
* python/python-internal.h (make_cleanup_py_restore_gil):
Declare.
* python/python-utils.c (py_gil_restore): New function.
(make_cleanup_py_restore_gil): Likewise.
Tristan Gingold [Fri, 21 Nov 2008 10:20:59 +0000 (10:20 +0000)]
(Chunk I forgot to commit on 2008-11-14).
2008-11-13 Tristan Gingold <gingold@adacore.com>
* makefile.vms (OBJS): Update objects list.
(CFLAGS): Update.
(libiberty.olb): Remove alloca-conf.h dependency.
* config.h-vms: Use new macro sets, use builtin alloca.
Hans-Peter Nilsson [Fri, 21 Nov 2008 00:02:36 +0000 (00:02 +0000)]
* elf-bfd.h (struct elf_backend_data): New member got_elt_size.
(_bfd_elf_default_got_elt_size): Declare.
* elflink.c (struct alloc_got_off_arg): Replace member got_elt_size
by new member info.
(elf_gc_allocate_got_offsets): Adjust for calling bed->got_elt_size
to get the element size instead of using a gofarg entry.
(bfd_elf_gc_common_finalize_got_offsets): Similar.
(_bfd_elf_default_got_elt_size): New function.
* elfxx-target.h: New macro elf_backend_got_elt_size.
(elfNN_bed): Use it.
gdbadmin [Fri, 21 Nov 2008 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Fri, 21 Nov 2008 00:00:09 +0000 (00:00 +0000)]
daily update
Doug Evans [Thu, 20 Nov 2008 22:16:15 +0000 (22:16 +0000)]
* frame.c (frame_debug_got_null_frame): Remove file arg.
All callers updated.
Andreas Schwab [Thu, 20 Nov 2008 17:17:59 +0000 (17:17 +0000)]
* gdb.base/foll-fork.exp (catch_fork_child_follow): Fix patterns
matching syscall entry point.
* gdb.base/foll-vfork.exp (tcatch_vfork_then_parent_follow)
(tcatch_vfork_then_child_follow): Likewise. Finish through
vfork even if we stopped at the syscall trampoline.
Pedro Alves [Thu, 20 Nov 2008 17:06:03 +0000 (17:06 +0000)]
* infrun.c (resume): If following a fork, also reset regcache,
gdbarch and pc.
Doug Evans [Thu, 20 Nov 2008 16:13:10 +0000 (16:13 +0000)]
* printcmd.c (sym_info): Don't print the offset if it's zero.
* gdb.base/sepsymtab.exp: Update, old "info sym" format restored.
Pedro Alves [Thu, 20 Nov 2008 13:23:25 +0000 (13:23 +0000)]
* infrun.c (resume): If following a fork, reread the current
thread. Avoid dereferencing a possibly dangling pointer.
Tristan Gingold [Thu, 20 Nov 2008 09:49:00 +0000 (09:49 +0000)]
2008-11-20 Tristan Gingold <gingold@adacore.com>
* bfdwin.c: Fix comment.
Tristan Gingold [Thu, 20 Nov 2008 09:28:06 +0000 (09:28 +0000)]
2008-11-20 Tristan Gingold <gingold@adacore.com>
* bfd.c (is32bit): Use architecture information for non-ELF
targets.
Alan Modra [Thu, 20 Nov 2008 08:47:10 +0000 (08:47 +0000)]
* elf32-ppc.c (allocate_dynrelocs): Always use tlsld_got for
TLS_LD even when symbol is used with other TLS reloc types.
(ppc_elf_relocate_section): Bypass symbol checks when using tlsld_got.
Leave addend zero on LD DTPMOD dynamic reloc.
Doug Evans [Thu, 20 Nov 2008 00:35:22 +0000 (00:35 +0000)]
* inferior.h (proceed_to_finish): Delete, unused.
(stop_registers): Tweak comment.
* infrun.c (stop_registers): Tweak comment.
Alan Modra [Thu, 20 Nov 2008 00:00:05 +0000 (00:00 +0000)]
daily update
gdbadmin [Thu, 20 Nov 2008 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***
Kevin Buettner [Wed, 19 Nov 2008 21:17:06 +0000 (21:17 +0000)]
* frv-tdep.c (frv_skip_main_prologue): New function.
(frv_gdbarch_init): Register frv_skip_main_prologue.
* solib-frv.c (fetch_loadmap): Return early when no segments are
found.
(frv_relocate_main_executable): Return early when both interpreter
and executable loadmap addresses are zero.
Bob Wilson [Wed, 19 Nov 2008 18:29:44 +0000 (18:29 +0000)]
gdb/
* xtensa-config.c (rmap): Remove entries for ar32 through ar63. Add
threadptr, scompare1, mmid, epc5, epc6, epc7, eps5, eps6, eps7,
excsave5, excsave6, excsave7, cpenable, and vecbase registers.
(xtensa_submask0, xtensa_submask1, xtensa_submask2)
(xtensa_submask3, xtensa_submask4, xtensa_submask5, xtensa_submask6)
(xtensa_submask7, xtensa_submask8, xtensa_submask9, xtensa_submask10)
(xtensa_submask11, xtensa_submask12, xtensa_submask13, xtensa_submask14)
(xtensa_submask15): Adjust register numbers.
* xtensa-xtregs.c (XTENSA_ELF_XTREG_SIZE): Change to 4.
(xtensa_regmap_table): Add entry for scompare1.
* regformats/reg-xtensa.dat: Remove ar32 through ar63. Add threadptr
and scompare1.
gdb/gdbserver/
* xtensa-xtregs.c (XTENSA_ELF_XTREG_SIZE): Change to 4.
(xtensa_regmap_table): Add entry for scompare1.
Bob Wilson [Wed, 19 Nov 2008 18:25:19 +0000 (18:25 +0000)]
include/
* xtensa-config.h (XCHAL_HAVE_MUL16, XCHAL_HAVE_MUL32, XCHAL_HAVE_DIV32)
(XCHAL_HAVE_MINMAX, XCHAL_HAVE_SEXT, XCHAL_HAVE_THREADPTR)
(XCHAL_HAVE_RELEASE_SYNC, XCHAL_HAVE_S32C1I): Change to 1.
(XCHAL_NUM_AREGS): Change to 32.
(XCHAL_ICACHE_SIZE, XCHAL_DCACHE_SIZE): Change to 16K.
(XCHAL_ICACHE_LINESIZE, XCHAL_DCACHE_LINESIZE): Change to 32.
(XCHAL_ICACHE_LINEWIDTH, XCHAL_DCACHE_LINEWIDTH): Change to 5.
(XCHAL_DCACHE_IS_WRITEBACK): Change to 1.
(XCHAL_DEBUGLEVEL): Change to 6.
bfd/
* xtensa-modules.c (sysregs): Add MMID, VECBASE, EPC5, EPC6, EPC7,
EXCSAVE5, EXCSAVE6, EXCSAVE7, EPS5, EPS6, EPS7, CPENABLE,
SCOMPARE1, and THREADPTR registers.
(NUM_SYSREGS, MAX_USER_REG): Update.
(states): Change width of INTERRUPT, WindowBase, WindowStart, and
INTENABLE. Add VECBASE, EPC5, EPC6, EPC7, EXCSAVE5, EXCSAVE6,
EXCSAVE7, EPS6, EPS6, EPS7, THREADPTR, CPENABLE, and SCOMPARE1 states.
(NUM_STATES): Update.
(enum xtensa_state_id): Add entries for new states.
(enum xtensa_field_id): Add entries for xt_wbr15_imm and xt_wbr18_imm
fields, along with functions to extract and set them.
(regfiles): Change number of AR registers to 32.
(Operand_ar0_encode, Operand_ar4_encode, Operand_ar8_encode,
Operand_ar12_encode, Operand_ars_entry_encode): Update register mask.
(operands): Add entries for tp7, xt_wbr15_label, xt_wbr18_label,
xt_wbr15_imm, and xt_wbr18_imm operands, along with functions to
encode and decode them.
(enum xtensa_operand_id): Add entries for new operands.
(Iclass_xt_iclass_rfi_stateArgs): Add EPC5, EPC6, EPC7, EPS5, EPS6, and
EPC7 states.
(Iclass_xt_iclass_rfdo_stateArgs): Replace EPC4 and EPS4 by EPC6 and
EPS6, respectively.
(iclasses): Add entries for rur_threadptr, wur_threadptr,
xt_iclass_wsr_176, xt_iclass_rsr_epc5, xt_iclass_wsr_epc5,
xt_iclass_xsr_epc5, xt_iclass_rsr_excsave5, xt_iclass_wsr_excsave5,
xt_iclass_xsr_excsave5, xt_iclass_rsr_epc6, xt_iclass_wsr_epc6,
xt_iclass_xsr_epc6, xt_iclass_rsr_excsave6, xt_iclass_wsr_excsave6,
xt_iclass_xsr_excsave6, xt_iclass_rsr_epc7, xt_iclass_wsr_epc7,
xt_iclass_xsr_epc7, xt_iclass_rsr_excsave7, xt_iclass_wsr_excsave7,
xt_iclass_xsr_excsave7, xt_iclass_rsr_eps5, xt_iclass_wsr_eps5,
xt_iclass_xsr_eps5, xt_iclass_rsr_eps6, xt_iclass_wsr_eps6,
xt_iclass_xsr_eps6, xt_iclass_rsr_eps7, xt_iclass_wsr_eps7,
xt_iclass_xsr_eps7, xt_iclass_rsr_vecbase, xt_iclass_wsr_vecbase,
xt_iclass_xsr_vecbase, xt_iclass_mul16, xt_iclass_wsr_mmid,
xt_iclass_icache_lock, xt_iclass_dcache_lock, xt_iclass_rsr_cpenable,
xt_iclass_wsr_cpenable, xt_iclass_xsr_cpenable, xt_iclass_clamp,
xt_iclass_minmax, xt_iclass_sx, xt_iclass_l32ai, xt_iclass_s32ri,
xt_iclass_s32c1i, xt_iclass_rsr_scompare1, xt_iclass_wsr_scompare1,
xt_iclass_xsr_scompare1, xt_iclass_div, and xt_iclass_mul32, along
with corresponding argument and state argument arrays. Change
number of state arguments for xt_iclass_rfi. Add arguments for
xt_iclass_rfdo.
(enum xtensa_iclass_id): Add entries for new iclasses.
(opcodes): Add entries for RUR_THREADPTR, WUR_THREADPTR, WSR_176,
RSR_EPC5, WSR_EPC5, XSR_EPC5, RSR_EXCSAVE5, WSR_EXCSAVE5, XSR_EXCSAVE5,
RSR_EPC6, WSR_EPC6, XSR_EPC6, RSR_EXCSAVE6, WSR_EXCSAVE6, XSR_EXCSAVE6,
RSR_EPC7, WSR_EPC7, XSR_EPC7, RSR_EXCSAVE7, WSR_EXCSAVE7, XSR_EXCSAVE7,
RSR_EPS5, WSR_EPS5, XSR_EPS5, RSR_EPS6, WSR_EPS6, XSR_EPS6, RSR_EPS7,
WSR_EPS7, XSR_EPS7, RSR_VECBASE, WSR_VECBASE, XSR_VECBASE, MUL16U,
MUL16S, WSR_MMID, IPFL, IHU, IIU, DPFL, DHU, DIU, RSR_CPENABLE,
WSR_CPENABLE, XSR_CPENABLE, CLAMPS, MIN, MAX, MINU, MAXU, SEXT, L32AI,
S32RI, S32C1I, RSR_SCOMPARE1, WSR_SCOMPARE1, XSR_SCOMPARE1, QUOU, QUOS,
REMU, REMS, and MULL opcodes, along with the corresponding functions
to encode them.
(enum xtensa_opcode_id): Add entries for new opcodes.
(Slot_inst_decode): Handle new opcodes.
(Slot_inst_get_field_fns, Slot_inst_set_field_fns): Add entries for
xt_wbr15_imm and xt_wbr18_imm fields.
(Slot_inst16a_get_field_fns, Slot_inst16a_set_field_fns): Likewise.
(Slot_inst16b_get_field_fns, Slot_inst16b_set_field_fns): Likewise.
(xtensa_modules): Update number of fields, operands, iclasses and
opcodes.
Nick Clifton [Wed, 19 Nov 2008 16:22:46 +0000 (16:22 +0000)]
Change documentation license to FDL v1.3
Pedro Alves [Wed, 19 Nov 2008 14:45:07 +0000 (14:45 +0000)]
* remote.c (escape_buffer): New.
(putpkt_binary, read_frame, getpkt_or_notif_sane_1): Use it. Make
sure debug output printing a packet buffer goes through a single
fprintf_unfiltered call.
* utils.c (vfprintf_unfiltered): If outputting timestamps, end
output with a newline if it wasn't going to already.