+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
+ dwarf2_cu->per_cu->dwarf2_per_objfile references with
+ dwarf2_cu->per_objfile throughout.
+
+2020-05-27 Simon Marchi <simon.marchi@efficios.com>
+
+ * dwarf2/read.c (dw2_do_instantiate_symtab): Add per_objfile
+ parameter, don't use per_cu->dwarf2_per_objfile.
+ (dw2_instantiate_symtab): Likewise.
+ (dw2_find_last_source_symtab): Update.
+ (dw2_map_expand_apply): Update.
+ (dw2_lookup_symbol): Update.
+ (dw2_expand_symtabs_for_function): Update.
+ (dw2_expand_all_symtabs): Update.
+ (dw2_expand_symtabs_with_fullname): Update.
+ (dw2_expand_symtabs_matching_one): Add per_objfile parameter,
+ don't use per_cu->dwarf2_per_objfile.
+ (dw2_expand_marked_cus): Update.
+ (dw2_find_pc_sect_compunit_symtab): Update.
+ (dw2_debug_names_lookup_symbol): Update.
+ (dw2_debug_names_expand_symtabs_for_function): Update.
+ (dw2_debug_names_map_matching_symbols): Update.
+ (dwarf2_psymtab::expand_psymtab): Update.
+
+2020-05-27 Simon Marchi <simon.marchi@efficios.com>
+
+ * dwarf2/read.c (struct dwarf2_cu) <dwarf2_cu>: Add parameter.
+ <per_objfile>: New member.
+ (class cutu_reader) <init_tu_and_read_dwo_dies>: Add parameter.
+ (cutu_reader::init_tu_and_read_dwo_dies): Add parameter, update
+ call to dwarf2_cu.
+ (cutu_reader::cutu_reader): Update.
+ (dwarf2_cu::dwarf2_cu): Add parameter, initialize per_objfile.
+
+2020-05-27 Simon Marchi <simon.marchi@efficios.com>
+
+ * dwarf2/read.h (struct dwarf2_per_bfd) <die_type_hash>: Move to
+ struct dwarf2_per_objfile.
+ (struct dwarf2_per_objfile) <die_type_hash>: Move from struct
+ dwarf2_per_bfd.
+ * dwarf2/read.c (set_die_type): Update.
+ (get_die_type_at_offset): Update.
+
2020-05-27 Tom Tromey <tom@tromey.com>
Simon Marchi <simon.marchi@efficios.com>