aboutsummaryrefslogtreecommitdiff
path: root/gdb/testsuite/gdb.dwarf2
AgeCommit message (Collapse)AuthorFilesLines
2010-06-25gdb/testsuite/Jan Kratochvil4-32/+112
Test PR python/11407. * gdb.dwarf2/dw2-ref-missing-frame-func.c: New file. * gdb.dwarf2/dw2-ref-missing-frame.S: Use cu_text_start and cu_text_end. Split main into func_nofb and func_loopfb dropping NO_FRAME_BASE. * gdb.dwarf2/dw2-ref-missing-frame.exp: Remove variables sources, executable_nofb and executable_fb. New variables srcsfile, objsfile, srcfuncfile, objfuncfile, srcmainfile, objmainfile, executable and binfile. Call gdb_compile with clean_restart twice. (func_nofb print, func_nofb backtrace, func_loopfb print) (func_loopfb backtrace): New.
2010-06-25gdb/testsuite/Jan Kratochvil3-322/+166
* gdb.dwarf2/dw2-ref-missing-frame-main.c: New. * gdb.dwarf2/dw2-ref-missing-frame.S: Replace compiler generated output by a hand made one. * gdb.dwarf2/dw2-ref-missing-frame.exp: Remove invalid comment. Remove i?86 requirement. Remove variables srcfile and binfile. New variable sources, executable_nofb and executable_fb. Call prepare_for_testing.
2010-06-16gdb/ChangeLog:Sergio Durigan Junior4-0/+374
2010-06-16 Sergio Durigan Junior <sergiodj@redhat.com> Jan Kratochvil <jan.kratochvil@redhat.com> * breakpoint.c: Include parser-defs.h. (watchpoint_exp_is_const): New function. (watch_command_1): Call watchpoint_exp_is_const to check if the expression is constant. gdb/doc/ChangeLog: 2010-06-16 Jan Kratochvil <jan.kratochvil@redhat.com> * gdb.texinfo: Include information about the correct use of addresses in the `watch' command. gdb/testsuite/ChangeLog: 2010-06-16 Jan Kratochvil <jan.kratochvil@redhat.com> Sergio Durigan Junior <sergiodj@redhat.com> * gdb.base/watch-notconst.c: New file. * gdb.base/watch-notconst.S: New file. * gdb.base/watch-notconst2.c: New file. * gdb.base/watch-notconst2.S: New file. * gdb.base/watch-notconst.exp: New file. * gdb.base/watchpoint.c (global_ptr_ptr): New variable. (func4): Add operations on `global_ptr_ptr'. * gdb.base/watchpoint.exp (test_constant_watchpoint): New routine to test watchpoints created with a constant expression. (test_inaccessible_watchpoint): Include tests for watchpoints created with a constant expression.
2010-06-11gdbTom Tromey1-3/+1
PR gdb/9977, PR exp/11636: * value.h (value_offset): Update. (struct lval_funcs) <check_validity>: New field. <copy_closure>: Make argument const. (value_computed_closure): Update. (value_contents_for_printing): Declare. (value_bits_valid): Likewise. (val_print): Likewise. (set_value_component_location): Update. (value_entirely_optimized_out): Declare. * value.c (value_offset): Argument now const. (require_not_optimized_out): New function. (value_contents_for_printing): New function. (value_contents_all): Call require_not_optimized_out. (value_contents): Likewise. (value_bits_valid): New function. (value_computed_closure): Argument now const. (set_value_component_location): Make 'whole' argument const. (value_entirely_optimized_out): New function. (value_bitsize): Argument now 'const'. (value_bitpos): Likewise. (value_type): Likewise. * valprint.h (val_print_array_elements): Update. * valprint.c (val_print): Add 'val' argument. Use valprint_check_validity. (valprint_check_validity): New function. (value_check_printable): Use value_entirely_optimized_out. (common_val_print): Update. (value_print): Likewise. (val_print_array_elements): Add 'val' argument. * valops.c (value_fetch_lazy): Use value_contents_for_printing, value_bits_valid. Reinit frame cache for lval_computed. * sh64-tdep.c (sh64_do_register): Update. * scm-valprint.c (scm_val_print): Add 'val' argument. * scm-lang.h (scm_val_print): Update. * python/python.h (apply_val_pretty_printer): Update. * python/py-prettyprint.c (apply_val_pretty_printer): Add 'val' argument. Call set_value_component_location. * printcmd.c (print_scalar_formatted): Update. * p-valprint.c (pascal_val_print): Add 'val' argument. (pascal_object_print_value_fields): Likewise. (pascal_object_print_value): Likewise. (pascal_object_print_static_field): Update. * p-lang.h (pascal_val_print): Update. (pascal_object_print_value_fields): Update. * mt-tdep.c (mt_registers_info): Update. * mi/mi-main.c (get_register): Update. (mi_cmd_data_evaluate_expression): Use common_val_print. * m2-valprint.c (m2_print_array_contents): Add 'val' argument. (m2_print_unbounded_array): Likewise. (m2_val_print): Likewise. * m2-lang.h (m2_val_print): Update. * language.h (struct language_defn) <la_val_print>: Add 'val' argument. (LA_VAL_PRINT): Likewise. * language.c (unk_lang_val_print): Add 'val' argument. * jv-valprint.c (java_print_value_fields): Add 'val' argument. (java_val_print): Likewise. * jv-lang.h (java_val_print): Add 'val' argument. * infcmd.c (default_print_registers_info): Update. * f-valprint.c (f77_print_array_1): Add 'val' argument. (f77_print_array): Likewise. (f_val_print): Likewise. * f-lang.h (f_val_print): Add 'val' argument. * dwarf2loc.c (read_pieced_value): Use value_bitsize and value_bitpos. <DWARF_VALUE_OPTIMIZED_OUT>: Don't print warning. Call set_value_optimized_out. (write_pieced_value): Use value_bitsize and value_bitpos. <default>: Don't exit loop. (check_pieced_value_validity): New function. (pieced_value_funcs): Reference check_pieced_value_validity, check_pieced_value_invalid. (copy_pieced_value_closure): Update. (check_pieced_value_bits): New function. (check_pieced_value_invalid): New function. * d-valprint.c (dynamic_array_type): Add 'val' argument. (d_val_print): Likewise. * d-lang.h (d_val_print): Update. * cp-valprint.c (cp_print_value_fields): Add 'val' argument. (cp_print_value_fields_rtti): Likewise. (cp_print_value): Likewise. (cp_print_static_field): Update. * c-valprint.c (c_val_print): Add 'val' argument. (c_value_print): Update. * c-lang.h (c_val_print): Update. (cp_print_value_fields): Likewise. (cp_print_value_fields_rtti): Likewise. * ada-valprint.c (struct ada_val_print_args): Remove. (val_print_packed_array_elements): Add 'val' argument. (ada_val_print): Likewise. Rewrite. (ada_val_print_stub): Remove. (ada_val_print_array): Add 'val' argument. (ada_val_print_1): Likewise. (print_variant_part): Likewise. (ada_value_print): Update. (print_record): Add 'val' argument. (print_field_values): Likewise. * ada-lang.h (ada_val_print): Update. gdb/testsuite PR gdb/9977, PR exp/11636:: * gdb.dwarf2/pieces.exp (pieces_test_f3): Remove kfail. (pieces_test_f6): Update expected output.
2010-06-102010-06-08 Michael Snyder <msnyder@vmware.com>Michael Snyder1-1/+1
* gdb.ada/assign_1.exp: Use ".*" instead of "" as wildcard regexp. * gdb.ada/boolean_expr.exp: * gdb.ada/frame_args.exp: Ditto. * gdb.ada/lang_switch.exp: Ditto. * gdb.ada/ptype_arith_binop.exp: Ditto. * gdb.ada/ref_param.exp: Ditto. * gdb.ada/type_coercion.exp:Ditto. * gdb.asm/asm-source.exp: Ditto. * gdb.base/attach.exp: Ditto. * gdb.base/bitfields2.exp: Ditto. * gdb.base/call-signal-resume.exp: Ditto. * gdb.base/callfuncs.exp: Ditto. * gdb.base/commands.exp: Ditto. * gdb.base/dbx.exp: Ditto. * gdb.base/default.exp: Ditto. * gdb.base/dump.exp: Ditto. * gdb.base/exprs.exp: Ditto. * gdb.base/freebpcmd.exp: Ditto. * gdb.base/interrupt.exp: Ditto. * gdb.base/list.exp: Ditto. * gdb.base/long_long.exp: Ditto. * gdb.base/maint.exp: Ditto. * gdb.base/ptype.exp: Ditto. * gdb.base/return.exp: Ditto. * gdb.base/setshow.exp: Ditto. * gdb.base/sigbpt.exp: Ditto. * gdb.base/sigrepeat.exp: Ditto. * gdb.cp/classes.exp: Ditto. * gdb.dwarf2/dw2-restore.exp: Ditto. * gdb.gdb/selftest.exp: Ditto. * gdb.multi/base.exp: Ditto. * gdb.multi/bkpt-multi-exec.exp: Ditto. * gdb.python/py-block.exp: Ditto. * gdb.python/py-prettyprint.exp: Ditto. * gdb.python/py-template.exp: Ditto. * gdb.server/ext-attach.exp: Ditto. * gdb.server/ext-run.exp: Ditto. * gdb.server/server-mon.exp: Ditto. * gdb.threads/fork-thread-pending.exp: Ditto. * gdb.threads/hand-call-in-threads.exp: Ditto. * gdb.threads/interrupted-hand-call.exp: Ditto. * gdb.threads/linux-dp.exp: Ditto. * gdb.threads/manythreads.exp: Ditto. * gdb.threads/print-threads.exp: Ditto. * gdb.threads/pthreads.exp: Ditto. * gdb.threads/schedlock.exp: Ditto. * gdb.threads/thread-unwindonsignal.exp: Ditto. * gdb.threads/threadapply.exp: Ditto.
2010-06-07gdb/Jan Kratochvil2-0/+160
Fix PR 10640. * dwarf2-frame.c (no_dwarf_call): New function. (execute_stack_op): Set CTX->DWARF_CALL. * dwarf2expr.c (execute_stack_op) <DW_OP_call2, DW_OP_call4>: New. * dwarf2expr.h (struct dwarf_expr_context) <dwarf_call>: New. (struct dwarf_expr_context) <get_subr>: Remove the #if0-ed field. * dwarf2loc.c (per_cu_dwarf_call, dwarf_expr_dwarf_call): New functions. (dwarf2_evaluate_loc_desc): Initialize CTX->DWARF_CALL. (needs_frame_dwarf_call): New function. (dwarf2_loc_desc_needs_frame): Initialize CTX->DWARF_CALL. * dwarf2read.c (follow_die_offset): Based on former follow_die_ref. Update the comment. Move variables die, offset and error call to ... (follow_die_ref): ... a new function. (dwarf2_fetch_die_location_block): New function. * dwarf2loc.h (dwarf2_fetch_die_location_block): New prototype. gdb/testsuite/ Test PR 10640. * gdb.dwarf2/dw2-op-call.exp, gdb.dwarf2/dw2-op-call.S: New.
2010-06-022010-06-02 Michael Snyder <msnyder@vmware.com>Michael Snyder6-6/+6
* gdb.dwarf2/dw2-basic.exp: Use gdb_test_no_output. * gdb.dwarf2/dw2-compressed.exp: Ditto. * gdb.dwarf2/dw2-intercu.exp: Ditto. * gdb.dwarf2/dw2-intermix.exp: Ditto. * gdb.dwarf2/dw2-producer.exp: Ditto. * gdb.dwarf2/mac-fileno.exp: Ditto. * gdb.gdb/observer.exp: Use gdb_test_no_output. * gdb.gdb/selftest.exp: Ditto. * gdb.multi/base.exp: Use gdb_test_no_output. * gdb.opt/inline-cmds.exp: Use gdb_test_no_output.
2010-05-25 * gdb.dwarf2/pieces.exp (pieces_test_f3): Mention PR 11636.Tom Tromey1-1/+1
2010-05-21gdbTom Tromey3-38/+40
* dwarf2loc.c (extract_bits_primitive): New function. (extract_bits): Likewise. (insert_bits): Likewise. (copy_bitwise): Likewise. (read_pieced_value): Do all operations in bits. (write_pieced_value): Likewise. * dwarf2expr.h (struct dwarf_expr_piece) <offset>: New field. * dwarf2expr.c (add_piece): New arguments bit_piece, offset. Always use xrealloc to resize piece array. (execute_stack_op) <DW_OP_reg0>: Handle DW_OP_bit_piece. <DW_OP_piece>: Update. <DW_OP_bit_piece>: New case. gdb/testsuite * gdb.dwarf2/pieces.exp (pieces_test_f3): New proc. Call it. * gdb.dwarf2/pieces.S: Update. * gdb.dwarf2/pieces.c (struct B): Remove initial field.
2010-05-21gdbTom Tromey3-197/+476
* dwarf2loc.c (read_pieced_value): Exit loop when result is full. <DWARF_VALUE_OPTIMIZED_OUT>: New case. * dwarf2expr.h (enum dwarf_value_location) <DWARF_VALUE_OPTIMIZED_OUT>: New constant. * dwarf2expr.c (dwarf_expr_stack_empty_p): New function. (add_piece): Handle empty piece. (execute_stack_op) <DW_OP_piece>: Handle DWARF_VALUE_OPTIMIZED_OUT. gdb/testsuite * gdb.dwarf2/pieces.exp (pieces_test_f6): New proc. Call it. * gdb.dwarf2/pieces.c (struct C): New. (f6): New function. * gdb.dwarf2/pieces.S: Replace.
2010-05-21gdbTom Tromey1-0/+14
* eval.c (evaluate_subexp_standard) <BINOP_SUBSCRIPT>: Call evaluate_subexp, not evaluate_subexp_with_coercion. gdb/testsuite * gdb.dwarf2/pieces.exp (pieces_test_f2): New proc. Call it.
2010-05-21gdbTom Tromey3-0/+1810
* dwarf2loc.c (read_pieced_value): Work properly when 'v' has an offset. (write_pieced_value): Likewise. gdb/testsuite * gdb.dwarf2.pieces.exp: New file. * gdb.dwarf2.pieces.S: New file. * gdb.dwarf2.pieces.c: New file.
2010-05-08gdb/testsuite/Jan Kratochvil2-0/+171
* gdb.dwarf2/dw2-modula2-self-type.exp: New. * gdb.dwarf2/dw2-modula2-self-type.S: New.
2010-03-31gdb/Jan Kratochvil2-0/+117
Fix crash on reading wrong function declaration DWARF. * dwarf2read.c (read_subroutine_type): New variable void_type. Pre-fill all TYPE_FIELD_TYPEs. Move nparams and iparams initialization more close to their use. gdb/testsuite/ * gdb.dwarf2/dw2-bad-parameter-type.exp, gdb.dwarf2/dw2-bad-parameter-type.S: New.
2010-03-22gdb/testsuite/Jan Kratochvil2-0/+151
* gdb.dwarf2/dw2-empty-namespace.exp, gdb.dwarf2/dw2-empty-namespace.S: New.
2010-03-18[dwarf] Anonymous nested function causes SEGV during psymbol readJoel Brobecker2-0/+301
According to the DWARF3 standard, a function always has a name attribute (Section 3.3 - Subroutine and Entry Point Entries). The only exception is when a DW_AT_abstract_origin attribute is provided, in which case the name may be inherited from the referenced DIE. The problem occured because our compiler generated a subprogram DIE for a nested function where the name attribute was missing (and no abstract-origin either). Our code in add_partial_symbol is not prepared to deal with the situation, and happily just tries to compute the length of the (NULL) function name. This normally cannot happen, because there is already a guard in scan_partial_symbols, where we (silently!) ignore anonymous dies, including anonymous subprograms. Unfortunately, there is a flaw that affects Ada and other languages that allow nested subprograms. For nested subprograms, we do not go through scan_partial_symbols and thus we are missing the name check. This patch adds the name check in the nested subprogram case. It also adds a complaint which is emitted during the psymtab->symtab conversion phase. gdb/ChangeLog: * dwarf2read.c (add_partial_subprogram): Make sure the subprogram DIE has a name before creating the associated partial symbol. (read_func_scope): Emit a complaint if the subprogram does not have a name or when we can't extract the subprogram PC bounds. gdb/testsuite/ChangeLog: * gdb.dwarf2/dw2-anonymous-func.S: New file. * gdb.dwarf2/dw2-anonymous-func.exp: New testcase. Tested on x86_64-linux, no regression. Note that the testcase also verifies that the psymtab->symtab conversion does not crash (this is the purpose of the "list file1.txt:1" test.
2010-02-19gdb/testsuite/Jan Kratochvil1-225/+225
Fix compatibility with m68k as. * gdb.dwarf2/member-ptr-forwardref.S: Use .data section. Use .2byte. Use only /* comments */.
2010-02-02gdbTom Tromey1-1/+1
* m2-typeprint.c (m2_record_fields): Don't use TYPE_DECLARED_TYPE. * gdbtypes.h (TYPE_DECLARED_CLASS): New macro. (struct main_type) <flag_declared_class>: New field. (struct cplus_struct_type) <declared_type>: Remove. <ntemplate_args>: Move earlier. (DECLARED_TYPE_CLASS, DECLARED_TYPE_UNION, DECLARED_TYPE_STRUCT) (DECLARED_TYPE_TEMPLATE): Remove. (TYPE_DECLARED_TYPE): Remove. * gdbtypes.c (lookup_union): Don't use TYPE_DECLARED_TYPE. * dwarf2read.c (read_structure_type): Set TYPE_DECLARED_CLASS. * c-typeprint.c (c_type_print_base): Use TYPE_DECLARED_CLASS, not TYPE_DECLARED_TYPE. gdb/testsuite * gdb.dwarf2/member-ptr-forwardref.exp: Update expected result for type-printing change.
2010-01-22gdbTom Tromey2-0/+375
PR symtab/11199: * dwarf2read.c (quirk_gcc_member_function_pointer): Change return type and arguments. Use smash_to_methodptr_type. (read_structure_type): Call quirk_gcc_member_function_pointer later. * gdbtypes.h (smash_to_methodptr_type): Declare. * gdbtypes.c (smash_to_methodptr_type): New function. (lookup_methodptr_type): Use it. gdb/testsuite 2010-01-22 Jan Kratochvil <jan.kratochvil@redhat.com> PR symtab/11199: * gdb.dwarf2/member-ptr-forwardref.exp, gdb.dwarf2/member-ptr-forwardref.S: New.
2010-01-20gdbTom Tromey3-1/+380
PR backtrace/10770: * valarith.c (value_binop): Handle BINOP_GTR, BINOP_LEQ, and BINOP_GEQ. Handle BINOP_NOTEQUAL in the signed case. * dwarf2expr.c (new_dwarf_expr_context): Allocate dwarf_stack_values, not CORE_ADDRs. (execute_stack_op): Change DW_OP_div and comparison operators to use signed operands. gdb/testsuite PR backtrace/10770: * gdb.dwarf2/pr10770.exp: New file. * gdb.dwarf2/pr10770.c: New file. * gdb.dwarf2/Makefile.in (EXECUTABLES): Add pr10770.
2010-01-01Update copyright year in most headers.Joel Brobecker39-40/+40
Automatic update by copyright.sh.
2009-11-12 * gdb.base/step-line.exp: Copy step-line.inp to the remote host.Nathan Froyd6-0/+30
* gdb.dwarf2/dw2-basic.exp: Copy file1.txt to the remote host. * gdb.dwarf2/dw2-compressed.exp: Likewise. * gdb.dwarf2/dw2-intercu.exp: Likewise. * gdb.dwarf2/dw2-intermix.exp: Likewise. * gdb.dwarf2/dw2-producer.exp: Likewise. * gdb.dwarf2/mac-fileno.exp: Likewise. * gdb.python/py-prettyprint.exp (run_lang_tests): Copy py-prettyprint.py to the remote host. * gdb.python/py-mi.exp: Copy py-mi.py to the remote host.
2009-11-11gdb/Jan Kratochvil1-0/+6
* objfiles.c (objfile_relocate): Update also the field psymtabs_addrmap. gdb/testsuite/ * gdb.dwarf2/dw2-ranges.exp: Call runto_main.
2009-09-11gdbTom Tromey2-0/+560
* dwarf2loc.c (struct piece_closure) <arch>: New field. (dwarf2_evaluate_loc_desc): Update. (dwarf2_loc_desc_needs_frame): Likewise. (allocate_piece_closure): Initialize new field. (read_pieced_value): Update. (write_pieced_value): Update. (copy_pieced_value_closure): Update. * dwarf2expr.h (enum dwarf_value_location): New. (struct dwarf_expr_context) <in_reg>: Remove. <location, len, data>: New fields. (struct dwarf_expr_piece) <in_reg, value>: Remove. <location, v>: New fields. * dwarf2expr.c (add_piece): Remove in_reg, value arguments. Update. (require_composition): New function. (execute_stack_op): Update. <DW_OP_implicit_value, DW_OP_stack_value>: New cases. <DW_OP_reg0>: Set location, not in_reg. <DW_OP_regx>: Likewise. Use require_composition. <DW_OP_fbreg>: Update. <DW_OP_piece>: Likewise. * dwarf2-frame.c (execute_stack_op): Update. gdb/testsuite * gdb.dwarf2/valop.S: New file. * gdb.dwarf2/valop.exp: New file.
2009-09-02 * gdb.dwarf2/callframecfa.exp: Use gdb_continue_to_breakpoint.Tom Tromey1-2/+6
2009-09-02gdbTom Tromey2-0/+364
* frame.h (frame_unwinder_is): Declare. * frame.c (frame_unwinder_is): New function. * dwarf2loc.c: Include dwarf2-frame.h. (dwarf_expr_frame_cfa): New function. (dwarf2_evaluate_loc_desc): Use it. (needs_frame_frame_cfa): New function. (dwarf2_loc_desc_needs_frame): Use it. * dwarf2expr.h (struct dwarf_expr_context) <get_frame_cfa>: New field. * dwarf2expr.c (execute_stack_op) <DW_OP_call_frame_cfa>: New case. * dwarf2-frame.h (dwarf2_frame_cfa): Declare. * dwarf2-frame.c (no_get_frame_cfa): New function. (execute_stack_op): Use it. (dwarf2_frame_cfa): New function. gdb/testsuite * gdb.dwarf2/callframecfa.exp: New file. * gdb.dwarf2/callframecfa.S: New file.
2009-08-28gdb/Jan Kratochvil2-0/+138
Support constant DW_AT_data_member_location by GCC PR debug/40659. * dwarf2read.c (dwarf2_add_field <DW_TAG_member> <DW_AT_data_member_location>): Initialize BYTE_OFFSET to 0 by default. Explicitly check if attr_form_is_block. (dwarf2_add_field <DW_TAG_inheritance> <DW_AT_data_member_location>) (read_common_block <DW_AT_data_member_location>): New variable byte_offset. Fix crash on non-DW_BLOCK ATTR values. gdb/testsuite/ Support constant DW_AT_data_member_location by GCC PR debug/40659. * gdb.dwarf2/dw2-inheritance.exp, gdb.dwarf2/dw2-inheritance.S: New.
2009-06-30ChangeLog:Paul Pluzhnikov2-0/+87
2009-06-30 Paul Pluzhnikov <ppluzhnikov@google.com> gdb/10275 * dwarf2-frame.c (dwarf2_frame_state): Move cfa_offset, cfa_reg, cfa_how and cfa_exp into regs and adjust users. testsuite/ChangeLog: 2009-06-30 Paul Pluzhnikov <ppluzhnikov@google.com> gdb/10275 * gdb.dwarf2/dw2-restore.{S,exp}: New test.
2009-05-21gdb/Jan Kratochvil2-5/+28
Fix parsing DW_AT_const_value using DW_FORM_string. * dwarf2read.c (dwarf2_const_value <DW_FORM_string>): New. gdb/testsuite/ * gdb.dwarf2/dw2-strp.exp (p a_string2, ptype a_string2): New. * gdb.dwarf2/dw2-strp.S (a_string2): New.
2009-04-02gdb/Jan Kratochvil3-0/+258
* dwarf2read.c (new_symbol <DW_TAG_variable> <!DW_AT_location> <DW_AT_external>): Create the symbol in local scope. * symtab.h (cu->list_in_scope <LOC_UNRESOLVED>): New comment part. gdb/testsuite/ * gdb.dwarf2/dw2-unresolved-main.c, gdb.dwarf2/dw2-unresolved.S, gdb.dwarf2/dw2-unresolved.exp: New.
2009-03-31gdbTom Tromey1-1/+17
2009-03-31 Daniel Jacobowitz <dan@codesourcery.com> Keith Seitz <keiths@redhat.com> Jan Kratochvil <jan.kratochvil@redhat.com> PR gdb/6817 * Makefile.in (dbxread.o): Update. * dbxread.c (read_dbx_symtab): Use cp_canonicalize_string. * dwarf2read.c (GDB_FORM_cached_string): New. (read_partial_die): Use dwarf2_canonicalize_name. (dwarf2_linkage_name): Use dwarf2_name. (dwarf2_canonicalize_name): New. (dwarf2_name): Use dwarf2_canonicalize_name. (dwarf_form_name, dump_die): Handle GDB_FORM_cached_string. * stabsread.c (define_symbol, read_type): Use cp_canonicalize_string. * symtab.c (lookup_symbol_in_language): Canonicalize input before searching. * cp-name-parser.y: operator() requires two parameters, according to libiberty. * minsyms.c (lookup_minimal_symbol): Canonicalize input before searching. * NEWS: Update. gdb/testsuite 2009-03-31 Daniel Jacobowitz <dan@codesourcery.com> Jan Kratochvil <jan.kratochvil@redhat.com> PR gdb/931 * gdb.cp/gdb1355.exp (f_li, f_lui, f_si, f_sui): Allow canonical output. * gdb.cp/templates.exp: Allow canonical output. Remove KFAILs for gdb/931. * dw2-strp.S (DW_AT_language): Change to C++. (DW_TAG_variable (name ""), Abbrev code 7, .Lemptyname): New.
2009-03-26gdb/Jan Kratochvil3-119/+347
Recognize missing DW_AT_location as <value optimized out>. * dwarf2read.c (new_symbol <DW_TAG_variable> <!DW_AT_location> <!DW_AT_external>): Call add_symbol_to_list. gdb/testsuite/ * gdb.dwarf2/dw2-noloc-main.c: New file. * gdb.dwarf2/dw2-noloc.S: New symbols matrix. (.text): Remove. (.data): New. (DW_AT_stmt_list, .debug_line, DW_AT_frame_base): Remove. (DW_AT_low_pc, DW_AT_high_pc): Reference `dw2-noloc-main.c'. (DW_TAG_subprogram func_cu1, noloc): Remove. (main): New. * gdb.dwarf2/dw2-noloc.exp: Use prepare_for_testing, compile also `dw2-noloc-main.c'. Test the new DIEs from `dw2-noloc.S'. (file_symbols): New procedure.
2009-01-03 Updated copyright notices for most files.Joel Brobecker27-28/+28
2008-10-06 * dwarf2read.c (offset_in_cu_p): New function.Doug Evans3-2/+161
(find_partial_die,follow_die_ref): Use it. * gdb.dwarf2/dw2-cu-size.exp: New file. * gdb.dwarf2/dw2-cu-size.S: New file. * gdb.dwarf2/dw2-intercu.S (.Ltype_int_in_cu2): Renamed from .Ltype_int for clarity.
2008-07-27 * gdb.dwarf2/dw2-compressed.S: Also define __start.Daniel Jacobowitz1-0/+2
2008-06-05 * dw2-ref-missing-frame.S, dw2-ref-missing-frame.exp: New files.Jan Kratochvil2-0/+363
2008-05-04 gdb/Jan Kratochvil4-3/+106
* Makefile.in: Update dependencies. * dwarf2read.c: Include "addrmap.h" (struct dwarf2_cu): New fields RANGES_OFFSET and HAS_RANGES_OFFSET. (dwarf2_ranges_read): New prototype. (dwarf2_build_psymtabs_hard): Initialize and prepare PSYMTABS_ADDRMAP. Add discontiguous range to PSYMTABS_ADDRMAP by DWARF2_RANGES_READ on HAS_RANGES_OFFSET, otherwise add there the contiguous range. (dwarf2_ranges_read): New parameter RANGES_PST, update the function comment for it. Add the found ranges to RANGES_PST. New variable BASEADDR, initialize it the common way. (dwarf2_get_pc_bounds): Update the caller for the new parameter. (read_partial_die): `DW_AT_ranges' now only sets RANGES_OFFSET and HAS_RANGES_OFFSET for the later processing. * objfiles.h (struct objfile): New field PSYMTABS_ADDRMAP. * symtab.c: Include "addrmap.h" (find_pc_sect_psymtab): Support reading the field PSYMTABS_ADDRMAP. Move the psymtab locator into ... (find_pc_sect_psymtab_closer): ... a new function. gdb/testsuite/ * gdb.dwarf2/dw2-ranges.S: Merge the secondary section with `.fini'. * gdb.dwarf2/dw2-ranges.exp: Compile also `dw2-ranges2.S' and `dw2-ranges3.S' and test also their MAIN2, FUNC2 and MAIN3 symbols. * gdb.dwarf2/dw2-ranges2.S, gdb.dwarf2/dw2-ranges3.S: New files.
2008-04-30 * gdb.dwarf2/dw2-strp.S: Replace .long by .4byte and .value byPedro Alves1-12/+12
.2byte.
2008-04-25gdb/Pedro Alves2-0/+194
* dwarf2read.c (dwarf2_const_value): Handle DW_FORM_strp. gdb/testsuite/ * gdb.dwarf2/dw2-strp.S, gdb.dwarf2/dw2-strp.exp: New files.
2008-04-19 * configure.ac (AC_SEARCH_LIBS): Add check for zlib.Craig Silverstein2-0/+270
* config.in, configure: Regenerate. * dwarf2read.c: Include zlib.h if present. Modified *_SECTION macros. (section_is_p): New. (dwarf2_locate_sections): Use section_is_p instead of strcmp (dwarf2_resize_section): New. to determine whether a given section has a given name. (zlib_decompress_section): New. (dwarf2_read_section): Read the compressed section if present in the binary. * testsuite/gdb.dwarf2/dw2-compressed.S: New file. * testsuite/gdb.dwarf2/dw2-compressed.exp: New file. * MAINTAINERS: Added myself to section Write After Approval.
2008-04-15 * gdb.dwarf2/dw2-ranges.S: New stub `.file' directive.Jan Kratochvil1-0/+3
2008-01-01 Updated copyright notices for most files.Daniel Jacobowitz18-18/+18
2007-11-25gdb/Jan Kratochvil2-0/+89
* dwarf2read.c (dwarf2_get_pc_bounds): Moved the `DW_AT_ranges' parsing code with its variables OBJFILE, CU_HEADER and OBFD into ... (dwarf2_ranges_read): ... a new function. (read_partial_die): Implemented the parsing of `DW_AT_ranges'. gdb/testsuite/ * gdb.dwarf2/dw2-ranges.S, gdb.dwarf2/dw2-ranges.exp: New files.
2007-08-23 Switch the license of all .exp files to GPLv3.Joel Brobecker14-75/+49
Switch the license of all .f and .f90 files to GPLv3. Switch the license of all .s and .S files to GPLv3.
2007-08-23 Switch the license of all .c files to GPLv3.Joel Brobecker1-5/+3
Switch the license of all .h files to GPLv3. Switch the license of all .cc files to GPLv3.
2007-03-29 * gdb.dwarf2/dw2-noloc.S: New file.Joel Brobecker2-0/+261
* gdb.dwarf2/dw2-noloc.exp: New file.
2007-02-28Move dw2-producer.* from gdb.arch to gdb.dwarf2 where it was supposed toJoel Brobecker2-0/+253
be checked in.
2007-01-31 * gdb.dwarf2/dup-psym.S: Use .2byte/.4byte instead of .short/.intAndreas Schwab2-29/+29
in the dwarf sections. * gdb.dwarf2/mac-fileno.S: Likewise.
2007-01-27 * gdb.dwarf2/dw2-basic.S: Use .2byte/.4byte/.8byte instead ofAndreas Schwab3-46/+46
.short/.int/.quad in the dwarf sections. * gdb.dwarf2/dw2-intercu.S: Likewise. * gdb.dwarf2/dw2-intermix.S: Likewise.
2007-01-09Copyright updates for 2007.Daniel Jacobowitz12-13/+12