deliverable/binutils-gdb.git
12 years agoAdd comma after "If True" to previous checkin.
Doug Evans [Sun, 16 Oct 2011 19:54:33 +0000 (19:54 +0000)] 
Add comma after "If True" to previous checkin.

12 years ago * NEWS: Document python gdb.printing.register_pretty_printer's new
Doug Evans [Sun, 16 Oct 2011 19:40:37 +0000 (19:40 +0000)] 
* NEWS: Document python gdb.printing.register_pretty_printer's new
`replace' parameter.

12 years agoSet target from the the first object only if it isn't set.
H.J. Lu [Sun, 16 Oct 2011 19:36:10 +0000 (19:36 +0000)] 
Set target from the the first object only if it isn't set.

2011-10-16  H.J. Lu  <hongjiu.lu@intel.com>

PR binutils/13278
* ar.c (open_inarch): Set the target from the the first object
on the list only if it isn't set.

12 years agogdb/testsuite/
Jan Kratochvil [Sun, 16 Oct 2011 08:42:04 +0000 (08:42 +0000)] 
gdb/testsuite/
Fix results with system glibc debug info installed.
* gdb.base/disp-step-syscall.exp (continue to $syscall (1st time))
(continue to $syscall (2nd time), continue to $syscall (3rd time)):
Accept also __libc_ symbol prefix and no prefix.

12 years ago*** empty log message ***
gdbadmin [Sun, 16 Oct 2011 00:00:33 +0000 (00:00 +0000)] 
*** empty log message ***

12 years agodaily update
Alan Modra [Sat, 15 Oct 2011 23:00:05 +0000 (23:00 +0000)] 
daily update

12 years ago * emultempl/ppc64elf.em (gld${EMULATION_NAME}_finish): Remove toc check.
Alan Modra [Sat, 15 Oct 2011 09:22:42 +0000 (09:22 +0000)] 
* emultempl/ppc64elf.em (gld${EMULATION_NAME}_finish): Remove toc check.

12 years ago*** empty log message ***
gdbadmin [Sat, 15 Oct 2011 00:00:03 +0000 (00:00 +0000)] 
*** empty log message ***

12 years agodaily update
Alan Modra [Fri, 14 Oct 2011 23:00:05 +0000 (23:00 +0000)] 
daily update

12 years ago PR c++/13225
Keith Seitz [Fri, 14 Oct 2011 20:22:50 +0000 (20:22 +0000)] 
PR c++/13225
* gdb.cp/converts.cc (foo3_1): New function.
(foo3_2): New functions.
* gdb.cp/converts.exp: Add tests for int to pointer conversion
and null pointer conversions of integer constant zero.
Add test to check if all arguments are checked for incompatible
conversion BADNESS.

12 years ago PR c++/13225
Keith Seitz [Fri, 14 Oct 2011 20:22:17 +0000 (20:22 +0000)] 
PR c++/13225
* eval.c (evaluate_subexp_standard): Do not construct
an array of types; pass the value array directly to
find_overload_match.
* gdbtypes.h (NULL_POINTER_CONVERSION_BADNESS): Declare.
(rank_function): Take an array of values instead of types.
(rank_one_type): Add struct value * parameter.
* gdbtypes.c (NULL_POINTER_CONVERSION_BADNESS): Define.
(rank_function): For each argument, pass the argument's
value to rank_one_type.
(rank_one_type): Add VALUE parameter.
If the parameter type is a pointer and the argument type
is an integer, return NULL_POINTER_CONVERSION_BADNESS if
VALUE is zero.
Update all calls to rank_one_type, passing NULL for new
VALUE parameter.
* valarith.c (value_user_defined_cpp_op): Do not construct
an array of types; pass the value array directly to
find_overload_match.
* valops.c (find_overload_method_list): Take an array of
values instead of types.
Save the type of OBJP for later use.
Update calls to find_oload_champ, and find_oload_champ_namespace.
(find_oload_champ_namespace): Take an array of values instead
of types.
(find_oload_champ_namespace_loop): Likewise.
(find_oload_champ): Likewise.
(classify_oload_match): Inspect all arguments
until INCOMPATIBLE is found. Return the worst badness found
otherwise.
(compare_parameters): Update call to rank_one_type.
* value.h (find_overload_match): Take an array of values instead
of types.

12 years ago2011-10-14 Alexey Makhalov <makhaloff@gmail.com>
Tom Tromey [Fri, 14 Oct 2011 19:31:46 +0000 (19:31 +0000)] 
2011-10-14  Alexey Makhalov  <makhaloff@gmail.com>

* sim-alu.h (ALU32_AND): Clear carry flag.
(ALU32_AND): Clear carry flag.

12 years ago * gdb.threads/attachstop-mt.exp: Add $srcfile to the linespecs.
Tom Tromey [Fri, 14 Oct 2011 16:05:05 +0000 (16:05 +0000)] 
* gdb.threads/attachstop-mt.exp: Add $srcfile to the linespecs.
* gdb.threads/attach-stopped.exp (corefunc): Add $srcfile to the
linespec.

12 years agogdb/
Jan Kratochvil [Fri, 14 Oct 2011 07:58:58 +0000 (07:58 +0000)] 
gdb/
Drop lazy lm_info reading.
* solib-svr4.c (struct lm_info): Remove field lm.  New fields l_addr_p,
l_addr_inferior, l_ld, l_next, l_prev and l_name.
(lm_info_read): New function.
(lm_addr_from_link_map, lm_dynamic_from_link_map): Remove.
(lm_addr_check): Use l_addr_p.  No longer use lm_addr_from_link_map and
lm_dynamic_from_link_map.
(lm_next, lm_prev, lm_name): Remove.
(svr4_keep_data_in_core): Use lm_info_read, drop the lm_info entries
initialization incl. read_memory.  No longer use lm_name.
(svr4_free_so): Drop lm_info->lm freeing.
(svr4_default_sos): Initialize lminfo with zeroes.  Use l_addr_p.  Drop
explicit lm_addr and lm initialization.
(svr4_read_so_list): Use lm_info_read, drop the initailization of
fields by hand, incl. read_memory.  No longer use lm_next, lm_prev and
lm_name.

12 years agogdb/
Jan Kratochvil [Fri, 14 Oct 2011 07:55:26 +0000 (07:55 +0000)] 
gdb/
* defs.h (struct so_list): New forward declaration.
(make_cleanup_free_so): New declaration.
* solib-svr4.c (ignore_first_link_map_entry): Remove.
(svr4_free_so): Move the function here from downwards.  Handle NULL
so->lm_info.
(svr4_free_library_list): New.
(svr4_read_so_list): New, moved here code from svr4_current_sos.
Use more cleanups.  Use new parameter ignore_first instead of
ignore_first_link_map_entry.
(svr4_current_sos): New variable ignore_first, initialize it.  New
variable back_to, use it for svr4_free_library_list protection.
(svr4_free_so): Remove - move upwards.
* utils.c: Include solist.h.
(do_free_so, make_cleanup_free_so): New functions.

12 years ago * elf32-cris.c (cris_elf_gc_sweep_hook) <R_CRIS_16_GOTPLT>
Hans-Peter Nilsson [Fri, 14 Oct 2011 06:52:46 +0000 (06:52 +0000)] 
* elf32-cris.c (cris_elf_gc_sweep_hook) <R_CRIS_16_GOTPLT>
<R_CRIS_32_GOTPLT>: Fix missing update of gotplt refcount for
global symbols.
<R_CRIS_8, R_CRIS_16, R_CRIS_32>: New cases for similar missing
updates of the plt refcount.
(elf_cris_adjust_gotplt_to_got): Assert integrity of the gotplt
refcount in relation to the plt refcount.

12 years ago * ld-cris/pic-gc-72.d: Adjust for dropping unused undefined
Hans-Peter Nilsson [Fri, 14 Oct 2011 06:51:48 +0000 (06:51 +0000)] 
* ld-cris/pic-gc-72.d: Adjust for dropping unused undefined
dynamic symbol "dsofn".

12 years ago*** empty log message ***
gdbadmin [Fri, 14 Oct 2011 00:00:03 +0000 (00:00 +0000)] 
*** empty log message ***

12 years agodaily update
Alan Modra [Thu, 13 Oct 2011 23:00:09 +0000 (23:00 +0000)] 
daily update

12 years agogdb/
Jan Kratochvil [Thu, 13 Oct 2011 16:26:28 +0000 (16:26 +0000)] 
gdb/
Fix internal error regression.
* value.c (value_primitive_field): Handle value_optimized_out.  Move
packed bitfields comment.

gdb/testsuite/
Fix internal error regression.
* gdb.dwarf2/implptr-optimized-out.S: New file.
* gdb.dwarf2/implptr-optimized-out.exp: New file.

12 years ago2011-10-13 Nick Clifton <nickc@redhat.com>
Nick Clifton [Thu, 13 Oct 2011 15:33:34 +0000 (15:33 +0000)] 
2011-10-13  Nick Clifton  <nickc@redhat.com>

Fixes to aid translation:
* addr2line.c (translate_address): Add comments describing context
of a couple of printf statements.
* ar.c (write_archive): Allow translation of error message.
* bucomm.c (endian_string): Allow translation of strings.
(display_target_list): Allow translation.
* coffdump.c (dump_coff_type): Allow translation of output.
(dump_coff_where): Likewise.
(dump_coff_symbol): Likewise.
(dump_coff_scope): Likewise.
(dump_coff_sfile): Likewise.
(dump_coff_section): Likewise.
(coff_dump): Likewise.
* dlltool (def_version): Allow translation of output.
(run): Likewise.
* dllwrap.c (run): Allow translation of output.
* dwarf.c (print_dwarf_vma): Allow translation of output.
(process_extended_line_op): Remove spurious translation.
Add translation for strings that can be translated.
(decode_location_exression): Allow translation of output.
(read_and_display_attr_value): Allow translation of output.
* readelf.c (slurp_rela_relocs): Add translation for error
messages when failing to get data.
(slurp_rel_relocs): Likewise.
(get_32bit_elf_symbols): Likewise.
(get_64bit_elf_symbols): Likewise.
(dump_ia64_vms_dynamic_relocs): Replace abbreviation with full
word.
(process_relocs): Remove spurious translation.
(decode_tic6x_unwind_bytecode): Likewise.
(process_version_section): Improve error messages.
(process_mips_specific): Likewise.
(print_gnu_note): Remove spurious translation.
(print_stapsdt_note): Likewise.
(get_ia64_vms_note_type): Likewise.
* sysdump.c (getCHARS): Allow translation.
(fillup): Allow translation of output.
(getone): Likewise.
(must): Likewise.
(derived_type): Likewise.
* doc/binutils.doc (addr2line): Extend description of command line
options.
* po/binutils.pot: Regenerate.

12 years ago * python/py-breakpoint.c (gdbpy_breakpoint_deleted): Ensure GIL is
Tom Tromey [Thu, 13 Oct 2011 14:54:14 +0000 (14:54 +0000)] 
* python/py-breakpoint.c (gdbpy_breakpoint_deleted): Ensure GIL is
always released.

12 years agoPR python/13285 Document named constants for frame unwind stop reasons
Kevin Pouget [Thu, 13 Oct 2011 14:50:08 +0000 (14:50 +0000)] 
PR python/13285 Document named constants for frame unwind stop reasons

* gdb.texinfo (Frames In Python): Document gdb.FRAME_UNWIND_*
constants.

12 years ago * python/py-type.c (typy_has_key): Make 'field' const.
Tom Tromey [Thu, 13 Oct 2011 13:55:30 +0000 (13:55 +0000)] 
* python/py-type.c (typy_has_key): Make 'field' const.

12 years ago2011-10-13 Luis Machado <lgustavo@codesourcery.com>
Luis Machado [Thu, 13 Oct 2011 13:15:16 +0000 (13:15 +0000)] 
2011-10-13  Luis Machado  <lgustavo@codesourcery.com>

* remote.c (remote_save_trace_data): Invert comparison.

12 years ago2011-10-13 Luis Machado <lgustavo@codesourcery.com>
Luis Machado [Thu, 13 Oct 2011 13:06:18 +0000 (13:06 +0000)] 
2011-10-13  Luis Machado  <lgustavo@codesourcery.com>

* tracepoint.c (trace_save_command): Use filename instead of
args when printing.

12 years ago * elf32-arm.c (elf32_arm_final_link_relocate): Mark PLT calls via
Nick Clifton [Thu, 13 Oct 2011 09:47:51 +0000 (09:47 +0000)] 
* elf32-arm.c (elf32_arm_final_link_relocate): Mark PLT calls via
stubs as resolved.

12 years agogdb/
Jan Kratochvil [Thu, 13 Oct 2011 09:36:47 +0000 (09:36 +0000)] 
gdb/
* dwarf2read.c (dwarf2_fetch_die_location_block): Initialize .data even
if .size is 0.

12 years ago PR binutils/13219
Nick Clifton [Thu, 13 Oct 2011 09:33:02 +0000 (09:33 +0000)] 
PR binutils/13219
* readelf.c (GET_ELF_SYMBOLS): Add sym_count parameter.
(get_32bit_elf_symbols): Add num_syms_return argument.
Return the number of symbols loaded into the symbol table.
(get_64bit_elf_symbols): Likewise.
(process_section_headers): Use GET_ELF_SYMBOLS to initialise
symbol count.
(proces_relocs): Likewise.
(ia64_process_unwind): Likewise.
(hppa_process_unwind): Likewise.
(arm_process_unwind): Likewise.
(process_dynamic_section): Likewise.
(process_version_sections): Likewise.
(process_symbol_table): Likewise.
(process_section_groups): Likewise.
Add check before indexing into the symbol table.
(apply_relocations): Likewise.

12 years ago PR gdb/12703
Yao Qi [Thu, 13 Oct 2011 08:16:49 +0000 (08:16 +0000)] 
PR gdb/12703
* arm-tdep.c (thumb_analyze_prologue): Call thumb_insn_size to check
whether insn is a 32-bit Thumb-2 instruction.
(thumb_in_function_epilogue_p): Likewise.
(thumb_get_next_pc_raw): Likewise.
(arm_breakpoint_from_pc): Likewise.

12 years ago * config/tc-arm.c (check_ldr_r15_aligned): New.
Nick Clifton [Thu, 13 Oct 2011 08:15:17 +0000 (08:15 +0000)] 
* config/tc-arm.c (check_ldr_r15_aligned): New.
(do_ldst): Warn in upredictable cases.
(do_t_ldst): Likewise.
(insns): Update accordingly.

* gas/arm/ldr-bad.s: New testcase.
* gas/arm/ldr-bad.l: Likewise.
* gas/arm/ldr-bad.d: Likewise.
* gas/arm/ldr.s: Likewise.
* gas/arm/ldr.d: Likewise.
* gas/arm/ldr-t-bad.s: Likewise.
* gas/arm/ldr-t-bad.l: Likewise.
* gas/arm/ldr-t-bad.d: Likewise.
* gas/arm/ldr-t.s: Likewise.
* gas/arm/ldr-t.d: Likewise.
* gas/arm/sp-pc-usage-t.s: Correct.
* gas/arm/sp-pc-usage-t.d: Update accordingly.

12 years ago * gold/output.cc (Output_file::open_base_file): Handle case where
Cary Coutant [Thu, 13 Oct 2011 05:06:45 +0000 (05:06 +0000)] 
* gold/output.cc (Output_file::open_base_file): Handle case where
::read returns less than requested size.

12 years ago * pe-dll.c (generate_reloc): Don't emit a base reloc for an
Dave Korn [Thu, 13 Oct 2011 02:34:36 +0000 (02:34 +0000)] 
* pe-dll.c (generate_reloc): Don't emit a base reloc for an
underlying BFD reloc that will be discarded in eh_frame data.

12 years ago*** empty log message ***
gdbadmin [Thu, 13 Oct 2011 00:00:33 +0000 (00:00 +0000)] 
*** empty log message ***

12 years agodaily update
Alan Modra [Wed, 12 Oct 2011 23:00:05 +0000 (23:00 +0000)] 
daily update

12 years agogdb/
Jan Kratochvil [Wed, 12 Oct 2011 22:04:12 +0000 (22:04 +0000)] 
gdb/
Fix empty DWARF expressions DATA vs. SIZE conditionals.
* dwarf2loc.c (dwarf2_find_location_expression): Clear *LOCEXPR_LENGTH.
(dwarf_expr_frame_base_1): Indicate unavailability via zero *LENGTH.
(locexpr_tracepoint_var_ref): Check only zero SIZE, not zero DATA.
(loclist_read_variable, loclist_tracepoint_var_ref): Do not check for
zero DATA.
* dwarf2loc.h (struct dwarf2_locexpr_baton): Comment DATA vs. SIZE
validity.
* dwarf2read.c (struct dwarf_block): Comment DATA validity.
(dwarf2_fetch_die_location_block, dwarf2_symbol_mark_computed): Do not
clear DATA on zero SIZE.

gdb/testsuite/
Fix empty DWARF expressions DATA vs. SIZE conditionals.
* gdb.dwarf2/dw2-op-call.S (arraycallnoloc, arraynoloc): New DIEs.
(loclist): New.
(4): New abbrev.
* gdb.dwarf2/dw2-op-call.exp: Remove variable srcfile and executable.
Use prepare_for_testing, remove clean_restart.
(p arraynoloc, p arraycallnoloc): New tests.

12 years ago * as.c (main): Define .gasversion. rather than __GAS_VERSION__.
Alan Modra [Wed, 12 Oct 2011 21:07:07 +0000 (21:07 +0000)] 
* as.c (main): Define .gasversion. rather than __GAS_VERSION__.
* frags.h (bss_address_frag): Delete
(predefined_address_frag): New.
* frags.c (frag_init): Init predefined_address_frag.  Delete ref
to bss_addres_frag.
* symbols.c (S_CAN_BE_REDEFINED): New function.
* symbols.h (S_CAN_BE_REDEFINED): Declare.
* read.c (assign_symbol): Use S_CAN_BE_REDEFINED.

12 years ago * dwarf2read.c (partial_read_comp_unit_head): Set header->offset,
Doug Evans [Wed, 12 Oct 2011 16:28:41 +0000 (16:28 +0000)] 
* dwarf2read.c (partial_read_comp_unit_head): Set header->offset,
header->first_die_offset here.  All callers updated.

12 years agogdb/
Jan Kratochvil [Wed, 12 Oct 2011 15:55:04 +0000 (15:55 +0000)] 
gdb/
Fix compatibility with texinfo versions older than 4.12.
* Makefile.in (MAKEINFO): Set to @MAKEINFO@.
(MAKEINFOFLAGS, MAKEINFO_EXTRA_FLAGS, MAKEINFO_CMD): New.
(MAKEHTMLFLAGS): Use MAKEINFO_CMD.
(FLAGS_TO_PASS): Add MAKEINFOFLAGS and MAKEINFO_EXTRA_FLAGS.
* configure: Regenerate.
* configure.ac (MAKEINFO): Find it, from libiberty/configure.ac.
(MAKEINFOFLAGS): Pre-set it to --split-size=5000000.
(MAKEINFO_EXTRA_FLAGS): New test for -DHAVE_MAKEINFO_CLICK.

gdb/doc/
Fix compatibility with texinfo versions older than 4.12.
* Makefile.in (MAKEINFO): Set to @MAKEINFO@.
(MAKEINFOFLAGS, MAKEINFO_EXTRA_FLAGS, MAKEINFO_CMD): New.
(MAKEHTMLFLAGS): Use MAKEINFO_CMD.
(gdb.info, gdbint.info, stabs.info, annotate.info): Use MAKEINFO_CMD.
* gdb.texinfo (Tail Call Frames): Convert @arrow{} to @click, when possible.
Make the conversion conditional on HAVE_MAKEINFO_CLICK, using variables
CALLSEQ1A, CALLSEQ1B, CALLSEQ2A and CALLSEQ2B.

12 years ago2011-10-12 Gary Benson <gbenson@redhat.com>
Gary Benson [Wed, 12 Oct 2011 15:43:49 +0000 (15:43 +0000)] 
2011-10-12  Gary Benson  <gbenson@redhat.com>

* breakpoint.h (pc_at_non_inline_function): Declare.
* breakpoint.c (is_non_inline_function,
pc_at_non_inline_function): New functions.
* infrun.c (handle_inferior_event): Don't call skip_inline_frames
if the stop is at a location where functions cannot be inlined.

12 years agoFix incomplete entry. Should have been:
Pedro Alves [Wed, 12 Oct 2011 12:17:29 +0000 (12:17 +0000)] 
Fix incomplete entry.  Should have been:

2011-10-12  Pedro Alves  <pedro@codesourcery.com>

* linux-nat.c (stop_and_resume_callback): Don't re-resume LWPs if
the core wanted them stopped, or if they now have a pending event
to report.
(linux_nat_filter_event): New parameter `new_pending_p'.  Pass it
down to stop_and_resume_callback.
(linux_nat_wait_1): Always clear `options' when retrying.  Handle
having new pending events after calling linux_nat_filter_event.

12 years ago2011-10-12 Pedro Alves <pedro@codesourcery.com>
Pedro Alves [Wed, 12 Oct 2011 12:11:26 +0000 (12:11 +0000)] 
2011-10-12  Pedro Alves  <pedro@codesourcery.com>

gdb/
* linux-nat.c (stop_and_resume_callback): Don't re-resume LWPs if
the core wanted them stopped, or if they now have a pending event
to report.

12 years agogdb/testsuite/
Jan Kratochvil [Wed, 12 Oct 2011 09:19:42 +0000 (09:19 +0000)] 
gdb/testsuite/
* gdb.cp/namespace-enum.exp (executable): New variable.
(binfile): Use ${objdir}/${subdir}/ prefix.
Use ${executable} for clean_restart.

12 years ago * symbols.c (local_symbol_make): Make global.
Alan Modra [Wed, 12 Oct 2011 02:57:07 +0000 (02:57 +0000)] 
* symbols.c (local_symbol_make): Make global.
* symbols.h (local_symbol_make): Declare.
* as.c (main): Define __GAS_VERSION__.

12 years ago2011-05-11 Sterling Augustine <saugustine@google.com>
Sterling Augustine [Wed, 12 Oct 2011 00:23:23 +0000 (00:23 +0000)] 
2011-05-11  Sterling Augustine  <saugustine@google.com>

* complete.c (rl_completion_matches): Undo inadvertant checkin.

12 years ago*** empty log message ***
gdbadmin [Wed, 12 Oct 2011 00:00:33 +0000 (00:00 +0000)] 
*** empty log message ***

12 years ago2011-10-11 Sterling Augustine <saugustine@google.com>
Sterling Augustine [Tue, 11 Oct 2011 23:30:27 +0000 (23:30 +0000)] 
2011-10-11  Sterling Augustine  <saugustine@google.com>

* dwarf2read.c: Undo inadvertent changes in previous commit.

12 years agodaily update
Alan Modra [Tue, 11 Oct 2011 23:00:05 +0000 (23:00 +0000)] 
daily update

12 years agogdb/ChangeLog
Sterling Augustine [Tue, 11 Oct 2011 19:19:08 +0000 (19:19 +0000)] 
gdb/ChangeLog
2011-10-11  Sterling Augustine  <saugustine@google.com>

* dwarf2read.c (partial_die_parent_scope): Rearrange conditional
logic.

gdb/testsuite/ChangeLog
2011-10-11  Sterling Augustine  <saugustine@google.com>

* gdb.cp/Makefile.in: Add namespace-enum test.
* gdb.cp/namespace-enum.exp: New file.
* gdb.cp/namespace-enum.c: New file.
* gdb.cp/namespace-enum-main.c: New file.

12 years agoFix jit.exp on most 32-bit targets.
David S. Miller [Tue, 11 Oct 2011 19:08:59 +0000 (19:08 +0000)] 
Fix jit.exp on most 32-bit targets.

* gdbarch.sh: New field 'long_long_align_bit'.
* gdbarch.c, gdbarch.h: Regenerate.
* i386-tdep.c (i386_gdbarch_init): Set long_long_align_bit to 32.
* jit.c (jit_read_code_entry): Use it to determine correct size offset.

12 years ago * gdb.python/py-shared.exp: Relax filename check to handle remote:
Ulrich Weigand [Tue, 11 Oct 2011 19:01:31 +0000 (19:01 +0000)] 
* gdb.python/py-shared.exp: Relax filename check to handle remote:
sysroot.

12 years ago * symfile.c (separate_debug_file_exists): Fix condition.
Ulrich Weigand [Tue, 11 Oct 2011 19:00:22 +0000 (19:00 +0000)] 
* symfile.c (separate_debug_file_exists): Fix condition.

12 years agoFix regcache_restore() handling of unavailable regs.
David S. Miller [Tue, 11 Oct 2011 18:35:26 +0000 (18:35 +0000)] 
Fix regcache_restore() handling of unavailable regs.

* regcache.c (regcache_restore): Do not write unavailable regs, mark
static.
* regcache.h (regcache_restore): Remove declaration.

12 years ago PR binutils/13051
Nick Clifton [Tue, 11 Oct 2011 15:56:29 +0000 (15:56 +0000)] 
PR binutils/13051
Fix a syntax error bug when compiling rc files with the VERSIONINFO resource
containing more than one language block inside a single StringFileInfo block.

* windint.h (rc_ver_stringtable): New structure definition.
(rc_ver_info): Use it.
* rcparse.y (verstringtable): New variable.
(verstringtables): New type.
(verstringtables:): New rule declaration.
(verblocks:): Use it.
* resrc.c (append_ver_stringtable): New function.
(append_ver_stringfileinfo): Update to use stringtables.
* windres.h (append_ver_stringfileinfo): Update declaration.
(append_ver_stringtable): New declaration.
* resrc.c (write_rc_versioninfo): Update to support multiple blocks.
* resbin.c (bin_to_res_version): Likewise.
(res_to_bin_versioninfo): Likewise.

* binutils-all\windres\version.rsd: Regenerate.
* binutils-all\windres\version_cat.rsd: Regenerate.
* binutils-all\windres\version_mlang.rc: Add new test.
* binutils-all\windres\version_mlang.rsd: Likewise.

12 years agogdb/
Jan Kratochvil [Tue, 11 Oct 2011 15:24:11 +0000 (15:24 +0000)] 
gdb/
Revert this part of:
2011-10-09  Jan Kratochvil  <jan.kratochvil@redhat.com>
Support @entry in input expressions.
* c-exp.y (ENTRY, unknown_cpp_name): New.
(exp: UNKNOWN_CPP_NAME): Change to `exp: unknown_cpp_name'.
(unknown_cpp_name: UNKNOWN_CPP_NAME, unknown_cpp_name: ENTRY)
(variable: name_not_typename '@' ENTRY, name: ENTRY)
(name_not_typename: ENTRY): New.
(yylex): Recognize ENTRY.

