[Ada] fix printing slice of array defined as typedef
[deliverable/binutils-gdb.git] / gdb / ChangeLog
index 116b75ada38e97cc72603cdf9ae652e5ec9cdedf..9b9f4319e34bad5930fa93d5b244f8394155ce8e 100644 (file)
@@ -1,3 +1,336 @@
+2011-04-01  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * ada-lang.c (ada_is_simple_array_type, ada_value_slice_from_ptr)
+       (ada_value_slice, empty_array, to_fixed_array_type): Deal with
+       typedefs.
+
+2011-04-01  Joel Brobecker  <brobecker@adacore.com>
+
+       * breakpoint.h (bpdisp_text): Add declaration.
+       * breakpoint.c (bpdisp_text): Make non-static.
+       * ada-lang.c: #include "mi/mi-common.h".
+       (print_it_exception): Rewrite to improve GDB/MI output.
+
+2011-04-01  Pedro Alves  <pedro@codesourcery.com>
+
+       * arm-tdep.h (struct address_space): Add forward declaration.
+
+2011-04-01  Ulrich Weigand  <ulrich.weigand@linaro.org>
+
+       * arm-tdep.h (arm_insert_single_step_breakpoint): Add prototype.
+       * arm-tdep.c (arm_override_mode): New global.
+       (arm_pc_is_thumb): Respect arm_override_mode.  Remove single-step
+       execution mode heuristics.
+       (thumb_get_next_pc_raw): Remove INSERT_BKTP argument; always insert
+       second single-step breakpoint if needed, using
+       arm_insert_single_step_breakpoint.
+       (arm_get_next_pc_raw): Remove INSERT_BKTP argument.  Only handle
+       ARM execution mode, do not call thumb_get_next_pc_raw.
+       (arm_get_next_pc): Encode execution mode in return value.  Call
+       either arm_get_next_pc_raw or thumb_get_next_pc_raw.
+       (arm_insert_single_step_breakpoint): New function.
+       (arm_software_single_step): Call it.
+       * arm-linux-tdep.c (arm_linux_sigreturn_return_addr): Add IS_THUMB
+       argument to return execution mode of sigreturn target.
+       (arm_linux_syscall_next_pc): Use it.
+       (arm_linux_copy_svc): Update call.
+       (arm_linux_software_single_step): Call
+       arm_insert_single_step_breakpoint.
+
+2011-03-31  Jan Kratochvil  <jan.kratochvil@redhat.com>
+
+       * dwarf2read.c (dwarf2_read_index): Fix .gdb_index version number in
+       the comment.
+
+2011-03-31  Tom Tromey  <tromey@redhat.com>
+
+       * varobj.c (update_dynamic_varobj_children): Properly handle
+       errors from iterator.
+
+2011-03-31  Jan Kratochvil  <jan.kratochvil@redhat.com>
+
+       * dwarf2read.c (dwarf2_name): Initialize DEMANGLED.  Avoid demangling
+       struct linkage name twice.
+
+2011-03-31  Tom Tromey  <tromey@redhat.com>
+
+       * python/py-prettyprint.c (print_stack_unless_memory_error): Add
+       missing ">" to message.
+
+2011-03-31  Tom Tromey  <tromey@redhat.com>
+
+       * varobj.c (instantiate_pretty_printer): Remove duplicate
+       'return'.
+
+2011-03-31  Ulrich Weigand  <ulrich.weigand@linaro.org>
+
+       * i386-tdep.c (i386_frame_prev_register): Unwind SP from memory
+       if neither saved value nor register available (e.g. signal frame).
+
+2011-03-31  Thiago Jung Bauermann  <bauerman@br.ibm.com>
+
+       * macroexp.c (expand): Avoid uninitialized variable
+       compiler warning.
+
+2011-03-31  Thiago Jung Bauermann  <bauerman@br.ibm.com>
+
+       * breakpoint.c (break_range_command): Fix typo in comment.
+
+2011-03-31  Thiago Jung Bauermann  <bauerman@br.ibm.com>
+           Sergio Durigan Junior  <sergiodj@linux.vnet.ibm.com>
+
+       Implement support for PowerPC BookE ranged breakpoints.
+       * NEWS: Mention support for ranged breakpoints on embedded PowerPC.
+       * breakpoint.h (struct bp_target_info) <length>: New member
+       variable.
+       (struct breakpoint_ops) <breakpoint_hit>: Take struct bp_location
+       instead of struct breakpoint as argument, and also add ASPACE
+       and BP_ADDR arguments.  Update all callers.
+       (struct breakpoint_ops) <print_one_detail>: New method.
+       (struct breakpoint) <addr_string_range_end>: New member variable.
+       * breakpoint.c (breakpoint_location_address_match): Add function
+       prototype.
+       (insert_bp_location): Set bl->target_info.length.
+       (breakpoint_here_p): Call breakpoint_location_address_match.
+       (moribund_breakpoint_here_p): Likewise.
+       (regular_breakpoint_inserted_here_p): Likewise.
+       (breakpoint_thread_match): Likewise.
+       (bpstat_stop_status): Likewise.
+       (bpstat_check_location): Move call to
+       breakpoint_ops.breakpoint_hit to the top.
+       (print_one_breakpoint_location): Call
+       breakpoint_ops.print_one_detail if available.
+       (breakpoint_address_match_range): New function.
+       (breakpoint_location_address_match): Likewise.
+       (breakpoint_locations_match): Compare the length field of the
+       locations too.
+       (hw_breakpoint_used_count): Count resources used by all locations
+       in a breakpoint, and use breakpoint_ops.resources_needed if
+       available.
+       (breakpoint_hit_ranged_breakpoint): New function.
+       (resources_needed_ranged_breakpoint): Likewise.
+       (print_it_ranged_breakpoint): Likewise.
+       (print_one_ranged_breakpoint): Likewise.
+       (print_one_detail_ranged_breakpoint): Likewise.
+       (print_mention_ranged_breakpoint): Likewise.
+       (print_recreate_ranged_breakpoint): Likewise.
+       (ranged_breakpoint_ops): New structure.
+       (find_breakpoint_range_end): New function.
+       (break_range_command): Likewise.
+       (delete_breakpoint): Free addr_string_range_end.
+       (update_breakpoint_locations): Add SALS_END argument.  Update
+       all callers.  Calculate breakpoint length if a non-zero SALS_END
+       is given.  Call breakpoint_locations_match instead of
+       breakpoint_address_match.
+       (reset_breakpoint): Find SaL of the end of the range if B is a
+       ranged breakpoint.
+       (_initialize_breakpoint): Register break-range command.
+       * defs.h (print_core_address): Add function prototype.
+       * ppc-linux-nat.c (ppc_linux_ranged_break_num_registers): New
+       function.
+       (ppc_linux_insert_hw_breakpoint): Support ranged breakpoints.
+       (ppc_linux_remove_hw_breakpoint): Likewise.
+       (_initialize_ppc_linux_nat): Initialize
+       to_ranged_break_num_registers.
+       * target.c (update_current_target): Add comment about
+       to_ranged_break_num_registers.
+       (target_ranged_break_num_registers): New function.
+       * target.h (struct target_ops) <to_ranged_break_num_registers>:
+       New method.
+       (target_ranged_break_num_registers): Add function prototype.
+       * ui-out.c (ui_out_field_core_addr): Move address-printing logic to ...
+       * utils.c (print_core_address): ... here.
+
+2011-03-31  Ulrich Weigand  <uweigand@de.ibm.com>
+
+       * breakpoint.c (addr_string_to_sals): Avoid uninitialized
+       variable compiler warning.
+
+2011-03-30  Thiago Jung Bauermann  <bauerman@br.ibm.com>
+
+       * breakpoint.c (breakpoint_re_set_one): Factor out breakpoint-resetting
+       code from here ...
+       (re_set_breakpoint): ... to here ...
+       (addr_string_to_sals): ... and here.
+
+2011-03-29  Pierre Muller  <muller@ics.u-strasbg.fr>
+
+       * Makefile.in (SFILES): Add missing C sources.
+       (HFILES_NO_SRCDIR): Remove gdbserver subdirectory headers.
+       Add missing headers.
+
+2011-03-29  Mike Frysinger  <vapier@gentoo.org>
+
+       * .gitignore: New file.
+
+2011-03-29  Mike Frysinger  <vapier@gentoo.org>
+
+       * NEWS: Mention new cfi device simulation.
+
+2011-03-29  Tom Tromey  <tromey@redhat.com>
+
+       * dwarf2read.c (fixup_partial_die): Handle linkage name on
+       otherwise anonymous types.
+       (dwarf2_name): Likewise.
+       * valops.c (value_struct_elt_for_reference): Refine artificial
+       type logic.  Call error if j==-1.
+
+2011-03-29  Andreas Tobler  <andreast-list@fgznet.ch>
+
+       Fix false GCC warning.
+       * infcall.c (find_function_addr): Initialize funaddr.
+
+2011-03-29  Pierre Muller  <muller@ics.u-strasbg.fr>
+
+       Fix mingw compilation with --enable-targets=all.
+       * remote-mips.c (gdb_usleep.h): Include header.
+       (mips_enter_debug): Use gdb_usleep instead of sleep.
+
+2011-03-28  Jan Kratochvil  <jan.kratochvil@redhat.com>
+
+       Support resolution of STT_GNU_IFUNC via breakpoints.
+       * breakpoint.c (print_it_typical): Support bp_gnu_ifunc_resolver and
+       bp_gnu_ifunc_resolver_return.
+       (bpstat_what): Rename parameter to bs_head, new variable bs, adjust
+       the loop.  Support bp_gnu_ifunc_resolver and
+       bp_gnu_ifunc_resolver_return.  New comment after the loop.  New loop
+       for bp_gnu_ifunc_resolver and bp_gnu_ifunc_resolver_return
+       breakpoints.
+       (bptype_string, print_one_breakpoint_location): Support
+       bp_gnu_ifunc_resolver and bp_gnu_ifunc_resolver_return.
+       (user_settable_breakpoint): Return true also for
+       bp_gnu_ifunc_resolver.
+       (allocate_bp_location): Support bp_gnu_ifunc_resolver and
+       bp_gnu_ifunc_resolver_return.
+       (set_breakpoint_location_function): New parameter explicit_loc,
+       describe it.  Call find_pc_partial_function_gnu_ifunc with new
+       variable IS_GNU_IFUNC and adjust the address for STT_GNU_IFUNC if
+       EXPLICIT_LOC is not set.
+       (set_raw_breakpoint): Set EXPLICIT_LOC for
+       set_breakpoint_location_function.
+       (clone_momentary_breakpoint): Use true for EXPLICIT_LOC of
+       set_breakpoint_location_function.
+       (mention): Support bp_gnu_ifunc_resolver and
+       bp_gnu_ifunc_resolver_return.
+       (add_location_to_breakpoint): Set EXPLICIT_LOC for
+       set_breakpoint_location_function.
+       (update_breakpoint_locations): Remove static.
+       (breakpoint_re_set_one): Support bp_gnu_ifunc_resolver and
+       bp_gnu_ifunc_resolver_return.
+       * breakpoint.h (enum bptype): New fields bp_gnu_ifunc_resolver and
+       bp_gnu_ifunc_resolver_return.
+       (update_breakpoint_locations): New declaration.
+       * elfread.c: Include gdbthread.h and regcache.h.
+       (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop): New
+       functions.
+       (elf_gnu_ifunc_fns): Install them.
+       * minsyms.c (stub_gnu_ifunc_resolver_stop)
+       (stub_gnu_ifunc_resolver_return_stop): New functions.
+       (stub_gnu_ifunc_fns): Install them.
+       * symtab.h (struct gnu_ifunc_fns): New fields gnu_ifunc_resolver_stop
+       and gnu_ifunc_resolver_return_stop.
+       (gnu_ifunc_resolver_stop, gnu_ifunc_resolver_return_stop): New.
+
+2011-03-28  Jan Kratochvil  <jan.kratochvil@redhat.com>
+
+       STT_GNU_IFUNC reader implementation.
+       * elfread.c: Include gdbtypes.h, value.h and infcall.h.
+       (SYMBOL_GOT_PLT_SUFFIX, elf_rel_plt_read)
+       (elf_objfile_gnu_ifunc_cache_data, struct elf_gnu_ifunc_cache)
+       (elf_gnu_ifunc_cache_hash, elf_gnu_ifunc_cache_eq)
+       (elf_gnu_ifunc_record_cache, elf_gnu_ifunc_resolve_by_cache)
+       (elf_gnu_ifunc_resolve_by_got, elf_gnu_ifunc_resolve_name)
+       (elf_gnu_ifunc_resolve_addr): New.
+       (elf_symfile_read): Call elf_rel_plt_read.
+       (elf_gnu_ifunc_fns): New.
+       (_initialize_elfread): Initialize elf_objfile_gnu_ifunc_cache_data.
+       Install elf_gnu_ifunc_fns.
+       * infcall.c (find_function_return_type): New function.
+       (find_function_addr): Resolve TYPE_GNU_IFUNC functions, if possible.
+       * minsyms.c (stub_gnu_ifunc_resolve_addr)
+       (stub_gnu_ifunc_resolve_name): New functions.
+       (stub_gnu_ifunc_fns, gnu_ifunc_fns_p): New variables.
+       * symtab.h (struct gnu_ifunc_fns, gnu_ifunc_resolve_addr)
+       (gnu_ifunc_resolve_name, gnu_ifunc_fns_p): New.
+
+2011-03-28  Jan Kratochvil  <jan.kratochvil@redhat.com>
+
+       Code cleanup for later STT_GNU_IFUNC support.
+       * infcall.c (find_function_addr): Remove variable code, use explicit
+       dereferences for it.  Move VALUE_TYPE initialization later.
+
+2011-03-28  Jan Kratochvil  <jan.kratochvil@redhat.com>
+
+       GDB find_pc_partial_function support for STT_GNU_IFUNC.
+       * blockframe.c (cache_pc_function_is_gnu_ifunc): New variable.
+       (clear_pc_function_cache): Clear it.
+       (find_pc_partial_function): Rename to ...
+       (find_pc_partial_function_gnu_ifunc): ... this function.  New
+       parameter is_gnu_ifunc_p, describe it.  Set *IS_GNU_IFUNC_P.
+       (find_pc_partial_function): New wrapper for this function.
+       * symtab.h (find_pc_partial_function_gnu_ifunc): New declaration.
+
+2011-03-28  Jan Kratochvil  <jan.kratochvil@redhat.com>
+
+       GDB internal type support for STT_GNU_IFUNC.
+       * elfread.c (record_minimal_symbol): Support mst_text_gnu_ifunc.
+       (elf_symtab_read): Set mst_text_gnu_ifunc for
+       BSF_GNU_INDIRECT_FUNCTION.
+       * eval.c (evaluate_subexp_standard): Support TYPE_GNU_IFUNC.
+       * gdbtypes.c (init_type): Support TYPE_FLAG_GNU_IFUNC,
+       builtin_func_func, nodebug_text_gnu_ifunc_symbol and
+       nodebug_got_plt_symbol.
+       * gdbtypes.h (enum type_flag_value): New entry TYPE_FLAG_GNU_IFUNC.
+       (TYPE_GNU_IFUNC): New.
+       (struct main_type): New field flag_gnu_ifunc.
+       (struct builtin_type): New field builtin_func_func.
+       (struct objfile_type): New fields nodebug_text_gnu_ifunc_symbol and
+       nodebug_got_plt_symbol.
+       * minsyms.c (lookup_minimal_symbol_text): Support mst_text_gnu_ifunc.
+       (in_gnu_ifunc_stub): New.
+       (prim_record_minimal_symbol, find_solib_trampoline_target): Support
+       mst_text_gnu_ifunc.
+       * parse.c (write_exp_msymbol): New variable ifunc_msym.  Detect and
+       support mst_text_gnu_ifunc.  Support mst_slot_got_plt.
+       * solib-svr4.c (svr4_in_dynsym_resolve_code): Return true also for
+       in_gnu_ifunc_stub.
+       * symmisc.c (dump_msymbols): Support mst_text_gnu_ifunc.
+       * symtab.c (search_symbols): Likewise.
+       * symtab.h (enum minimal_symbol_type): New fields mst_text_gnu_ifunc
+       and mst_slot_got_plt.
+       (in_gnu_ifunc_stub): New declaration.
+
+2011-03-28  Jan Kratochvil  <jan.kratochvil@redhat.com>
+
+       Support a ring of related breakpoints.
+       * breakpoint.c (watchpoint_del_at_next_stop): New, move here code from
+       other functions, add gdb_assert.
+       (update_watchpoint, watchpoint_check): Add gdb_assert.  Use
+       watchpoint_del_at_next_stop.
+       (bpstat_check_watchpoint): Use watchpoint_del_at_next_stop.
+       (bpstat_stop_status): Handle ring in related_breakpoint.
+       (set_raw_breakpoint_without_location): Initialize ring in
+       related_breakpoint.
+       (delete_breakpoint): Handle ring in related_breakpoint, use
+       watchpoint_del_at_next_stop.
+       (map_breakpoint_numbers): Handle ring in related_breakpoint.
+
+2011-03-28  Tom Tromey  <tromey@redhat.com>
+
+       PR symtab/12441:
+       * dwarf2read.c (prepare_one_comp_unit): Don't call set_cu_language
+       with `language_minimal'.
+
+2011-03-25  Ulrich Weigand  <ulrich.weigand@linaro.org>
+
+       * arm-tdep.c (arm_elf_make_msymbol_special): Use ARM_SYM_BRANCH_TYPE
+       instead of checking for STT_ARM_TFUNC symbol type.
+
+2011-03-25  Tom Tromey  <tromey@redhat.com>
+
+       * linespec.c (symbol_found): Restore line-based result for
+       non-LOC_LABEL symbols.
+
 2011-03-25  Kai Tietz  <ktietz@redhat.com>
 
        * tui/tui-source.c (tui_set_source_content): Use filename_cmp
This page took 0.02598 seconds and 4 git commands to generate.