Tom Tromey [Mon, 4 Apr 2011 14:10:12 +0000 (14:10 +0000)]
* symtab.h (domain_enum): Split in two...
(enum search_domain): New.
(search_symbols): Update.
* symtab.c (print_symbol_info, symtab_symbol_info): Remove
redundant declarations.
(search_symbols): Change 'kind' argument to search_domain.
Update.
(print_symbol_info): Likewise.
(symtab_symbol_info): Likewise.
* symfile.h (struct quick_symbol_functions)
<pre_expand_symtabs_matching>: Change type of 'kind' argument.
<expand_symtabs_matching>: Likewise.
* psymtab.c (pre_expand_symtabs_matching_psymtabs): Update.
(expand_symtabs_matching_via_partial): Update.
* dwarf2read.c (dw2_pre_expand_symtabs_matching): Update.
(dw2_expand_symtabs_for_function): Update.
* block.h: Moved anonymous enum...
* defs.h (enum block_enum): ... here. Now named.
H.J. Lu [Mon, 4 Apr 2011 01:35:59 +0000 (01:35 +0000)]
Make the unknown archive element readable.
2011-04-03 H.J. Lu <hongjiu.lu@intel.com>
PR binutils/12632
* objcopy.c (copy_unknown_object): Make the archive element
readable.
David S. Miller [Mon, 4 Apr 2011 00:34:26 +0000 (00:34 +0000)]
binutils/
* objdump.c (dump_reloc_set): Output R_SPARC_OLO10 relocations
accurately, rather than how they are represented internally.
Alan Modra [Mon, 4 Apr 2011 00:00:06 +0000 (00:00 +0000)]
daily update
gdbadmin [Mon, 4 Apr 2011 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***
Joel Brobecker [Sun, 3 Apr 2011 16:55:15 +0000 (16:55 +0000)]
Update NEWS after gdb-7.3 branch creation.
gdb/ChangeLog:
* NEWS: Create a new section for the next release branch.
Rename the section of the current branch, now that it has
been cut.
gdbadmin [Sun, 3 Apr 2011 16:31:21 +0000 (16:31 +0000)]
Record GDB 7.3 branch creation. Bump version number to 7.3.50.
20110403-cvs.
gdbadmin [Sun, 3 Apr 2011 00:00:32 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Sun, 3 Apr 2011 00:00:05 +0000 (00:00 +0000)]
daily update
Mike Frysinger [Sat, 2 Apr 2011 06:02:51 +0000 (06:02 +0000)]
sim: dv-glue: fix up style a bit
This touches up the code a bit to match GNU style. No functional changes.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Sat, 2 Apr 2011 05:30:16 +0000 (05:30 +0000)]
sim: fix up style a bit
This touches up the code a bit to match GNU style. No functional changes.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Joel Brobecker [Sat, 2 Apr 2011 04:31:43 +0000 (04:31 +0000)]
Fix gdb.info build error (bad @menu entry)
gdb/doc/ChangeLog:
* gdb.texinfo (GDB/MI Output Records): Fix menu entry for
"GDB/MI Ada Exception Information" node.
gdbadmin [Sat, 2 Apr 2011 00:00:33 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Fri, 1 Apr 2011 23:00:06 +0000 (23:00 +0000)]
daily update
Mike Frysinger [Fri, 1 Apr 2011 22:32:04 +0000 (22:32 +0000)]
sim: bfin: add OTP output port
This doesn't currently generate any interrupts (as there doesn't appear
to be any documentation to *when* it would even do so), but since the
HRM does say an interrupt line exists between the OTP and the SIC, add
one for completeness sake. This will make a follow up patch easier.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Ulrich Weigand [Fri, 1 Apr 2011 19:38:15 +0000 (19:38 +0000)]
* arm-tdep.c (arm_gdbarch_init): Enfore correct register number
for "fpscr" in target description.
Joseph Myers [Fri, 1 Apr 2011 19:16:09 +0000 (19:16 +0000)]
* configure.ac (avr-*-*): Add comment about why libssp is disabled.
(microblaze*): Don't disable libssp.
* configure: Regenerate.
Jan Kratochvil [Fri, 1 Apr 2011 17:46:44 +0000 (17:46 +0000)]
gdb/
* dwarf2read.c (find_slot_in_mapped_hash): New variable back_to,
initialize it. Delay HASH initialization. Strip the part after open
parenthesis for languages with qualifiers. Call do_cleanups.
Tom Tromey [Fri, 1 Apr 2011 17:20:42 +0000 (17:20 +0000)]
* utils.c (report_command_stats): Don't print `-' for negative
number.
Joel Brobecker [Fri, 1 Apr 2011 17:03:52 +0000 (17:03 +0000)]
extend scope of testing in gdb.ada/arrayptr
We add testing of taking a slice of an array access. And we also
introduce the same amount of testing, but with an access to a
constrained array.
gdb/testsuite/ChangeLog:
* gdb.ada/arrayptr/foo.adb: Add access to constrained array.
* gdb.ada/arrayptr.exp: Add new tests.
Joel Brobecker [Fri, 1 Apr 2011 17:03:24 +0000 (17:03 +0000)]
[Ada] fix printing slice of array defined as typedef
A change we are making in the compiler to help preserve useful
types when using -feliminate-unused-debug-types exposed a small
hole in our value-printing code.
One example of the problem happens when trying to print a slice
of an array pointer. If the variable is defined as a pointer to
the typedef of an array, then we fail to print the slice, like so:
(gdb) p arr_ptr(1..2)
cannot take slice of non-array
gdb/ChangeLog:
* ada-lang.c (ada_is_simple_array_type, ada_value_slice_from_ptr)
(ada_value_slice, empty_array, to_fixed_array_type): Deal with
typedefs.
Joel Brobecker [Fri, 1 Apr 2011 16:59:58 +0000 (16:59 +0000)]
improve Ada exception catchpoint MI notification
This rewrites the code generating the Ada exception catchpoint hit
notification for both the GDB/MI case as well as the non-MI case,
by using the relevant ui_out_* functions to generate the output.
the MI notifications for Ada exception catchpoints now include
the stop reason, and the breakpoint "disp", much like other breakpoint
events do. It also introduces a new field "exception-name" for
exception catchpoints (excluding "failed assertion catchpoints,
where we just want to know that it was a failed assertion).
gdb/ChangeLog:
* breakpoint.h (bpdisp_text): Add declaration.
* breakpoint.c (bpdisp_text): Make non-static.
* ada-lang.c: #include "mi/mi-common.h".
(print_it_exception): Rewrite to improve GDB/MI output.
gdb/doc/ChangeLog:
* gdb.texinfo (GDB/MI Ada Exception Information): Document
the "exception-name" field in the *stopped async record.
gdb/testsuite/ChangeLog:
* gdb.ada/mi_catch_ex: New testcase.
Pedro Alves [Fri, 1 Apr 2011 16:26:37 +0000 (16:26 +0000)]
gdb/testsuite/
* gdb.cp/cpexprs.exp (Overloaded methods): No longer try the
base::overload(void) method without specifying "const".
Pedro Alves [Fri, 1 Apr 2011 15:22:52 +0000 (15:22 +0000)]
* arm-tdep.h (struct address_space): Add forward declaration.
Joseph Myers [Fri, 1 Apr 2011 13:44:53 +0000 (13:44 +0000)]
* configure.ac: Remove code setting CONFIG_SHELL, config_shell and
moveifchange.
* configure: Regenerate.
* Makefile.tpl: Use @SHELL@ not @config_shell@.
* Makefile.in: Regenerate.
Joseph Myers [Fri, 1 Apr 2011 13:42:02 +0000 (13:42 +0000)]
* configure.ac (*-*-sysv4*): Don't enable libgomp.
(alpha*-*-*vms*, i[[34567]]86-*-sco3.2v5*, mn10300-*-*,
powerpc-*-chorusos*, powerpc*-*-eabi*, powerpc*-*-sysv*,
powerpc*-*-kaos*, s390x-ibm-tpf*, sparc64-*-elf*, v850*-*-*,
xtensa*-*-elf*, *-*-beos*, *-*-elf*, *-*-netware*, *-*-rtems*,
*-*-sysv[[45]]*, *-*-vxworks*, *-wrs-windiss): Remove
md_exec_prefix cases.
* configure: Regenerate.
Joseph Myers [Fri, 1 Apr 2011 12:00:58 +0000 (12:00 +0000)]
* configure.ac: Separate cases disabling target-libssp,
target-libiberty, target-libstdc++-v3 and Fortran from general
case over targets.
* configure: Regenerate.
Joseph Myers [Fri, 1 Apr 2011 11:58:07 +0000 (11:58 +0000)]
* configure.ac (*-*-chorusos): Don't disable libgcj.
(*-*-freebsd[[12]] | *-*-freebsd[[12]].* | *-*-freebsd*aout*):
Remove case.
(*-*-kaos*): Don't disable GCC libraries, zlib or fastjar.
(arm-*-coff): Don't disable libgcj.
(arm*-*-linux-gnueabi): Remove useless assignment.
(arm-*-riscix*): Don't disable libgcj.
(bfin-*-*): Don't enable target-bsp and target-cygmon depending on
configuration.
(c4x-*-* | tic4x-*-*): Don't disable GCC libraries.
(c54x*-*-*): Remove case.
(tic54x-*-*): Don't disable GCC or GCC libraries.
(cris-*-* | crisv32-*-*): Don't handle *-*-aout. Change *-*-elf
to *.
(d10v-*-*): Don't disable GCC libraries.
(d30v-*-*): Don't disable libgcj.
(h8500-*-*): Don't disable GCC libraries.
(i960-*-*): Don't disable libgcj.
(i[[
3456789]]86-*-linux*): Don't handle *-*-*libc1*.
(i[[
3456789]]86-*-sco3.2v5*, i[[
3456789]]86-*-sco*,
i[[
3456789]]86-*-sysv4*, i[[
3456789]]86-*-beos*): Don't disable
libgcj.
(m68k-*-coff*): Remove case.
(mmix-*-*): Don't disable libgloss on host.
(mn10200-*-*, mn10300-*-*): Remove cases.
(powerpc*-*-winnt* | powerpc*-*-pe*, powerpcle-*-solaris*,
powerpc-*-beos*, m68k-apollo-*, mips*-*-irix5*, mips*-*-bsd*):
Don't disable libgcj.
(romp-*-*): Remove case.
(sparclite-*-*, sparc-*-sunos4*): Don't disable libgcj.
(sparc-*-solaris2.[[0-6]] | sparc-*-solaris2.[[0-6]].*): Remove
case.
(v810-*-*): Don't disable GCC libraries.
(v850*-*-*, vax-*-vms, xtensa*-*-*): Remove cases.
(ip2k-*-*): Don't disable GCC libraries.
* configure: Regenerate.
Ulrich Weigand [Fri, 1 Apr 2011 11:57:03 +0000 (11:57 +0000)]
gdb/
* arm-tdep.h (arm_insert_single_step_breakpoint): Add prototype.
* arm-tdep.c (arm_override_mode): New global.
(arm_pc_is_thumb): Respect arm_override_mode. Remove single-step
execution mode heuristics.
(thumb_get_next_pc_raw): Remove INSERT_BKTP argument; always insert
second single-step breakpoint if needed, using
arm_insert_single_step_breakpoint.
(arm_get_next_pc_raw): Remove INSERT_BKTP argument. Only handle
ARM execution mode, do not call thumb_get_next_pc_raw.
(arm_get_next_pc): Encode execution mode in return value. Call
either arm_get_next_pc_raw or thumb_get_next_pc_raw.
(arm_insert_single_step_breakpoint): New function.
(arm_software_single_step): Call it.
* arm-linux-tdep.c (arm_linux_sigreturn_return_addr): Add IS_THUMB
argument to return execution mode of sigreturn target.
(arm_linux_syscall_next_pc): Use it.
(arm_linux_copy_svc): Update call.
(arm_linux_software_single_step): Call
arm_insert_single_step_breakpoint.
gdb/testsuite/
* gdb.arch/thumb-singlestep.S: New file.
* gdb.arch/thumb-singlestep.exp: Likewise.
Tristan Gingold [Fri, 1 Apr 2011 08:56:21 +0000 (08:56 +0000)]
2011-04-01 Tristan Gingold <gingold@adacore.com>
* config/tc-ia64.c (md_apply_fix): Add a cast to avoid a warning.
Tristan Gingold [Fri, 1 Apr 2011 08:38:55 +0000 (08:38 +0000)]
2011-04-01 Tristan Gingold <gingold@adacore.com>
* elfxx-ia64.c: include bfd_stdint.h
gdbadmin [Fri, 1 Apr 2011 00:00:32 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Thu, 31 Mar 2011 23:00:05 +0000 (23:00 +0000)]
daily update
H.J. Lu [Thu, 31 Mar 2011 22:23:09 +0000 (22:23 +0000)]
Fix elf_l1om linker scripts.
2011-03-31 H.J. Lu <hongjiu.lu@intel.com>
* configure.tgt: Add elf_l1om to targ_extra_libpath for
x86_64-*-linux-*.
* emulparams/elf_l1om.sh: Remove duplicates.
Jan Kratochvil [Thu, 31 Mar 2011 21:01:13 +0000 (21:01 +0000)]
gdb/
* dwarf2read.c (dwarf2_read_index): Fix .gdb_index version number in
the comment.
Tom Tromey [Thu, 31 Mar 2011 19:59:26 +0000 (19:59 +0000)]
gdb
* varobj.c (update_dynamic_varobj_children): Properly handle
errors from iterator.
gdb/testsuite
* gdb.python/py-prettyprint.py (exception_flag): New global.
(NoStringContainerPrinter._iterator.next): Check it.
* gdb.python/py-prettyprint.c (main): New variable nstype2.
* gdb.python/py-mi.exp: Set exception_flag and do more tests.
Jan Kratochvil [Thu, 31 Mar 2011 19:37:54 +0000 (19:37 +0000)]
gdb/
* dwarf2read.c (dwarf2_name): Initialize DEMANGLED. Avoid demangling
struct linkage name twice.
Tom Tromey [Thu, 31 Mar 2011 16:25:41 +0000 (16:25 +0000)]
* python/py-prettyprint.c (print_stack_unless_memory_error): Add
missing ">" to message.
Tom Tromey [Thu, 31 Mar 2011 16:20:46 +0000 (16:20 +0000)]
* varobj.c (instantiate_pretty_printer): Remove duplicate
'return'.
Ulrich Weigand [Thu, 31 Mar 2011 16:16:57 +0000 (16:16 +0000)]
* i386-tdep.c (i386_frame_prev_register): Unwind SP from memory
if neither saved value nor register available (e.g. signal frame).
Thiago Jung Bauermann [Thu, 31 Mar 2011 15:40:44 +0000 (15:40 +0000)]
* macroexp.c (expand): Avoid uninitialized variable
compiler warning.
Thiago Jung Bauermann [Thu, 31 Mar 2011 15:01:24 +0000 (15:01 +0000)]
* breakpoint.c (break_range_command): Fix typo in comment.
Bernd Schmidt [Thu, 31 Mar 2011 14:40:11 +0000 (14:40 +0000)]
Move ChangeLog entry to correct directory.
Thiago Jung Bauermann [Thu, 31 Mar 2011 14:32:49 +0000 (14:32 +0000)]
2011-03-31 Thiago Jung Bauermann <bauerman@br.ibm.com>
Sergio Durigan Junior <sergiodj@linux.vnet.ibm.com>
Implement support for PowerPC BookE ranged breakpoints.
gdb/
* NEWS: Mention support for ranged breakpoints on embedded PowerPC.
* breakpoint.h (struct bp_target_info) <length>: New member
variable.
(struct breakpoint_ops) <breakpoint_hit>: Take struct bp_location
instead of struct breakpoint as argument, and also add ASPACE
and BP_ADDR arguments. Update all callers.
(struct breakpoint_ops) <print_one_detail>: New method.
(struct breakpoint) <addr_string_range_end>: New member variable.
* breakpoint.c (breakpoint_location_address_match): Add function
prototype.
(insert_bp_location): Set bl->target_info.length.
(breakpoint_here_p): Call breakpoint_location_address_match.
(moribund_breakpoint_here_p): Likewise.
(regular_breakpoint_inserted_here_p): Likewise.
(breakpoint_thread_match): Likewise.
(bpstat_stop_status): Likewise.
(bpstat_check_location): Move call to
breakpoint_ops.breakpoint_hit to the top.
(print_one_breakpoint_location): Call
breakpoint_ops.print_one_detail if available.
(breakpoint_address_match_range): New function.
(breakpoint_location_address_match): Likewise.
(breakpoint_locations_match): Compare the length field of the
locations too.
(hw_breakpoint_used_count): Count resources used by all locations
in a breakpoint, and use breakpoint_ops.resources_needed if
available.
(breakpoint_hit_ranged_breakpoint): New function.
(resources_needed_ranged_breakpoint): Likewise.
(print_it_ranged_breakpoint): Likewise.
(print_one_ranged_breakpoint): Likewise.
(print_one_detail_ranged_breakpoint): Likewise.
(print_mention_ranged_breakpoint): Likewise.
(print_recreate_ranged_breakpoint): Likewise.
(ranged_breakpoint_ops): New structure.
(find_breakpoint_range_end): New function.
(break_range_command): Likewise.
(delete_breakpoint): Free addr_string_range_end.
(update_breakpoint_locations): Add SALS_END argument. Update
all callers. Calculate breakpoint length if a non-zero SALS_END
is given. Call breakpoint_locations_match instead of
breakpoint_address_match.
(reset_breakpoint): Find SaL of the end of the range if B is a
ranged breakpoint.
(_initialize_breakpoint): Register break-range command.
* defs.h (print_core_address): Add function prototype.
* ppc-linux-nat.c (ppc_linux_ranged_break_num_registers): New
function.
(ppc_linux_insert_hw_breakpoint): Support ranged breakpoints.
(ppc_linux_remove_hw_breakpoint): Likewise.
(_initialize_ppc_linux_nat): Initialize
to_ranged_break_num_registers.
* target.c (update_current_target): Add comment about
to_ranged_break_num_registers.
(target_ranged_break_num_registers): New function.
* target.h (struct target_ops) <to_ranged_break_num_registers>:
New method.
(target_ranged_break_num_registers): Add function prototype.
* ui-out.c (ui_out_field_core_addr): Move address-printing logic to ...
* utils.c (print_core_address): ... here.
gdb/doc/
* gdb.texinfo (PowerPC Embedded): Document ranged breakpoints.
Tristan Gingold [Thu, 31 Mar 2011 14:29:33 +0000 (14:29 +0000)]
2011-03-31 Tristan Gingold <gingold@adacore.com>
* dwarf2.h (dwarf_line_number_hp_sfc_ops): New enum.
Jan Kratochvil [Thu, 31 Mar 2011 14:17:34 +0000 (14:17 +0000)]
bfd/
* elf32-tic6x.c (elf32_tic6x_relocate_section): Remove unused variable
dynobj and its initialization.
Tristan Gingold [Thu, 31 Mar 2011 14:15:31 +0000 (14:15 +0000)]
bfd/
2011-03-31 Tristan Gingold <gingold@adacore.com>
* makefile.vms (DEFS): Add HAVE_bfd_elf64_ia64_vms_vec.
* configure.com: Set BFD_HOST_64BIT_LONG_LONG and
BFD_HOST_LONG_LONG to 1.
binutils/
2011-03-31 Tristan Gingold <gingold@adacore.com>
* makefile.vms (readelf.exe): New target.
Ulrich Weigand [Thu, 31 Mar 2011 11:19:54 +0000 (11:19 +0000)]
* breakpoint.c (addr_string_to_sals): Avoid uninitialized
variable compiler warning.
Tristan Gingold [Thu, 31 Mar 2011 11:08:41 +0000 (11:08 +0000)]
bfd/
2011-03-31 Tristan Gingold <gingold@adacore.com>
* vms-alpha.c (vms_get_remaining_object_record): Fix dec-c warning.
(_bfd_vms_write_etir): Ditto.
(_bfd_vms_slurp_etir): Avoid to use intptr_t
* configure.com: Generate bfd_stdint.h
binutils/
2011-03-31 Tristan Gingold <gingold@adacore.com>
* makefile.vms (DEBUG_OBJS): Add elfcomm.obj.
libiberty/
2011-03-31 Tristan Gingold <gingold@adacore.com>
* makefile.vms (OBJS): Add filename_cmp.obj
Bernd Schmidt [Thu, 31 Mar 2011 08:58:28 +0000 (08:58 +0000)]
include/elf/
* tic6x.h (R_C6000_JUMP_SPLOT, R_C6000_EHTYPE,
R_C6000_PCR_H16, R_C6000_PCR_L16): New relocs.
(SHN_TIC6X_SCOMMON): Define.
bfd/
* elf32-tic6x.h (struct elf32_tic6x_params): New.
(elf32_tic6x_setup): Declare.
* elf32-tic6x.c: Include <limits.h>.
(ELF_DYNAMIC_LINKER, DEFAULT_STACK_SIZE, PLT_ENTRY_SIZE): Define.
(struct elf32_tic6x_link_hash_table, struct elf32_link_hash_entry):
New structures.
(elf32_tic6x_link_hash_table, is_tic6x_elf): New macros.
(tic6x_elf_scom_section, tic6x_elf_scom_symbol,
tic6x_elf_scom_symbol_ptr): New static variables.
(elf32_tic6x_howto_table, elf32_tic6x_howto_table_rel,
elf32_tic6x_reloc_map): Add R_C6000_JUMP_SLOT, R_C6000_EHTYPE,
R_C6000_PCR_H16 and R_C6000_PCR_L16.
(elf32_tic6x_link_hash_newfunc, elf32_tic6x_link_hash_table_create,
elf32_tic6x_link_hash_table_free, elf32_tic6x_setup,
elf32_tic6x_using_dsbt, elf32_tic6x_install_rela,
elf32_tic6x_create_dynamic_sections, elf32_tic6x_make_got_dynreloc,
elf32_tic6x_finish_dynamic_symbol, elf32_tic6x_gc_sweep_hook,
elf32_tic6x_adjust_dynamic_symbol): New static functions.
(elf32_tic6x_relocate_section): For R_C6000_PCR_S21, convert branches
to weak symbols as required by the ABI.
Handle GOT and DSBT_INDEX relocs, and copy relocs to the output file
as needed when generating DSBT output.
(elf32_tic6x_check_relocs, elf32_tic6x_add_symbol_hook,
elf32_tic6x_symbol_processing, elf32_tic6x_section_from_bfd_section,
elf32_tic6x_allocate_dynrelocs, elf32_tic6x_size_dynamic_sections,
elf32_tic6x_always_size_sections, elf32_tic6x_modify_program_headers,
elf32_tic6x_finish_dynamic_sections, elf32_tic6x_plt_sym_val,
elf32_tic6x_copy_private_data, elf32_tic6x_link_omit_section_dynsym):
New static functions.
(ELF_MAXPAGESIZE): Define to 0x1000.
(bfd_elf32_bfd_copy_private_bfd_data,
bfd_elf32_bfd_link_hash_table_create,
bfd_elf32_bfd_link_hash_table_free, elf_backend_can_refcount,
elf_backend_want_got_plt, elf_backend_want_dynbss,
elf_backend_plt_readonly, elf_backend_got_header_size,
elf_backend_gc_sweep_hook, elf_backend_modify_program_headers,
elf_backend_create_dynamic_sections, elf_backend_adjust_dynamic_symbol,
elf_backend_check_relocs, elf_backend_add_symbol_hook,
elf_backend_symbol_processing, elf_backend_link_output_symbol_hook,
elf_backend_section_from_bfd_section,
elf_backend_finish_dynamic_symbol, elf_backend_always_size_sections,
elf32_tic6x_size_dynamic_sections, elf_backend_finish_dynamic_sections,
elf_backend_omit_section_dynsym, elf_backend_plt_sym_val): Define.
* bfd/reloc.c (BFD_RELOC_C6000_JUMP_SLOT, BFD_RELOC_C6000_EHTYPE,
BFD_RELOC_C6000_PCR_H16, BFD_RELOC_C6000_PCR_S16): Add.
* bfd/bfd-in2.h: Regenerate.
* bfd/libbfd.h: Regenerate.
* config.bfd: Accept tic6x-*-* instead of tic6x-*-elf.
gas/
* config/tc-tic6x.c (sbss_section, scom_section, scom_symbol): New
static variables.
(md_begin): Initialize them.
(s_tic6x_scomm): New static function.
(md_pseudo_table): Add "scomm".
(tc_gen_reloc): Really undo all adjustments made by
bfd_install_relocation.
* doc/c-tic6x.texi: Document the .scomm directive.
gas/testsuite/
* gas/tic6x/scomm-directive-1.s: New test.
* gas/tic6x/scomm-directive-1.d: New test.
* gas/tic6x/scomm-directive-2.s: New test.
* gas/tic6x/scomm-directive-2.d: New test.
* gas/tic6x/scomm-directive-3.s: New test.
* gas/tic6x/scomm-directive-3.d: New test.
* gas/tic6x/scomm-directive-4.s: New test.
* gas/tic6x/scomm-directive-4.d: New test.
* gas/tic6x/scomm-directive-5.s: New test.
* gas/tic6x/scomm-directive-5.d: New test.
* gas/tic6x/scomm-directive-6.s: New test.
* gas/tic6x/scomm-directive-6.d: New test.
* gas/tic6x/scomm-directive-7.s: New test.
* gas/tic6x/scomm-directive-7.d: New test.
* gas/tic6x/scomm-directive-8.s: New test.
* gas/tic6x/scomm-directive-8.d: New test.
ld/
* emulparams/elf32_tic6x_le.sh (BIG_OUTPUT_FORMAT, EXTRA_EM_FILE,
GENERATE_SHLIB_SCRIPT): New defines.
(TEXT_START_ADDR): Define differently depending on target.
(.got): Redefine to include "*(.dsbt)".
(SDATA_START_SYMBOLS): Remove, replace with
(OTHER_GOT_SYMBOLS): New.
(OTHER_BSS_SECTIONS): Define only for ELF targets.
* emultempl/tic6xdsbt.em: New file.
* gen-doc.texi: Set C6X.
* ld.texinfo: Likewise.
(Options specific to C6X uClinux targets): New section.
binutils/
* readelf.c (get_symbol_index_type): Handle SCOM for TIC6X.
(dump_relocations): Likewise.
binutils/testsuite/
* lib/binutils-common.exp (is_elf_format): Accept tic6x*-*-uclinux*.
ld/testsuite/
* ld-scripts/crossref.exp: Add CFLAGS for tic6x*-*-*.
* ld-elf/sec-to-seg.exp: Remove tic6x from list of targets defining
pagesize to 1.
* ld-tic6x/tic6x.exp: Add support for DSBT shared library/executable
linking tests.
* ld-tic6x/dsbt.ld: New linker script.
* ld-tic6x/dsbt-be.ld: New linker script.
* ld-tic6x/dsbt-overflow.ld: New linker script.
* ld-tic6x/dsbt-inrange.ld: New linker script.
* ld-tic6x/shlib-1.s: New test.
* ld-tic6x/shlib-2.s: New test.
* ld-tic6x/shlib-app-1r.s: New test.
* ld-tic6x/shlib-app-1.s: New test.
* ld-tic6x/shlib-1.sd: New test.
* ld-tic6x/shlib-1.dd: New test.
* ld-tic6x/shlib-app-1.rd: New test.
* ld-tic6x/shlib-app-1rb.rd: New test.
* ld-tic6x/shlib-app-1.sd: New test.
* ld-tic6x/static-app-1rb.od: New test.
* ld-tic6x/shlib-app-1.dd: New test.
* ld-tic6x/shlib-app-1rb.sd: New test.
* ld-tic6x/static-app-1b.od: New test.
* ld-tic6x/static-app-1r.od: New test.
* ld-tic6x/shlib-1rb.rd: New test.
* ld-tic6x/shlib-app-1rb.dd: New test.
* ld-tic6x/shlib-1rb.sd: New test.
* ld-tic6x/shlib-1rb.dd: New test.
* ld-tic6x/shlib-app-1b.od: New test.
* ld-tic6x/tic6x.exp: New test.
* ld-tic6x/static-app-1rb.rd: New test.
* ld-tic6x/shlib-app-1r.od: New test.
* ld-tic6x/static-app-1.od: New test.
* ld-tic6x/static-app-1b.rd: New test.
* ld-tic6x/static-app-1r.rd: New test.
* ld-tic6x/static-app-1rb.sd: New test.
* ld-tic6x/static-app-1b.sd: New test.
* ld-tic6x/static-app-1rb.dd: New test.
* ld-tic6x/static-app-1r.sd: New test.
* ld-tic6x/static-app-1b.dd: New test.
* ld-tic6x/shlib-1b.rd: New test.
* ld-tic6x/static-app-1r.dd: New test.
* ld-tic6x/shlib-app-1b.rd: New test.
* ld-tic6x/shlib-1r.rd: New test.
* ld-tic6x/shlib-app-1r.rd: New test.
* ld-tic6x/shlib-1b.sd: New test.
* ld-tic6x/static-app-1.rd: New test.
* ld-tic6x/shlib-app-1b.sd: New test.
* ld-tic6x/shlib-1r.sd: New test.
* ld-tic6x/shlib-1b.dd: New test.
* ld-tic6x/shlib-app-1r.sd: New test.
* ld-tic6x/shlib-app-1b.dd: New test.
* ld-tic6x/shlib-1r.dd: New test.
* ld-tic6x/static-app-1.sd: New test.
* ld-tic6x/shlib-app-1r.dd: New test.
* ld-tic6x/static-app-1.dd: New test.
* ld-tic6x/shlib-noindex.rd: New test.
* ld-tic6x/shlib-noindex.dd: New test.
* ld-tic6x/shlib-noindex.sd: New test.
* ld-tic6x/got-reloc-local-1.s: New test.
* ld-tic6x/got-reloc-local-2.s: New test.
* ld-tic6x/got-reloc-local-r.d: New test.
* ld-tic6x/got-reloc-global.s: New test.
* ld-tic6x/got-reloc-global-addend-1.d: New test.
* ld-tic6x/got-reloc-global-addend-1.s: New test.
* ld-tic6x/got-reloc-global-addend-2.d: New test.
* ld-tic6x/got-reloc-inrange.d: New test.
* ld-tic6x/got-reloc-overflow.d: New test.
* ld-tic6x/got-reloc-global-addend-2.s: New test.
* ld-tic6x/dsbt-index-error.d: New test.
* ld-tic6x/dsbt-index.d: New test.
* ld-tic6x/dsbt-index.s: New test.
* ld-tic6x/shlib-app-1.od: New test.
* ld-tic6x/shlib-app-1rb.od: New test.
* ld-tic6x/shlib-1.rd: New test.
* ld-tic6x/weak.d: New test.
* ld-tic6x/weak-be.d: New test.
* ld-tic6x/weak.s: New test.
* ld-tic6x/weak-data.d: New test.
* ld-tic6x/common.d: New test.
* ld-tic6x/common.ld: New test.
* ld-tic6x/common.s: New test.
Tristan Gingold [Thu, 31 Mar 2011 08:13:48 +0000 (08:13 +0000)]
include/coff
2011-03-31 Tristan Gingold <gingold@adacore.com>
* internal.h (C_NULL_VALUE): Define.
bfd/
2011-03-31 Tristan Gingold <gingold@adacore.com>
* coffcode.h (coff_slurp_symbol_table): Silently discard C_NULL
entry on xcoff when value is C_NULL_VALUE.
Tristan Gingold [Thu, 31 Mar 2011 08:08:39 +0000 (08:08 +0000)]
2011-03-31 Tristan Gingold <gingold@adacore.com>
* libcoff-in.h (exec_hdr): Remove.
* libcoff.h: Regenerate.
Tristan Gingold [Thu, 31 Mar 2011 08:02:41 +0000 (08:02 +0000)]
2011-03-31 Tristan Gingold <gingold@adacore.com>
* dwarf2dbg.c (DWARF2_VERSION): Define.
(out_debug_line): Use it.
(out_debug_aranges): Ditto.
(out_debug_info): Ditto.
* config/tc-ia64.h (DWARF2_VERSION): Override it.
Tristan Gingold [Thu, 31 Mar 2011 07:49:45 +0000 (07:49 +0000)]
binutils/
2011-03-31 Tristan Gingold <gingold@adacore.com>
* readelf.c (get_ia64_vms_note_type): New function.
(print_ia64_vms_note): Ditto.
(process_note): Recognize VMS/ia64 specific notes.
Display them.
(process_corefile_note_segment): Decode VMS notes.
include/elf
2011-03-31 Tristan Gingold <gingold@adacore.com>
* ia64.h (Elf64_External_VMS_Note): New struct.
(NT_VMS_MHD, NT_VMS_LNM, NT_VMS_SRC, NT_VMS_TITLE, NT_VMS_EIDC,
NT_VMS_FPMODE, NT_VMS_LINKTIME, NT_VMS_IMGNAM, NT_VMS_IMGID
NT_VMS_LINKID, NT_VMS_IMGBID, NT_VMS_GSTNAM, NT_VMS_ORIG_DYN)
NT_VMS_PATCHTIME) New macros.
gdbadmin [Thu, 31 Mar 2011 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Wed, 30 Mar 2011 23:00:05 +0000 (23:00 +0000)]
daily update
Cary Coutant [Wed, 30 Mar 2011 21:07:13 +0000 (21:07 +0000)]
* archive.cc (Archive::include_member): Adjust call to report_object.
(Add_archive_symbols::run): Add script_info to call to
report_archive_begin.
(Lib_group::include_member): Adjust call to report_object.
(Add_lib_group_symbols::run): Adjust call to report_object.
* incremental-dump.cc (dump_incremental_inputs): Remove unnecessary
blocks. Add object count for script input files.
* incremental.cc (Incremental_inputs::report_archive_begin): Add
script_info parameter; change all callers.
(Incremental_inputs::report_object): Add script_info parameter;
change all callers.
(Incremental_inputs::report_script): Store backpointer to
incremental info entry.
(Output_section_incremental_inputs::set_final_data_size): Record
additional information for scripts.
(Output_section_incremental_inputs::write_info_blocks): Likewise.
* incremental.h (Incremental_script_entry::add_object): New function.
(Incremental_script_entry::get_object_count): New function.
(Incremental_script_entry::get_object): New function.
(Incremental_script_entry::objects_): New data member; adjust
constructor.
(Incremental_inputs::report_archive_begin): Add script_info parameter.
(Incremental_inputs::report_object): Add script_info parameter.
(Incremental_inputs_reader::get_object_count): New function.
(Incremental_inputs_reader::get_object_offset): New function.
* options.cc (Input_arguments::add_file): Return reference to
new input argument.
* options.h (Input_argument::set_script_info): New function.
(Input_argument::script_info): New function.
(Input_argument::script_info_): New data member; adjust all
constructors.
(Input_file_group::add_file): Return reference to new input argument.
(Input_file_lib::add_file): Likewise.
(Input_arguments::add_file): Likewise.
* readsyms.cc (Add_symbols::run): Adjust call to report_object.
* script.cc (Parser_closure::Parser_closure): Add script_info
parameter; adjust all callers.
(Parser_closure::script_info): New function.
(Parser_closure::script_info_): New data member.
(read_input_script): Report scripts earlier to incremental info.
(script_add_file): Set script_info in Input_argument.
(script_add_library): Likewise.
* script.h (Script_options::Script_info): Rewrite class.
Thiago Jung Bauermann [Wed, 30 Mar 2011 20:59:08 +0000 (20:59 +0000)]
* breakpoint.c (breakpoint_re_set_one): Factor out breakpoint-resetting
code from here ...
(re_set_breakpoint): ... to here ...
(addr_string_to_sals): ... and here.
Richard Henderson [Wed, 30 Mar 2011 17:41:36 +0000 (17:41 +0000)]
* ld-elf/elf.exp: Force 32-bit start address for alpha.
* ld-elf/group8a.d: Don't disable for alpha.
* ld-elf/group8b.d: Likewise.
* ld-gc/start.s: Use .dc.a instead of .long.
Catherine Moore [Wed, 30 Mar 2011 16:09:40 +0000 (16:09 +0000)]
2011-03-30 Catherine Moore <clm@codesourcery.com>
* addr2line.c (translate_addresses): Sign extend the pc
if sign_extend_vma is enabled.
Nick Clifton [Wed, 30 Mar 2011 15:37:48 +0000 (15:37 +0000)]
* readelf.c (process_gnu_liblist): Stop memory leak.
Nick Clifton [Wed, 30 Mar 2011 15:23:22 +0000 (15:23 +0000)]
* po/eo.po: New Esperanto translation.
* configure.in (ALL_LINGUAS): Add eo.
* configure: Regenerate.
* po/da.po: Updated Danish translation.
Nick Clifton [Wed, 30 Mar 2011 15:10:37 +0000 (15:10 +0000)]
* macro.c (get_any_string): Free malloced br_buf.
(do_formals): Free 'formal'.
Nick Clifton [Wed, 30 Mar 2011 15:06:51 +0000 (15:06 +0000)]
* obj-elf.c (obj_elf_section): Free malloced name.
Tristan Gingold [Wed, 30 Mar 2011 12:43:35 +0000 (12:43 +0000)]
2011-03-30 Tristan Gingold <gingold@adacore.com>
* config/tc-ppc.c (ppc_frob_symbol): Convert stsym symbols value
to offset only if within is set.
(ppc_stabx): Reformat. For stsym stabs, add a check and set
within only for symbols.
Pierre Muller [Wed, 30 Mar 2011 06:55:39 +0000 (06:55 +0000)]
* Makefile.in (SFILES): Add missing C sources.
(HFILES_NO_SRCDIR): Remove gdbserver subdirectory headers.
Add missing headers.
Cary Coutant [Wed, 30 Mar 2011 01:31:57 +0000 (01:31 +0000)]
* archive.cc (Library_base::should_include_member): Move
method here from class Archive.
(Archive::Archive): Initialize base class.
(Archive::should_include_member): Move to base class.
(Archive::do_for_all_unused_symbols): New function.
(Add_archive_symbols::run): Remove redundant access to
incremental_inputs.
(Lib_group::Lib_group): Initialize base class.
(Lib_group::do_filename): New function.
(Lib_group::include_member): Pass pointer to Lib_group to
report_object.
(Lib_group::do_for_all_unused_symbols): New function.
(Add_lib_group_symbols::run): Report archive information for
incremental links.
* archive.h (class Library_base): New base class.
(class Archive): Derive from Library_base.
(Archive::filename): Move to base class.
(Archive::set_incremental_info): Likewise.
(Archive::incremental_info): Likewise.
(Archive::Should_include): Likewise.
(Archive::should_include_member): Likewise.
(Archive::Armap_entry): Remove.
(Archive::Unused_symbol_iterator): Remove.
(Archive::unused_symbols_begin): Remove.
(Archive::unused_symbols_end): Remove.
(Archive::do_filename): New function.
(Archive::do_get_mtime): New function.
(Archive::do_for_all_unused_symbols): New function.
(Archive::task_): Move to base class.
(Archive::incremental_info_): Likewise.
(class Lib_group): Derive from Library_base.
(Lib_group::do_filename): New function.
(Lib_group::do_get_mtime): New function.
(Lib_group::do_for_all_unused_symbols): New function.
(Lib_group::task_): Move to base class.
* dynobj.cc (Sized_dynobj::do_for_all_global_symbols): New
function.
* dynobj.h (Sized_dynobj::do_for_all_global_symbols): New
function.
* incremental.cc (Incremental_inputs::report_archive_begin):
Use Library_base; call library's get_mtime; add incremental inputs
entry before members.
(class Unused_symbol_visitor): New class.
(Incremental_inputs::report_archive_end): Use Library_base; use
visitor class to record unused symbols; don't add incremental inputs
entry after members.
(Incremental_inputs::report_object): Use Library_base.
* incremental.h
(Incremental_archive_entry::Incremental_archive_entry): Remove
unused Archive parameter.
(Incremental_inputs::report_archive_begin): Use Library_base.
(Incremental_inputs::report_archive_end): Likewise.
(Incremental_inputs::report_object): Likewise.
* object.cc (Sized_relobj::do_for_all_global_symbols): New
function.
* object.h (Object::for_all_global_symbols): New function.
(Object::do_for_all_global_symbols): New function.
(Sized_relobj::do_for_all_global_symbols): New function.
* plugin.cc (Sized_pluginobj::do_for_all_global_symbols): New
function.
* plugin.h (Sized_pluginobj::do_for_all_global_symbols): New
function.
gdbadmin [Wed, 30 Mar 2011 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Tue, 29 Mar 2011 23:00:16 +0000 (23:00 +0000)]
daily update
Richard Henderson [Tue, 29 Mar 2011 21:18:16 +0000 (21:18 +0000)]
* elf64-alpha.c (elf64_alpha_gc_mark_hook): New.
(elf64_alpha_gc_sweep_hook): New.
(elf_backend_gc_mark_hook, elf_backend_gc_sweep_hook): New.
(elf_backend_can_gc_sections): New.
Mike Frysinger [Tue, 29 Mar 2011 18:39:51 +0000 (18:39 +0000)]
sim: bfin: regen configure to include new cfi device
Mike Frysinger [Tue, 29 Mar 2011 18:21:32 +0000 (18:21 +0000)]
gdb: start a gitignore
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Richard Henderson [Tue, 29 Mar 2011 18:16:16 +0000 (18:16 +0000)]
PR 12610
* config/tc-alpha.c (s_alpha_align): Don't auto-align a previous
label; zap alpha_insn_label.
Mike Frysinger [Tue, 29 Mar 2011 17:57:21 +0000 (17:57 +0000)]
sim: cfi: new flash device simulation
This simulates a CFI flash. Its pretty configurable via the device
tree. For now, only basic read/write/erase operations are supported
for the Intel command set, but it's easy enough to extend support.
It's certainly enough to trick Das U-Boot into using it for probing,
reading, writing, and erasing.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Tom Tromey [Tue, 29 Mar 2011 17:04:31 +0000 (17:04 +0000)]
gdb
* dwarf2read.c (fixup_partial_die): Handle linkage name on
otherwise anonymous types.
(dwarf2_name): Likewise.
* valops.c (value_struct_elt_for_reference): Refine artificial
type logic. Call error if j==-1.
gdb/testsuite
* gdb.cp/anon-struct.cc: New file.
* gdb.cp/anon-struct.exp: New file.
Jan Kratochvil [Tue, 29 Mar 2011 16:21:24 +0000 (16:21 +0000)]
gdb/
Fix false GCC warning.
* infcall.c (find_function_addr): Initialize funaddr.
Pierre Muller [Tue, 29 Mar 2011 15:49:51 +0000 (15:49 +0000)]
Fix mingw compilation with --enable-targets=all.
* remote-mips.c (gdb_usleep.h): Include header.
(mips_enter_debug): Use gdb_usleep instead of sleep.
H.J. Lu [Tue, 29 Mar 2011 12:40:51 +0000 (12:40 +0000)]
Properly handle multiple operands for x32 quad.
gas/
2011-03-29 H.J. Lu <hongjiu.lu@intel.com>
* config/tc-i386.c (handle_quad): Properly handle multiple
operands.
gas/testsuite/
2011-03-29 H.J. Lu <hongjiu.lu@intel.com>
* gas/i386/ilp32/quad.d: Add tests for multiple operands.
* gas/i386/ilp32/quad.s: Likewise.
Mike Frysinger [Tue, 29 Mar 2011 05:54:41 +0000 (05:54 +0000)]
gas: blackfin: gas: blackfin: reject invalid BYTEUNPACK insns
The destination registers must be different with BYTEUNPACK insns,
otherwise the hardware throws up an exception. So reject them.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Tue, 29 Mar 2011 05:51:22 +0000 (05:51 +0000)]
gas: blackfin: gas: blackfin: reject invalid BYTEOP16M insns
The destination registers must be different with BYTEOP16M insns,
otherwise the hardware throws up an exception. So reject them.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Tue, 29 Mar 2011 05:44:56 +0000 (05:44 +0000)]
gas: blackfin: gas: blackfin: reject invalid BYTEOP16P insns
The destination registers must be different with BYTEOP16P insns,
otherwise the hardware throws up an exception. So reject them.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Alan Modra [Tue, 29 Mar 2011 02:52:36 +0000 (02:52 +0000)]
PR ld/12613
* ldlex.l (lex_warn_invalid): Don't assume char is unsigned.
Alan Modra [Tue, 29 Mar 2011 02:06:53 +0000 (02:06 +0000)]
* coffdump.c: Include bfd_stdint.h
Mike Frysinger [Tue, 29 Mar 2011 01:59:37 +0000 (01:59 +0000)]
libdecnumber: start a gitignore
Mike Frysinger [Tue, 29 Mar 2011 01:41:49 +0000 (01:41 +0000)]
sim: bfin: fix sign extension with 16bit acc add insns
The current implementation attempts to handle the 16bit sign extension
itself. Unfortunately, it gets it right in some cases. So rather than
fix that logic, just drop it in favor of using 16bit signed casts. Now
gcc will take care of getting the logic right.
Signed-off-by: Robin Getz <robin.getz@analog.com>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Tue, 29 Mar 2011 01:25:13 +0000 (01:25 +0000)]
gas: blackfin: reject invalid 16bit acc add insns
The 16bit acc add insn cannot assign the two results to the same dreg,
so make sure gas rejects attempts to use this insn variant.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
gdbadmin [Tue, 29 Mar 2011 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Mon, 28 Mar 2011 23:00:07 +0000 (23:00 +0000)]
daily update
H.J. Lu [Mon, 28 Mar 2011 22:47:59 +0000 (22:47 +0000)]
Support .quad for x32.
gas/
2011-03-28 H.J. Lu <hongjiu.lu@intel.com>
* config/tc-i386.c (handle_quad): New.
(md_pseudo_table): Add "quad".
gas/testsuite/
2011-03-28 H.J. Lu <hongjiu.lu@intel.com>
* gas/i386/ilp32/inval.s: Remove .quad.
* gas/i386/ilp32/inval.l: Updated.
* gas/i386/ilp32/quad.d: New.
* gas/i386/ilp32/quad.s: Likewise.
Jan Kratochvil [Mon, 28 Mar 2011 20:31:54 +0000 (20:31 +0000)]
gdb/testsuite/
Test STT_GNU_IFUNC support.
* gdb.base/gnu-ifunc-lib.c: New file.
* gdb.base/gnu-ifunc.c: New file.
* gdb.base/gnu-ifunc.exp: New file.
Jan Kratochvil [Mon, 28 Mar 2011 20:29:51 +0000 (20:29 +0000)]
gdb/
Support resolution of STT_GNU_IFUNC via breakpoints.
* breakpoint.c (print_it_typical): Support bp_gnu_ifunc_resolver and
bp_gnu_ifunc_resolver_return.
(bpstat_what): Rename parameter to bs_head, new variable bs, adjust
the loop. Support bp_gnu_ifunc_resolver and
bp_gnu_ifunc_resolver_return. New comment after the loop. New loop
for bp_gnu_ifunc_resolver and bp_gnu_ifunc_resolver_return
breakpoints.
(bptype_string, print_one_breakpoint_location): Support
bp_gnu_ifunc_resolver and bp_gnu_ifunc_resolver_return.
(user_settable_breakpoint): Return true also for
bp_gnu_ifunc_resolver.
(allocate_bp_location): Support bp_gnu_ifunc_resolver and
bp_gnu_ifunc_resolver_return.
(set_breakpoint_location_function): New parameter explicit_loc,
describe it. Call find_pc_partial_function_gnu_ifunc with new
variable IS_GNU_IFUNC and adjust the address for STT_GNU_IFUNC if
EXPLICIT_LOC is not set.
(set_raw_breakpoint): Set EXPLICIT_LOC for
set_breakpoint_location_function.
(clone_momentary_breakpoint): Use true for EXPLICIT_LOC of
set_breakpoint_location_function.
(mention): Support bp_gnu_ifunc_resolver and
bp_gnu_ifunc_resolver_return.
(add_location_to_breakpoint): Set EXPLICIT_LOC for
set_breakpoint_location_function.
(update_breakpoint_locations): Remove static.
(breakpoint_re_set_one): Support bp_gnu_ifunc_resolver and
bp_gnu_ifunc_resolver_return.
* breakpoint.h (enum bptype): New fields bp_gnu_ifunc_resolver and
bp_gnu_ifunc_resolver_return.
(update_breakpoint_locations): New declaration.
* elfread.c: Include gdbthread.h and regcache.h.
(elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop): New
functions.
(elf_gnu_ifunc_fns): Install them.
* minsyms.c (stub_gnu_ifunc_resolver_stop)
(stub_gnu_ifunc_resolver_return_stop): New functions.
(stub_gnu_ifunc_fns): Install them.
* symtab.h (struct gnu_ifunc_fns): New fields gnu_ifunc_resolver_stop
and gnu_ifunc_resolver_return_stop.
(gnu_ifunc_resolver_stop, gnu_ifunc_resolver_return_stop): New.
Jan Kratochvil [Mon, 28 Mar 2011 20:26:24 +0000 (20:26 +0000)]
gdb/
STT_GNU_IFUNC reader implementation.
* elfread.c: Include gdbtypes.h, value.h and infcall.h.
(SYMBOL_GOT_PLT_SUFFIX, elf_rel_plt_read)
(elf_objfile_gnu_ifunc_cache_data, struct elf_gnu_ifunc_cache)
(elf_gnu_ifunc_cache_hash, elf_gnu_ifunc_cache_eq)
(elf_gnu_ifunc_record_cache, elf_gnu_ifunc_resolve_by_cache)
(elf_gnu_ifunc_resolve_by_got, elf_gnu_ifunc_resolve_name)
(elf_gnu_ifunc_resolve_addr): New.
(elf_symfile_read): Call elf_rel_plt_read.
(elf_gnu_ifunc_fns): New.
(_initialize_elfread): Initialize elf_objfile_gnu_ifunc_cache_data.
Install elf_gnu_ifunc_fns.
* infcall.c (find_function_return_type): New function.
(find_function_addr): Resolve TYPE_GNU_IFUNC functions, if possible.
* minsyms.c (stub_gnu_ifunc_resolve_addr)
(stub_gnu_ifunc_resolve_name): New functions.
(stub_gnu_ifunc_fns, gnu_ifunc_fns_p): New variables.
* symtab.h (struct gnu_ifunc_fns, gnu_ifunc_resolve_addr)
(gnu_ifunc_resolve_name, gnu_ifunc_fns_p): New.
Jan Kratochvil [Mon, 28 Mar 2011 20:24:05 +0000 (20:24 +0000)]
gdb/
Code cleanup for later STT_GNU_IFUNC support.
* infcall.c (find_function_addr): Remove variable code, use explicit
dereferences for it. Move VALUE_TYPE initialization later.
Jan Kratochvil [Mon, 28 Mar 2011 20:22:52 +0000 (20:22 +0000)]
gdb/
GDB find_pc_partial_function support for STT_GNU_IFUNC.
* blockframe.c (cache_pc_function_is_gnu_ifunc): New variable.
(clear_pc_function_cache): Clear it.
(find_pc_partial_function): Rename to ...
(find_pc_partial_function_gnu_ifunc): ... this function. New
parameter is_gnu_ifunc_p, describe it. Set *IS_GNU_IFUNC_P.
(find_pc_partial_function): New wrapper for this function.
* symtab.h (find_pc_partial_function_gnu_ifunc): New declaration.
Jan Kratochvil [Mon, 28 Mar 2011 20:21:04 +0000 (20:21 +0000)]
gdb/
GDB internal type support for STT_GNU_IFUNC.
* elfread.c (record_minimal_symbol): Support mst_text_gnu_ifunc.
(elf_symtab_read): Set mst_text_gnu_ifunc for
BSF_GNU_INDIRECT_FUNCTION.
* eval.c (evaluate_subexp_standard): Support TYPE_GNU_IFUNC.
* gdbtypes.c (init_type): Support TYPE_FLAG_GNU_IFUNC,
builtin_func_func, nodebug_text_gnu_ifunc_symbol and
nodebug_got_plt_symbol.
* gdbtypes.h (enum type_flag_value): New entry TYPE_FLAG_GNU_IFUNC.
(TYPE_GNU_IFUNC): New.
(struct main_type): New field flag_gnu_ifunc.
(struct builtin_type): New field builtin_func_func.
(struct objfile_type): New fields nodebug_text_gnu_ifunc_symbol and
nodebug_got_plt_symbol.
* minsyms.c (lookup_minimal_symbol_text): Support mst_text_gnu_ifunc.
(in_gnu_ifunc_stub): New.
(prim_record_minimal_symbol, find_solib_trampoline_target): Support
mst_text_gnu_ifunc.
* parse.c (write_exp_msymbol): New variable ifunc_msym. Detect and
support mst_text_gnu_ifunc. Support mst_slot_got_plt.
* solib-svr4.c (svr4_in_dynsym_resolve_code): Return true also for
in_gnu_ifunc_stub.
* symmisc.c (dump_msymbols): Support mst_text_gnu_ifunc.
* symtab.c (search_symbols): Likewise.
* symtab.h (enum minimal_symbol_type): New fields mst_text_gnu_ifunc
and mst_slot_got_plt.
(in_gnu_ifunc_stub): New declaration.
Jan Kratochvil [Mon, 28 Mar 2011 20:19:02 +0000 (20:19 +0000)]
gdb/
Support a ring of related breakpoints.
* breakpoint.c (watchpoint_del_at_next_stop): New, move here code from
other functions, add gdb_assert.
(update_watchpoint, watchpoint_check): Add gdb_assert. Use
watchpoint_del_at_next_stop.
(bpstat_check_watchpoint): Use watchpoint_del_at_next_stop.
(bpstat_stop_status): Handle ring in related_breakpoint.
(set_raw_breakpoint_without_location): Initialize ring in
related_breakpoint.
(delete_breakpoint): Handle ring in related_breakpoint, use
watchpoint_del_at_next_stop.
(map_breakpoint_numbers): Handle ring in related_breakpoint.
gdb/testsuite/
Support a ring of related breakpoints.
* gdb.base/watchpoint-delete.c: New file.
* gdb.base/watchpoint-delete.exp: New file.
Jan Kratochvil [Mon, 28 Mar 2011 20:07:12 +0000 (20:07 +0000)]
gdb/testsuite/
* gdb.ada/arrayparam.exp (print first after function call): Use
explicit package name. Add a comment
(print lasta after function call): Rename ...
(print last after function call): ... it and use explicit package
name.
(print length after function call): Use explicit package name.
* gdb.ada/str_ref_cmp.exp (operator = works for strings): New test.
* gdb.ada/sym_print_name.exp: Change `i' to `integervar'.
(multiple matches for symbol i): Rename ...
(multiple matches for symbol integervar): ... it.
* gdb.ada/sym_print_name/foo.adb (Foo): Change `I' to `IntegerVar'.
* gdb.ada/sym_print_name/pck.ads (Pck): Likewise.
Tom Tromey [Mon, 28 Mar 2011 19:53:14 +0000 (19:53 +0000)]
PR symtab/12441:
* dwarf2read.c (prepare_one_comp_unit): Don't call set_cu_language
with `language_minimal'.
Tom Tromey [Mon, 28 Mar 2011 18:05:39 +0000 (18:05 +0000)]
* gdb.texinfo (Set Tracepoints): Fix typo.
Pierre Muller [Mon, 28 Mar 2011 15:24:02 +0000 (15:24 +0000)]
* coffdump.c (coff_dump): Correct spelling error.
(show_usage): Replace SYSROFF by COFF.