Reimplement @entry in input expressions.
* c-exp.y (ENTRY): New.
(variable: name_not_typename ENTRY): New.
(lex_one_token): Optionally return ENTRY instead of the '@' lex.

gdb/testsuite/
Reimplement @entry in input expressions.
* gdb.base/exprs.c (v_int_array_init): New variable.
* gdb.base/exprs.exp (print v_int_array_init)
(print *v_int_array_init@1, print *v_int_array_init@2)
(print v_int_array_init[0]@1, print v_int_array_init[0]@2)
(print v_int_array_init[1]@1): New tests.

12 years ago2011-10-11 Pedro Alves <pedro@codesourcery.com>
Pedro Alves [Tue, 11 Oct 2011 14:58:21 +0000 (14:58 +0000)] 
2011-10-11  Pedro Alves  <pedro@codesourcery.com>

* linux-nat.c (linux_handle_extended_wait): Always dump both the
parent and child's pids as soon as we detect a clone event.
Adjust another debug message.

12 years ago2011-10-11 Pedro Alves <pedro@codesourcery.com>
Pedro Alves [Tue, 11 Oct 2011 13:58:18 +0000 (13:58 +0000)] 
2011-10-11  Pedro Alves  <pedro@codesourcery.com>

gdb/
* linux-nat.c (linux_lwp_is_zombie): Return early if the LWP is
not zombie instead of reading the whole file.

