Age | Commit message (Collapse) | Author | Files | Lines |
|
* c-typeprint.c (cp_type_print_method_args): Handle 'restrict'.
(c_type_print_modifier): Likewise.
* dwarf2read.c (read_tag_restrict_type): New function.
(read_type_die_1): Handle DW_TAG_restrict_type.
* gdbtypes.c (make_restrict_type): New function.
(recursive_dump_type): Handle TYPE_RESTRICT.
* gdbtypes.h (enum type_flag_values): Renumber.
(enum type_instance_flag_value): Add
TYPE_INSTANCE_FLAG_RESTRICT.
(TYPE_RESTRICT): New macro.
(make_restrict_type): Declare.
gdb/testsuite
* gdb.dwarf2/dw2-restrict.S: New file.
* gdb.dwarf2/dw2-restrict.c: New file.
* gdb.dwarf2/dw2-restrict.exp: New file.
|
|
* psymtab.c (struct psymtab_state): New.
(discard_psymtabs_upto, make_cleanup_discard_psymtabs): New
functions.
* psympriv.h (make_cleanup_discard_psymtabs): Declare.
* dwarf2read.c (dwarf2_build_psymtabs): Catch exceptions.
gdb/testsuite
* gdb.dwarf2/dw2-error.exp: New file.
* gdb.dwarf2/dw2-error.c: New file.
* gdb.dwarf2/dw2-error.S: New file.
|
|
Two modifications:
1. The addition of 2013 to the copyright year range for every file;
2. The use of a single year range, instead of potentially multiple
year ranges, as approved by the FSF.
|
|
Two modifications:
1. The addition of 2013 to the copyright year range for every file;
2. The use of a single year range, instead of potentially multiple
year ranges, as approved by the FSF.
|
|
DW_OP_GNU_implicit_pointer is section-relative.
|
|
(dwarf2_fetch_die_loc_cu_off): Rename from
dwarf2_fetch_die_location_block. Rewrite to use
dwarf2_fetch_die_loc_sect_off.
* dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Declare.
(dwarf2_fetch_die_loc_cu_off): Rename.
* dwarf2loc.c (indirect_pieced_value): Use
dwarf2_fetch_die_loc_sect_off.
* dwarf2expr.h (struct dwarf_expr_context) <len, data>: Update
comment.
(struct dwarf_expr_piece) <v.ptr.die>: Now a sect_offset.
* dwarf2expr.c (add_piece): Update.
(execute_stack_op) <DW_OP_GNU_implicit_pointer>: Update comment.
testsuite
* gdb.dwarf2/implptr-64bit.exp: Run tests with two CUs as well.
(test): Add "two_cu" argument.
* gdb.dwarf2/implptr-64bit.S: Move subprogram later; use ref_addr
for types; allow two CUs.
|
|
* dwarf2read.c (struct dwarf2_cu): New field producer_is_gcc_lt_4_3.
Update the comment for checked_producer.
(check_producer): New forward declaration.
(producer_is_gcc_lt_4_3): New function.
(find_file_and_directory): Simulate *COMP_DIR only for gcc < 4.3.
(check_producer): Initialize also PRODUCER_IS_GCC_LT_4_3.
gdb/testsuite/
* gdb.dwarf2/dw2-compdir-oldgcc.S: New file.
* gdb.dwarf2/dw2-compdir-oldgcc.exp: New file.
|
|
gdb/testsuite/ChangeLog:
* gdb.dwarf2/dw2-icc-opaque.S: Remove '#'.
|
|
(read_common_block): Handle child DIEs with
DW_AT_data_member_location.
(new_symbol_full): Add special case for common blocks.
gdb/testsuite
* gdb.dwarf2/dw2-common-block.S: New file.
* gdb.dwarf2/dw2-common-block.exp: New file.
|
|
Fix internal error on canonicalization of clang types.
* cp-name-parser.y (operator): New comment at make_operator call for
new, delete, new[] and delete[].
(exp): Use "sizeof ". Add new comment at make_operator call.
gdb/testsuite/
Fix internal error on canonicalization of clang types.
* gdb.dwarf2/dw2-canonicalize-type.S: New file.
* gdb.dwarf2/dw2-canonicalize-type.exp: New file.
* lib/gdb.exp (gdb_file_cmd): Catch also GDB internal error.
|
|
gdb/ChangeLog
* findvar.c (read_frame_register_value): Mark the result value as
optimized out if any of the input registers have been optimized out.
gdb/testsuite/ChangeLog
* gdb.dwarf2/dw2-op-out-param.S: New file.
* gdb.dwarf2/dw2-op-out-param.exp: New file.
|
|
* gdb.dwarf2/fission-reread.S: Ditto.
* gdb.dwarf2/fission-base.exp: Remove setting of debug-file-directory.
* gdb.dwarf2/fission-reread.exp: Ditto.
|
|
* c-typeprint.c (c_type_print_varspec_prefix): Pass
-1 for SHOW to c_type_print_base for METHODPTR and MEMBERPTR.
* gdb.dwarf2/dw2-anon-mptr.exp: New file.
* gdb.dwarf2/dw2-anon-mptr.S: New file.
|
|
Fix wrong output on big-endian systems.
* gdb.dwarf2/dw2-icc-opaque.exp: Expect @mode32 attribute on
4-byte pointer types on 64-bit s390x.
|
|
* gdb.dwarf2/pr13961.S: Ditto.
|
|
|
|
Fix a testcase regression by me.
* gdb.dwarf2/fission-reread.S: Fix two DW_FORM_data8 to be
DW_FORM_data4.
|
|
* buildsym.c (end_symtab_1): Split it to ...
(end_symtab_get_static_block): ... this ...
(end_symtab_from_static_block): ... and this function.
(end_symtab, end_expandable_symtab): Call them.
* buildsym.h (end_symtab_get_static_block)
(end_symtab_from_static_block): New declarations.
* dwarf2read.c (process_full_comp_unit): New variable static_block.
Set its valid CU ranges.
gdb/testsuite/
* gdb.dwarf2/dw2-minsym-in-cu.S: New file.
* gdb.dwarf2/dw2-minsym-in-cu.exp: New file.
|
|
* gdb.dwarf2/dw2-anonymous-func.exp: Use
prepare_for_testing_full.
* gdb.dwarf2/dw2-basic.exp: Use prepare_for_testing_full.
* gdb.dwarf2/dw2-compressed.exp: Use prepare_for_testing_full.
* gdb.dwarf2/dw2-const.exp: Use prepare_for_testing_full.
* gdb.dwarf2/dw2-cu-size.exp: Use prepare_for_testing_full.
* gdb.dwarf2/dw2-intercu.exp: Use prepare_for_testing_full.
* gdb.dwarf2/dw2-intermix.exp: Use prepare_for_testing_full.
* gdb.dwarf2/dw2-linkage-name-trust.exp: Use
prepare_for_testing_full.
* gdb.dwarf2/dw2-producer.exp: Use prepare_for_testing_full.
* gdb.dwarf2/dw2-ref-missing-frame.exp: Use
prepare_for_testing_full.
* gdb.dwarf2/dw2-restore.exp: Use prepare_for_testing_full.
* gdb.dwarf2/dw2-strp.exp: Use prepare_for_testing_full.
* gdb.dwarf2/mac-fileno.exp: Use prepare_for_testing_full.
|
|
|
|
* gdb.dwarf2/fission-reread.S: Change # comments to /* */ comments.
|
|
* gdb.dwarf2/fission-reread.S: Remove .section attributes.
Change CU pointer size to 4 bytes, adjust .8byte to .4byte. Remove
.note.GNU-stack.
|
|
(init_cutu_and_read_dies): Handle rereading a DWO CU while it's
currently being read. Propagate DW_AT_comp_dir to DWO DIE.
testsuite/
* gdb.dwarf2/fission-reread.S: New file.
* gdb.dwarf2/fission-reread.exp: New file.
|
|
Delete have_addr_base, unused. All uses updated.
(init_cutu_and_read_dies): Process DW_AT_GNU_ranges_base.
(dwarf2_get_pc_bounds): Add ranges_base.
(dwarf2_record_block_ranges): Ditto.
testsuite/
* gdb.dwarf2/fission-base.c: New file.
* gdb.dwarf2/fission-base.S: New file.
* gdb.dwarf2/fission-base.exp: New file.
|
|
* gdb.dwarf2/callframecfa.exp: Replace $testname by $testfile.
|
|
* gdb.dwarf2/dw2-var-zero-addr.exp: Use standard_testfile.
* gdb.dwarf2/dw2-param-error.exp: Use standard_testfile.
* gdb.dwarf2/dw2-op-call.exp: Use standard_testfile.
* gdb.dwarf2/dw2-inline-param.exp: Use standard_testfile,
prepare_for_testing.
* gdb.dwarf2/dw2-inline-break.exp: Use standard_testfile.
* gdb.dwarf2/dw2-ifort-parameter.exp: Use standard_testfile.
* gdb.dwarf2/dw2-cp-infcall-ref-static.exp: Use
standard_testfile.
* gdb.dwarf2/dw2-case-insensitive.exp: Use standard_testfile.
* gdb.dwarf2/dw4-sig-types.exp: Use standard_testfile.
* gdb.dwarf2/dw2-objfile-overlap.exp: Use standard_testfile.
* gdb.dwarf2/callframecfa.exp: Use standard_testfile,
prepare_for_testing.
* gdb.dwarf2/dup-psym.exp: Use standard_testfile.
* gdb.dwarf2/dw2-ada-ffffffff.exp: Use standard_testfile.
* gdb.dwarf2/dw2-anonymous-func.exp: Use standard_testfile.
* gdb.dwarf2/dw2-bad-parameter-type.exp: Use standard_testfile.
* gdb.dwarf2/dw2-basic.exp: Use standard_testfile.
* gdb.dwarf2/dw2-compressed.exp: Use standard_testfile.
* gdb.dwarf2/dw2-const.exp: Use standard_testfile.
* gdb.dwarf2/dw2-cu-size.exp: Use standard_testfile.
* gdb.dwarf2/dw2-double-set-die-type.exp: Use standard_testfile.
* gdb.dwarf2/dw2-empty-namespace.exp: Use standard_testfile.
* gdb.dwarf2/dw2-empty-pc-range.exp: Use standard_testfile.
* gdb.dwarf2/dw2-filename.exp: Use standard_testfile.
* gdb.dwarf2/dw2-icc-opaque.exp: Use standard_testfile.
* gdb.dwarf2/dw2-inheritance.exp: Use standard_testfile.
* gdb.dwarf2/dw2-intercu.exp: Use standard_testfile.
* gdb.dwarf2/dw2-intermix.exp: Use standard_testfile.
* gdb.dwarf2/dw2-linkage-name-trust.exp: Use standard_testfile.
* gdb.dwarf2/dw2-modula2-self-type.exp: Use standard_testfile.
* gdb.dwarf2/dw2-namespaceless-anonymous.exp: Use standard_testfile.
* gdb.dwarf2/dw2-op-stack-value.exp: Use standard_testfile.
* gdb.dwarf2/dw2-producer.exp: Use standard_testfile.
* gdb.dwarf2/dw2-ranges.exp: Use standard_testfile,
standard_output_file.
* gdb.dwarf2/dw2-ref-missing-frame.exp: Use standard_testfile,
standard_output_file.
* gdb.dwarf2/dw2-restore.exp: Use standard_testfile.
* gdb.dwarf2/dw2-simple-locdesc.exp: Use standard_testfile.
* gdb.dwarf2/dw2-skip-prologue.exp: Use standard_testfile.
* gdb.dwarf2/dw2-stack-boundary.exp: Use standard_testfile.
* gdb.dwarf2/dw2-strp.exp: Use standard_testfile.
* gdb.dwarf2/dw4-sig-type-unused.exp: Use standard_testfile.
* gdb.dwarf2/implptr-64bit.exp: Use standard_testfile.
* gdb.dwarf2/implptr-optimized-out.exp: Use standard_testfile.
* gdb.dwarf2/implptr.exp: Use standard_testfile.
* gdb.dwarf2/mac-fileno.exp: Use standard_testfile.
* gdb.dwarf2/member-ptr-forwardref.exp: Use standard_testfile.
* gdb.dwarf2/pieces.exp: Use standard_testfile.
* gdb.dwarf2/pr11465.exp: Use standard_testfile.
* gdb.dwarf2/pr13961.exp: Use standard_testfile.
* gdb.dwarf2/valop.exp: Use standard_testfile,
prepare_for_testing.
|
|
(build_executable): Update.
(get_compiler_info): Remove 'binfile' argument.
* gdb.ada/arrayidx.exp: Update.
* gdb.ada/null_array.exp: Update.
* gdb.arch/altivec-abi.exp: Update.
* gdb.arch/altivec-regs.exp: Update.
* gdb.arch/amd64-byte.exp: Update.
* gdb.arch/amd64-dword.exp: Update.
* gdb.arch/amd64-word.exp: Update.
* gdb.arch/i386-avx.exp: Update.
* gdb.arch/i386-byte.exp: Update.
* gdb.arch/i386-sse.exp: Update.
* gdb.arch/i386-word.exp: Update.
* gdb.arch/ppc-dfp.exp: Update.
* gdb.arch/ppc-fp.exp: Update.
* gdb.arch/vsx-regs.exp: Update.
* gdb.base/all-bin.exp: Update.
* gdb.base/annota1.exp: Update.
* gdb.base/async.exp: Update.
* gdb.base/attach.exp: Update.
* gdb.base/break-interp.exp: Update.
* gdb.base/call-ar-st.exp: Update.
* gdb.base/call-rt-st.exp: Update.
* gdb.base/call-sc.exp: Update.
* gdb.base/callfuncs.exp: Update.
* gdb.base/catch-load.exp: Update.
* gdb.base/completion.exp: Update.
* gdb.base/complex.exp: Update.
* gdb.base/condbreak.exp: Update.
* gdb.base/consecutive.exp: Update.
* gdb.base/constvars.exp: Update.
* gdb.base/corefile.exp: Update.
* gdb.base/eval-skip.exp: Update.
* gdb.base/expand-psymtabs.exp: Update.
* gdb.base/exprs.exp: Update.
* gdb.base/fileio.exp: Update.
* gdb.base/fixsection.exp: Update.
* gdb.base/funcargs.exp: Update.
* gdb.base/gdb11530.exp: Update.
* gdb.base/gdb1555.exp: Update.
* gdb.base/gnu-ifunc.exp: Update.
* gdb.base/gnu_vector.exp: Update.
* gdb.base/info-macros.exp: Update.
* gdb.base/jit-simple.exp: Update.
* gdb.base/jit-so.exp: Update.
* gdb.base/jit.exp: Update.
* gdb.base/langs.exp: Update.
* gdb.base/list.exp: Update.
* gdb.base/logical.exp: Update.
* gdb.base/long_long.exp: Update.
* gdb.base/longjmp.exp: Update.
* gdb.base/macscp.exp: Update.
* gdb.base/mips_pro.exp: Update.
* gdb.base/miscexprs.exp: Update.
* gdb.base/morestack.exp: Update.
* gdb.base/nodebug.exp: Update.
* gdb.base/opaque.exp: Update.
* gdb.base/pc-fp.exp: Update.
* gdb.base/pending.exp: Update.
* gdb.base/permissions.exp: Update.
* gdb.base/pointers.exp: Update.
* gdb.base/prelink.exp: Update.
* gdb.base/printcmds.exp: Update.
* gdb.base/psymtab.exp: Update.
* gdb.base/ptype.exp: Update.
* gdb.base/relational.exp: Update.
* gdb.base/scope.exp: Update.
* gdb.base/setvar.exp: Update.
* gdb.base/shlib-call.exp: Update.
* gdb.base/shreloc.exp: Update.
* gdb.base/signals.exp: Update.
* gdb.base/sizeof.exp: Update.
* gdb.base/so-impl-ld.exp: Update.
* gdb.base/so-indr-cl.exp: Update.
* gdb.base/solib-disc.exp: Update.
* gdb.base/solib-display.exp: Update.
* gdb.base/solib-nodir.exp: Update.
* gdb.base/solib-overlap.exp: Update.
* gdb.base/solib-symbol.exp: Update.
* gdb.base/solib-weak.exp: Update.
* gdb.base/solib.exp: Update.
* gdb.base/store.exp: Update.
* gdb.base/structs.exp: Update.
* gdb.base/structs2.exp: Update.
* gdb.base/type-opaque.exp: Update.
* gdb.base/unload.exp: Update.
* gdb.base/varargs.exp: Update.
* gdb.base/volatile.exp: Update.
* gdb.base/watch_thread_num.exp: Update.
* gdb.base/watchpoint-solib.exp: Update.
* gdb.base/watchpoint.exp: Update.
* gdb.base/watchpoints.exp: Update.
* gdb.base/whatis.exp: Update.
* gdb.cell/arch.exp: Update.
* gdb.cell/break.exp: Update.
* gdb.cell/bt.exp: Update.
* gdb.cell/core.exp: Update.
* gdb.cell/data.exp: Update.
* gdb.cell/ea-cache.exp: Update.
* gdb.cell/f-regs.exp: Update.
* gdb.cell/fork.exp: Update.
* gdb.cell/gcore.exp: Update.
* gdb.cell/mem-access.exp: Update.
* gdb.cell/ptype.exp: Update.
* gdb.cell/registers.exp: Update.
* gdb.cell/sizeof.exp: Update.
* gdb.cell/solib-symbol.exp: Update.
* gdb.cell/solib.exp: Update.
* gdb.cp/ambiguous.exp: Update.
* gdb.cp/breakpoint.exp: Update.
* gdb.cp/bs15503.exp: Update.
* gdb.cp/casts.exp: Update.
* gdb.cp/class2.exp: Update.
* gdb.cp/cpexprs.exp: Update.
* gdb.cp/cplusfuncs.exp: Update.
* gdb.cp/ctti.exp: Update.
* gdb.cp/dispcxx.exp: Update.
* gdb.cp/gdb1355.exp: Update.
* gdb.cp/gdb2384.exp: Update.
* gdb.cp/gdb2495.exp: Update.
* gdb.cp/infcall-dlopen.exp: Update.
* gdb.cp/local.exp: Update.
* gdb.cp/m-data.exp: Update.
* gdb.cp/m-static.exp: Update.
* gdb.cp/mb-ctor.exp: Update.
* gdb.cp/mb-inline.exp: Update.
* gdb.cp/mb-templates.exp: Update.
* gdb.cp/member-ptr.exp: Update.
* gdb.cp/method.exp: Update.
* gdb.cp/namespace.exp: Update.
* gdb.cp/nextoverthrow.exp: Update.
* gdb.cp/nsdecl.exp: Update.
* gdb.cp/nsrecurs.exp: Update.
* gdb.cp/nsstress.exp: Update.
* gdb.cp/nsusing.exp: Update.
* gdb.cp/pr-1023.exp: Update.
* gdb.cp/pr-1210.exp: Update.
* gdb.cp/pr-574.exp: Update.
* gdb.cp/pr9631.exp: Update.
* gdb.cp/printmethod.exp: Update.
* gdb.cp/psmang.exp: Update.
* gdb.cp/re-set-overloaded.exp: Update.
* gdb.cp/rtti.exp: Update.
* gdb.cp/shadow.exp: Update.
* gdb.cp/templates.exp: Update.
* gdb.cp/try_catch.exp: Update.
* gdb.dwarf2/dw2-ranges.exp: Update.
* gdb.dwarf2/pr10770.exp: Update.
* gdb.fortran/library-module.exp: Update.
* gdb.hp/gdb.aCC/optimize.exp: Update.
* gdb.hp/gdb.aCC/watch-cmd.exp: Update.
* gdb.hp/gdb.base-hp/callfwmall.exp: Update.
* gdb.hp/gdb.base-hp/hwwatchbus.exp: Update.
* gdb.hp/gdb.base-hp/pxdb.exp: Update.
* gdb.hp/gdb.base-hp/sized-enum.exp: Update.
* gdb.hp/gdb.base-hp/so-thresh.exp: Update.
* gdb.hp/gdb.compat/xdb1.exp: Update.
* gdb.hp/gdb.compat/xdb2.exp: Update.
* gdb.hp/gdb.compat/xdb3.exp: Update.
* gdb.hp/gdb.defects/bs14602.exp: Update.
* gdb.hp/gdb.defects/solib-d.exp: Update.
* gdb.hp/gdb.objdbg/objdbg01.exp: Update.
* gdb.hp/gdb.objdbg/objdbg02.exp: Update.
* gdb.hp/gdb.objdbg/objdbg03.exp: Update.
* gdb.hp/gdb.objdbg/objdbg04.exp: Update.
* gdb.mi/gdb792.exp: Update.
* gdb.mi/mi-pending.exp: Update.
* gdb.mi/mi-solib.exp: Update.
* gdb.mi/mi-var-cp.exp: Update.
* gdb.opt/clobbered-registers-O2.exp: Update.
* gdb.opt/inline-bt.exp: Update.
* gdb.opt/inline-cmds.exp: Update.
* gdb.opt/inline-locals.exp: Update.
* gdb.python/py-events.exp: Update.
* gdb.python/py-finish-breakpoint.exp: Update.
* gdb.python/py-type.exp: Update.
* gdb.reverse/solib-precsave.exp: Update.
* gdb.reverse/solib-reverse.exp: Update.
* gdb.server/solib-list.exp: Update.
* gdb.stabs/weird.exp: Update.
* gdb.threads/attach-into-signal.exp: Update.
* gdb.threads/attach-stopped.exp: Update.
* gdb.threads/tls-shared.exp: Update.
* gdb.trace/change-loc.exp: Update.
* gdb.trace/strace.exp: Update.
|
|
* psymtab.c (lookup_symbol_aux_psymtabs): New variable stab_best. Use
it as a fallback for TYPE_IS_OPAQUE.
* symfile.h (struct quick_symbol_functions): Mention TYPE_OPAQUE
symbols for lookup_symbol.
gdb/testsuite/
* gdb.dwarf2/dw2-icc-opaque.S: Add debug_info_seg3 and
.debug_abbrev_seg3.
|
|
PR symtab/13277: Resolving opaque structures in ICC generated binaries.
* dwarf2read.c (struct dwarf2_cu) <producer_is_icc>: New field.
(producer_is_gxx_lt_4_6): Move the checking and caching to...
(check_producer): ... this new function, which also checks for ICC
and caches the result.
(producer_is_icc): New function.
(read_structure_type): Don't set TYPE_STUB_SUPPORTED if the
producer was ICC.
gdb/testsuite/
PR symtab/13277: Resolving opaque structures in ICC generated binaries.
* gdb.dwarf2/dw2-icc-opaque.S: New file.
* gdb.dwarf2/dw2-icc-opaque.exp: New file.
|
|
* gdb.ada/Makefile.in (clean): Ditto.
* gdb.arch/Makefile.in (clean): Ditto.
* gdb.asm/Makefile.in (clean): Ditto.
* gdb.base/Makefile.in (clean): Ditto.
* gdb.cell/Makefile.in (clean): Ditto.
* gdb.cp/Makefile.in (clean): Ditto.
* gdb.disasm/Makefile.in (clean): Ditto.
* gdb.dwarf2/Makefile.in (clean): Ditto.
* gdb.fortran/Makefile.in (clean): Ditto.
* gdb.go/Makefile.in (clean): Ditto.
* gdb.hp/Makefile.in (clean): Ditto.
* gdb.hp/gdb.aCC/Makefile.in (clean): Ditto.
* gdb.hp/gdb.base-hp/Makefile.in (clean): Ditto.
* gdb.hp/gdb.compat/Makefile.in (clean): Ditto.
* gdb.hp/gdb.defects/Makefile.in (clean): Ditto.
* gdb.hp/gdb.objdbg/Makefile.in (clean): Ditto.
* gdb.java/Makefile.in (clean): Ditto.
* gdb.linespec/Makefile.in (clean): Ditto.
* gdb.mi/Makefile.in (clean): Ditto.
* gdb.modula2/Makefile.in (clean): Ditto.
* gdb.multi/Makefile.in (clean): Ditto.
* gdb.objc/Makefile.in (clean): Ditto.
* gdb.opencl/Makefile.in (clean): Ditto.
* gdb.opt/Makefile.in (clean): Ditto.
* gdb.pascal/Makefile.in (clean): Ditto.
* gdb.python/Makefile.in (clean): Ditto.
* gdb.reverse/Makefile.in (clean): Ditto.
* gdb.server/Makefile.in (clean): Ditto.
* gdb.stabs/Makefile.in (clean): Ditto.
* gdb.threads/Makefile.in (clean): Ditto.
* gdb.trace/Makefile.in (clean): Ditto.
* gdb.xml/Makefile.in (clean): Ditto.
|
|
commented out.
|
|
init_and_read_dies_worker. All callers updated.
(init_cu_and_read_dies, init_tu_and_read_dies): Delete. All calls
replaced with init_cutu_and_read_dies.
(load_partial_comp_unit): Pass 1 for use_existing_cu.
(find_partial_die): Remove FIXME. Don't free current CU.
testsuite/
* gdb.dwarf2/pr13961.S: New file.
* gdb.dwarf2/pr13961.exp: New file.
|
|
* gdb.dwarf2/dw2-ifort-parameter.exp: Use proc `dwarf2_support'.
|
|
* symfile.c (default_symfile_relocate): Use sectp->owner instead of
objfile->obfd.
* symfile.h (dwarf2_debug_sections): New member addr.
* dwarf2expr.c (execute_stack_op): New case DW_OP_GNU_addr_index.
(ctx_no_get_addr_index): New function.
* dwarf2expr.h (dwarf_expr_context_funcs): New member get_addr_index.
(ctx_no_get_addr_index): Declare.
* dwarf2-frame.c (dwarf2_frame_ctx_funcs): Update.
* dwarf2loc.c (dwarf_expr_get_addr_index): New function.
(dwarf_expr_ctx_funcs): Update.
(needs_get_addr_index): New function.
(needs_frame_ctx_funcs): Update.
* dwarf2loc.h (dwarf2_read_addr_index): Declare.
* dwarf2read.c: #include "gdbcore.h".
(dwarf2_per_objfile): New members addr, dwo_files.
(dwarf2_elf_names): Add entry for addr.
(struct dwo_section_names): New type.
(dwo_section_names): New static global.
(dwarf2_cu): New members dwo_unit, addr_base, have_addr_base.
(dwarf2_per_cu_data): New member is_debug_types, all boolean uses of
old debug_types_section member updated to use this.
Rename member debug_types_section to info_or_types_section,
all uses updated.
(signatured_type): Rename member type_offset to type_offset_in_tu,
all uses updated. New member type_offset_in_section.
(struct dwo_sections): New type.
(struct dwo_unit): New type.
(struct dwo_file): New type.
(die_reader_specs): New member dwo_file.
(dwarf2_locate_sections): Watch for .debug_addr.
(zlib_decompress_section): Use sectp->owner instead of objfile->obfd.
(dwarf2_read_section): Get bfd of section from bfd's asection,
instead of objfile.
(create_cus_from_index): Initialize the_cu->info_or_types_section.
(create_signatured_type_table_from_index): Initialize
sig_type->info_or_types_section.
(dw2_get_file_names): Statement lists for type units with DWO files
live in the DWO file.
(create_debug_types_hash_table): New function.
(create_all_type_units): Rewrite.
(init_cu_die_reader): New arg dwo_file, all callers updated.
(init_and_read_dies_worker): Get section from
this_cu->info_or_types_section. Set sig_type->type_offset_in_section.
Watch for DW_AT_GNU_dwo_name and if present lookup the file and
continue reading the CU/TU from there.
(init_cutu_and_read_dies_no_follow): New arg dwo_file, all callers
updated. Get section from this_cu->info_or_types_section.
(create_all_comp_units): Initialize this_cu->info_or_types_section.
(skip_one_die): New cases DW_FORM_GNU_addr_index,
DW_FORM_GNU_str_index.
(hash_dwo_file, eq_dwo_file): New functions.
(allocate_dwo_file_hash_table): New function.
(hash_dwo_unit, eq_dwo_unit): New functions.
(allocate_dwo_unit_table): New function.
(dwarf2_locate_dwo_sections): New function.
(struct create_dwo_info_table_data): New type.
(create_debug_info_hash_table_reader): New function.
(create_debug_info_hash_table): New function.
(try_open_dwo_file, open_dwo_file, init_dwo_file): New function.
(lookup_dwo_file): New function.
(lookup_dwo_comp_unit, lookup_dwo_type_unit): New functions.
(free_dwo_file, free_dwo_file_cleanup): New functions.
(free_dwo_file_from_slot, free_dwo_files): New functions.
(dwarf2_get_pc_bounds): Handle DW_FORM_GNU_addr_index.
(dwarf2_record_block_ranges): Ditto.
(read_partial_die): Ditto.
(process_enumeration_scope): Update to use type_offset_in_section.
(read_full_die_1): New function.
(read_full_die): Rewrite.
(read_attribute_value): New cases DW_FORM_GNU_addr_index,
DW_FORM_GNU_str_index.
(read_addr_index_1, read_addr_index): New functions.
(read_addr_index_from_leb128): New function.
(struct dwarf2_read_addr_index_data): New type.
(dwarf2_read_addr_index_reader): New function.
(dwarf2_read_addr_index): New function.
(read_str_index): New function.
(leb128_size): New function.
(dwarf_decode_line_header): Delete arg abfd, all callers updated.
If processing a type unit from a DWO file, get the line section
from the DWO file.
(var_decode_location): Watch for DW_OP_GNU_addr_index.
(dwarf2_const_value_attr): New cases DW_FORM_GNU_addr_index,
DW_FORM_GNU_str_index.
(lookup_die_type): Check whether section offset of type's die is
known before looking it up. Remove assert. Condition can
legimately happen for inter-cu type references.
(dwarf_attr_name): Handle Fission attributes.
(dwarf_form_name): Handle Fission forms.
(dump_die_shallow): New cases DW_FORM_GNU_addr_index,
DW_FORM_GNU_str_index.
(follow_die_sig): Update to use type_offset_in_section.
(decode_locdesc): New case DW_OP_GNU_addr_index.
(skip_form_bytes): New cases DW_FORM_GNU_addr_index,
DW_FORM_GNU_str_index.
(cu_debug_loc_section): New function.
(fill_in_loclist_baton, dwarf2_symbol_mark_computed): Call it.
(dwarf2_per_objfile_free): Unmap .debug_addr section.
Free DWO files if present.
* xcoffread.c (dwarf2_xcoff_names): Add .debug_addr.
testsuite/
* gdb.dwarf2/dw2-intercu.S (.Ltype_int2_in_cu2): Renamed from
.Ltype_int_in_cu2. Use name "int2" instead of "int".
All uses updated.
* gdb.dwarf2/dw2-intercu.exp: Add "ptype int2" ahead of
"ptype func_cu1" to expand cu2 before cu1.
|
|
PR symtab/13777
* dwarf2read.c (process_full_comp_unit): Set LOCATIONS_VALID only for
GCC >=4.5.
gdb/testsuite/
PR symtab/13777
* gdb.dwarf2/dw2-skip-prologue.S (DW_AT_producer): Set it to 4.5.0.
|
|
PR breakpoints/10738
* dwarf2read.c (use_deprecated_index_sections): New global.
(struct partial_die_info): New member may_be_inlined.
(read_partial_die): Set may_be_inlined where appropriate.
(add_partial_subprogram): Add partial symbols for partial
DIEs that may be inlined.
(new_symbol_full): Add inlined subroutines to the current
scope.
(write_psymtabs_to_index): Bump version number.
(dwarf2_read_index): Read only version 6 indices unless
use_deprecated_index_sections is set.
* linespec.c (symbol_and_data_callback): New structure.
(iterate_inline_only): New function.
(iterate_over_all_matching_symtabs): New argument
"include_inline". If nonzero, also call the callback for
symbols representing inlined subroutines.
(lookup_prefix_sym): Pass extra argument to the above.
(find_function_symbols): Likewise.
(add_matching_symbols_to_info): Likewise.
* NEWS: Mention that GDB can now set breakpoints on inlined
functions.
gdb/doc:
PR breakpoints/10738
* gdb.texinfo (Inline Functions): Remove the now-unnecessary @item
stating that GDB cannot set breakpoints on inlined functions.
(Mode Options): Document --use-deprecated-index-sections.
(Index Section Format): Document new index section version format.
gdb/testsuite:
PR breakpoints/10738
* gdb.opt/inline-break.exp: New file.
* gdb.opt/inline-break.c: Likewise.
* gdb.dwarf2/inline-break.exp: Likewise.
* gdb.dwarf2/inline-break.S: Likewise.
* gdb.base/annota1.exp: Cope with old .gdb_index warnings.
* gdb.base/async-shell.exp: Likewise.
* lib/mi-support.exp (library_loaded_re): Likewise.
|
|
* gdb.dwarf2/dw2-ada-ffffffff.S: Use .4byte instead of .long for
describing DWARF data structures.
* gdb.dwarf2/dw2-bad-parameter-type.S: Likewise.
* gdb.dwarf2/dw2-double-set-die-type.S: Likewise.
* gdb.dwarf2/dw2-empty-pc-range.S: Likewise.
* gdb.dwarf2/dw2-entry-value.S: Likewise.
* gdb.dwarf2/dw2-modula2-self-type.S: Likewise.
* gdb.dwarf2/dw2-param-error.S: Likewise.
* gdb.dwarf2/dw2-skip-prologue.S: Likewise.
* gdb.dwarf2/dw2-stack-boundary.S: Likewise.
* gdb.dwarf2/dw4-sig-type-unused.S: Likewise.
* gdb.dwarf2/implptr-optimized-out.S: Likewise.
* gdb.dwarf2/member-ptr-forwardref.S: Likewise.
* gdb.dwarf2/pr11465.S: Likewise.
|
|
Fix CU relative vs. absolute DIE offsets.
* dwarf2loc.h (dwarf2_fetch_die_location_block): Rename parameter
offset to offset_in_cu.
* dwarf2read.c (process_enumeration_scope): Add CU offset to
TYPE_OFFSET.
(dwarf2_fetch_die_location_block): Rename parameter offset to
offset_in_cu. New variable offset, add CU offset to OFFSET_IN_CU.
gdb/testsuite/
Fix CU relative vs. absolute DIE offsets.
* gdb.dwarf2/dw2-op-call.S: New compilation unit preceding the existing
one.
|
|
* gdb.arch/altivec-abi.exp (altivec_abi_tests): Don't do
with_test_prefix here.
(top level): Do it here instead. Remove `:' from the
with_test_prefix string.
* gdb.base/attach-pie-misread.exp: Remove the leading space the
the suffix `:' from the with_test_prefix prefix string.
* gdb.base/break-interp.exp: Ditto.
* gdb.base/catch-load.exp: Ditto.
* gdb.base/disp-step-syscall.exp: Ditto.
* gdb.base/jit-so.exp: Ditto.
* gdb.base/jit.exp: Ditto.
* gdb.base/sepdebug.exp: Ditto.
* gdb.base/solib-display.exp: Ditto.
* gdb.base/solib-overlap.exp: Ditto.
* gdb.base/watch-cond-infcall.exp: Ditto.
* gdb.base/watchpoint.exp: Ditto.
* gdb.dwarf2/dw2-noloc.exp: Ditto.
* gdb.mi/mi-watch.exp: Ditto.
* gdb.mi/mi2-watch.exp: Ditto.
* gdb.threads/non-ldr-exc-1.exp: Ditto.
* gdb.threads/non-ldr-exc-2.exp: Ditto.
* gdb.threads/non-ldr-exc-3.exp: Ditto.
* gdb.threads/non-ldr-exc-4.exp: Ditto.
* gdb.threads/watchpoint-fork.exp: Ditto.
* gdb.threads/watchthreads-reorder.exp: Ditto.
* gdb.trace/change-loc.exp: Ditto.
* gdb.trace/pending.exp: Ditto.
* gdb.trace/status-stop.exp: Ditto.
* gdb.trace/strace.exp: Ditto.
* gdb.trace/trace-break.exp: Ditto.
* gdb.trace/unavailable.exp: Ditto.
* lib/gdb.exp (with_test_prefix): Always prefix with space and
suffix with colon. Adjust leading comments.
|
|
Tom Tromey <tromey@redhat.com>
* lib/gdb.exp: Add description of test prefixes.
(with_test_prefix): New procedure.
* gdb.arch/altivec-abi.exp: Use with_test_prefix.
* gdb.base/attach-pie-misread.exp: Use with_test_prefix.
* gdb.base/break-interp.exp: Use with_test_prefix. Use append
instead of lappend to append to pf_prefix.
* gdb.base/catch-load.exp: Use with_test_prefix.
* gdb.base/disp-step-syscall.exp: Use with_test_prefix.
* gdb.base/jit-so.exp: Use with_test_prefix.
* gdb.base/jit.exp: Use with_test_prefix.
* gdb.base/return-nodebug.exp (do_test): Use append instead of
lappend to append to pf_prefix.
* gdb.base/sepdebug.exp: Use with_test_prefix.
* gdb.base/solib-display.exp: Use with_test_prefix.
* gdb.base/solib-overlap.exp: Use with_test_prefix.
* gdb.base/watch-cond-infcall.exp: Use with_test_prefix.
* gdb.base/watchpoint.exp: Use with_test_prefix.
* gdb.dwarf2/dw2-noloc.exp: Use with_test_prefix.
* gdb.mi/mi-watch.exp: Use with_test_prefix.
* gdb.mi/mi2-watch.exp: Use with_test_prefix.
* gdb.threads/non-ldr-exc-1.exp: Use with_test_prefix.
* gdb.threads/non-ldr-exc-2.exp: Use with_test_prefix.
* gdb.threads/non-ldr-exc-3.exp: Use with_test_prefix.
* gdb.threads/non-ldr-exc-4.exp: Use with_test_prefix.
* gdb.threads/watchpoint-fork.exp: Use with_test_prefix. Use
append instead of lappend to append to pf_prefix.
* gdb.threads/watchthreads-reorder.exp: Use with_test_prefix.
* gdb.trace/change-loc.exp: Use with_test_prefix.
* gdb.trace/pending.exp: Use with_test_prefix.
* gdb.trace/status-stop.exp: Use with_test_prefix.
* gdb.trace/strace.exp: Use with_test_prefix.
* gdb.trace/trace-break.exp: Use with_test_prefix.
* gdb.trace/unavailable.exp: Use with_test_prefix. Use append
instead of lappend to append to pf_prefix.
|
|
* gdb.dwarf2/dw2-namespaceless-anonymous.S: New file.
* gdb.dwarf2/dw2-namespaceless-anonymous.exp: New file.
|
|
gdb/ChangeLog:
Copyright year update in most files of the GDB Project.
|
|
|
|
2011-12-13 Pedro Alves <pedro@codesourcery.com>
* gdb.texinfo (Implementing a Remote Stub): Explain that you
should transfer control to the stub in the startup code instead of
in main. Mention the need to get past the initial breakpoint.
gdb/testsuite/
2011-12-13 Pedro Alves <pedro@codesourcery.com>
Doug Evans <dje@google.com>
* lib/gdb.exp (gdb_run_cmd, runto_main, gdb_compile)
(clean_restart): Remove references to the gdb_stub target board
variable.
(gdb_step_for_stub): Delete.
* gdb.base/annota1.exp: Remove all references to [target_info
exists gdb_stub], gdb_step_for_stub and usestubs.
* gdb.base/annota3.exp: Ditto.
* gdb.base/async.exp: Ditto.
* gdb.base/break.exp: Ditto.
* gdb.base/code-expr.exp: Ditto.
* gdb.base/commands.exp: Ditto.
* gdb.base/completion.exp: Ditto.
* gdb.base/condbreak.exp: Ditto.
* gdb.base/consecutive.exp: Ditto.
* gdb.base/cvexpr.exp: Ditto.
* gdb.base/define.exp: Ditto.
* gdb.base/display.exp: Ditto.
* gdb.base/ena-dis-br.exp: Ditto.
* gdb.base/environ.exp: Ditto.
* gdb.base/gnu-ifunc.exp: Ditto.
* gdb.base/maint.exp: Ditto.
* gdb.base/pending.exp: Ditto.
* gdb.base/sect-cmd.exp: Ditto.
* gdb.base/sepdebug.exp: Ditto.
* gdb.base/unload.exp: Ditto.
* gdb.base/watchpoint-solib.exp: Ditto.
* gdb.cp/annota2.exp: Ditto.
* gdb.cp/annota3.exp: Ditto.
* gdb.dwarf2/dw2-inline-param.exp: Ditto.
* gdb.hp/gdb.compat/xdb1.exp: Ditto.
* gdb.mi/mi-pending.exp: Ditto.
* gdb.trace/circ.exp: Ditto.
* gdb.cp/ovldbreak.exp: Ditto. Adjust expected line numbers.
* gdb.base/list.exp: Ditto.
* gdb.base/all-types.c: Remove all calls to set_debug_traps and
breakpoint function and all references to the usestubs macro.
* gdb.base/exprs.c: Ditto.
* gdb.base/freebpcmd.c: Ditto.
* gdb.base/bitfields.c: Ditto.
* gdb.base/bitfields2.c: Ditto.
* gdb.base/break.c: Ditto.
* gdb.base/call-sc.c: Ditto.
* gdb.base/call-signals.c: Ditto.
* gdb.base/callfuncs.c: Ditto.
* gdb.base/charset.c: Ditto.
* gdb.base/consecutive.c: Ditto.
* gdb.base/constvars.c: Ditto.
* gdb.base/funcargs.c: Ditto.
* gdb.base/int-type.c: Ditto.
* gdb.base/interrupt.c: Ditto.
* gdb.base/langs0.c: Ditto.
* gdb.base/list0.c: Ditto.
* gdb.base/mips_pro.c: Ditto.
* gdb.base/miscexprs.c: Ditto.
* gdb.base/nodebug.c: Ditto.
* gdb.base/opaque0.c: Ditto.
* gdb.base/pointers.c: Ditto.
* gdb.base/printcmds.c: Ditto.
* gdb.base/ptype.c: Ditto.
* gdb.base/recurse.c: Ditto.
* gdb.base/reread1.c: Ditto.
* gdb.base/reread2.c: Ditto.
* gdb.base/restore.c: Ditto.
* gdb.base/return.c: Ditto.
* gdb.base/run.c: Ditto.
* gdb.base/scope0.c: Ditto.
* gdb.base/sepdebug.c: Ditto.
* gdb.base/setshow.c: Ditto.
* gdb.base/setvar.c: Ditto.
* gdb.base/sigall.c: Ditto.
* gdb.base/signals.c: Ditto.
* gdb.base/structs.c: Ditto.
* gdb.base/structs2.c: Ditto.
* gdb.base/testenv.c: Ditto.
* gdb.base/twice.c: Ditto.
* gdb.base/unwindonsignal.c: Ditto.
* gdb.base/watchpoint.c: Ditto.
* gdb.base/watchpoints.c: Ditto.
* gdb.base/whatis.c: Ditto.
* gdb.cp/classes.cc: Ditto.
* gdb.cp/cplusfuncs.cc: Ditto.
* gdb.cp/derivation.cc: Ditto.
* gdb.cp/formatted-ref.cc: Ditto.
* gdb.cp/misc.cc: Ditto.
* gdb.cp/overload.cc: Ditto.
* gdb.cp/ovldbreak.cc: Ditto.
* gdb.cp/ref-params.cc: Ditto.
* gdb.cp/ref-types.cc: Ditto.
* gdb.cp/templates.cc: Ditto.
* gdb.cp/virtfunc.cc: Ditto.
* gdb.hp/gdb.aCC/run.c: Ditto.
* gdb.hp/gdb.base-hp/callfwmall.c: Ditto.
* gdb.hp/gdb.compat/xdb0.c: Ditto.
* gdb.reverse/consecutive-reverse.c: Ditto.
* gdb.reverse/sigall-reverse.c: Ditto.
* gdb.reverse/until-reverse.c: Ditto.
* gdb.reverse/watch-reverse.c: Ditto.
* gdb.trace/actions.c: Ditto.
* gdb.trace/circ.c: Ditto.
* gdb.trace/collection.c: Ditto.
|
|
PR threads/13448
* dwarf2read.c (decode_locdesc): Handle DW_OP_const8u.
For DW_OP_GNU_push_tls_address increment the value, new comment for it.
gdb/testsuite/
PR threads/13448
* gdb.dwarf2/dw2-var-zero-addr.S: New file.
* gdb.dwarf2/dw2-var-zero-addr.exp: New file.
* gdb.threads/tls-var-main.c: New file.
* gdb.threads/tls-var.c: New file.
* gdb.threads/tls-var.exp: New file.
|
|
PR breakpoints/13346
* dwarf2read.c (process_psymtab_comp_unit): Set
PSYMTABS_ADDRMAP_SUPPORTED.
* psympriv.h (struct partial_symtab): Comment textlow and texthigh
validity. New field psymtabs_addrmap_supported.
* psymtab.c (find_pc_sect_psymtab_closer): New gdb_assert on
psymtabs_addrmap_supported.
(find_pc_sect_psymtab): Do not fallback to TEXTLOW and TEXTHIGH for
!PSYMTABS_ADDRMAP_SUPPORTED.
(dump_psymtab, maintenance_info_psymtabs): Print also
psymtabs_addrmap_supported.
gdb/testsuite/
PR breakpoints/13346
* gdb.dwarf2/dw2-objfile-overlap-inner.S: New file.
* gdb.dwarf2/dw2-objfile-overlap-outer.S: New file.
* gdb.dwarf2/dw2-objfile-overlap.exp: New file.
|
|
* gdb.base/async-shell.exp: Skip the testfile for use_gdb_stub.
* gdb.base/attach-pie-misread.exp: Likewise.
* gdb.base/break-interp.exp: Likewise.
* gdb.base/default.exp (attach, run "r" abbreviation, run): Skip these
testcases for use_gdb_stub.
* gdb.dwarf2/dw2-restore.exp: Fix the run for use_gdb_stub.
(continue): New testcase.
* gdb.python/py-events.exp: Skip the testfile for use_gdb_stub.
* gdb.threads/attach-into-signal.exp: Likewise.
* gdb.threads/attach-stopped.exp: Likewise.
* gdb.threads/attachstop-mt.exp: Likewise.
|
|
Revert:
2011-07-27 Jan Kratochvil <jan.kratochvil@redhat.com>
* dwarf2expr.c (ctx_no_read_reg): New function.
* dwarf2expr.h (ctx_no_read_reg): New declaration.
* dwarf2read.c (read_2_signed_bytes, read_4_signed_bytes): Remove.
(decode_locdesc_read_mem, decode_locdesc_ctx_funcs): New.
(decode_locdesc): Replace by a caller of dwarf_expr_eval.
gdb/testsuite/
* gdb.dwarf2/dw2-simple-locdesc.exp (p &s.shl): KFAIL it.
Revert the part of:
2011-07-27 Jan Kratochvil <jan.kratochvil@redhat.com>
* gdb.dwarf2/dw2-stack-boundary.exp (check partial symtab errors):
Change the expected string.
|
|
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.
|
|
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.
|