]> Git Repo - binutils.git/blobdiff - gdb/ChangeLog
Refactor DIE reading.
[binutils.git] / gdb / ChangeLog
index 3fea17df1a7fe562f92319c4888c030cefbf5758..f1f629d8eae13cfbc5dec49fbb13a58898eb05d5 100644 (file)
@@ -1,3 +1,340 @@
+2012-04-28  Doug Evans  <[email protected]>
+
+       Refactor DIE reading.
+       * dwarf2read.c (dwarf2_per_objfile): Replace members
+       debug_info_type_hash and debug_types_type_hash with die_type_hash.
+       (die_reader_specs): New member "die_section".  Temporarily make
+       member "buffer" non-const, pending constifying all info_ptr uses.
+       (die_reader_func_ftype): New typedef.
+       (dw2_get_file_names_reader): New function.
+       (dw2_get_file_names): Rewrite.
+       (read_and_check_type_unit_head): Rename arg type_offset to
+       type_offset_in_tu.
+       (create_all_type_units): Improve debugging message.
+       Improve dummy type unit check.
+       (init_cu_die_reader): New arg "section".  All callers updated.
+       (init_and_read_dies_worker): New function.
+       (init_cu_and_read_dies, init_tu_and_read_dies): New functions.
+       (init_cutu_and_read_dies_no_follow): New function.
+       (init_cutu_and_read_dies_simple): New function.
+       (process_psymtab_comp_unit_reader): New function.
+       (process_psymtab_comp_unit): Delete args section,
+       is_debug_types_section.  Rewrite.  All callers updated.
+       (process_psymtab_type_unit): Renamed from process_type_comp_unit.
+       All callers updated.  Rewrite.
+       (load_partial_comp_unit_reader): New function.
+       (load_partial_comp_unit): Rewrite.
+       (skip_children): New arg reader.  Delete args buffer, cu.
+       All callers updated.
+       (skip_one_die): New arg reader.  Delete args buffer, cu.
+       All callers updated.
+       (locate_pdi_sibling): New arg reader.  Delete args buffer, abfd, cu.
+       All callers updated.
+       (load_full_comp_unit_reader): New function.
+       (load_full_comp_unit): Rewrite.
+       (read_comp_unit): Delete.
+       (read_die_and_children_1): Delete, contents moved ...
+       (read_die_and_children): ... here.
+       (dwarf2_read_abbrevs): New arg abbrev_section.  All callers updated.
+       (load_partial_dies): New arg reader.  Delete args abfd, buffer, cu.
+       All callers updated.
+       (read_partial_die): New arg reader.  Delete args abfd, buffer, cu.
+       All callers updated.
+       (find_partial_die): Rewrite load_all_dies support.
+       (read_attribute_value): New arg reader.  Delete args abfd, cu.
+       All callers updated.
+       (read_attribute): New arg reader.  Delete args abfd, cu.
+       All callers updated.
+       (load_full_type_unit): Add assert.
+       (read_signatured_type_reader): New function.
+       (read_signatured_type): Rewrite.
+       (free_stack_comp_unit): Remove call to age_cached_comp_units.
+       (free_one_cached_comp_unit): Change target_cu arg to target_per_cu.
+       All callers updated.  Set per_cu->cu = NULL after freeing it.
+       (dwarf2_per_cu_offset_and_type): Renamed from dwarf2_offset_and_type.
+       (per_cu_offset_and_type_hash): Renamed from offset_and_type_hash.
+       (per_cu_offset_and_type_eq): Renamed from offset_and_type_eq.
+       (set_die_type): Update.
+       (get_die_type_at_offset): Update.
+       (read_file_scope): Call prepare_one_comp_unit.
+       (read_type_unit_scope): Ditto.
+       (prepare_one_comp_unit): Set producer if present.
+
+2012-04-28  Sergio Durigan Junior  <[email protected]>
+
+       * probe.c (compile_rx_or_error): Silence ARI warning about missing
+        gettext function on `error'.
+
+2012-04-27  Doug Evans  <[email protected]>
+
+       * dwarf2read.c (dwarf2_read_index): Don't use index if symbol table
+       is empty.
+
+2012-04-27  Sergio Durigan Junior  <[email protected]>
+           Tom Tromey  <[email protected]>
+
+       * breakpoint.c (struct breakpoint_objfile_data)
+       <longjmp_searched>,<longjmp_probes>,<exception_searched>,
+       <exception_probes>: New fields.
+       (free_breakpoint_probes): New function.
+       (create_longjmp_master_breakpoint): Prefer SystemTap probe over
+       `_Unwind_DebugHook'.
+       (create_exception_master_breakpoint): Likewise.
+       (_initialize_breakpoint): Registering cleanup for SystemTap probes.
+       * infrun.c: Including necessary header files for handling SystemTap
+       probes.
+       (handle_inferior_event): Handling longjmp breakpoint and exceptions
+       via SystemTap probes.
+       (check_exception_resume): Remove `func' argument.  Handle exception
+       unwinding breakpoint set via a SystemTap probe.
+       (insert_exception_resume_from_probe): New function.
+
+2012-04-27  Sergio Durigan Junior  <[email protected]>
+           Tom Tromey  <[email protected]>
+           Jan Kratochvil  <[email protected]>
+
+       * Makefile.in (SFILES): Add `probe' and `stap-probe'.
+       (COMMON_OBS): Likewise.
+       (HFILES_NO_SRCDIR): Add `probe'.
+       * NEWS: Mention support for static and SystemTap probes.
+       * amd64-tdep.c (amd64_init_abi): Initializing proper fields used by
+       SystemTap probes' arguments parser.
+       * arm-linux-tdep.c: Including headers needed to perform the parsing
+       of SystemTap probes' arguments.
+       (arm_stap_is_single_operand): New function.
+       (arm_stap_parse_special_token): Likewise.
+       (arm_linux_init_abi): Initializing proper fields used by SystemTap
+       probes' arguments parser.
+       * ax-gdb.c (require_rvalue): Removing static declaration.
+       (gen_expr): Likewise.
+       * ax-gdb.h (gen_expr): Declaring function.
+       (require_rvalue): Likewise.
+       * breakpoint.c: Include `gdb_regex.h' and `probe.h'.
+       (bkpt_probe_breakpoint_ops): New variable.
+       (momentary_breakpoint_from_master): Set the `probe' value.
+       (add_location_to_breakpoint): Likewise.
+       (break_command_1): Using proper breakpoint_ops according to the
+       argument passed by the user in the command line.
+       (bkpt_probe_insert_location): New function.
+       (bkpt_probe_remove_location): Likewise.
+       (bkpt_probe_create_sals_from_address): Likewise.
+       (bkpt_probe_decode_linespec): Likewise.
+       (tracepoint_probe_create_sals_from_address): Likewise.
+       (tracepoint_probe_decode_linespec): Likewise.
+       (tracepoint_probe_breakpoint_ops): New variable.
+       (trace_command): Using proper breakpoint_ops according to the
+       argument passed by the user in the command line.
+       (initialize_breakpoint_ops): Initializing breakpoint_ops for
+       static probes on breakpoints and tracepoints.
+       * breakpoint.h (struct bp_location) <probe>: New field.
+       * cli-utils.c (skip_spaces_const): New function.
+       (extract_arg): Likewise.
+       * cli-utils.h (skip_spaces_const): Likewise.
+       (extract_arg): Likewise.
+       * coffread.c (coff_sym_fns): Add `sym_probe_fns' value.
+       * configure.ac: Append `stap-probe.o' to be generated when ELF
+       support is present.
+       * configure: Regenerate.
+       * dbxread.c (aout_sym_fns): Add `sym_probe_fns' value.
+       * elfread.c: Include `probe.h' and `arch-utils.h'.
+       (probe_key): New variable.
+       (elf_get_probes): New function.
+       (elf_get_probe_argument_count): Likewise.
+       (elf_evaluate_probe_argument): Likewise.
+       (elf_compile_to_ax): Likewise.
+       (elf_symfile_relocate_probe): Likewise.
+       (stap_probe_key_free): Likewise.
+       (elf_probe_fns): New variable.
+       (elf_sym_fns): Add `sym_probe_fns' value.
+       (elf_sym_fns_lazy_psyms): Likewise.
+       (elf_sym_fns_gdb_index): Likewise.
+       (_initialize_elfread): Initialize objfile cache for static
+       probes.
+       * gdb_vecs.h (struct probe): New forward declaration.
+       (probe_p): New VEC declaration.
+       * gdbarch.c: Regenerate.
+       * gdbarch.h: Regenerate.
+       * gdbarch.sh (stap_integer_prefix): New variable.
+       (stap_integer_suffix): Likewise.
+       (stap_register_prefix): Likewise.
+       (stap_register_suffix): Likewise.
+       (stap_register_indirection_prefix): Likewise.
+       (stap_register_indirection_suffix): Likewise.
+       (stap_gdb_register_prefix): Likewise.
+       (stap_gdb_register_suffix): Likewise.
+       (stap_is_single_operand): New function.
+       (stap_parse_special_token): Likewise.
+       (struct stap_parse_info): Forward declaration.
+       * i386-tdep.c: Including headers needed to perform the parsing
+       of SystemTap probes' arguments.
+       (i386_stap_is_single_operand): New function.
+       (i386_stap_parse_special_token): Likewise.
+       (i386_elf_init_abi): Initializing proper fields used by SystemTap
+       probes' arguments parser.
+       * i386-tdep.h (i386_stap_is_single_operand): New function.
+       (i386_stap_parse_special_token): Likewise.
+       * machoread.c (macho_sym_fns): Add `sym_probe_fns' value.
+       * mipsread.c (ecoff_sym_fns): Likewise.
+       * objfiles.c (objfile_relocate1): Support relocation for static
+       probes.
+       * parse.c (prefixify_expression): Remove static declaration.
+       (initialize_expout): Likewise.
+       (reallocate_expout): Likewise.
+       * parser-defs.h (initialize_expout): Declare function.
+       (reallocate_expout): Likewise.
+       (prefixify_expression): Likewise.
+       * ppc-linux-tdep.c: Including headers needed to perform the parsing
+       of SystemTap probes' arguments.
+       (ppc_stap_is_single_operand): New function.
+       (ppc_stap_parse_special_token): Likewise.
+       (ppc_linux_init_abi): Initializing proper fields used by SystemTap
+       probes' arguments parser.
+       * probe.c: New file, for generic statically defined probe support.
+       * probe.h: Likewise.
+       * s390-tdep.c: Including headers needed to perform the parsing of
+       SystemTap probes' arguments.
+       (s390_stap_is_single_operand): New function.
+       (s390_gdbarch_init): Initializing proper fields used by SystemTap
+       probes' arguments parser.
+       * somread.c (som_sym_fns): Add `sym_probe_fns' value.
+       * stap-probe.c: New file, for SystemTap probe support.
+       * stap-probe.h: Likewise.
+       * symfile.h: Include `gdb_vecs.h'.
+       (struct sym_probe_fns): New struct.
+       (struct sym_fns) <sym_probe_fns>: New field.
+       * symtab.c (init_sal): Initialize `probe' field.
+       * symtab.h (struct probe): Forward declaration.
+       (struct symtab_and_line) <probe>: New field.
+       * tracepoint.c (start_tracing): Adjust semaphore on breakpoints
+       locations.
+       (stop_tracing): Likewise.
+       * xcoffread.c (xcoff_sym_fns): Add `sym_probe_fns' value.
+
+2012-04-27  Sergio Durigan Junior  <[email protected]>
+           Tom Tromey  <[email protected]>
+
+       * ax-gdb.c (gen_expr): Clean up code to handle internal variables
+       and to compile agent expressions.
+       * infrun.c (siginfo_make_value): New argument `ignore'.
+       (siginfo_funcs): New struct.
+       (_initialize_infrun): New argument when calling
+       `create_internalvar_type_lazy'.
+       * thread.c (thread_id_make_value): New argument `ignore'.
+       (thread_funcs): New struct.
+       (_initialize_thread): New argument when calling
+       `create_internalvar_type_lazy'.
+       * tracepoint.c (sdata_make_value): New argument `ignore'.
+       (sdata_funcs): New struct.
+       (_initialize_tracepoint): New argument when calling
+       `create_internalvar_type_lazy'.
+       * value.c (make_value): New struct.
+       (create_internalvar_type_lazy): New argument `data'.
+       (compile_internalvar_to_ax): New function.
+       (value_of_internalvar): Properly handling `make_value' case.
+       (clear_internalvar): Likewise.
+       (show_convenience): Adding `TRY_CATCH' block.
+       * value.h (internalvar_make_value): Delete, replace by...
+       (struct internalvar_funcs): ... this.
+       (create_internalvar_type_lazy) <fun>: Delete argument.
+       (create_internalvar_type_lazy) <funcs>, <data>: New arguments.
+       (compile_internalvar_to_ax): New function.
+       * windows-tdep.c (tlb_make_value): New argument `ignore'.
+       (tlb_funcs): New struct.
+       (_initialize_windows_tdep): New argument when calling
+       `create_internalvar_type_lazy'.
+
+2012-04-27  Mark Wielaard  <[email protected]>
+
+       * dwarf2read.c (dwarf2_get_pc_bounds): Check DW_AT_high_pc form to
+       see whether it is an address or a constant offset from DW_AT_low_pc.
+       (dwarf2_record_block_ranges): Likewise.
+       (read_partial_die): Likewise.
+
+2012-04-26  Mark Wielaard  <[email protected]>
+
+       * MAINTAINERS (Write After Approval): Add myself to the list.
+
+2012-04-26  Maciej W. Rozycki  <[email protected]>
+
+       * proc-utils.h (proc_prettyprint_signalset): New prototype.
+       (proc_prettyprint_signal): Likewise.
+       (proc_prettyprint_faultset): Likewise.
+       (proc_prettyprint_fault): Likewise.
+       (proc_prettyprint_actionset): Likewise.
+       (proc_prettyprint_flags): Move to new proc-flags.c section.
+       (proc_prettyfprint_flags): New prototype.
+       * procfs.c (proc_nsysarg, proc_sysargs): Add prototypes.
+       (proc_syscall, proc_cursig): Likewise.
+       (proc_set_kill_on_last_close): Likewise.
+       (proc_unset_kill_on_last_close): Likewise.
+       (proc_set_watchpoint): Make static.
+       (proc_delete_dead_threads): Likewise.
+       (procfs_set_watchpoint): Likewise.
+       (_initialize_procfs): Add prototype.
+       * proc-events.c: Include proc-utils.h.
+       (init_syscall_table): Make static.
+       * proc-api.c (_initialize_proc_api): Add prototype.
+       * proc-flags.c: Include proc-utils.h.
+
+2012-04-26  Maciej W. Rozycki  <[email protected]>
+
+       * configure.ac: Add AC_ARG_PROGRAM.
+       * configure: Regenerate.
+
+2012-04-26  Jan Kratochvil  <[email protected]>
+
+       Fix DW_AT_lower_bound defaults for DWARF-4+.
+       * dwarf2read.c (read_subrange_type): Remove initialization of low and
+       high.  New variable low_default_is_valid.  Implement DWARF-4+
+       DW_AT_lower_bound defaults.  Print complaint for DW_AT_lower_bound with
+       no default by the DWARF standard.
+
+2012-04-26  Maciej W. Rozycki  <[email protected]>
+            Maciej W. Rozycki  <[email protected]>
+
+       * infrun.c (handle_inferior_event): Move the check for return
+       trampolines ahead of the check for function trampolines.
+       * mips-tdep.h (MIPS_S2_REGNUM, MIPS_GP_REGNUM): New macros.
+       * mips-tdep.c (mips_str_mips16_call_stub): New variable.
+       (mips_str_mips16_ret_stub): Likewise.
+       (mips_str_call_fp_stub): Likewise.
+       (mips_str_call_stub): Likewise.
+       (mips_str_fn_stub): Likewise.
+       (mips_str_pic): Likewise.
+       (mips_in_frame_stub): New function.
+       (mips_unwind_pc): Return the return address rather than the PC
+       if the PC of an intermediate frame is inside a call thunk.
+       (mips_is_stub_suffix): New function.
+       (mips_is_stub_mode): Likewise.
+       (mips_get_mips16_fn_stub_pc): Likewise.
+       (mips_skip_mips16_trampoline_code): Update to handle all the
+       currently generated stub types.  Don't recurse into __fn_stub
+       thunks.  Remove heuristics to handle stubs beyond etext/_etext.
+       Use cooked register accesses.
+       (mips_in_return_stub): Reintroduce function.
+       (mips_skip_trampoline_code): Traverse trampolines recursively.
+       (mips_gdbarch_init): Handle MIPS16 return trampolines.
+
+2012-04-26  Joel Brobecker  <[email protected]>
+
+       GDB 7.4.1 released.
+
+2012-04-26  Jonathan Larmour  <[email protected]>
+
+       * arm-tdep.h (VFP_REGISTER_SIZE): Define.
+       * features/arm-with-m-vfp-d16.xml: New file. Describes
+       Cortex-M with VFPv4-sp-d16 FPU register layout.
+       * features/Makefile (WHICH): Add arm-with-m-vfp-d16.
+       * features/arm-with-m-vfp-d16.c: New. Generated from above.
+       * arm-tdep.c: Include arm-with-m-vfp-d16.c.
+       (arm-register_g_packet_guesses): Add vfp-d16 guess.
+       (_initialise_arm_tdep): Initialize arm-with-m-vfp-d16 tdesc.
+
+2012-04-25  Doug Evans  <[email protected]>
+
+       * cli/cli-decode.c (print_doc_line): Use stream instead of
+       current_uiout.
+
 2012-04-25  Sergio Durigan Junior  <[email protected]>
 
        * features/arm-with-iwmmxt.c: Regenerate.
This page took 0.033493 seconds and 4 git commands to generate.