12 years agogdb/
Jan Kratochvil [Tue, 11 Oct 2011 12:58:08 +0000 (12:58 +0000)] 
gdb/
Fix separate debuginfo warning with "remote:" access.
* objfiles.h (struct objfile): New fields crc32 and crc32_p.
* symfile.c (get_file_crc): New function with the code moved from ...
(separate_debug_file_exists): ... this function, specifically variables
buffer and count.  New variable verified_as_different, set it.  Remove
file_crc initialization.  Verify also if both files are not the same
manually, if needed.

12 years ago gdb/
Yao Qi [Tue, 11 Oct 2011 07:31:29 +0000 (07:31 +0000)] 
gdb/
* arm-tdep.c (arm_get_next_pc_raw): Use read_memory_unsigned_integer
to get address.

12 years ago PR binutils/13278
Alan Modra [Tue, 11 Oct 2011 06:44:13 +0000 (06:44 +0000)] 
PR binutils/13278
* archive.c (bfd_generic_archive_p): Only check first element
when target_defaulted.
(_bfd_construct_extended_name_table): Use ar_maxnamelen.
(_bfd_archive_bsd44_construct_extended_name_table): Likewise.

12 years ago PR binutils/13257
Alan Modra [Tue, 11 Oct 2011 06:30:20 +0000 (06:30 +0000)] 
PR binutils/13257
* archive.c (_bfd_find_nested_archive, _bfd_get_elt_at_filepos): Open
thin archive element using container target if not defaulted.

