Add dwarf2_per_objfile to dwarf_expr_context and dwarf2_frame_cache
[deliverable/binutils-gdb.git] / gdb / ChangeLog
index e2a7a5f0078bf983206f6daf359ea383897a2f8c..6ad1a71f6e0c350269697652c1976468321c02de 100644 (file)
@@ -1,3 +1,175 @@
+2020-05-27  Simon Marchi  <simon.marchi@efficios.com>
+
+       * dwarf2/expr.h (struct dwarf_expr_context)
+       <dwarf_expr_context>: Add dwarf2_per_objfile parameter.
+       <offset>: Remove.
+       <per_objfile>: New member.
+       * dwarf2/expr.c (dwarf_expr_context::dwarf_expr_context): Add
+       dwarf2_per_objfile parameter.  Don't set offset, set
+       per_objfile.
+       (dwarf_expr_context::execute_stack_op): Use offset from objfile.
+       * dwarf2/frame.c (dwarf2_frame_find_fde): Return (by parameter)
+       a dwarf2_per_objfile object instead of an offset.
+       (class dwarf_expr_executor) <dwarf_expr_executor>: Add
+       constructor.
+       (execute_stack_op): Add dwarf2_per_objfile parameter, pass it
+       to dwarf2_expr_executor constructor.  Don't set offset.
+       (dwarf2_fetch_cfa_info): Update.
+       (struct dwarf2_frame_cache) <text_offset>: Remove.
+       <per_objfile>: New field.
+       (dwarf2_frame_cache): Update.
+       (dwarf2_frame_prev_register): Update.
+       * dwarf2/loc.c (class dwarf_evaluate_loc_desc)
+       <dwarf_evaluate_loc_desc>: Add constructor.
+       (dwarf2_evaluate_loc_desc_full): Update.
+       (dwarf2_locexpr_baton_eval): Update.
+       (class symbol_needs_eval_context) <symbol_needs_eval_context>:
+       Add constructor.
+       (dwarf2_loc_desc_get_symbol_read_needs): Update.
+
+2020-05-27  Simon Marchi  <simon.marchi@efficios.com>
+
+       * dwarf2/read.h (struct dwarf2_per_cu_data) <addr_type,
+       addr_sized_int_type>: Move to dwarf2_cu.
+       <int_type>: Move to dwarf2_per_objfile.
+       (struct dwarf2_per_objfile) <int_type>: Move here.
+       * dwarf2/read.c (struct dwarf2_cu) <addr_type,
+       addr_sized_int_type>: Move here.
+       (read_func_scope): Update.
+       (read_array_type): Update.
+       (read_tag_string_type): Update.
+       (attr_to_dynamic_prop): Update.
+       (dwarf2_per_cu_data::int_type): Rename to...
+       (dwarf2_per_objfile::int_type): ... this.
+       (dwarf2_per_cu_data::addr_sized_int_type): Rename to...
+       (dwarf2_cu::addr_sized_int_type): ... this.
+       (read_subrange_type): Update.
+       (dwarf2_per_cu_data::addr_type): Rename to...
+       (dwarf2_cu::addr_type): ... this.
+       (set_die_type): Update.
+
+2020-05-27  Simon Marchi  <simon.marchi@efficios.com>
+
+       * dwarf2/read.c (queue_and_load_all_dwo_tus): Access per_objfile
+       data through per_cu->cu.
+
+2020-05-27  Simon Marchi  <simon.marchi@efficios.com>
+
+       * dwarf2/read.c (lookup_dwo_comp_unit): Change
+       dwarf2_per_cu_data parameter fo dwarf2_cu.
+       (lookup_dwo_type_unit): Likewise.
+       (read_cutu_die_from_dwo): Likewise.
+       (lookup_dwo_unit): Likewise.
+       (open_and_init_dwo_file): Likewise.
+       (lookup_dwo_cutu): Likewise.
+       (lookup_dwo_comp_unit): Likewise.
+       (lookup_dwo_type_unit): Likewise.
+       (cutu_reader::init_tu_and_read_dwo_dies): Update.
+       (cutu_reader::cutu_reader): Update.
+
+2020-05-27  Simon Marchi  <simon.marchi@efficios.com>
+
+       * dwarf2/read.c (process_full_comp_unit): Add dwarf2_per_objfile
+       parameter.
+       (process_full_type_unit): Likewise.
+       (process_queue): Update.
+
+2020-05-27  Simon Marchi  <simon.marchi@efficios.com>
+
+       * dwarf2/read.c (recursively_compute_inclusions): Add
+       dwarf2_per_objfile parameter.
+       (compute_compunit_symtab_includes): Likewise.
+       (process_cu_includes): Update.
+
+2020-05-27  Simon Marchi  <simon.marchi@efficios.com>
+
+       * dwarf2/read.c (create_partial_symtab): Add dwarf2_per_objfile
+       parameter.
+       (create_type_unit_group): Update.
+       (process_psymtab_comp_unit_reader): Update.
+       (build_type_psymtabs_reader): Update.
+
+2020-05-27  Simon Marchi  <simon.marchi@efficios.com>
+
+       * dwarf2/read.c (cutu_reader::keep): Access dwarf2_per_objfile
+       object through m_this_cu->cu.
+
+2020-05-27  Simon Marchi  <simon.marchi@polymtl.ca>
+
+       * dwarf2/read.c (queue_and_load_dwo_tu): Expect a dwarf2_cu as
+       the info parameter.
+       (queue_and_load_all_dwo_tus): Pass per_cu->cu.
+
+2020-05-27  Simon Marchi  <simon.marchi@polymtl.ca>
+
+       * dwarf2/read.c (class cutu_reader) <cutu_reader>: Add
+       per_objfile parameter.
+       (load_full_type_unit): Add per_objfile parameter.
+       (read_signatured_type): Likewise.
+       (load_full_comp_unit): Likewise.
+       (load_cu): Likewise.
+       (dw2_do_instantiate_symtab): Likewise.
+       (dw2_get_file_names): Likewise.
+       (dw2_map_symtabs_matching_filename): Update.
+       (dw_expand_symtabs_matching_file_matcher): Update.
+       (dw2_map_symbol_filenames): Update.
+       (process_psymtab_comp_unit): Add per_objfile parameter.
+       (build_type_psymtabs_1): Update.
+       (process_skeletonless_type_unit): Update.
+       (dwarf2_build_psymtabs_hard): Update.
+       (load_partial_comp_unit): Add per_objfile parameter.
+       (scan_partial_symbols): Update.
+       (load_full_comp_unit): Add per_objfile parameter.
+       (process_imported_unit_die): Update.
+       (create_cus_hash_table): Update.
+       (find_partial_die): Update.
+       (dwarf2_read_addr_index): Update.
+       (follow_die_offset): Update.
+       (dwarf2_fetch_die_loc_sect_off): Update.
+       (dwarf2_fetch_constant_bytes): Update.
+       (dwarf2_fetch_die_type_sect_off): Update.
+       (follow_die_sig_1): Update.
+       (load_full_type_unit): Add per_objfile parameter.
+       (read_signatured_type): Likewise.
+
+2020-05-27  Simon Marchi  <simon.marchi@efficios.com>
+
+       * dwarf2/read.c (lookup_dwo_unit): Use bfd_get_filename instead
+       of objfile_name.
+
+2020-05-27  Simon Marchi  <simon.marchi@polymtl.ca>
+
+       * dwarf2/read.h (struct dwarf2_per_bfd) <obfd>: New member.
+       (dwarf2_get_dwz_file): Replace parameter with dwarf2_per_bfd.
+       * dwarf2/read.c (dwarf2_per_bfd::dwarf2_per_bfd): Assign obfd
+       field.
+       (dwarf2_get_dwz_file): Replace parameter with dwarf2_per_bfd.
+       (create_cus_from_index): Update.
+       (dwarf2_read_gdb_index): Update.
+       (create_cus_from_debug_names): Update.
+       (dwarf2_read_debug_names): Update.
+       (get_abbrev_section_for_cu): Update.
+       (create_all_comp_units): Update.
+       (read_attribute_value): Update.
+       (get_debug_line_section): Update.
+       * dwarf2/index-cache.c (index_cache::store): Update.
+       * dwarf2/index-write.c (save_gdb_index_command): Update.
+       * dwarf2/macro.c (dwarf_decode_macro_bytes): Update.
+
+2020-05-27  Simon Marchi  <simon.marchi@polymtl.ca>
+
+       * dwarf2/read.h (struct dwarf2_per_cu_data) <per_bfd>: New
+       member.
+       * dwarf2/read.c (dwarf2_per_bfd::allocate_per_cu): Initialize
+       dwarf2_per_cu_data::per_bfd.
+       (dwarf2_per_bfd::allocate_signatured_type): Likewise.
+       (create_type_unit_group): Likewise.
+       (queue_comp_unit): Remove reference to
+       per_cu->dwarf2_per_objfile.
+       (maybe_queue_comp_unit): Likewise.
+       (fill_in_sig_entry_from_dwo_entry): Assign new field.
+       (create_cus_hash_table): Assign new field.
+
 2020-05-27  Simon Marchi  <simon.marchi@efficios.com>
 
        * dwarf2/read.c: Replace
This page took 0.024861 seconds and 4 git commands to generate.