12 years ago * linux-thread-db.c (thread_db_new_objfile): Only try to load
Doug Evans [Tue, 11 Oct 2011 03:31:59 +0000 (03:31 +0000)] 
* linux-thread-db.c (thread_db_new_objfile): Only try to load
libthread_db when we load libpthread or the main symbol file.
(thread_db_inferior_created): New function.
(_initialize_thread_db): Attach inferior_created observer.
* linux-nat.c (linux_child_post_attach): Remove call to
check_for_thread_db.
(linux_child_post_startup_inferior): Ditto.
* objfiles.h (OBJF_MAINLINE): Define.
* symfile.c (symbol_file_add_with_addrs_or_offsets): Pass it to
allocate_objfile when appropriate.

12 years ago * gdb.cp/gdb2495.exp: Do not include directories in filename in
Joseph Myers [Tue, 11 Oct 2011 01:27:49 +0000 (01:27 +0000)] 
* gdb.cp/gdb2495.exp: Do not include directories in filename in
expected message.

12 years ago*** empty log message ***
gdbadmin [Tue, 11 Oct 2011 00:00:33 +0000 (00:00 +0000)] 
*** empty log message ***

12 years agodaily update
Alan Modra [Mon, 10 Oct 2011 23:00:05 +0000 (23:00 +0000)] 
daily update

12 years agomerge from gcc
DJ Delorie [Mon, 10 Oct 2011 21:02:57 +0000 (21:02 +0000)] 
merge from gcc

12 years ago PR gdb/13218
Ulrich Weigand [Mon, 10 Oct 2011 18:47:49 +0000 (18:47 +0000)] 
PR gdb/13218
* arm-linux-nat.c (os_version, os_major, os_minor, os_release):
Remove unused variables.
(get_linux_version): Remove function.
(_initialize_arm_linux_nat): Do not call it.

12 years ago * gold/incremental.cc (Sized_relobj_incr::Sized_relobj_incr):
Cary Coutant [Mon, 10 Oct 2011 17:38:07 +0000 (17:38 +0000)] 
* gold/incremental.cc (Sized_relobj_incr::Sized_relobj_incr):
Initialize defined_count_.
(Sized_relobj_incr::do_add_symbols): Count defined symbols.
(Sized_relobj_incr::do_get_global_symbol_counts): Rewrite.
(Sized_incr_dynobj::Sized_incr_dynobj): Initialize defined_count_.
(Sized_incr_dynobj::do_add_symbols): Count defined symbols.
(Sized_incr_dynobj::do_get_global_symbol_counts): Rewrite.
* gold/incremental.h (Sized_relobj_incr::defined_count_): New data
member.
(Sized_incr_dynobj::defined_count_): New data member.
* gold/plugin.cc (Sized_pluginobj::do_get_global_symbol_counts):
Return zeroes instead of internal error.

12 years ago PR gold/13249
Cary Coutant [Mon, 10 Oct 2011 17:29:52 +0000 (17:29 +0000)] 
PR gold/13249
* gold/output.cc (Output_reloc::Output_reloc): Add use_plt_offset flag.
(Output_reloc::symbol_value): Return PLT offset if flag is set.
* gold/output.h (class Output_reloc): Add use_plt_offset flag.
(Output_reloc::type_): Adjust size of bit field.
(Output_reloc::use_plt_offset_): New bit field.
(class Output_data_reloc): Adjust all calls to Output_reloc_type.
(Output_data_reloc::add_local_relative): (RELA only) Add use_plt_offset
flag.  Adjust all callers.
* gold/x86_64.cc (Target_x86_64::Scan::local): Check for IFUNC when
creating RELATIVE relocations.

12 years ago2011-10-10 Pedro Alves <pedro@codesourcery.com>
Pedro Alves [Mon, 10 Oct 2011 16:40:02 +0000 (16:40 +0000)] 
2011-10-10  Pedro Alves  <pedro@codesourcery.com>

gdb/
* linux-nat.c (linux_handle_extended_wait): Don't resume the new
new clone lwp if the core asked it to stop.  Don't pass on
unexpected signals to the new clone; leave them pending instead.

12 years agoUpdated Bulgarian, Spanish, Finnish, French, Russian and Ukranian translations.
Nick Clifton [Mon, 10 Oct 2011 16:12:24 +0000 (16:12 +0000)] 
Updated Bulgarian, Spanish, Finnish, French, Russian and Ukranian translations.

12 years ago2011-10-10 Pedro Alves <pedro@codesourcery.com>
Pedro Alves [Mon, 10 Oct 2011 13:50:50 +0000 (13:50 +0000)] 
2011-10-10  Pedro Alves  <pedro@codesourcery.com>

gdb/
* linux-nat.c (resume_lwp): Remove redundant debug output.

12 years ago2011-10-10 Pedro Alves <pedro@codesourcery.com>
Pedro Alves [Mon, 10 Oct 2011 13:23:53 +0000 (13:23 +0000)] 
2011-10-10  Pedro Alves  <pedro@codesourcery.com>

gdb/
* linux-nat.c (linux_nat_wait_1): Copy the event lwp's
last_resume_kind before clearing it, and use the copy instead to
determine whether to report a SIGSTOP as TARGET_SIGNAL_0.  Use
resume_clear_callback in the non-stop path too.

12 years agoinclude/elf/
Alan Modra [Mon, 10 Oct 2011 13:21:07 +0000 (13:21 +0000)] 
include/elf/
* ppc64.h (R_PPC64_TOCSAVE): Add.
bfd/
* elf64-ppc.c (ppc64_elf_howto_table): Add R_PPC64_TOCSAVE entry.
(struct ppc_link_hash_table): Add tocsave_htab.
(struct tocsave_entry): New.
(tocsave_htab_hash, tocsave_htab_eq, tocsave_find): New functions.
(ppc64_elf_link_hash_table_create): Create tocsave_htab..
(ppc64_elf_link_hash_table_free): ..and delete it.
(build_plt_stub): Always put STD_R2_40R1 first.
(ppc64_elf_size_stubs): Check for R_PPC64_TOCSAVE following reloc
on plt call.  If present add prologue nop location to tocsave_htab.
(ppc64_elf_relocate_section): Convert prologue nop to std.  Skip
first insn of plt call stub when R_PPC64_TOCSAVE present.

12 years ago * ldmain.c (main): Move code twiddling various config and link_info
Alan Modra [Mon, 10 Oct 2011 12:43:14 +0000 (12:43 +0000)] 
* ldmain.c (main): Move code twiddling various config and link_info
bits to..
* lexsup.c (parse_args): ..here.  Move plugin_load_plugins call
into main.
* plugin.c (set_tv_header): Test link_info.executable, not
link_info.shared.
(is_visible_from_outside): Likewise.  Delete redundant
is_ir_dummy_bfd check and "section" parameter.

12 years agold/
Alan Modra [Mon, 10 Oct 2011 09:05:41 +0000 (09:05 +0000)] 
ld/
* emultempl/ppc64elf.em (ppc_add_stub_section): Align to 32 bytes.
ld/testsuite/
* ld-powerpc/relbrlt.d: Update for stub alignment change.
* ld-powerpc/tlsexe.g: Likewise.
* ld-powerpc/tlsexe.r: Likewise.
* ld-powerpc/tlsexetoc.g: Likewise.
* ld-powerpc/tlsexetoc.r: Likewise.
* ld-powerpc/tlsso.g: Likewise.
* ld-powerpc/tlsso.r: Likewise.

12 years agogdb/
Yao Qi [Mon, 10 Oct 2011 02:50:48 +0000 (02:50 +0000)] 
gdb/
* valprint.c (value_check_printable): Add one parameter OPTIONS.
Honor OPTIONS and VAL's type.
(common_val_print, value_print): Update to pass one more parameter.

12 years agosim: dv-cfi: include stdbool.h
Mike Frysinger [Mon, 10 Oct 2011 02:41:54 +0000 (02:41 +0000)] 
sim: dv-cfi: include stdbool.h

The dv-cfi code uses the bool type but doesn't include the stdbool.h
header.  I didn't notice for Blackfin targets as the core Blackfin
header will include stdbool.h, but most targets don't do this.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
12 years agosim: dv-cfi: include common headers only
Mike Frysinger [Mon, 10 Oct 2011 02:41:07 +0000 (02:41 +0000)] 
sim: dv-cfi: include common headers only

The "devices.h" header is Blackfin-specific, so trying to build dv-cfi
for any other target fails.  Include the specific hw headers this file
needs directly.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
12 years ago*** empty log message ***
gdbadmin [Mon, 10 Oct 2011 00:00:33 +0000 (00:00 +0000)] 
*** empty log message ***

12 years agodaily update
Alan Modra [Sun, 9 Oct 2011 23:00:05 +0000 (23:00 +0000)] 
daily update

12 years ago Add new "alias" command.
Doug Evans [Sun, 9 Oct 2011 22:21:43 +0000 (22:21 +0000)] 
Add new "alias" command.
* NEWS: Mention new command.
* command.h (valid_user_defined_cmd_name_p): Declare.
* defs.h (make_cleanup_dyn_string_delete): Declare.
* utils.c: #include "dyn-string.h".
(do_dyn_string_delete, make_cleanup_dyn_string_delete): New functions.
* cli/cli-cmds.c: #include "dyn-string.h".
(argv_to_dyn_string, valid_command_p, alias_command): New functions.
(init_cli_cmds): Add new command.
* cli/cli-decode.c (valid_user_defined_cmd_name_p): New function.

doc/
* gdb.texinfo (Extending GDB): Document alias command.

testsuite/
* gdb.base/alias.exp: Add tests for alias command.

12 years agogdb/
Jan Kratochvil [Sun, 9 Oct 2011 20:57:03 +0000 (20:57 +0000)] 
gdb/
Fix compatibility with older GCCs.
* dwarf2loc.c (dwarf_expr_reg_to_entry_parameter): Initialize parameter.
* stack.c (read_frame_arg): Initialize val_deref.

12 years agogdb/
Jan Kratochvil [Sun, 9 Oct 2011 20:21:48 +0000 (20:21 +0000)] 
gdb/
Add forgotten gdb/dwarf2-frame-tailcall.c.
Add forgotten gdb/dwarf2-frame-tailcall.h.

12 years agogdb/
Jan Kratochvil [Sun, 9 Oct 2011 19:46:05 +0000 (19:46 +0000)] 
gdb/
Entry values NEWS entries, DWARF disassembly support.
* NEWS: New entry values entry.
(set print entry-values, show print entry-values)
(set debug entry-values, show debug entry-values): New entries.
* dwarf2loc.c (disassemble_dwarf_expression): New parameters start and
indent.  Remove variable start.  Move header printing out.  Respect
INDENT.  Support DW_OP_GNU_entry_value.
(locexpr_describe_location_1): Move the header printing here, extend
the disassemble_dwarf_expression passed parameters.

gdb/testsuite/
* gdb.arch/amd64-entry-value.s: New file.
* gdb.mi/mi2-amd64-entry-value.s: New file.

12 years agogdb/
Jan Kratochvil [Sun, 9 Oct 2011 19:43:41 +0000 (19:43 +0000)] 
gdb/
Display @entry parameter values even for references.
* ada-valprint.c (ada_val_print_1) <TYPE_CODE_REF>: Try also
coerce_ref_if_computed.
* c-valprint.c (c_val_print) <TYPE_CODE_REF>: Likewise.
* dwarf2expr.c (dwarf_block_to_dwarf_reg_deref): New function.
(execute_stack_op) <DW_OP_GNU_entry_value>: Add -1 deref_size to the
existing push_dwarf_reg_entry_value call.  Add new detection calling
dwarf_block_to_dwarf_reg_deref.  Update the error message.
(ctx_no_push_dwarf_reg_entry_value): New parameter deref_size.
* dwarf2expr.h
(struct dwarf_expr_context_funcs) <push_dwarf_reg_entry_value>: Add new
parameter deref_size, describe it in the comment.
(ctx_no_push_dwarf_reg_entry_value): Add new parameter deref_size.
(dwarf_block_to_dwarf_reg_deref): New declaration.
* dwarf2loc.c (dwarf_entry_parameter_to_value): Add new parameter
deref_size, describe it in the function comment.  New variables
data_src and size, fetch the alternative block accoring to DEREF_SIZE.
(dwarf_expr_push_dwarf_reg_entry_value): Add new parameter deref_size,
describe it in the function comment.  Fetch the alternative block
accoring to DEREF_SIZE.
(entry_data_value_coerce_ref, entry_data_value_copy_closure)
(entry_data_value_free_closure, entry_data_value_funcs): New.
(value_of_dwarf_reg_entry): New variables checked_type, target_type,
outer_val, target_val, val and addr.  Try to fetch and create also
referenced value content.
(pieced_value_funcs): NULL value for coerce_ref.
(needs_dwarf_reg_entry_value): Add new parameter deref_size.
* f-valprint.c (f_val_print) <TYPE_CODE_REF>: Try also
coerce_ref_if_computed.
* opencl-lang.c (opencl_value_funcs): NULL value for coerce_ref.
* p-valprint.c (pascal_val_print) <TYPE_CODE_REF>: Likewise.
* stack.c (read_frame_arg): Compare also dereferenced values.
* value.c (value_computed_funcs): Make the parameter v const, use
value_lval_const for it.
(value_lval_const, coerce_ref_if_computed): New function.
(coerce_ref): New variable retval.  Call also coerce_ref_if_computed.
* value.h (struct lval_funcs): New field coerce_ref.
(value_computed_funcs): Make the parameter v const.
(value_lval_const, coerce_ref_if_computed): New declarations.

gdb/testsuite/
Display @entry parameter values even for references.
* gdb.arch/amd64-entry-value.cc (reference, datap, datap_input): New
functions.
(main): New variables regvar, nodatavarp, stackvar1, stackvar2.  Call
reference and datap_input.
* gdb.arch/amd64-entry-value.exp (reference, breakhere_reference): New
breakpoints.
(continue to breakpoint: entry_reference: reference)
(entry_reference: bt at entry)
(continue to breakpoint: entry_reference: breakhere_reference)
(entry_reference: bt, entry_reference: ptype regparam)
(entry_reference: p regparam, entry_reference: ptype regparam@entry)
(entry_reference: p regparam@entry, entry_reference: p &regparam@entry)
(entry_reference: p regcopy, entry_reference: p nodataparam)
(entry_reference: p nodataparam@entry): New tests.

12 years agogdb/
Jan Kratochvil [Sun, 9 Oct 2011 19:41:17 +0000 (19:41 +0000)] 
gdb/
Support @entry in input expressions.
* c-exp.y (ENTRY, unknown_cpp_name): New.
(exp: UNKNOWN_CPP_NAME): Change to `exp: unknown_cpp_name'.
(unknown_cpp_name: UNKNOWN_CPP_NAME, unknown_cpp_name: ENTRY)
(variable: name_not_typename '@' ENTRY, name: ENTRY)
(name_not_typename: ENTRY): New.
(yylex): Recognize ENTRY.
* eval.c (evaluate_subexp_standard): Support also OP_VAR_ENTRY_VALUE.
* expprint.c (print_subexp_standard, dump_subexp_body_standard):
Likewise.
* parse.c (operator_length_standard): Likewise.
* std-operator.def: New operator OP_VAR_ENTRY_VALUE.

gdb/doc/
Support @entry in input expressions.
* gdb.texinfo (Variables): Describe @entry names suffix.
(Print Settings): Add anchor for `set print entry-values'.

gdb/testsuite/
Support @entry in input expressions.
* gdb.arch/amd64-entry-value.exp (entry: p i@entry, entry: p j@entry)
(entry_stack: p s1@entry, entry_stack: p s2@entry)
(entry_stack: p d9@entry, entry_stack: p da@entry, tailcall: p i@entry)
(tailcall: p j@entry): New tests.
* gdb.cp/koenig.cc (A::entry): New function.
(main): Call it.
* gdb.cp/koenig.exp (p entry (c)): New test.

12 years agogdb/
Jan Kratochvil [Sun, 9 Oct 2011 19:38:29 +0000 (19:38 +0000)] 
gdb/
Display referenced values in backtraces.
* printcmd.c (print_variable_and_value): Set OPTS.DEREF_REF to 1.
* stack.c (print_frame_arg): Likewise.

12 years agogdb/
Jan Kratochvil [Sun, 9 Oct 2011 19:36:06 +0000 (19:36 +0000)] 
gdb/
Make some lval_funcs methods to default on NULL.
* valops.c (value_fetch_lazy): Check if lval_computed read method is
NULL.
(value_assign): Check if lval_computed write method is NULL.
* value.h (struct lval_funcs): Comment NULL values for read and write
methods.

12 years agogdb/
Jan Kratochvil [Sun, 9 Oct 2011 19:34:19 +0000 (19:34 +0000)] 
gdb/
Display @entry parameter values (without references).
* dwarf2expr.c (dwarf_block_to_fb_offset, dwarf_block_to_sp_offset):
New functions.
* dwarf2expr.h (dwarf_block_to_fb_offset, dwarf_block_to_sp_offset):
New declarations.
* dwarf2loc.c (dwarf2_find_location_expression): Support location list
entry record.
(dwarf_entry_parameter_to_value, value_of_dwarf_reg_entry)
(value_of_dwarf_block_entry, locexpr_read_variable_at_entry): New
functions.
(dwarf2_locexpr_funcs): Install locexpr_read_variable_at_entry.
(loclist_read_variable_at_entry): New function.
(dwarf2_loclist_funcs): Install loclist_read_variable_at_entry.
* dwarf2read.c (read_call_site_scope): Support also DW_OP_fbreg in
DW_AT_location, call dwarf_block_to_sp_offset for it.
* frame.h (print_entry_values_no, print_entry_values_only)
(print_entry_values_preferred, print_entry_values_if_needed)
(print_entry_values_both, print_entry_values_compact)
(print_entry_values_default, print_entry_values): New declarations.
(struct frame_arg): New field entry_kind.
(read_frame_arg): New parameter entryargp.
* mi/mi-cmd-stack.c (list_arg_or_local): New gdb_assert for
arg->entry_kind.  Optionally print the `@entry' suffix.
(list_args_or_locals): New variable entryarg, initialize it.
Initialize also entry_kind of arg and entryarg.  Conditionalize
list_arg_or_local for arg, add list_arg_or_local for entryarg.  Call
xfree for entryarg.error.
* stack.c (print_entry_values_no, print_entry_values_only)
(print_entry_values_preferred, print_entry_values_if_needed)
(print_entry_values_both, print_entry_values_compact)
(print_entry_values_default, print_entry_values_choices)
(print_entry_values): New variables.
(print_frame_arg): New gdb_assert for arg->entry_kind.  Optionally
print the `@entry' suffix, possibly in combination for
print_entry_values_compact.
(read_frame_arg): New parameter entryargp, new variables entryval,
entryval_error and val_equal.  Read in also entryargp, respect
print_entry_values, compare the values using val_equal, fill in also
argp->entry_kind (together with entryargp->entry_kind).
(print_frame_args): New variable entryarg, initialize it.
Conditionalize print_frame_arg for arg, add print_frame_arg for
entryarg.  Call xfree for entryarg.error.
(_initialize_stack): Call add_setshow_enum_cmd for `entry-values'.
* symtab.h (struct symbol_computed_ops): New field
read_variable_at_entry.

gdb/doc/
Display @entry parameter values (without references).
* gdb.texinfo (Tail Call Frames): Add anchor.  Add self tail call
example.
(Print Settings): New description of set print entry-values and show
print entry-values.

gdb/testsuite/
Display @entry parameter values (without references).
* gdb.arch/amd64-entry-value.cc (locexpr, stacktest, data, data2)
(different, validity, invalid): New functions.
(main): Call them.
* gdb.arch/amd64-entry-value.exp: New breakpoints breakhere_locexpr,
stacktest, breakhere_stacktest, different, breakhere_different,
breakhere_validity and breakhere_invalid.
(entry: bt): Update for @entry.
(entry_locexpr: *, entry_stack: *, entry_equal: *, entry_different: *)
(entry_validity: *, entry_invalid: *): Many new tests.
* gdb.base/break.exp
(run until breakpoint set at small function, optimized file): Accept
also the @entry suffix.
* gdb.mi/Makefile.in (PROGS): Add mi2-amd64-entry-value.
* gdb.mi/mi2-amd64-entry-value.c: New files.
* gdb.mi/mi2-amd64-entry-value.exp: New files.

12 years agogdb/
Jan Kratochvil [Sun, 9 Oct 2011 19:30:25 +0000 (19:30 +0000)] 
gdb/
Code reshuffle.
* frame.h (struct frame_arg): New definition.
(read_frame_arg): New declaration.
* mi/mi-cmd-stack.c (list_arg_or_local): New functiom from ...
(list_args_or_locals): ... the code here.  New variable arg, call
read_frame_arg and list_arg_or_local with it.  Unify the
PRINT_SIMPLE_VALUES and PRINT_ALL_VALUES cases.  Call xfree for
arg.error.
* stack.c (print_frame_arg): New functiom from the code of
print_frame_args.
(read_frame_arg): New function.
(print_frame_args): Remove variable val.  New variable arg, call
read_frame_arg and print_frame_arg with it.  Call xfree for arg.error.

12 years agogdb/
Jan Kratochvil [Sun, 9 Oct 2011 19:29:11 +0000 (19:29 +0000)] 
gdb/
Protect entry values against self tail calls.
* dwarf2loc.c (VEC (CORE_ADDR), func_verify_no_selftailcall): New.
(dwarf_expr_dwarf_reg_entry_value): Call func_verify_no_selftailcall.

gdb/testsuite/
Protect entry values against self tail calls.
* gdb.arch/amd64-entry-value.cc (self2, self): New.
(main): Call self.
* gdb.arch/amd64-entry-value.exp (self: breakhere, self: bt)
(set debug entry-values 1, self: bt debug entry-values): New tests.

12 years agogdb/
Jan Kratochvil [Sun, 9 Oct 2011 19:26:44 +0000 (19:26 +0000)] 
gdb/
Recognize virtual tail call frames.
* Makefile.in (SFILES): Add dwarf2-frame-tailcall.c.
(HFILES_NO_SRCDIR): Add dwarf2-frame-tailcall.h.
(COMMON_OBS): Add dwarf2-frame-tailcall.o.
* dwarf2-frame-tailcall.c: New file.
* dwarf2-frame-tailcall.h: New file.
* dwarf2-frame.c: Include dwarf2-frame-tailcall.h.
(execute_cfa_program): New function comment.  Return INSN_PTR.  Reset
REGS.PREV only after CIE execution.
(struct dwarf2_frame_cache): New field tailcall_cache.
(dwarf2_frame_cache): New variables entry_pc, entry_cfa_sp_offset,
entry_cfa_sp_offset_p and instr.  Execute FDE instructions in two
parts, try to find entry_cfa_sp_offset.  Call
dwarf2_tailcall_sniffer_first.
(dwarf2_frame_prev_register): Call dwarf2_tailcall_prev_register_first
when appropriate.
(dwarf2_frame_dealloc_cache): New function.
(dwarf2_frame_sniffer): Preinitialize cache by dwarf2_frame_cache.
(dwarf2_frame_unwind): Install dwarf2_frame_dealloc_cache.
(dwarf2_signal_frame_unwind): Do not install dwarf2_frame_dealloc_cache.
(dwarf2_append_unwinders): Add dwarf2_tailcall_frame_unwind.
(dwarf2_frame_cfa): Support also dwarf2_tailcall_frame_unwind.
* dwarf2loc.c (func_addr_to_tail_call_list)
(tailcall_dump, call_sitep, VEC (call_sitep), chain_candidate)
(call_site_find_chain_1, call_site_find_chain): New.
* dwarf2loc.h (struct call_site_chain): New.
(call_site_find_chain): New declaration.
* frame.c (get_frame_address_in_block): Support also TAILCALL_FRAME.
* frame.h (enum frame_type): New entry TAILCALL_FRAME.
* python/py-frame.c (gdbpy_initialize_frames): Add TAILCALL_FRAME.
* stack.c (frame_info): Support also TAILCALL_FRAME.

gdb/doc/
Recognize virtual tail call frames.
* gdb.texinfo (Optimized Code): Add reference to Tail Call Frames.
(Tail Call Frames): New node.
(Frames In Python): Add gdb.TAILCALL_FRAME.

gdb/testsuite/
Recognize virtual tail call frames.
* gdb.arch/amd64-entry-value.cc (c, a, b, amb_z, amb_y, amb_x, amb)
(amb_b, amb_a): New.
(main): Call a and b.
* gdb.arch/amd64-entry-value.exp (tailcall: breakhere, tailcall: bt)
(tailcall: p i, tailcall: p j, set $sp0=$sp, up, p $sp0 == $sp, frame 3)
(p $sp0 + sizeof (void *) == $sp, ambiguous: breakhere, ambiguous: bt):
New tests.

12 years agogdb/
Jan Kratochvil [Sun, 9 Oct 2011 19:23:41 +0000 (19:23 +0000)] 
gdb/
Tail call sites reader implementation.
* dwarf2read.c (read_call_site_scope): Recognize DW_AT_GNU_tail_call,
fill in TYPE_TAIL_CALL_LIST.
* gdbtypes.h (struct func_type): New field tail_call_list.
(struct call_site): New field tail_call_next.
(TYPE_TAIL_CALL_LIST): New definition.

12 years agogdb/
Jan Kratochvil [Sun, 9 Oct 2011 19:21:39 +0000 (19:21 +0000)] 
gdb/
Implement basic support for DW_TAG_GNU_call_site.
* block.c: Include gdbtypes.h and exceptions.h.
(call_site_for_pc): New function.
* block.h (call_site_for_pc): New declaration.
* defs.h: Include hashtab.h.
(make_cleanup_htab_delete, core_addr_hash, core_addr_eq): New
declarations.
* dwarf2-frame.c (dwarf2_frame_ctx_funcs): Install
ctx_no_push_dwarf_reg_entry_value.
* dwarf2expr.c (read_uleb128, read_sleb128): Support R as NULL.
(dwarf_block_to_dwarf_reg): New function.
(execute_stack_op) <DW_OP_GNU_entry_value>: Implement it.
(ctx_no_push_dwarf_reg_entry_value): New function.
* dwarf2expr.h (struct dwarf_expr_context_funcs): New field
push_dwarf_reg_entry_value.
(ctx_no_push_dwarf_reg_entry_value, dwarf_block_to_dwarf_reg): New
declarations.
* dwarf2loc.c: Include gdbcmd.h.
(dwarf_expr_ctx_funcs): New forward declaration.
(entry_values_debug, show_entry_values_debug, call_site_to_target_addr)
(dwarf_expr_reg_to_entry_parameter)
(dwarf_expr_push_dwarf_reg_entry_value): New.
(dwarf_expr_ctx_funcs): Install dwarf_expr_push_dwarf_reg_entry_value.
(dwarf2_evaluate_loc_desc_full): Handle NO_ENTRY_VALUE_ERROR.
(needs_dwarf_reg_entry_value): New function.
(needs_frame_ctx_funcs): Install it.
(_initialize_dwarf2loc): New function.
* dwarf2loc.h (entry_values_debug): New declaration.
* dwarf2read.c (struct dwarf2_cu): New field call_site_htab.
(read_call_site_scope): New forward declaration.
(process_full_comp_unit): Copy call_site_htab.
(process_die): Support DW_TAG_GNU_call_site.
(read_call_site_scope): New function.
(dwarf2_get_pc_bounds): Support NULL HIGHPC.
(dwarf_tag_name): Support DW_TAG_GNU_call_site.
(cleanup_htab): Delete.
(write_psymtabs_to_index): Use make_cleanup_htab_delete instead of it.
* exceptions.h (enum errors): New NO_ENTRY_VALUE_ERROR.
* gdb-gdb.py (StructMainTypePrettyPrinter): Support
FIELD_LOC_KIND_DWARF_BLOCK.
* gdbtypes.h (enum field_loc_kind): New entry
FIELD_LOC_KIND_DWARF_BLOCK.
(struct main_type): New loc entry dwarf_block.
(struct call_site, FIELD_DWARF_BLOCK, SET_FIELD_DWARF_BLOCK)
(TYPE_FIELD_DWARF_BLOCK): New.
* python/py-type.c: Include dwarf2loc.h.
(check_types_equal): Support FIELD_LOC_KIND_DWARF_BLOCK.  New
internal_error call on unknown FIELD_LOC_KIND.
* symtab.h (struct symtab): New field call_site_htab.
* utils.c (do_htab_delete_cleanup, make_cleanup_htab_delete)
(core_addr_hash, core_addr_eq): New functions.

gdb/testsuite/
Implement basic support for DW_TAG_GNU_call_site.
* gdb.arch/Makefile.in (EXECUTABLES): Add amd64-entry-value.
* gdb.arch/amd64-entry-value.cc: New file.
* gdb.arch/amd64-entry-value.exp: New file.

12 years agogdb/
Jan Kratochvil [Sun, 9 Oct 2011 19:10:52 +0000 (19:10 +0000)] 
gdb/
Code reshuffle.
* gdb-gdb.py (StructMainTypePrettyPrinter): Change
TYPE_SPECIFIC_CALLING_CONVENTION to TYPE_SPECIFIC_FUNC.  Move
calling_convention under func_stuff there.
* gdbtypes.c (make_function_type): Call INIT_FUNC_SPECIFIC.
(init_type) <TYPE_CODE_FUNC>: Likewise.
(recursive_dump_type): Change TYPE_SPECIFIC_CALLING_CONVENTION to
TYPE_SPECIFIC_FUNC.  New comment for tail_call_list.
* gdbtypes.h (enum type_specific_kind): Change
TYPE_SPECIFIC_CALLING_CONVENTION to TYPE_SPECIFIC_FUNC.
(struct main_type) <type_specific>: Change calling_convention to
func_stuff.  Move calling_convention to ...
(struct func_type): ... this new struct.
(INIT_FUNC_SPECIFIC): New #define.
(TYPE_CALLING_CONVENTION): Change calling_convention to func_stuff.

12 years agogdb/
Jan Kratochvil [Sun, 9 Oct 2011 18:46:41 +0000 (18:46 +0000)] 
gdb/
Fix DW_OP_GNU_implicit_pointer for DWARF32 v3+ on 64-bit arches.
* dwarf2-frame.c (execute_stack_op): Initialize ctx->ref_addr_size.
* dwarf2expr.c (execute_stack_op) <DW_OP_GNU_implicit_pointer>: Use
ctx->ref_addr_size.  Handle its invalid value.
* dwarf2expr.h (struct dwarf_expr_context): New field ref_addr_size.
* dwarf2loc.c (dwarf2_evaluate_loc_desc_full)
(dwarf2_loc_desc_needs_frame): Initialize ctx->ref_addr_size.
* dwarf2loc.h (dwarf2_per_cu_ref_addr_size): New declaration.
* dwarf2read.c (decode_locdesc): Initialize ctx->ref_addr_size.
(dwarf2_per_cu_ref_addr_size): New function.

gdb/testsuite/
Fix DW_OP_GNU_implicit_pointer for DWARF32 v3+ on 64-bit arches.
* gdb.dwarf2/implptr-64bit.S: New file.
* gdb.dwarf2/implptr-64bit.exp: New file.

12 years agogdb/
Jan Kratochvil [Sun, 9 Oct 2011 18:43:32 +0000 (18:43 +0000)] 
gdb/
Code cleanup.
* dwarf2read.c (per_cu_header_read_in): New function.
(dwarf2_per_cu_addr_size, dwarf2_per_cu_offset_size): Use it, with new
variables cu_header_local and cu_headerp.

12 years agogdb/
Jan Kratochvil [Sun, 9 Oct 2011 18:37:27 +0000 (18:37 +0000)] 
gdb/
Fix initial language detection with -readnow.
* dwarf2read.c (dw2_find_symbol_file): Handle OBJF_READNOW case.
* symfile.h (struct quick_symbol_functions): State find_symbol_file
searches only for global symbols.

gdb/testsuite/
Fix initial language detection with -readnow.
* gdb.cp/readnow-language.cc: New file.
* gdb.cp/readnow-language.exp: New file.

12 years agogdb/
Jan Kratochvil [Sun, 9 Oct 2011 18:33:28 +0000 (18:33 +0000)] 
gdb/
Fix printed anonymous struct name.
* dwarf2read.c (fixup_partial_die): Handle for anonymous structs also
DW_TAG_interface_type.  Strip for anonymous structs any prefixes.
(anonymous_struct_prefix): New function.
(determine_prefix): New variables retval.  Call anonymous_struct_prefix.
(dwarf2_name): Strip for anonymous structs any prefixes.

gdb/testsuite/
Fix printed anonymous struct name.
* gdb.cp/anon-struct.exp (print type of X::t2): New test.

This page took 0.047631 seconds and 4 git commands to generate.