blob: f1071a71d2e09c79ce21ffaf2a5ffae9cd88803e [file] [log] [blame]
2021-07-06 Tom de Vries <tdevries@suse.de>
* dwarf2/read.c (scan_partial_symbols): Skip top-level imports of
c++ CU.
* testsuite/gdb.dwarf2/imported-unit-bp.exp: Moved to ...
* testsuite/gdb.dwarf2/imported-unit-bp.exp.tcl: ... here.
* testsuite/gdb.dwarf2/imported-unit-bp-c++.exp: New test.
* testsuite/gdb.dwarf2/imported-unit-bp-c.exp: New test.
* testsuite/gdb.dwarf2/imported-unit.exp: Update.
2021-07-03 Joel Brobecker <brobecker@adacore.com>
* NEWS: Create a new section for the next release branch.
Rename the section of the current branch, now that it has
been cut.
2021-07-03 Joel Brobecker <brobecker@adacore.com>
GDB 11 branch created (4b51505e33441c6165e7789fa2b6d21930242927):
* version.in: Bump version to 12.0.50.DATE-git.
2021-07-03 Tom Tromey <tom@tromey.com>
* dwarf2/read.c (lnp_state_machine::record_line): Use 'true'.
(dwarf_decode_lines): Remove '=='.
2021-07-02 Tom Tromey <tromey@adacore.com>
* ada-exp.y (chop_selector, chop_separator, write_selectors)
(write_ambiguous_var, get_symbol_field_type): Use const.
2021-07-02 Pedro Alves <pedro@palves.net>
Hannes Domani <ssbssa@yahoo.de>
* NEWS: Add new "TUI Improvements" section and mention mouse
support and that unrecognized special keys are now passed to
GDB. Mention Python Window.click in the Python improvements
section.
2021-07-01 Pedro Alves <pedro@palves.net>
PR mi/15729
PR gdb/13463
* linux-nat.c (linux_nat_target::detach): Close the
/proc/<pid>/mem file if it was open for this process.
(linux_handle_extended_wait) <PTRACE_EVENT_EXEC>: Close the
/proc/<pid>/mem file if it was open for this process.
(linux_nat_target::mourn_inferior): Close the /proc/<pid>/mem file
if it was open for this process.
(linux_nat_target::xfer_partial): Adjust. Do not fall back to
inf_ptrace_target::xfer_partial for memory accesses.
(last_proc_mem_file): New.
(maybe_close_proc_mem_file): New.
(linux_proc_xfer_memory_partial_pid): New, with bits factored out
from linux_proc_xfer_partial.
(linux_proc_xfer_partial): Delete.
(linux_proc_xfer_memory_partial): New.
2021-06-29 Simon Marchi <simon.marchi@polymtl.ca>
* frame.h (FRAME_SCOPED_DEBUG_ENTER_EXIT): New.
* frame.c (compute_frame_id, get_prev_frame_always_1,
get_prev_frame): Use FRAME_SCOPED_DEBUG_ENTER_EXIT.
* frame-unwind.c (frame_unwind_find_by_frame): Likewise.
(frame_unwind_register_value): Likewise.
2021-06-29 Simon Marchi <simon.marchi@polymtl.ca>
* frame-unwind.h (struct frame_unwind) <name>: New. Update
instances everywhere to include this field.
* frame-unwind.c (frame_unwind_try_unwinder,
frame_unwind_find_by_frame): Add debug messages.
2021-06-29 Simon Marchi <simon.marchi@polymtl.ca>
* frame.h (frame_debug_printf): New.
* frame.c: Use frame_debug_printf throughout when printing frame
debug messages.
* amd64-windows-tdep.c: Likewise.
* value.c: Likewise.
2021-06-29 Simon Marchi <simon.marchi@polymtl.ca>
* frame.h (frame_debug): Change type to bool.
* frame.c (frame_debug): Change type to bool.
(_initialize_frame): Adjust.
2021-06-29 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
* gdbthread.h (find_thread_ptid): Remove the duplicate declaration.
2021-06-28 Simon Marchi <simon.marchi@polymtl.ca>
PR gdb/28017
* machoread.c (macho_symfile_offsets): Use
gdb_bfd_count_sections to allocate objfile::section_offsets.
2021-06-28 Simon Marchi <simon.marchi@polymtl.ca>
* objfiles.h (struct obj_section): Move down.
<offset, set_offset, addr, endaddr>: New.
(obj_section_offset, obj_section_addr, obj_section_endaddr),
replace all users to use obj_section methods.
(struct objfile) <section_offset, set_section_offset>: New.
2021-06-28 Simon Marchi <simon.marchi@polymtl.ca>
* objfiles.h (struct obj_section): Move down.
<offset, set_offset, addr, endaddr>: New.
(obj_section_offset, obj_section_addr, obj_section_endaddr),
replace all users to use obj_section methods.
(struct objfile) <section_offset, set_section_offset>: New.
2021-06-28 Simon Marchi <simon.marchi@polymtl.ca>
* .flake8: New.
2021-06-28 Luis Machado <luis.machado@linaro.org>
* aarch64-linux-tdep.c (aarch64_linux_memtag_matches_p): Remove the top
byte.
(aarch64_linux_set_memtags): Likewise.
(aarch64_linux_get_memtag): Likewise.
(aarch64_linux_report_signal_info): Likewise.
2021-06-28 Luis Machado <luis.machado@linaro.org>
* aarch64-linux-tdep.c
(aarch64_linux_iterate_over_regset_sections): Fix FFR register size.
2021-06-28 Luis Machado <luis.machado@linaro.org>
* aarch64-linux-tdep.c
(aarch64_linux_iterate_over_regset_sections): Update tag_ctl register
size.
* aarch64-linux-tdep.h (AARCH64_LINUX_SIZEOF_MTE_REGSET): Set to
8 and update comments.
2021-06-28 Simon Marchi <simon.marchi@polymtl.ca>
* gdbarch.sh (struct gdbarch_info): Initialize fields, add
constructor.
* gdbarch.h: Re-generate.
* arch-utils.h (gdbarch_info_init): Remove, delete all usages.
* arch-utils.c (gdbarch_info_init): Remove.
2021-06-28 Simon Marchi <simon.marchi@polymtl.ca>
* gdbarch.sh (struct gdbarch_info) <tdep_info>: Remove.
(gdbarch_find_by_info): Remove print.
* gdbarch.c, gdbarch.h: Re-generate.
2021-06-28 Andrew Burgess <andrew.burgess@embecosm.com>
* remote.c (remote_target::start_remote): Set 'starting_up' using
boolean values instead of integers.
2021-06-25 Simon Marchi <simon.marchi@polymtl.ca>
* guile/scm-param.c (struct param_smob) <set_command,
show_command>: Remove.
<commands>: New.
(pascm_is_valid): Adjust.
(add_setshow_generic): Use return values of add_setshow
functions, return a set_show_commands.
(gdbscm_register_parameter_x): Adjust.
2021-06-25 Simon Marchi <simon.marchi@polymtl.ca>
* command.h (add_setshow_enum_cmd): Remove context parameter.
* cli/cli-decode.c (add_setshow_enum_cmd): Likewise, and don't
set context.
* cli/cli-style.c (cli_style_option::add_setshow_commands): Set
context here.
2021-06-25 Simon Marchi <simon.marchi@polymtl.ca>
* cli/cli-decode.h (struct cmd_list_element) <set_context>: Add
assert.
2021-06-25 Simon Marchi <simon.marchi@polymtl.ca>
* cli/cli-decode.h (struct cmd_list_element) <set_context,
context>: New.
<context>: Rename to...
<m_context>: ... this.
* cli/cli-decode.c (set_cmd_context, get_cmd_context): Remove.
* command.h (set_cmd_context, get_cmd_context): Remove, use
cmd_list_element::set_context and cmd_list_element::context
everywhere instead.
2021-06-25 Andrew Burgess <andrew.burgess@embecosm.com>
* NEWS: Mention changes to 'info sources'.
* symtab.c (info_sources_filter::print): Delete.
(struct output_source_filename_data) <print_header>: Delete
declaration. <printed_filename_p>: New member function.
(output_source_filename_data::print_header): Delete.
(info_sources_worker): Update group-by-objfile style output to
make it CLI suitable, simplify non-group-by-objfile now this is
only used from the MI.
(info_sources_command): Make group-by-objfile be the default for
CLI info sources command.
* symtab.h (struct info_sources_filter) <print>: Delete.
2021-06-25 Andrew Burgess <andrew.burgess@embecosm.com>
* NEWS: Mention additions to -file-list-exec-source-files.
* mi/mi-cmd-file.c (mi_cmd_file_list_exec_source_files): Add
--group-by-objfile option.
* symtab.c (isrc_flag_option_def): Rename to...
(isrc_match_flag_option_def): ...this.
(info_sources_option_defs): Rename to...
(info_sources_match_option_defs): ...this, and update to rename of
isrc_flag_option_def.
(struct filename_grouping_opts): New struct.
(isrc_grouping_flag_option_def): New type.
(info_sources_grouping_option_defs): New static global.
(make_info_sources_options_def_group): Update to return two option
groups.
(info_sources_command_completer): Update for changes to
make_info_sources_options_def_group.
(info_sources_worker): Add extra parameter, use this to display
alternative output format.
(info_sources_command): Pass extra parameter to
info_sources_worker.
(_initialize_symtab): Update for changes to
make_info_sources_options_def_group.
* symtab.h (info_sources_worker): Add extra parameter.
2021-06-25 Andrew Burgess <andrew.burgess@embecosm.com>
* NEWS: Mention additions to -file-list-exec-source-files.
* mi/mi-cmd-file.c (print_partial_file_name): Delete.
(mi_cmd_file_list_exec_source_files): Rewrite to handle command
options, and make use of info_sources_worker.
* symtab.c (struct info_sources_filter): Moved to symtab.h.
(info_sources_filter::print): Take uiout argument, produce output
through uiout.
(struct output_source_filename_data)
<output_source_filename_data>: Take uiout argument, store into
m_uiout. <output>: Rewrite comment, add additional arguments to
declaration. <operator()>: Send more arguments to
output. <m_uiout>: New member variable.
(output_source_filename_data::output): Take extra arguments,
produce output through m_uiout, and structure for MI.
(output_source_filename_data::print_header): Produce output
through m_uiout.
(info_sources_worker): New function, the implementation is taken
from info_sources_command, but modified so produce output through
a ui_out.
(info_sources_command): The second half of this function has gone
to become info_sources_worker.
* symtab.h (struct info_sources_filter): Moved from symtab.c, add
extra parameter to print member function.
(info_sources_worker): Declare.
2021-06-25 Andrew Burgess <andrew.burgess@embecosm.com>
* symtab.c (struct info_sources_filter): New.
(info_sources_filter::info_sources_filter): New function.
(info_sources_filter::matches): New function.
(info_sources_filter::print): New function.
(struct filename_partial_match_opts): Moved to later in the file
and update the comment.
(struct output_source_filename_data)
<output_source_filename_data>: New constructor. <regexp>: Delete,
this is now in info_sources_filter. <c_regexp>: Delete, this is
now in info_sources_filter. <reset_output>: New member function.
<filename_seen_cache>: Rename to m_filename_seen_cache, change
from being a pointer, to being an actual object. <first>: Rename
to m_first. <print_header>: New member function. <partial_match>:
Delete.
(output_source_filename_data::output): Update now
m_filename_seen_cache is no longer a pointer, and for other member
variable name changes. Add a header comment.
(print_info_sources_header): Renamed to...
(output_source_filename_data::print_header): ...this. Update now
it's a member function and to take account of member variable
renaming.
(info_sources_command): Add a header comment, delete stack local
filename_seen_cache, initialization of output_source_filename_data
is now done by the constructor. Call print_header member function
instead of print_info_sources_header, call reset_output member
function instead of manually performing the reset.
2021-06-25 Andrew Burgess <andrew.burgess@embecosm.com>
* dwarf2/read.c (struct dwarf2_base_index_functions)
<has_unexpanded_symtabs>: Declare.
(dwarf2_base_index_functions::has_unexpanded_symtabs): Define new
function.
* objfiles.h (struct objfile) <has_unexpanded_symtabs>: Declare.
* psympriv.h (struct psymbol_functions) <has_unexpanded_symtabs>:
Declare.
* psymtab.c (psymbol_functions::has_unexpanded_symtabs): Define
new function.
* quick-symbol.h (struct quick_symbol_functions)
<has_unexpanded_symtabs>: Declare.
* symfile-debug.c (objfile::has_unexpanded_symtabs): Define new
function.
2021-06-25 Andrew Burgess <andrew.burgess@embecosm.com>
* infcall.c (call_function_by_hand_dummy): Add missing 'else' when
setting prototyped flag.
2021-06-25 Andrew Burgess <andrew.burgess@embecosm.com>
* ada-lang.c (desc_bounds): Use '{}' instead of NULL to indicate
an empty gdb::optional when calling value_struct_elt.
(desc_data): Likewise.
(desc_one_bound): Likewise.
* eval.c (structop_base_operation::evaluate_funcall): Pass
gdb::array_view, not a gdb::array_view* to value_struct_elt.
(eval_op_structop_struct): Use '{}' instead of NULL to indicate
an empty gdb::optional when calling value_struct_elt.
(eval_op_structop_ptr): Likewise.
* f-lang.c (fortran_structop_operation::evaluate): Likewise.
* guile/scm-value.c (gdbscm_value_field): Likewise.
* m2-lang.c (eval_op_m2_high): Likewise.
(eval_op_m2_subscript): Likewise.
* opencl-lang.c (opencl_structop_operation::evaluate): Likewise.
* python/py-value.c (valpy_getitem): Likewise.
* rust-lang.c (rust_val_print_str): Likewise.
(rust_range): Likewise.
(rust_subscript): Likewise.
(eval_op_rust_structop): Likewise.
(rust_aggregate_operation::evaluate): Likewise.
* valarith.c (value_user_defined_op): Likewise.
* valops.c (search_struct_method): Change parameter type, update
function body accordingly, and update header comment.
(value_struct_elt): Change parameter type, update function body
accordingly.
* value.h (value_struct_elt): Update declaration.
2021-06-25 Andrew Burgess <andrew.burgess@embecosm.com>
PR gdb/27994
* eval.c (structop_base_operation::evaluate_funcall): Pass
array_view instead of array to value_struct_elt.
* valarith.c (value_user_defined_op): Likewise.
* valops.c (typecmp): Change parameter type from array pointer to
array_view. Update header comment, and update body accordingly.
(search_struct_method): Likewise.
(value_struct_elt): Likewise.
* value.h (value_struct_elt): Update declaration.
2021-06-25 Andrew Burgess <andrew.burgess@embecosm.com>
PR gdb/27994
* eval.c (structop_base_operation::evaluate_funcall): Add a
nullptr to the end of the args array, which should not be included
in the argument array_view. Pass all the arguments through to
value_struct_elt.
* valops.c (search_struct_method): Update header comment.
(value_struct_elt): Likewise.
2021-06-25 Tom Tromey <tom@tromey.com>
* dwarf2/read.c (create_addrmap_from_aranges): Change padding
logic.
2021-06-25 Tom Tromey <tom@tromey.com>
* dwarf2/read.c (process_psymtab_comp_unit): Don't set 'lang'.
(scan_partial_symbols, partial_die_parent_scope)
(add_partial_symbol, add_partial_subprogram)
(compute_delayed_physnames, rust_union_quirks)
(process_full_comp_unit, process_full_type_unit)
(process_imported_unit_die, process_die, dw2_linkage_name)
(dwarf2_compute_name, dwarf2_physname, read_import_statement)
(read_file_scope, queue_and_load_dwo_tu, read_func_scope)
(read_variable, dwarf2_get_subprogram_pc_bounds)
(dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
(dwarf2_attach_fn_fields_to_type)
(quirk_ada_thick_pointer_struct, read_structure_type)
(handle_struct_member_die, process_structure_scope)
(read_array_type, read_array_order, prototyped_function_p)
(read_subroutine_type, dwarf2_init_complex_target_type)
(read_base_type, read_subrange_type, read_unspecified_type)
(load_partial_dies, partial_die_info::fixup, set_cu_language)
(new_symbol, need_gnat_info, determine_prefix, typename_concat)
(dwarf2_canonicalize_name, follow_die_offset)
(prepare_one_comp_unit): Update.
* dwarf2/cu.c (dwarf2_cu::start_symtab): Update.
2021-06-25 Tom Tromey <tom@tromey.com>
* dwarf2/read.c (read_file_scope): Don't call set_cu_language.
(dwarf_lang_to_enum_language): Rename from set_cu_language. Don't
set language_defn. Handle DW_LANG_OpenCL.
(prepare_one_comp_unit): Check producer and set language_defn.
2021-06-25 Andrew Burgess <andrew.burgess@embecosm.com>
* NEWS: Mention Python BP_CATCHPOINT feature.
* python/py-breakpoint.c (pybp_codes): Add bp_catchpoint support.
(bppy_init): Likewise.
(gdbpy_breakpoint_created): Likewise.
2021-06-25 Andrew Burgess <andrew.burgess@embecosm.com>
* guile/scm-breakpoint.c (bpscm_type_to_string): Handle
bp_catchpoint.
(bpscm_want_scm_wrapper_p): Likewise.
(gdbscm_make_breakpoint): Likewise.
(breakpoint_integer_constants): Likewise.
2021-06-25 Andrew Burgess <andrew.burgess@embecosm.com>
* guile/scm-breakpoint.c (gdbscm_make_breakpoint): Split the error
for invalid breakpoint numbers, and unsupported breakpoint
numbers.
2021-06-25 Tom Tromey <tom@tromey.com>
* dwarf2/index-write.c (struct addrmap_index_data): Add
initializers.
<operator()>: Declare.
(addrmap_index_data::operator()): Rename from
add_address_entry_worker. Remove 'datap' parameter.
(write_address_map): Update.
* psymtab.c (struct dump_psymtab_addrmap_data): Remove
(dump_psymtab_addrmap_1): Remove 'data' parameter, add other
parameters.
(dump_psymtab_addrmap): Update.
* addrmap.c (struct addrmap_funcs) <foreach>: Remove 'data'
parameter.
(addrmap_foreach, addrmap_fixed_foreach): Likewise.
(struct mutable_foreach_data): Remove.
(addrmap_mutable_foreach_worker): Update.
(addrmap_mutable_foreach): Remove 'data' parameter.
* addrmap.h (addrmap_foreach_fn): Use gdb::function_view.
(addrmap_foreach): Remove 'data' parameter.
2021-06-25 Tom Tromey <tromey@adacore.com>
* python/py-type.c (typy_get_name): Decode an Ada type name.
2021-06-25 Tom Tromey <tromey@adacore.com>
* ada-lang.c (ada_decode): Add wrap parameter.
* ada-lang.h (ada_decode): Add wrap parameter.
2021-06-25 Luis Machado <luis.machado@linaro.org>
* corelow.c (core_target::core_target) Update to read target
description.
2021-06-22 Simon Marchi <simon.marchi@polymtl.ca>
* python/lib/gdb/__init__.py: Format.
2021-06-22 Simon Marchi <simon.marchi@polymtl.ca>
* infrun.c (do_target_wait): Remove wait_ptid parameter.
(fetch_inferior_event): Adjust.
2021-06-22 Simon Marchi <simon.marchi@polymtl.ca>
* python/lib/gdb/__init__.py (_execute_unwinders): Return tuple
with name of chosen unwinder.
* python/py-unwind.c (pyuw_sniffer): Print name of chosen
unwinder in debug message.
2021-06-22 Andreas Schwab <schwab@suse.de>
PR symtab/27999
* dwarf2/loc.c (decode_debug_loclists_addresses): Support
DW_LLE_start_end.
2021-06-22 Andrew Burgess <andrew.burgess@embecosm.com>
* breakpoint.c (insert_bp_location): If we catch a
TARGET_CLOSE_ERROR just rethrow it, the breakpoints might have
been deleted.
2021-06-21 Andrew Burgess <andrew.burgess@embecosm.com>
* NEWS: Mention new target feature name.
* arch/riscv.c (riscv_create_target_description): GDB doesn't
currently create target descriptions containing vector registers.
* arch/riscv.h (struct riscv_gdbarch_features) <vlen>: New member
variable.
<operator==>: Also compare vlen.
<hash>: Also include vlen.
* riscv-tdep.c (riscv_feature_name_vector): New static global.
(struct riscv_vector_feature): New struct.
(riscv_vector_feature): New static global.
(riscv_register_reggroup_p): Ensure vector registers are part of
the 'all' group, and part of the 'vector' group.
(riscv_dwarf_reg_to_regnum): Handle vector registers.
(riscv_gdbarch_init): Check vector register feature.
* riscv-tdep.h: Add vector registers to GDB's internal register
numbers, and to the DWARF register numbers.
2021-06-21 Andrew Burgess <andrew.burgess@embecosm.com>
* NEWS: Mention the two new methods.
* python/py-frame.c (frapy_level): New function.
(frame_object_methods): Register 'level' method.
* python/py-unwind.c (pending_framepy_level): New function.
(pending_frame_object_methods): Register 'level' method.
2021-06-21 Andrew Burgess <andrew.burgess@embecosm.com>
* python/py-inferior.c (infpy_get_connection_num): Call
gdb_py_object_from_longest instead of PyLong_FromLong directly.
2021-06-21 Andrew Burgess <andrew.burgess@embecosm.com>
* python/py-unwind.c (unwind_infopy_add_saved_register): Handle
saving user registers.
2021-06-19 Mike Frysinger <vapier@gentoo.org>
* acinclude.m4: Delete most m4_include's of ../config files.
* configure.ac: Delete m4_include call and call AC_CONFIG_MACRO_DIR.
* aclocal.m4: Regenerate.
* configure: Regenerate.
2021-06-17 Pedro Alves <pedro@palves.net>
* scoped_ignore_signal.h (scoped_ignore_signal): Add
ConsumePending template parameter.
(scoped_ignore_signal::~scoped_ignore_signal): Skip calling
sigtimedwait if ConsumePending is false.
(scoped_ignore_sigpipe): Initialize with ConsumePending=true.
* scoped_ignore_sigttou.h (scoped_ignore_sigttou)
<m_ignore_signal>: Initialize with ConsumePending=false.
2021-06-17 Pedro Alves <pedro@palves.net>
* Makefile.in (SELFTESTS_SRCS): Add
unittests/scoped_ignore_signal-selftests.c.
* unittests/scoped_ignore_signal-selftests.c: New.
2021-06-17 Pedro Alves <pedro@palves.net>
* gdbsupport/scoped_ignore_signal.h: New.
* compile/compile.c: Include gdbsupport/scoped_ignore_signal.h
instead of <signal.h>. Don't include <unistd.h>.
(scoped_ignore_sigpipe): Remove.
* gdbsupport/scoped_ignore_sigttou.h: Include gdbsupport/scoped_ignore_signal.h
instead of <signal.h>. Don't include <unistd.h>.
(lazy_init): New.
(scoped_ignore_sigttou): Reimplement using scoped_ignore_signal
and lazy_init.
2021-06-17 Pedro Alves <pedro@palves.net>
* Makefile.in (HFILES_NO_SRCDIR): Remove inflow.h.
* inf-ptrace.c, inflow.c, procfs.c: Don't include "inflow.h".
* inflow.h: Delete, moved to gdbsupport/ under a different name.
* ser-unix.c: Don't include "inflow.h". Include
"gdbsupport/scoped_ignore_sigttou.h".
2021-06-17 Pedro Alves <pedro@palves.net>
* tui/tui-io.c (tui_dispatch_mouse_event): New, factored out from
...
(tui_dispatch_ctrl_char): ... this. Move CTRL-L handling to
tui_getc_1.
(cur_seq, start_sequence): New.
(tui_getc_1): Pass key escape sequences for curses control keys to
readline. Handle mouse and ctrl-l here.
(tui_resize_all): Disable/reenable the keypad if the command
window has the focus too.
* tui/tui-win.c (tui_set_focus_command): Don't change keypad
setting.
* tui/tui.c (tui_rl_other_window): Don't change keypad setting.
2021-06-16 Simon Marchi <simon.marchi@polymtl.ca>
* silent-rules.mk (ECHO_CCLD, ECHO_AR, ECHO_RANLIB): New.
2021-06-16 Tom de Vries <tdevries@suse.de>
PR symtab/26327
* dwarf2/cu.h (dwarf2_cu::ancestor): Remove.
(dwarf2_cu::get_builder): Declare and move ...
* dwarf2/cu.c (dwarf2_cu::get_builder): ... here. Use sym_cu instead
of ancestor. Assert return value is non-null.
* dwarf2/read.c (read_file_scope): Set per_objfile->sym_cu.
(follow_die_offset, follow_die_sig_1): Remove setting of ancestor.
(dwarf2_per_objfile): Add sym_cu field.
2021-06-15 Alan Modra <amodra@gmail.com>
* testsuite/lib/gdb.exp (exec_is_pie): Match new PIE readelf output.
2021-06-14 Mike Frysinger <vapier@gentoo.org>
* Makefile.in (GNULIB_BUILDDIR): Rename to ...
(GNULIB_PARENT_DIR): ... this. Remove "gnulib" from value.
2021-06-14 John Baldwin <jhb@FreeBSD.org>
* configure.ac: Check for <sys/procctl.h>.
* config.in, configure: Regenerate.
* fbsd-nat.c: Include <sys/procctl.h> if present.
[PROC_ASLR_CTL] (maybe_disable_address_space_randomization): New.
(fbsd_nat_target::create_inferior)
(fbsd_nat_target::supports_disable_randomization): New.
* fbsd-nat.h (fbsd_nat_target::create_inferior)
(fbsd_nat_target::supports_disable_randomization): New.
2021-06-14 Bernd Edlinger <bernd.edlinger@hotmail.de>
* compile/compile.c: Include missing header signal.h.
2021-06-12 John Baldwin <jhb@FreeBSD.org>
* remote.c (remote_new_objfile): Fix indentation.
2021-06-11 Kevin Buettner <kevinb@redhat.com>
* solib.c (libpthread_name_p): Match "libc" in addition
to "libpthread".
* linux-thread-db.c (libpthread_objfile_p): New function.
(libpthread_name_p): Adjust preexisting callers to use
libpthread_objfile_p().
2021-06-11 Simon Marchi <simon.marchi@polymtl.ca>
* dwarf2/loc.h (struct call_site_stuff): Remove.
2021-06-11 Tom Tromey <tom@tromey.com>
PR rust/23427
* rust-parse.c (rust_parser::lex_identifier): Handle raw
identifiers.
(rust_lex_tests): Add raw identifier tests.
2021-06-08 Lancelot Six <lsix@lancelotsix.com>
* python/lib/gdb/FrameDecorator.py (FrameDecorator): Use 'is None'
instead of '== None'.
(FrameVars): Use 'is not None' instead of '!= None'.
* python/lib/gdb/command/frame_filters.py (SetFrameFilterPriority):
Use 'is None' instead of '== None' and 'is not None' instead of '!=
None'.
2021-06-08 Simon Marchi <simon.marchi@polymtl.ca>
* inferior.h (class inferior) <in_initial_library_scan>: New.
* infcmd.c (post_create_inferior): Set in_initial_library_scan.
* infrun.c (follow_fork_inferior): Likewise.
* linux-thread-db.c (try_thread_db_load): Catch exception thrown
by try_thread_db_load_1
(thread_db_load): Return early if in_initial_library_scan is
set.
* remote.c (remote_new_objfile): Return early if
in_initial_library_scan is set.
2021-06-07 Pedro Alves <pedro@palves.net>
* dwarf2/read.c (struct partial_die_info): Add defaulted copy
ctor.
* symtab.h (struct symbol): Add defaulted copy assignment
operator.
2021-06-07 Pedro Alves <pedro@palves.net>
* completer.c (RL_QF_SINGLE_QUOTE, RL_QF_DOUBLE_QUOTE)
(RL_QF_BACKSLASH, RL_QF_OTHER_QUOTE): Delete.
(gdb_rl_find_completion_word): Remove write-only 'found_quote'
local.
2021-06-07 Pedro Alves <pedro@palves.net>
* nat/amd64-linux-siginfo.c (union nat_sigval): Rename to ...
(nat_sigval_t): ... this and remove typedef of same name.
(struct nat_siginfo): Rename to ...
(nat_siginfo_t): ... this and remove typedef of same name.
(struct compat_sigval): Rename to ...
(compat_sigval_t): ... this and remove typedef of same name.
(struct compat_siginfo): Rename to ...
(compat_siginfo_t): ... this and remove typedef of same name.
(struct compat_x32_siginfo): Rename to ...
(compat_x32_siginfo_t): ... this and remove typedef of same name.
(amd64_linux_siginfo_fixup_common): Adjust.
2021-06-07 Pedro Alves <pedro@palves.net>
* nat/amd64-linux-siginfo.c (compat_x32_siginfo_t): Move
__attribute__ __aligned__ from the typedef to the struct.
2021-06-07 Andrew Burgess <andrew.burgess@embecosm.com>
PR gdb/27847
* amd64-tdep.c (amd64_has_unaligned_fields): Move call to
type_align, and spot case where the alignment is unknown.
2021-06-07 Carl Love <cel@us.ibm.com>
* ppc-tdep.h (ppc_insn_prefix_dform): Declare.
* ppc64-tdep.c(insn_md, insn_x, insn_xo): New macros.
(ppc64_plt_pcrel_entry_point, ppc64_pcrel_linkage1_target,
ppc64_pcrel_linkage2_target): New functions.
(ppc64_standard_linkage9, ppc64_standard_linkage10,
ppc64_standard_linkage11, ppc64_standard_linkage12): New ppc
instruction patterns.
(ppc64_standard_linkage9, ppc64_standard_linkage10,
ppc64_standard_linkage11, ppc64_standard_linkage12): New variables
in define MAX expression.
(ppc64_skip_trampoline_code_1): Handle ppc64_standard_linkage9,
ppc64_standard_linkage10, ppc64_standard_linkage11,
ppc64_standard_linkage12.
* (ppc_insn_prefix_dform): New function.
2021-06-07 Simon Marchi <simon.marchi@polymtl.ca>
PR gdb/27899
* sparc-nat.c (sparc_fetch_inferior_registers): Set
inferior_ptid instead of using switch_to_thread.
(sparc_store_inferior_registers): Likewise.
2021-06-05 Bernd Edlinger <bernd.edlinger@hotmail.de>
* compile/compile.c (scoped_ignore_sigpipe): New helper class.
(compile_to_object): Ignore SIGPIPE before calling the plugin.
2021-06-05 Tom Tromey <tom@tromey.com>
* data-directory/Makefile.in (Makefile): Use correct directory
name.
2021-06-05 Tom Tromey <tom@tromey.com>
* data-directory/Makefile.in (Makefile): Rewrite.
2021-06-05 Tom Tromey <tromey@adacore.com>
* configure: Rebuild.
* configure.ac: Add ACX_NONCANONICAL_TARGET.
2021-06-05 Shahab Vahedi <shahab@synopsys.com>
* NEWS: Document 'set disassembler-options' support for the ARC
target.
* arc-tdep.c (arc_gdbarch_init): Set
'gdbarch_valid_disassembler_options'.
2021-06-04 Tom Tromey <tromey@adacore.com>
* dwarf2/read.h (dwarf2_fetch_die_type_sect_off): Add 'var_name'
parameter.
* dwarf2/loc.c (dwarf2_evaluate_property) <case
PROP_VARIABLE_NAME>: New case.
(compute_var_value): New function.
(sect_variable_value): Use compute_var_value.
* dwarf2/read.c (attr_to_dynamic_prop): Handle DW_TAG_variable.
(var_decl_name): New function.
(dwarf2_fetch_die_type_sect_off): Add 'var_name' parameter.
* gdbtypes.h (enum dynamic_prop_kind) <PROP_VARIABLE_NAME>: New
constant.
(union dynamic_prop_data) <variable_name>: New member.
(struct dynamic_prop) <variable_name, set_variable_name>: New
methods.
2021-06-04 Andrew Burgess <andrew.burgess@embecosm.com>
* remote.c (remote_target)
<select_thread_for_ambiguous_stop_reply>: Add additional debug
output.
2021-06-04 Hannes Domani <ssbssa@yahoo.de>
* python/py-tui.c (class tui_py_window): Add click function.
(tui_py_window::click): Likewise.
2021-06-04 Hannes Domani <ssbssa@yahoo.de>
* ser-mingw.c (console_select_thread): Handle MOUSE_EVENT.
* tui/tui-data.h (struct tui_win_info): Add click function.
* tui/tui-io.c (tui_prep_terminal): Enable mouse events.
(tui_deprep_terminal): Disable mouse events.
(tui_dispatch_ctrl_char): Handle KEY_MOUSE.
* tui/tui.c (tui_disable): Disable mouse events.
2021-06-03 Magne Hov <mhov@undo.io>
PR python/27841
* eval.c (expression::evaluate): Check inferior_ptid.
2021-06-03 Pedro Alves <pedro@palves.net>
* MAINTAINERS (The Official FSF-appointed GDB Maintainers): Remove
affiliation.
(Global Maintainers): Update my address.
(Write After Approval): Remove stale entry.
2021-06-03 John Baldwin <jhb@FreeBSD.org>
* fbsd-tdep.c (FBSD_SI_USER, FBSD_SI_QUEUE, FBSD_SI_TIMER)
(FBSD_SI_ASYNCIO, FBSD_SI_MESGQ, FBSD_SI_KERNEL, FBSD_SI_LWP)
(FBSD_ILL_ILLOPC, FBSD_ILL_ILLOPN, FBSD_ILL_ILLADR)
(FBSD_ILL_ILLTRP, FBSD_ILL_PRVOPC, FBSD_ILL_PRVREG)
(FBSD_ILL_COPROC, FBSD_ILL_BADSTK, FBSD_BUS_ADRALN)
(FBSD_BUS_ADRERR, FBSD_BUS_OBJERR, FBSD_BUS_OOMERR)
(FBSD_SEGV_MAPERR, FBSD_SEGV_ACCERR, FBSD_SEGV_PKUERR)
(FBSD_FPE_INTOVF, FBSD_FPE_INTDIV, FBSD_FPE_FLTDIV)
(FBSD_FPE_FLTOVF, FBSD_FPE_FLTUND, FBSD_FPE_FLTRES)
(FBSD_FPE_FLTINV, FBSD_FPE_FLTSUB, FBSD_TRAP_BRKPT)
(FBSD_TRAP_TRACE, FBSD_TRAP_DTRACE, FBSD_TRAP_CAP)
(FBSD_CLD_EXITED, FBSD_CLD_KILLED, FBSD_CLD_DUMPED)
(FBSD_CLD_TRAPPED, FBSD_CLD_STOPPED, FBSD_CLD_CONTINUED)
(FBSD_POLL_IN, FBSD_POLL_OUT, FBSD_POLL_MSG, FBSD_POLL_ERR)
(FBSD_POLL_PRI, FBSD_POLL_HUP, fbsd_signal_cause)
(fbsd_report_signal_info): New.
(fbsd_init_abi): Use fbsd_report_signal_info as gdbarch
report_signal_info method.
2021-06-03 Magne Hov <mhov@undo.io>
* MAINTAINERS (Write After Approval): Add Magne Hov.
2021-06-03 Hannes Domani <ssbssa@yahoo.de>
* python/py-symbol.c (gdbpy_initialize_symbols): Restore
gdb.SYMBOL_LABEL_DOMAIN constant.
2021-06-01 John Baldwin <jhb@FreeBSD.org>
* infrun.c (handle_inferior_event): Only call
gdbarch_displaced_step_restore_all_in_ptid if
gdbarch_supports_displaced_stepping is true.
2021-06-01 Tom Tromey <tromey@adacore.com>
* Makefile.in (all-data-directory): Remove.
(data-directory/Makefile): Remove.
2021-06-01 Tom Tromey <tromey@adacore.com>
* configure: Rebuild.
* configure.ac: Use AS_HELP_STRING for enable-shared. Fix typo.
2021-06-01 Tom Tromey <tromey@adacore.com>
* silent-rules.mk (ECHO_CC): New variable.
2021-06-01 Tom Tromey <tromey@adacore.com>
* Makefile.in (SUBDIRS): Add testsuite.
(all): Don't exclude testsuite.
2021-06-01 Tom Tromey <tromey@adacore.com>
* configure.ac: Copy some code from testsuite/configure.ac.
(enable_libctf): Subst this, not ENABLE_LIBCTF.
* configure: Rebuild.
2021-06-01 Tom de Vries <tdevries@suse.de>
PR symtab/26096
* minsyms.c (msymbol_is_cold_clone): New function.
(msymbol_is_function): Use msymbol_is_cold_clone.
2021-06-01 Fredrik Hederstierna <fredrik@hederstierna.com>
Andrew Burgess <andrew.burgess@embecosm.com>
PR gdb/14383
* Makefile.in (ALL_TARGET_OBS): Add arm-none-tdep.o.
(ALLDEPFILES): Add arm-none-tdep.c
* arm-none-tdep.c: New file.
* configure.tgt (arm*-*-*): Add arm-none-tdep.o to cpu_obs.
2021-06-01 Andrew Burgess <andrew.burgess@embecosm.com>
Richard Bunt <richard.bunt@arm.com>
* breakpoint.c (check_longjmp_breakpoint_for_call_dummy): Add
check for why the backtrace stopped.
2021-05-31 Simon Marchi <simon.marchi@polymtl.ca>
* dwarf2/read.h (struct structured_type) <signatured_type>: New.
Update all callers.
(struct dwarf2_per_bfd) <allocate_signatured_type>: Add
signature parameter, update all callers.
* dwar2/read.c (dwarf2_per_bfd::allocate_signatured_type): Add
signature parameter.
2021-05-31 Simon Marchi <simon.marchi@polymtl.ca>
* dwarf2/read.h (signatured_type_up): New, use where possible.
2021-05-31 Simon Marchi <simon.marchi@polymtl.ca>
* dwarf2/read.h (signatured_type, dwarf2_per_cu_data): Move up.
2021-05-30 Tom Tromey <tom@tromey.com>
* dwarf2/read.c (dwarf2_per_bfd::allocate_signatured_type): Set
is_debug_types.
(create_signatured_type_table_from_index)
(create_signatured_type_table_from_debug_names, add_type_unit)
(read_comp_units_from_section): Update.
2021-05-30 Tom Tromey <tom@tromey.com>
* dwarf2/read.h (struct dwarf2_per_bfd) <num_psymtabs,
m_num_psymtabs>: Remove.
(resize_symtabs): Update.
* dwarf2/read.c (dwarf2_per_bfd::allocate_per_cu)
(dwarf2_per_bfd::allocate_signatured_type): Update.
2021-05-27 Simon Marchi <simon.marchi@polymtl.ca>
* Fix tab after space indentation issues throughout.
2021-05-27 Simon Marchi <simon.marchi@polymtl.ca>
* Fix some indentation mistakes throughout.
2021-05-27 Simon Marchi <simon.marchi@polymtl.ca>
* breakpoint.h (iterate_over_bp_locations): Remove. Update
users to use all_bp_locations.
(all_bp_locations): New.
* breakpoint.c (all_bp_locations): Make non-static.
(iterate_over_bp_locations): Remove.
2021-05-27 Simon Marchi <simon.marchi@polymtl.ca>
* breakpoint.h (iterate_over_breakpoints): Remove. Update
callers to use all_breakpoints or all_breakpoints_safe.
(breakpoint_range, all_breakpoints, breakpoint_safe_range,
all_breakpoints_safe): Move here.
* breakpoint.c (all_breakpoints, all_breakpoints_safe): Make
non-static.
(iterate_over_breakpoints): Remove.
* python/py-finishbreakpoint.c (bpfinishpy_detect_out_scope_cb):
Return void.
* python/py-breakpoint.c (build_bp_list): Add comment, reverse
return value logic.
* guile/scm-breakpoint.c (bpscm_build_bp_list): Return void.
2021-05-27 Simon Marchi <simon.marchi@polymtl.ca>
* breakpoint.c (get_first_locp_gte_addr): Remove.
(ALL_BP_LOCATIONS_AT_ADDR): Remove. Replace all uses with
all_bp_locations_at_addr.
(struct bp_locations_at_addr_range): New.
(all_bp_locations_at_addr): New.
(bp_locations_compare_addrs): New.
2021-05-27 Simon Marchi <simon.marchi@polymtl.ca>
* breakpoint.c (ALL_BP_LOCATIONS): Remove, update users to use
all_bp_locations.
(all_bp_locations): New.
2021-05-27 Simon Marchi <simon.marchi@polymtl.ca>
* breakpoint.c (bp_locations): Change to std::vector, update all
users.
(bp_locations_count): Remove.
(update_global_location_list): Change to work with indices
rather than bp_location**.
2021-05-27 Simon Marchi <simon.marchi@polymtl.ca>
* breakpoint.h (bp_locations_range): New.
(struct breakpoint) <locations>: New. Use where possible.
2021-05-27 Simon Marchi <simon.marchi@polymtl.ca>
* breakpoint.h (all_tracepoints): Remove.
(breakpoint_iterator): Move here.
(struct tracepoint_filter): New.
(tracepoint_iterator): New.
(tracepoint_range): New.
(all_tracepoints): New.
* breakpoint.c (ALL_TRACEPOINTS): Remove, replace all users with
all_tracepoints.
(breakpoint_iterator): Move to header.
(all_tracepoints): New.
* tracepoint.c (start_tracing): Adjust.
2021-05-27 Simon Marchi <simon.marchi@polymtl.ca>
* breakpoint.c (breakpoint_safe_range): New.
(all_breakpoints_safe): New. Use instead of
ALL_BREAKPOINTS_SAFE where possible.
2021-05-27 Simon Marchi <simon.marchi@polymtl.ca>
* breakpoint.c (ALL_BREAKPOINTS): Remove, replace all uses with
all_breakpoints.
(breakpoint_iterator): New.
(breakpoint_range): New.
(all_breakpoints): New.
2021-05-27 Hannes Domani <ssbssa@yahoo.de>
* python/py-tui.c (tui_py_window::output): Add full_window
argument.
(gdbpy_tui_write): Parse "full_window" argument.
2021-05-27 Simon Marchi <simon.marchi@polymtl.ca>
* make-init-c: Add option to reverse function calls.
2021-05-27 Simon Marchi <simon.marchi@polymtl.ca>
* Makefile.in (INIT_FILES_FILTER_OUT): New.
(INIT_FILES): Use INIT_FILES_FILTER_OUT.
(stamp-init): Use make-init-c.
* bpf-tdep.c (_initialize_bpf_tdep): Remove "void".
* silent-rules.mk (ECHO_INIT_C): Change.
* make-init-c: New file.
2021-05-27 Simon Marchi <simon.marchi@polymtl.ca>
* command.h (add_alias_cmd): Accept target as
cmd_list_element. Update callers.
2021-05-27 Simon Marchi <simon.marchi@polymtl.ca>
* command.h (add_info_alias): Accept target as
cmd_list_element. Update callers.
2021-05-27 Simon Marchi <simon.marchi@polymtl.ca>
* command.h (add_com_alias): Accept target as
cmd_list_element. Update callers.
2021-05-27 Simon Marchi <simon.marchi@polymtl.ca>
* python/py-param.c (add_setshow_generic): Use return values of
add_setshow functions.
2021-05-27 Simon Marchi <simon.marchi@polymtl.ca>
* mi/mi-main.c (_initialize_mi_main):
* python/py-auto-load.c (gdbpy_initialize_auto_load):
* remote.c (_initialize_remote):
2021-05-27 Simon Marchi <simon.marchi@polymtl.ca>
* command.h (set_show_commands): New.
(add_setshow_enum_cmd, add_setshow_auto_boolean_cmd,
add_setshow_boolean_cmd, add_setshow_filename_cmd,
add_setshow_string_cmd, add_setshow_string_noescape_cmd,
add_setshow_optional_filename_cmd, add_setshow_integer_cmd,
add_setshow_uinteger_cmd, add_setshow_zinteger_cmd,
add_setshow_zuinteger_cmd, add_setshow_zuinteger_unlimited_cmd):
Return set_show_commands. Adjust callers.
* cli/cli-decode.c (add_setshow_cmd_full): Return
set_show_commands, remove result parameters, adjust callers.
2021-05-27 Tom de Vries <tdevries@suse.de>
PR symtab/27919
* dwarf2/read.c (process_psymtab_comp_unit):
2021-05-27 Tom de Vries <tdevries@suse.de>
* dwarf2/read.c (find_partial_die): Fix "Cannot not" typo in dwarf
error.
2021-05-27 Tom de Vries <tdevries@suse.de>
PR symtab/27898
* dwarf2/cu.c (dwarf2_cu::dwarf2_cu): Add load_all_dies init.
* dwarf2/cu.h (dwarf2_cu): Add load_all_dies field.
* dwarf2/read.c (load_partial_dies, find_partial_die): Update.
* dwarf2/read.h (dwarf2_per_cu_data::dwarf2_per_cu_data): Remove
load_all_dies init.
(dwarf2_per_cu_data): Remove load_all_dies field.
2021-05-26 Simon Marchi <simon.marchi@efficios.com>
* regcache.c (reg_buffer::reg_buffer): Default-initialize
m_registers array.
2021-05-26 Tom Tromey <tom@tromey.com>
* dwarf2/read.c (allocate_type_unit_groups_table)
(handle_DW_AT_stmt_list, allocate_dwo_file_hash_table): Use
htab_delete_entry.
(free_line_header_voidp): Remove.
* completer.c
(completion_tracker::completion_hash_entry::deleter): Remove.
(completion_tracker::discard_completions): Use htab_delete_entry.
* utils.h (htab_delete_entry): New template function.
2021-05-24 Hannes Domani <ssbssa@yahoo.de>
* python/py-tui.c (tui_py_window::refresh_window):
Avoid flickering.
2021-05-23 Tom de Vries <tdevries@suse.de>
PR tdep/27822
* target.h (struct target_ops): Mention target_thread_architecture in
read_description comment.
* x86-linux-nat.c (x86_linux_nat_target::read_description): Use
pid to determine if process is 64-bit or 32-bit.
* aarch64-linux-nat.c (aarch64_linux_nat_target::read_description):
Same.
* ppc-linux-nat.c (ppc_linux_nat_target::read_description): Same.
* riscv-linux-nat.c (riscv_linux_nat_target::read_description): Same.
* s390-linux-nat.c (s390_linux_nat_target::read_description): Same.
* arm-linux-nat.c (arm_linux_nat_target::read_description): Same.
Likewise, use pid to determine if kernel supports reading VFP
registers.
2021-05-22 Philippe Waroquiers <philippe.waroquiers@skynet.be>
* main.c (enum cmdarg_kind): Fix option type comments for
CMDARG_EARLYINIT_FILE and CMDARG_EARLYINIT_COMMAND.
2021-05-21 Tom de Vries <tdevries@suse.de>
PR testsuite/25047
* contrib/cc-with-tweaks.sh: Handle -l.
2021-05-21 Tom de Vries <tdevries@suse.de>
PR breakpoint/27889
* jit.c (jit_breakpoint_re_set_internal): Skip separate debug
objects. Call get_jiter_objfile_data with the_objfile.
2021-05-20 Simon Marchi <simon.marchi@polymtl.ca>
* linespec.c (linespec_p): Remove. Replace all uses with
"linespec *".
2021-05-20 Alexandra Hájková <ahajkova@redhat.com>
Pedro Alves <pedro@palves.net>
* cli/cli-script.h (command_line_up): New unique_ptr typedef.
* cli/cli-script.c (multi_line_command_p): Use unique_ptr
command_line_up instead of struct command_line.
(build_command_line): Likewise.
(get_command_line): Update the cmd function call parameter.
(process_next_line): Use unique_ptr command_line_up instead
of struct command_line.
(recurse_read_control_structure): Change the the type of
next to command_line_up.
(read_command_lines_1): Change type of `next' to be
command_line_up and update all references of `next'
accordingly.
2021-05-20 Alexandra Hájková <ahajkova@redhat.com>
* MAINTAINERS (Write After Approval): Add myself.
2021-05-19 John Baldwin <jhb@FreeBSD.org>
* dwarf2/read.c (tu_abbrev_offset::operator<): Mark const.
2021-05-18 Alexandra Hájková <ahajkova@redhat.com>
* inflow.c (new_tty): Do not leak tty.
2021-05-17 Tom Tromey <tom@tromey.com>
* dwarf2/read.h: Update include.
* dwarf2/read.c: Update include.
* dwarf2/line-header.c: Update include.
* dwarf2/cu.h: Update include.
* dwarf2/comp-unit-head.h: Rename from comp-unit.h.
* dwarf2/comp-unit-head.c: Rename from comp-unit.c.
* Makefile.in (COMMON_SFILES): Update.
2021-05-17 Tom Tromey <tom@tromey.com>
* dwarf2/read.c (maybe_queue_comp_unit)
(dwarf2_per_objfile::age_comp_units): Update.
(dwarf2_add_dependence, dwarf2_mark_helper, dwarf2_mark): Move to
dwarf2_cu methods.
* dwarf2/cu.h (struct dwarf2_cu) <mark, clear_mark, is_marked,
add_dependence>: New methods.
<m_dependencies>: Add "m_" prefix. Now private.
<m_mark>: Add "m_" prefix.
* dwarf2/cu.c (dwarf2_cu::dwarf2_cu): Update.
(dwarf2_mark_helper): New function.
(dwarf2_cu::mark, dwarf2_cu::add_dependence): New methods.
2021-05-17 Tom Tromey <tom@tromey.com>
* dwarf2/read.c (dwarf2_cu::addr_sized_int_type)
(dwarf2_cu::start_symtab, dwarf2_cu::addr_type)
(dwarf2_cu::dwarf2_cu): Move to cu.c.
* dwarf2/cu.c: New file.
* Makefile.in (COMMON_SFILES): Add dwarf2/cu.c.
2021-05-17 Tom Tromey <tom@tromey.com>
* Makefile.in (HFILES_NO_SRCDIR): Add dwarf2/cu.h.
* dwarf2/read.c (struct delayed_method_info, struct dwarf2_cu):
Move to cu.h.
* dwarf2/cu.h: New file.
2021-05-17 Andrew Burgess <andrew.burgess@embecosm.com>
* .dir-locals.el: Set sentence-end-double-space for all modes, and
set brace-list-open to 0 for C and C++ modes.
2021-05-17 Tom Tromey <tromey@adacore.com>
* dwarf2/loc.c (dwarf2_evaluate_loc_desc::get_frame_base): Throw
if frame is null.
2021-05-17 Tom Tromey <tromey@adacore.com>
* nat/linux-osdata.c (user_from_uid, time_from_time_t)
(group_from_gid): Subtract one from strncpy length.
2021-05-17 Tom Tromey <tromey@adacore.com>
* source.c (add_path): Check 'p' before using 'p[-1]'.
2021-05-17 Tom Tromey <tromey@adacore.com>
* dwarf2/read.h (struct dwarf2_per_cu_data_deleter: New.
(dwarf2_per_cu_data_up): New typedef.
(struct dwarf2_per_bfd) <allocate_per_cu>: Change return type.
<all_comp_units>: Use dwarf2_per_cu_data_up.
* dwarf2/read.c (dwarf2_per_cu_data::operator()): New function.
(dwarf2_per_bfd::allocate_per_cu): Return dwarf2_per_cu_data_up.
(create_cu_from_index_list): Likewise.
(create_signatured_type_table_from_index)
(create_cus_from_debug_names_list, add_type_unit)
(read_comp_units_from_section): Update.
(dwarf2_find_containing_comp_unit): Change type of all_comp_units.
(run_test): Update.
2021-05-17 Tom Tromey <tom@tromey.com>
* dwarf2/read.c (tu_abbrev_offset::operator<): New method.
(sort_tu_by_abbrev_offset): Remove.
(build_type_psymtabs): Update.
2021-05-17 Simon Marchi <simon.marchi@polymtl.ca>
* py-project.toml: New.
* gdb-gdb.py.in: Re-format.
2021-05-17 Simon Marchi <simon.marchi@polymtl.ca>
* cli/cli-decode.h (cmd_list_element) <is_command_class_help>:
New, use it.
* command.h (cmd_func_p): Remove.
* cli/cli-decode.c (cmd_func_p): Remove.
2021-05-17 Simon Marchi <simon.marchi@polymtl.ca>
* cli/cli-decode.h (cmd_list_element) <is_alias>: New, use it.
2021-05-17 Simon Marchi <simon.marchi@polymtl.ca>
* cli/cli-decode.h (cmd_list_element) <cmd_pointer>: Rename
to...
<alias_target>: ... this.
(add_alias_cmd): Rename old to target.
(add_info_alias): Rename old_name to target_name.
(add_com_alias): Likewise.
2021-05-17 Simon Marchi <simon.marchi@polymtl.ca>
* Rename "prefixlist" parameters to "subcommands" throughout.
* cli/cli-decode.h (cmd_list_element) <prefixlist>: Rename to...
<subcommands>: ... this.
* cli/cli-decode.c (lookup_cmd_for_prefixlist): Rename to...
(lookup_cmd_with_subcommands): ... this.
2021-05-17 Simon Marchi <simon.marchi@polymtl.ca>
* cli/cli-decode.c (add_alias_cmd): Don't handle old == 0.
2021-05-17 Simon Marchi <simon.marchi@polymtl.ca>
* cli/cli-decode.h (prefixname): Make const, move implementation
to cli/cli-decode.c.
* cli/cli-decode.c (cmd_list_element::prefixname): New.
2021-05-16 Weimin Pan <weimin.pan@oracle.com>
* ctfread.c (new_symbol): Set function address.
(read_func_kind_type): Remove incorrect type name setting.
Don't copy name returned from ctf_type_ame_raw throughout file.
2021-05-14 Tom Tromey <tom@tromey.com>
* rust-lang.c (rust_language::val_print_struct)
(rust_language::print_enum): Use common_val_print, not
value_print_inner.
2021-05-14 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
* python/py-inferior.c (infpy_get_connection_num): New function.
(inferior_object_getset): Add a new element for 'connection_num'.
* NEWS: Mention the 'connection_num' attribute of Inferior objects.
2021-05-14 Andrew Burgess <andrew.burgess@embecosm.com>
* remote.c (check_pending_events_prevent_wildcard_vcont): Change
argument type, update and re-wrap, header comment.
(remote_target::commit_resumed): Convert any_process_wildcard and
may_global_wildcard_vcont from int to bool.
2021-05-14 Kent Cheung <kent.cheung@arm.com>
* cp-valprint.c (cp_print_value): Replaced duplicate code.
* guile/scm-pretty-print.c (ppscm_print_children): Check max_depth
just before printing child values.
(gdbscm_apply_val_pretty_printer): Don't check max_depth before
printing string representation.
* python/py-prettyprint.c (print_children): Check max_depth just
before printing child values.
(gdbpy_apply_val_pretty_printer): Don't check max_depth before
printing string representation.
2021-05-14 Mike Frysinger <vapier@gentoo.org>
* remote-sim.c: Change gdb/callback.h & gdb/remote-sim.h includes to
sim/callback.h & sim/sim.h.
2021-05-13 Mike Frysinger <vapier@gentoo.org>
* lm32-tdep.c: Delete gdb/callback.h, gdb/remote-sim.h, and
sim-regno.h include.
2021-05-13 Simon Marchi <simon.marchi@efficios.com>
* inf-child.h (inf_child_target) <follow_exec>: New.
* inf-child.c (inf_child_target::follow_exec): New.
2021-05-13 Simon Marchi <simon.marchi@efficios.com>
* target.h (struct target_ops) <follow_exec>: Add ptid_t
parameter.
(target_follow_exec): Likewise.
* target.c (target_follow_exec): Add ptid_t parameter.
* infrun.c (follow_exec): Adjust call to target_follow_exec,
don't push target nor create thread.
* linux-thread-db.c (class thread_db_target) <follow_exec>: New.
(thread_db_target::wait): Just return on TARGET_WAITKIND_EXECD.
(thread_db_target::follow_exec): New.
* remote.c (class remote_target) <follow_exec>: Add ptid_t parameter.
(remote_target::follow_exec): Call
process_stratum_target::follow_exec.
* target-delegates.c: Re-generate.
2021-05-13 Simon Marchi <simon.marchi@efficios.com>
* infrun.c (follow_exec): Call target_follow_fork when
follow-exec-mode is same.
* target.h (target_follow_fork): Improve doc.
2021-05-13 Simon Marchi <simon.marchi@polymtl.ca>
* cli/cli-decode.h (struct cmd_list_element) <pre_show_hook>:
Remove.
* cli/cli-setshow.c (do_show_command): Adjust.
2021-05-13 Luis Machado <luis.machado@linaro.org>
* arch/aarch64-mte-linux.c (aarch64_mte_get_tag_granules): Don't
include the last address in the range.
2021-05-12 Simon Marchi <simon.marchi@polymtl.ca>
* python/python-internal.h (gdbpy_parse_command_name): Return
gdb::unique_xmalloc_ptr.
* python/py-cmd.c (gdbpy_parse_command_name): Likewise.
(cmdpy_init): Adjust.
* python/py-param.c (parmpy_init): Adjust.
(add_setshow_generic): Take gdb::unique_xmalloc_ptr, release it
when done.
2021-05-12 George Barrett <bob@bob131.so>
* NEWS (Guile API): Note the addition of the new procedure.
* guile/scm-value.c (gdbscm_value_const_value): Add
implementation of value-const-value procedure.
(value_functions): Add value-const-value procedure.
2021-05-12 George Barrett <bob@bob131.so>
* NEWS (Guile API): Note the addition of new procedures.
* guile/scm-value.c (gdbscm_reference_value): Add helper function
for reference value creation.
(gdbscm_value_reference_value): Add implementation of
value-reference-value procedure.
(gdbscm_value_rvalue_reference_value): Add implementation of
value-rvalue-reference-value procedure.
(value_functions): Add value-reference-value procedure. Add
value-rvalue-reference-value procedure.
2021-05-12 George Barrett <bob@bob131.so>
* guile/scm-type.c (type_integer_constants): Add binding for
TYPE_CODE_RVALUE_REF.
* guile/scm-value.c (gdbscm_value_referenced_value): Handle
dereferencing of rvalue references.
* NEWS (Guile API): Note improvements in rvalue reference support.
2021-05-12 Markus Metzger <markus.t.metzger@intel.com>
* btrace.c (handle_pt_insn_events): Ignore status update enable
events.
2021-05-11 Simon Marchi <simon.marchi@polymtl.ca>
* arm-tdep.c (arm_record_data_proc_misc_ld_str): Fix
indentation.
2021-05-11 Simon Marchi <simon.marchi@polymtl.ca>
* cli/cli-decode.h (struct cmd_list_element): Fix indentation.
2021-05-10 Lancelot Six <lsix@lancelotsix.com>
PR gdb/27614
* contrib/gdb-add-index.sh: Fix when called with a symlink as an
argument.
2021-05-10 Simon Marchi <simon.marchi@polymtl.ca>
* nat/linux-waitpid.c (status_to_str): Show signal name.
2021-05-09 Andrew Burgess <andrew.burgess@embecosm.com>
* python/py-breakpoint.c (pybp_debug): New static global.
(show_pybp_debug): New function.
(pybp_debug_printf): Define.
(PYBP_SCOPED_DEBUG_ENTER_EXIT): Define.
(gdbpy_breakpoint_created): Add some debugging.
(gdbpy_breakpoint_deleted): Likewise.
(gdbpy_breakpoint_modified): Likewise.
(_initialize_py_breakpoint): New function.
2021-05-09 Andrew Burgess <andrew.burgess@embecosm.com>
* python/py-unwind.c (pyuw_debug): Convert to bool.
(show_pyuw_debug): New function.
(pyuw_debug_printf): Define.
(PYUW_SCOPED_DEBUG_ENTER_EXIT): Define.
(pyuw_this_id): Convert to new debug print macros.
(pyuw_prev_register): Likewise.
(pyuw_sniffer): Likewise.
(pyuw_dealloc_cache): Likewise.
(_initialize_py_unwind): Update now pyuw_debug is a bool, and add
show function when registering.
2021-05-09 Andrew Burgess <andrew.burgess@embecosm.com>
* dummy-frame.c (fprint_dummy_frames): Convert use of
fprint_frame_id to use frame_id::to_string.
* frame.c (fprint_field): Delete.
(fprint_frame_id): Moved to...
(frame_id::to_string): ...this, rewritten to return a string.
(fprint_frame): Convert use of fprint_frame_id to use
frame_id::to_string.
(compute_frame_id): Likewise.
(frame_id_p): Likewise.
(frame_id_eq): Likewise.
(frame_id_inner): Likewise.
* frame.h (struct frame_id) <to_string>: New member function.
(fprint_frame_id): Delete declaration.
* guile/scm-frame.c (frscm_print_frame_smob): Convert use of
fprint_frame_id to use frame_id::to_string.
* python/py-frame.c (frame_object_to_frame_info): Likewise.
* python/py-unwind.c (unwind_infopy_str): Likewise.
(pyuw_this_id): Likewise.
2021-05-08 Simon Marchi <simon.marchi@polymtl.ca>
* nat/linux-waitpid.c (status_to_str): Return std::string.
* nat/linux-waitpid.h (status_to_str): Likewise.
* linux-nat.c (linux_nat_post_attach_wait): Adjust.
(linux_nat_target::attach): Adjust.
(linux_handle_extended_wait): Adjust.
(wait_lwp): Adjust.
(stop_wait_callback): Adjust.
(linux_nat_filter_event): Adjust.
(linux_nat_wait_1): Adjust.
* nat/linux-waitpid.c (status_to_str): Adjust.
* nat/linux-waitpid.h (status_to_str): Adjust.
2021-05-08 Simon Marchi <simon.marchi@polymtl.ca>
* infrun.h (infrun_debug_printf): Add missing space.
2021-05-08 Pedro Alves <pedro@palves.net>
* linux-nat.c (linux_nat_target::supports_disable_randomization):
Remove references to HAVE_PERSONALITY.
* nat/linux-personality.c: Remove references to HAVE_PERSONALITY.
(maybe_disable_address_space_randomization)
(~maybe_disable_address_space_randomizatio): Remove references to
HAVE_PERSONALITY.
* config.in, configure: Regenerate.
2021-05-07 Andrew Burgess <andrew.burgess@embecosm.com>
* cli/cli-cmds.c: Add 'gdbsupport/gdb_tilde_expand.h'
include.
(source_script_with_search): Perform tilde expansion.
2021-05-07 Simon Marchi <simon.marchi@polymtl.ca>
* target-descriptions.c (struct target_desc_info) <filename>:
Make std::string.
(copy_inferior_target_desc_info): Adjust.
(target_desc_info_free): Adjust.
(target_find_description): Adjust.
(set_tdesc_filename_cmd): Adjust.
(show_tdesc_filename_cmd): Adjust.
(unset_tdesc_filename_cmd): Adjust.
(maint_print_c_tdesc_cmd): Adjust.
2021-05-07 Simon Marchi <simon.marchi@polymtl.ca>
* target-descriptions.c (struct target_desc_info): Initialize
fields.
(get_tdesc_info): Use new.
(target_desc_info_free): Use delete.
2021-05-07 Simon Marchi <simon.marchi@polymtl.ca>
* target-descriptions.c (struct target_desc_info) <fetched>:
bool.
(target_find_description): Adjust.
(target_clear_description): Adjust.
2021-05-07 Simon Marchi <simon.marchi@polymtl.ca>
* target-descriptions.c (struct target_desc_info) <tdesc>:
Adjust doc.
(target_desc_fetched): Remove.
(current_target_desc): Remove.
(target_description_filename): Remove.
(target_find_description): Adjust.
(target_clear_description): Adjust.
(target_current_description): Adjust.
(set_tdesc_filename_cmd): Adjust.
(show_tdesc_filename_cmd): Adjust.
(unset_tdesc_filename_cmd): Adjust.
(maint_print_c_tdesc_cmd): Adjust.
(maint_print_xml_tdesc_cmd): Adjust.
2021-05-07 Andrew Burgess <andrew.burgess@embecosm.com>
* infcmd.c (notice_new_inferior): Change parameter type.
* inferior.h (notice_new_inferior): Change parameter type.
* remote.c (remote_notice_new_inferior): Change parameter type to
bool. Also update type of local variable to bool.
(remote_target::update_thread_list): Change type of local variable
to bool.
(remote_target::process_stop_reply): Pass bool instead of int to
remote_notice_new_inferior.
2021-05-07 Simon Marchi <simon.marchi@efficios.com>
* target.c (target_stack::unpush): Call target_ops::find_beneath
to get the target beneath `t`.
2021-05-07 Simon Marchi <simon.marchi@efficios.com>
* target.c (target_close): Check in all inferiors that the
target is not pushed.
2021-05-07 Aaron Merey <amerey@redhat.com>
* debuginfod-support.c (debuginfod_init): Remove.
(get_debuginfod_client): New function.
2021-05-07 Tom Tromey <tom@tromey.com>
* breakpoint.c (ambiguous_names_p): Use htab_eq_string.
* utils.c (streq_hash): Remove.
* utils.h (streq_hash): Don't declare.
* completer.c (completion_tracker::discard_completions): Update
comment.
* ada-lang.c (_initialize_ada_language): Use htab_eq_string.
2021-05-07 Simon Marchi <simon.marchi@polymtl.ca>
* Re-format all Python files using black.
2021-05-07 Andrew Burgess <andrew.burgess@embecosm.com>
* guile/guile-internal.h (gdbscm_safe_source_script): Change
function return type.
* guile/guile.c (gdbscm_source_script): Update to handle change in
gdbscm_safe_source_script.
* guile/scm-objfile.c (gdbscm_source_objfile_script): Likewise.
* guile/scm-safe-call.c (gdbscm_safe_source_script): Change return
type.
2021-05-06 Simon Marchi <simon.marchi@polymtl.ca>
* inferior.h (class inferior) <args>: Change type to
unique_xmalloc_ptr.
* inferior.c (inferior::~inferior): Don't free args.
* infcmd.c (get_inferior_args): Adjust.
(set_inferior_args): Adjust.
2021-05-06 Andrew Burgess <andrew.burgess@embecosm.com>
* guile/scm-breakpoint.c (bpscm_print_breakpoint_smob): Only print
breakpoint locations when the breakpoint actually has a location.
2021-05-06 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
* mi/mi-cmd-break.c (mi_cmd_break_condition): New function.
* mi/mi-cmds.c: Change the binding of "-break-condition" to
mi_cmd_break_condition.
* mi/mi-cmds.h (mi_cmd_break_condition): Declare.
* breakpoint.h (set_breakpoint_condition): Declare a new
overload.
* breakpoint.c (set_breakpoint_condition): New overloaded function
extracted out from ...
(condition_command): ... this.
* NEWS: Mention the change.
2021-05-06 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
* mi/mi-cmd-break.c (mi_cmd_break_insert_1): Recognize the
'--force-condition' flag to force the condition in the
'-break-insert' and '-dprintf-insert' commands.
* NEWS: Mention the change.
2021-05-04 Tom de Vries <tdevries@suse.de>
PR guile/27806
* guile/guile.c (gdbscm_initialize): Don't let guile change libgmp
memory functions.
2021-04-30 Tom Tromey <tom@tromey.com>
* dwarf2/read.c (dwarf2_initialize_objfile): Update.
(add_signatured_type_cu_to_table): Remove.
(create_debug_type_hash_table): Assume dwo_file is non-null.
(create_debug_types_hash_table): Update comment.
(create_all_type_units): Remove.
(sort_tu_by_abbrev_offset): Update comment.
(build_type_psymtabs): Rename from build_type_psymtabs_1.
(build_type_psymtabs): Remove.
(process_skeletonless_type_unit, dwarf2_build_psymtabs_hard):
Update.
(read_comp_units_from_section): Add types_htab, section_kind
parameters.
(create_all_comp_units): Read type units.
2021-04-30 Tom Tromey <tom@tromey.com>
* dwarf2/read.h (struct tu_stats) <nr_tus>: New member.
(struct dwarf2_per_bfd) <get_cutu, get_tu>: Remove
<get_cu>: Now inline.
<all_type_units>: Remove.
* dwarf2/read.c (dwarf2_per_bfd::~dwarf2_per_bfd): Update.
(dwarf2_per_bfd::get_cutu, dwarf2_per_bfd::get_cu)
(dwarf2_per_bfd::get_tu): Remove.
(dwarf2_per_bfd::allocate_signatured_type): Update nr_tus.
(create_signatured_type_table_from_index)
(create_signatured_type_table_from_debug_names)
(dw2_symtab_iter_next, dwarf2_base_index_functions::print_stats)
(dwarf2_base_index_functions::expand_all_symtabs)
(dw2_expand_marked_cus, dw_expand_symtabs_matching_file_matcher)
(dwarf2_base_index_functions::map_symbol_filenames)
(dw2_debug_names_iterator::next, dwarf2_initialize_objfile)
(add_signatured_type_cu_to_table, create_all_type_units)
(add_type_unit, build_type_psymtabs_1, print_tu_stats)
(create_all_comp_units): Update.
* dwarf2/index-write.c (check_dwarf64_offsets, write_gdbindex)
(write_debug_names): Update.
2021-04-30 Tom Tromey <tom@tromey.com>
* dwarf2/read.h (struct dwarf2_per_bfd) <allocate_per_cu,
allocate_signatured_type>: Change return type.
<all_comp_units, all_type_units>: Hold unique pointers.
(struct dwarf2_per_cu_data): Add constructor and initializers.
(struct signatured_type): Derive from dwarf2_per_cu_data.
* dwarf2/read.c (type_unit_group): Derive from
dwarf2_per_cu_data.
(dwarf2_per_bfd::get_cutu, dwarf2_per_bfd::get_cu)
(dwarf2_per_bfd::get_tu)
(dwarf2_per_bfd::allocate_signatured_type)
(dwarf2_per_bfd::allocate_signatured_type)
(create_cu_from_index_list, create_cus_from_index_list)
(create_signatured_type_table_from_index)
(create_signatured_type_table_from_debug_names)
(create_addrmap_from_aranges)
(dwarf2_base_index_functions::find_last_source_symtab)
(dw_expand_symtabs_matching_file_matcher)
(dwarf2_gdb_index::expand_symtabs_matching)
(dwarf2_base_index_functions::map_symbol_filenames)
(create_cus_from_debug_names_list)
(dw2_debug_names_iterator::next)
(dwarf2_debug_names_index::expand_symtabs_matching)
(create_debug_type_hash_table, add_type_unit)
(fill_in_sig_entry_from_dwo_entry, lookup_dwo_signatured_type):
Update.
(allocate_type_unit_groups_table): Use delete.
(create_type_unit_group): Change return type. Use new.
(get_type_unit_group, build_type_psymtabs_1)
(build_type_psymtab_dependencies)
(process_skeletonless_type_unit, set_partial_user)
(dwarf2_build_psymtabs_hard, read_comp_units_from_section)
(create_cus_hash_table, queue_and_load_dwo_tu, follow_die_sig_1)
(read_signatured_type): Update.
(dwarf2_find_containing_comp_unit): Change type of
'all_comp_units'.
(run_test): Update.
(dwarf2_per_bfd::allocate_per_cu)
(dwarf2_per_bfd::allocate_signatured_type): Change return type.
Use new.
(add_signatured_type_cu_to_table): Update.
* dwarf2/index-write.c (write_one_signatured_type)
(check_dwarf64_offsets, psyms_seen_size, write_gdbindex)
(write_debug_names): Update.
2021-04-30 Tom Tromey <tromey@adacore.com>
* nat/windows-nat.h (get_image_name): Don't declare.
* nat/windows-nat.c (get_image_name): Now static.
2021-04-30 Tom Tromey <tromey@adacore.com>
* windows-nat.c (windows_nat::handle_load_dll): Update.
(windows_nat_target::get_windows_debug_event): Call
dll_loaded_event.
(windows_add_all_dlls, windows_add_dll): Move to
nat/windows-nat.c.
* nat/windows-nat.h (handle_load_dll): Change parameters.
(dll_loaded_event, windows_add_all_dlls): Declare.
* nat/windows-nat.c (windows_add_dll, windows_add_all_dlls): Move
from windows-nat.c.
(dll_loaded_event): New function.
2021-04-30 Tom Tromey <tromey@adacore.com>
* nat/windows-nat.h (GenerateConsoleCtrlEvent): New define.
(GenerateConsoleCtrlEvent_ftype, GenerateConsoleCtrlEvent):
Declare.
* nat/windows-nat.c (GenerateConsoleCtrlEvent): Define.
(initialize_loadable): Initialize GenerateConsoleCtrlEvent.
2021-04-30 Tom Tromey <tromey@adacore.com>
* windows-nat.c: Move code to nat/windows-nat.[ch].
(_initialize_windows_nat): Call initialize_loadable.
* nat/windows-nat.h (AdjustTokenPrivileges)
(DebugActiveProcessStop, DebugBreakProcess)
(DebugSetProcessKillOnExit, EnumProcessModules)
(EnumProcessModulesEx, GetModuleInformation)
(GetModuleFileNameExA, GetModuleFileNameExW)
(LookupPrivilegeValueA, OpenProcessToken, GetConsoleFontSize)
(GetCurrentConsoleFont, Wow64SuspendThread)
(Wow64GetThreadContext, Wow64SetThreadContext)
(Wow64GetThreadSelectorEntry): Move from windows-nat.c.
(AdjustTokenPrivileges_ftype)
(DebugActiveProcessStop_ftype, DebugBreakProcess_ftype)
(DebugSetProcessKillOnExit_ftype, EnumProcessModules_ftype)
(EnumProcessModulesEx_ftype, GetModuleInformation_ftype)
(GetModuleFileNameExA_ftype, GetModuleFileNameExW_ftype)
(LookupPrivilegeValueA_ftype, OpenProcessToken_ftype)
(GetConsoleFontSize_ftype)
(GetCurrentConsoleFont_ftype, Wow64SuspendThread_ftype)
(Wow64GetThreadContext_ftype, Wow64SetThreadContext_ftype)
(Wow64GetThreadSelectorEntry_ftype): Likewise.
(initialize_loadable): Declare.
* nat/windows-nat.c (AdjustTokenPrivileges)
(DebugActiveProcessStop, DebugBreakProcess)
(DebugSetProcessKillOnExit, EnumProcessModules)
(EnumProcessModulesEx, GetModuleInformation, GetModuleFileNameExA)
(GetModuleFileNameExW, LookupPrivilegeValueA, OpenProcessToken)
(GetCurrentConsoleFont, GetConsoleFontSize, Wow64SuspendThread)
(Wow64GetThreadContext, Wow64SetThreadContext)
(Wow64GetThreadSelectorEntry): Define.
(bad, bad_GetCurrentConsoleFont, bad_GetConsoleFontSize): Move
from windows-nat.c.
(initialize_loadable): Likewise, and rename.
2021-04-30 Tom Tromey <tromey@adacore.com>
* windows-nat.c (bad_GetModuleFileNameEx): Remove define.
(bad_DebugActiveProcessStop, bad_DebugBreakProcess)
(bad_DebugSetProcessKillOnExit, bad_EnumProcessModules)
(bad_GetModuleFileNameExW, bad_GetModuleFileNameExA)
(bad_GetModuleInformation, bad_OpenProcessToken): Remove.
(bad): New template functions.
(_initialize_loadable): Update.
2021-04-30 Tom Tromey <tromey@adacore.com>
* ada-lang.c (ada_index_type): Use ada_check_typedef.
2021-04-29 Simon Marchi <simon.marchi@efficios.com>
* auto-load.h: Split namespace declaration.
2021-04-29 Simon Marchi <simon.marchi@polymtl.ca>
* infrun.c (save_waitstatus): Move variables to inner scope.
2021-04-29 Andrew Burgess <andrew.burgess@embecosm.com>
* NEWS: Fix typo and stray full stop.
2021-04-28 Tom Tromey <tromey@adacore.com>
* ada-exp.y (primary): Use new type for null pointer.
* ada-lang.c (ada_type_match): Remove "may_deref"
parameter. Handle null pointer.
(ada_args_match): Update.
* ada-valprint.c (ada_value_print_ptr, ada_value_print):
Handle null pointer.
2021-04-28 Andrew Burgess <andrew.burgess@embecosm.com>
* NEWS: Mention new commands.
* python/python.c (python_ignore_environment): New static global.
(show_python_ignore_environment): New function.
(set_python_ignore_environment): New function.
(python_dont_write_bytecode): New static global.
(show_python_dont_write_bytecode): New function.
(set_python_dont_write_bytecode): New function.
(_initialize_python): Register new commands.
2021-04-28 Andrew Burgess <andrew.burgess@embecosm.com>
* extension-priv.h (struct extension_language_ops): Rename
'finish_initialization' to 'initialize'.
* extension.c (finish_ext_lang_initialization): Renamed to...
(ext_lang_initialization): ...this, update comment, and updated
the calls to reflect the change in struct extension_language_ops.
* extension.h (finish_ext_lang_initialization): Renamed to...
(ext_lang_initialization): ...this.
* guile/guile.c (gdbscm_finish_initialization): Renamed to...
(gdbscm_initialize): ...this, update comment at definition.
(guile_extension_ops): Update.
* main.c (captured_main_1): Update call to
finish_ext_lang_initialization.
* python/python.c (gdbpy_finish_initialization): Rename to...
(gdbpy_initialize): ...this, update comment at definition, and
update call to do_finish_initialization.
(python_extension_ops): Update.
(do_finish_initialization): Rename to...
(do_initialize): ...this, and update comment.
2021-04-28 Andrew Burgess <andrew.burgess@embecosm.com>
* main.c (captured_main_1): Add a call to
finish_ext_lang_initialization.
* top.c (gdb_init): Remove call to finish_ext_lang_initialization.
2021-04-28 Andrew Burgess <andrew.burgess@embecosm.com>
* guile/guile.c (gdbscm_set_backtrace): Add declaration.
(gdbscm_finish_initialization): Add code moved from
_initialize_guile.
(_initialize_guile): Move code to gdbscm_finish_initialization.
* guile/scm-arch.c (gdbscm_initialize_arches): Move some code into
_initialize_scm_arch.
(_initialize_scm_arch): New function.
* guile/scm-block.c (gdbscm_initialize_blocks): Move some code
into _initialize_scm_block.
(_initialize_scm_block): New function.
* guile/scm-frame.c (gdbscm_initialize_frames): Move some code
into _initialize_scm_frame.
(_initialize_scm_frame): New function.
* guile/scm-objfile.c (gdbscm_initialize_objfiles): Move some code
into _initialize_scm_objfile.
(_initialize_scm_objfile): New function.
* guile/scm-progspace.c (gdbscm_initialize_pspaces): Move some
code into _initialize_scm_progspace.
(_initialize_scm_progspace): New function.
* guile/scm-symbol.c (gdbscm_initialize_symbols): Move some code
into _initialize_scm_symbol.
(_initialize_scm_symbol): New function.
* guile/scm-symtab.c (gdbscm_initialize_symtabs): Move some code
into _initialize_scm_symtab.
(_initialize_scm_symtab): New function.
* guile/scm-type.c (gdbscm_initialize_types): Move some code into
_initialize_scm_type.
(_initialize_scm_type): New function.
2021-04-28 Andrew Burgess <andrew.burgess@embecosm.com>
* python/py-arch.c (_initialize_py_arch): New function.
(gdbpy_initialize_arch): Move code to _initialize_py_arch.
* python/py-block.c (_initialize_py_block): New function.
(gdbpy_initialize_blocks): Move code to _initialize_py_block.
* python/py-inferior.c (_initialize_py_inferior): New function.
(gdbpy_initialize_inferior): Move code to _initialize_py_inferior.
* python/py-objfile.c (_initialize_py_objfile): New function.
(gdbpy_initialize_objfile): Move code to _initialize_py_objfile.
* python/py-progspace.c (_initialize_py_progspace): New function.
(gdbpy_initialize_pspace): Move code to _initialize_py_progspace.
* python/py-registers.c (_initialize_py_registers): New function.
(gdbpy_initialize_registers): Move code to
_initialize_py_registers.
* python/py-symbol.c (_initialize_py_symbol): New function.
(gdbpy_initialize_symbols): Move code to _initialize_py_symbol.
* python/py-symtab.c (_initialize_py_symtab): New function.
(gdbpy_initialize_symtabs): Move code to _initialize_py_symtab.
* python/py-type.c (_initialize_py_type): New function.
(gdbpy_initialize_types): Move code to _initialize_py_type.
* python/py-unwind.c (_initialize_py_unwind): New function.
(gdbpy_initialize_unwind): Move code to _initialize_py_unwind.
* python/python.c (_initialize_python): Move call to
do_start_initialization to gdbpy_finish_initialization.
(gdbpy_finish_initialization): Add call to
do_start_initialization.
2021-04-28 Andrew Burgess <andrew.burgess@embecosm.com>
* extension.c (struct scoped_default_signal): New struct.
(scoped_default_sigint): New typedef.
(finish_ext_lang_initialization): Make use of
scoped_default_sigint.
2021-04-28 Andrew Burgess <andrew.burgess@embecosm.com>
* main.c (captured_main_1): Don't pass argument to gdb_init.
* top.c (gdb_init): Remove unused argument, and add header
comment.
* top.h (gdb_init): Remove argument.
2021-04-27 Luis Machado <luis.machado@linaro.org>
* psymtab.c (psymbol_functions::dump): Output newline.
Remove wrap.
* symmisc.c (dump_objfile): Likewise.
2021-04-27 Michael Weghorn <m.weghorn@posteo.de>
Simon Marchi <simon.marchi@polymtl.ca>
* gdb/auto-load.c (_initialize_auto_load): 'Specify token
when attaching the 'auto_load_new_objfile' observer, so
other observers can specify it as a dependency.
* gdb/auto-load.h (struct token): Declare
'auto_load_new_objfile_observer_token' as token to be used
for the 'auto_load_new_objfile' observer.
* gdb/python/py-inferior.c (gdbpy_initialize_inferior): Make
'python_new_objfile' observer depend on 'auto_load_new_objfile'
observer, so it gets notified after the latter.
2021-04-27 Michael Weghorn <m.weghorn@posteo.de>
Simon Marchi <simon.marchi@polymtl.ca>
* unittests/observable-selftests.c (dependency_test_counters):
New.
(observer_token0, observer_token1, observer_token2,
observer_token3, observer_token4, observer_token5): New.
(struct dependency_observer_data): New struct.
(observer_dependency_test_callback): New function.
(test_observers): New.
(run_dependency_test): New function.
(test_dependency): New.
(_initialize_observer_selftest): Register dependency test.
2021-04-26 Simon Marchi <simon.marchi@polymtl.ca>
PR gdb/27773
* cli/cli-dump.c (dump_binary_file): Check result of
gdb_fopen_cloexec.
2021-04-25 Sergei Trofimovich <siarheit@google.com>
* sparc-linux-nat.c (sparc_linux_nat_target): fix sparc build
by passing `process_stratum_target*` parameter.
2021-04-25 Lancelot Six <lsix@lancelotsix.com>
PR gdb/22640
* typeprint.h (struct type_print_options): Add print_in_hex
flag.
(struct print_offset_data): Add print_in_hex flag, add a
constructor accepting a type_print_options* argument.
* typeprint.c (type_print_raw_options, default_ptype_flags): Set
default value for print_in_hex.
(print_offset_data::indentation): Allow more horizontal space.
(print_offset_data::print_offset_data): Add ctor.
(print_offset_data::maybe_print_hole, print_offset_data::update):
Handle the print_in_hex flag.
(whatis_exp): Handle 'x' and 'd' flags.
(print_offsets_and_sizes_in_hex): Declare.
(set_print_offsets_and_sizes_in_hex): Create.
(show_print_offsets_and_sizes_in_hex): Create.
(_initialize_typeprint): Update help message for the ptype
command, register the 'set print type hex' and 'show print type
hex' commands.
* c-typeprint.c (c_print_type, c_type_print_base_struct_union)
(c_type_print_base): Construct the print_offset_data
object using the type_print_optons parameter.
* rust-lang.c (rust_language::print_type): Construct the
print_offset_data object using the type_print_optons parameter.
* NEWS: Mention the new flags of the ptype command.
2021-04-25 Lancelot Six <lsix@lancelotsix.com>
* typeprint.h (struct type_print_options): Move before
print_offset_data.
2021-04-25 Joel Brobecker <brobecker@adacore.com>
GDB 10.2 released.
2021-04-23 Simon Marchi <simon.marchi@polymtl.ca>
* observable.c (observer_debug): Change to bool.
2021-04-23 Andrew Burgess <andrew.burgess@embecosm.com>
* dwarf2/read.c: Add 'unordered_set' include.
(dwarf2_base_index_functions::map_symbol_filenames): Replace
'visited' hash table with 'qfn_cache' unordered_set. Remove use
of per_Bfd->filenames_cache cache, and use function local
filenames_cache instead. Reindent.
* dwarf2/read.h (struct dwarf2_per_bfd) <filenames_cache>: Delete.
2021-04-22 Simon Marchi <simon.marchi@polymtl.ca>
* breakpoint.c (iterate_over_bp_locations): Change callback to
function view, remove data parameter.
* breakpoint.h (iterate_over_bp_locations): Likewise.
* record-full.c (record_full_sync_record_breakpoints): Remove
data parameter.
2021-04-22 Tom Tromey <tom@tromey.com>
* c-typeprint.c (c_type_print_base_struct_union): Use
print_spaces_filtered_with_print_options.
2021-04-22 Simon Marchi <simon.marchi@polymtl.ca>
PR gdb/27757
* python/py-type.c (typy_range): Check that bounds are constant
before accessing them as such.
* guile/scm-type.c (gdbscm_type_range): Likewise.
2021-04-22 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
* Makefile.in (COMMON_SFILES): Remove continuations.c.
* inferior.c (inferior::add_continuation): New method, adapted
from 'add_inferior_continuation'.
(inferior::do_all_continuations): New method, adapted from
'do_all_inferior_continuations'.
(inferior::~inferior): Clear the list of continuations directly.
* inferior.h (class inferior) <continuations>: Rename into...
<m_continuations>: ...this and make private.
* continuations.c: Remove.
* continuations.h: Remove.
* event-top.c: Don't include "continuations.h".
Update the users below.
* inf-loop.c (inferior_event_handler)
* infcmd.c (attach_command)
(notice_new_inferior): Update.
2021-04-22 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
* inferior.h (class inferior) <continuations>: Change the type
to be an std::list of std::function's.
Update the references and uses below.
* continuations.c (struct continuation): Delete.
(make_continuation): Delete.
(do_my_continuations_1): Delete.
(do_my_continuations): Delete.
(discard_my_continuations_1): Delete.
(discard_my_continuations): Delete.
(add_inferior_continuation): Update.
(do_all_inferior_continuations): Update.
(discard_all_inferior_continuations): Update.
* continuations.h (add_inferior_continuation): Update to take
an std::function as the parameter.
* infcmd.c (struct attach_command_continuation_args): Delete.
(attach_command_continuation): Delete.
(attach_command_continuation_free_args): Delete.
(attach_command): Update.
(notice_new_inferior): Update.
2021-04-22 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
* continuations.h: Update the general comment.
* inferior.h (class inferior) <continuations>: Update the comment.
* interps.c: Do not include "continuations.h".
2021-04-22 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
* continuations.h (do_all_inferior_continuations): Remove the 'err'
parameter. Update the references below.
* continuations.c (do_my_continuations_1)
(do_my_continuations)
(do_all_inferior_continuations): Update.
* inf-loop.c (inferior_event_handler): Update.
* infcmd.c (attach_command_continuation): Update.
2021-04-22 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
* infcmd.c (attach_post_wait): Update the function comment.
2021-04-22 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
* infcmd.c (attach_post_wait): Remove the unused parameter 'args'.
Update the references below.
(struct attach_command_continuation_args)
(attach_command_continuation)
(attach_command_continuation_free_args)
(attach_command)
(notice_new_inferior): Update to remove the reference to 'args'.
2021-04-22 Simon Marchi <simon.marchi@polymtl.ca>
Tom de Vries <tdevries@suse.de>
PR remote/27710
* remote.c (remote_target_is_non_stop_p): New function.
* remote.h (remote_target_is_non_stop_p): Declare.
* remote-notif.c (remote_async_get_pending_events_handler): Fix assert
to check non-stopness using notif_state->remote rather current target.
2021-04-22 Tom Tromey <tom@tromey.com>
* rust-parse.c (rust_parser::parse_sizeof): Remove KW_MUT code.
(struct typed_val_int) <val>: Now ULONGEST.
(rust_parser::parse_array_type): Remove negative check.
(rust_lex_int_test): Change 'value' to ULONGEST.
2021-04-22 Andrew Burgess <andrew.burgess@embecosm.com>
* arch-utils.c (default_addressable_memory_unit_size): Return a
value based on bfd's bits per byte.
2021-04-21 Tom Tromey <tom@tromey.com>
* dwarf2/read.h (struct dwarf2_per_cu_data) <dwarf_version>: Now
unsigned char.
(struct dwarf2_per_cu_data): Rearrange.
* dwarf2/comp-unit.h (struct comp_unit_head) <version>: Now
unsigned char.
(struct comp_unit_head): Rearrange.
* dwarf2/comp-unit.c (read_comp_unit_head): Update.
2021-04-21 Tom de Vries <tdevries@suse.de>
PR build/27681
* configure.ac: Remove --without-included-regex/--with-included-regex.
* config.in: Regenerate.
* configure: Regenerate.
* gdb_regex.h: Assume USE_INCLUDED_REGEX is defined.
2021-04-21 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
* breakpoint.h (create_breakpoint): Add a new parameter,
'force_condition'.
* breakpoint.c (create_breakpoint): Use the 'force_condition'
argument when 'parse_extra' is false to check if the condition
is invalid at all of the breakpoint locations.
Update the users below.
(break_command_1)
(dprintf_command)
(trace_command)
(ftrace_command)
(strace_command)
(create_tracepoint_from_upload): Update.
* guile/scm-breakpoint.c (gdbscm_register_breakpoint_x): Update.
* mi/mi-cmd-break.c (mi_cmd_break_insert_1): Update.
* python/py-breakpoint.c (bppy_init): Update.
* python/py-finishbreakpoint.c (bpfinishpy_init): Update.
2021-04-21 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
* breakpoint.c (print_one_breakpoint_location): Display "N" for
disabled-by-condition locations on MI-like output.
(breakpoint_1): Do not display the disabled-by-condition footnote
if the output is MI-like.
2021-04-21 Frederic Cambus <fred@statdns.com>
* syscalls/update-netbsd.sh: Fix script name display in usage, and
update year range in generated copyright notices.
2021-04-20 Felix Willgerodt <felix.willgerodt@intel.com>
* c-exp.y (qualifier_seq_noopt): Replace qualifier_seq with
qualifier_seq_noopt.
2021-04-20 Felix Willgerodt <felix.willgerodt@intel.com>
* c-exp.y (single_qualifier): Handle UNKNOWN_CPP_NAME.
2021-04-19 Andrew Burgess <andrew.burgess@embecosm.com>
* producer.c: Replace 'regex' include with 'gdb_regex.h'.
(producer_is_icc): Replace use of std::regex with gdb's
compiled_regex.
2021-04-17 Tom Tromey <tom@tromey.com>
PR gdb/23743:
* dwarf2/read.c (class offset_view): New.
(struct symbol_table_slot): Remove.
(struct mapped_index) <symbol_table, constant_pool>: Change type.
<symbol_name_index, symbol_vec_index>: New methods.
<symbol_name_slot_invalid, symbol_name_at, symbol_name_count>:
Rewrite.
(read_gdb_index_from_buffer): Update.
(struct dw2_symtab_iterator) <vec>: Change type.
(dw2_symtab_iter_init_common, dw2_symtab_iter_init)
(dw2_symtab_iter_next, dw2_expand_marked_cus): Update.
* dwarf2/index-write.c (class data_buf) <append_data>: Remove.
<append_array, append_offset>: New methods.
(write_hash_table, add_address_entry, write_gdbindex_1)
(write_debug_names): Update.
* dwarf2/index-common.h (byte_swap, MAYBE_SWAP): Remove.
2021-04-17 Tom Tromey <tom@tromey.com>
* dwarf2/index-write.c (write_psymtabs_to_index): Check
partial_symtabs.
2021-04-17 Tom Tromey <tom@tromey.com>
* psymtab.c (psymbol_functions::expand_matching_symbols): Rename
from map_matching_symbols. Change parameters.
* psympriv.h (struct psymbol_functions) <expand_matching_symbols>:
Rename from map_matching_symbols. Change parameters.
* dwarf2/read.c (struct dwarf2_gdb_index)
<expand_matching_symbols>: Rename from map_matching_symbols.
Change parameters.
(struct dwarf2_debug_names_index) <expand_matching_symbols>:
Rename from map_matching_symbols. Change parameters.
(dwarf2_gdb_index::expand_matching_symbols): Rename from
dw2_map_matching_symbols. Change parameters.
(dwarf2_gdb_index::expand_matching_symbols): Remove old
implementation.
(dwarf2_debug_names_index::expand_matching_symbols): Rename from
map_matching_symbols. Change parameters.
* objfiles.h (struct objfile) <expand_matching_symbols>: Rename
from map_matching_symbols. Change parameters.
* symfile-debug.c (objfile::expand_matching_symbols): Rename from
map_matching_symbols. Change parameters.
* ada-lang.c (map_matching_symbols): New function.
(add_nonlocal_symbols): Update.
2021-04-17 Tom Tromey <tom@tromey.com>
* quick-symbol.h (struct quick_symbol_functions)
<expand_symtabs_with_fullname>: Remove.
* psymtab.c (psymbol_functions::expand_symtabs_with_fullname):
Remove.
* psympriv.h (struct psymbol_functions)
<expand_symtabs_with_fullname>: Remove.
* dwarf2/read.c (struct dwarf2_base_index_functions)
<expand_symtabs_with_fullname>: Remove.
(dwarf2_base_index_functions::expand_symtabs_with_fullname):
Remove.
* objfiles.h (struct objfile) <expand_symtabs_with_fullname>:
Update comment.
* symfile-debug.c (objfile::expand_symtabs_with_fullname):
Rewrite.
2021-04-17 Tom Tromey <tom@tromey.com>
* symfile-debug.c (objfile::expand_symtabs_for_function):
Rewrite.
* quick-symbol.h (struct quick_symbol_functions)
<expand_symtabs_for_function>: Remove.
* psymtab.c (psymbol_functions::expand_symtabs_for_function):
Remove.
* psympriv.h (struct psymbol_functions)
<expand_symtabs_for_function>: Remove.
* objfiles.h (struct objfile) <expand_symtabs_for_function>:
Update comment.
* dwarf2/read.c (struct dwarf2_gdb_index)
<expand_symtabs_for_function>: Remove.
(struct dwarf2_debug_names_index) <expand_symtabs_for_function>:
Remove.
(find_slot_in_mapped_hash): Remove.
(dw2_symtab_iter_init_common): Merge with dw2_symtab_iter_init.
(dw2_symtab_iter_init): Remove one overload.
(dwarf2_gdb_index::expand_symtabs_for_function)
(dwarf2_debug_names_index::expand_symtabs_for_function): Remove.
2021-04-17 Tom Tromey <tom@tromey.com>
* symfile-debug.c (objfile::map_symtabs_matching_filename):
Rewrite.
* quick-symbol.h (struct quick_symbol_functions)
<map_symtabs_matching_filename>: Remove.
* psymtab.c (partial_map_expand_apply)
(psymbol_functions::map_symtabs_matching_filename): Remove.
* psympriv.h (struct psymbol_functions)
<map_symtabs_matching_filename>: Remove.
* objfiles.h (struct objfile) <map_symtabs_matching_filename>:
Update comment.
* dwarf2/read.c (struct dwarf2_base_index_functions)
<map_symtabs_matching_filename>: Remove.
(dw2_map_expand_apply)
(dwarf2_base_index_functions::map_symtabs_matching_filename):
Remove.
2021-04-17 Tom Tromey <tom@tromey.com>
* symfile-debug.c (objfile::lookup_symbol): Rewrite.
* quick-symbol.h (struct quick_symbol_functions) <lookup_symbol>:
Remove.
* psymtab.c (psymbol_functions::lookup_symbol): Remove.
* psympriv.h (struct psymbol_functions) <lookup_symbol>: Remove.
* objfiles.h (struct objfile) <lookup_symbol>: Add comment.
* dwarf2/read.c (struct dwarf2_gdb_index) <lookup_symbol>:
Remove.
(struct dwarf2_debug_names_index) <lookup_symbol>: Remove.
(dwarf2_gdb_index::lookup_symbol)
(dwarf2_debug_names_index::lookup_symbol): Remove.
2021-04-17 Tom Tromey <tom@tromey.com>
* symtab.c (global_symbol_searcher::expand_symtabs): Update.
* symmisc.c (maintenance_expand_symtabs): Update.
* symfile.c (expand_symtabs_matching): Update.
* symfile-debug.c (objfile::expand_symtabs_matching): Add 'domain'
parameter.
* quick-symbol.h (struct quick_symbol_functions)
<expand_symtabs_matching>: Add 'domain' parameter.
* psymtab.c (recursively_search_psymtabs)
(psymbol_functions::expand_symtabs_matching): Add 'domain'
parameter.
* psympriv.h (struct psymbol_functions) <expand_symtabs_matching>:
Add 'domain' parameter.
* objfiles.h (struct objfile) <expand_symtabs_matching>: Add
'domain' parameter.
* linespec.c (iterate_over_all_matching_symtabs): Update.
* dwarf2/read.c (struct dwarf2_gdb_index)
<expand_symtabs_matching>: Add 'domain' parameter.
(struct dwarf2_debug_names_index) <expand_symtabs_matching>: Add
'domain' parameter.
(dw2_expand_symtabs_matching)
(dwarf2_gdb_index::expand_symtabs_matching)
(dw2_debug_names_iterator)
(dwarf2_debug_names_index::expand_symtabs_matching): Add 'domain'
parameter.
2021-04-17 Tom Tromey <tom@tromey.com>
* symtab.c (global_symbol_searcher::expand_symtabs)
(default_collect_symbol_completion_matches_break_on): Update.
* symmisc.c (maintenance_expand_symtabs): Update.
* symfile.h (expand_symtabs_matching): Add search_flags
parameter.
* symfile.c (expand_symtabs_matching): Add search_flags
parameter.
* symfile-debug.c (objfile::expand_symtabs_matching): Add
search_flags parameter.
* quick-symbol.h (struct quick_symbol_functions)
<expand_symtabs_matching>: Add search_flags parameter.
* python/py-symbol.c (gdbpy_lookup_static_symbols): Update.
* psymtab.c (recursively_search_psymtabs)
(psymbol_functions::expand_symtabs_matching): Add search_flags
parameter.
* psympriv.h (struct psymbol_functions) <expand_symtabs_matching>:
Add search_flags parameter.
* objfiles.h (struct objfile) <expand_symtabs_matching>: Add
search_flags parameter.
* linespec.c (iterate_over_all_matching_symtabs): Update.
* dwarf2/read.c (struct dwarf2_gdb_index)
<expand_symtabs_matching>: Add search_flags parameter.
(struct dwarf2_debug_names_index) <expand_symtabs_matching>: Add
search_flags parameter.
(dw2_map_matching_symbols): Update.
(dw2_expand_marked_cus, dw2_expand_symtabs_matching)
(dwarf2_gdb_index::expand_symtabs_matching): Add search_flags
parameter.
(dw2_debug_names_iterator): Change block_index to search flags.
<m_block_index>: Likewise.
(dw2_debug_names_iterator::next)
(dwarf2_debug_names_index::lookup_symbol)
(dwarf2_debug_names_index::expand_symtabs_for_function)
(dwarf2_debug_names_index::map_matching_symbols)
(dwarf2_debug_names_index::map_matching_symbols): Update.
(dwarf2_debug_names_index::expand_symtabs_matching): Add
search_flags parameter.
* ada-lang.c (ada_add_global_exceptions)
(collect_symbol_completion_matches): Update.
2021-04-17 Tom Tromey <tom@tromey.com>
* symtab.c (default_collect_symbol_completion_matches_break_on):
Update.
* symfile.h (expand_symtabs_matching): Return bool.
* symfile.c (expand_symtabs_matching): Return bool.
* symfile-debug.c (objfile::expand_symtabs_matching): Return
bool.
* quick-symbol.h (expand_symtabs_exp_notify_ftype): Return bool.
(struct quick_symbol_functions) <expand_symtabs_matching>: Return
bool.
* psymtab.c (psymbol_functions::expand_symtabs_matching): Return
bool.
* psympriv.h (struct psymbol_functions)
<expand_symtabs_matching>: Return bool.
* objfiles.h (struct objfile) <expand_symtabs_matching>: Return
bool.
* dwarf2/read.c (struct dwarf2_gdb_index)
<expand_symtabs_matching>: Return bool.
(struct dwarf2_debug_names_index) <expand_symtabs_matching>:
Return bool.
(dw2_expand_symtabs_matching_symbol): Return bool.
(dw2_expand_symtabs_matching_one, dw2_expand_marked_cus)
(dw2_expand_symtabs_matching)
(dwarf2_gdb_index::expand_symtabs_matching)
(dwarf2_debug_names_index::expand_symtabs_matching)
(dwarf2_debug_names_index::expand_symtabs_matching): Return bool.
2021-04-17 Tom Tromey <tom@tromey.com>
* quick-symbol.h (enum block_search_flag_values): New.
(block_search_flags): New enum flags type.
2021-04-16 Tom Tromey <tom@tromey.com>
* rust-parse.c: New file.
* rust-exp.y: Remove.
* Makefile.in (COMMON_SFILES): Add rust-parse.c.
(SFILES): Remove rust-exp.y.
(YYFILES, local-maintainer-clean): Remove rust-exp.c.
2021-04-16 Luis Machado <luis.machado@linaro.org>
* arch-utils.c (default_floatformat_for_type): Handle bfloat16.
2021-04-15 John Baldwin <jhb@FreeBSD.org>
* fbsd-nat.c (fbsd_lwp_debug_printf, fbsd_nat_debug_printf): New,
use throughout file.
2021-04-15 Tom Tromey <tromey@adacore.com>
* ada-valprint.c (ada_value_print_array): Handle optimized-out
arrays.
2021-04-15 Tom Tromey <tromey@adacore.com>
* printcmd.c (print_variable_and_value): Use
common_val_print_checked.
2021-04-15 Tom Tromey <tromey@adacore.com>
* rust-exp.y (rust_parser::convert_ast_to_expression): Update.
* parse.c (parser_state::push_symbol, parser_state::push_dollar):
Update.
* p-exp.y (variable): Update.
* m2-exp.y (variable): Update.
* go-exp.y (variable): Update.
* expprint.c (dump_for_expression): New overload.
* expop.h (check_objfile): New overload.
(check_constant): New overload.
(class var_value_operation): Use block_symbol.
<get_symbol>: Rewrite.
* eval.c (var_value_operation::evaluate)
(var_value_operation::evaluate_funcall)
(var_value_operation::evaluate_for_address)
(var_value_operation::evaluate_for_address)
(var_value_operation::evaluate_with_coercion)
(var_value_operation::evaluate_for_sizeof)
(var_value_operation::evaluate_for_cast): Update.
* d-exp.y (PrimaryExpression): Update.
* c-exp.y (variable): Update.
* ax-gdb.c (var_value_operation::do_generate_ax): Update.
* ada-lang.c (ada_var_value_operation::evaluate_for_cast)
(ada_var_value_operation::evaluate)
(ada_var_value_operation::resolve)
(ada_funcall_operation::resolve): Update.
* ada-exp.y (write_var_from_sym, write_object_renaming)
(write_ambiguous_var, write_var_or_type, write_name_assoc)
(maybe_overload): Update.
* ada-exp.h (class ada_var_value_operation) <get_block>: Rewrite.
2021-04-15 Tom Tromey <tom@tromey.com>
Andrew Burgess <andrew.burgess@embecosm.com>
* NEWS: Add entry.
* main.c (captured_main_1): Call check_quiet_mode.
* top.c (startup_quiet): New global.
(check_quiet_mode): New function.
(show_startup_quiet): New function.
(init_main): Register new command.
* top.h (check_quiet_mode): Declare.
2021-04-15 Andrew Burgess <andrew.burgess@embecosm.com>
PR cli/25956
* NEWS: Mention new early init files and command line options.
* config.in: Regenerate.
* configure: Regenerate.
* configure.ac: Define GDBEARLYINIT.
* main.c (get_earlyinit_files): New function.
(enum cmdarg_kind): Add CMDARG_EARLYINIT_FILE and
CMDARG_EARLYINIT_COMMAND.
(captured_main_1): Add support for new command line flags, and for
processing startup files.
(print_gdb_help): Include startup files in the output.
2021-04-15 Andrew Burgess <andrew.burgess@embecosm.com>
* main.c (relocate_gdbinit_path_maybe_in_datadir): Rename to...
(relocate_file_path_maybe_in_datadir): ...this.
(class gdb_initfile_finder): New class.
(get_init_files): Now uses gdb_initfile_finder.
(print_gdb_help): Print 'None found' when there are no init files.
2021-04-14 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
* dwarf2/read.c (inherit_abstract_dies): Keep a reference to the
corresponding child of the abstract DIE when iterating the
children of the concrete DIE.
2021-04-13 Tom de Vries <tdevries@suse.de>
* ui-style.c (read_semi_number, extended_color): Change idx parameter
type to regoff_t *.
2021-04-13 Luis Machado <luis.machado@linaro.org>
* rs6000-tdep.c (ppc_displaced_step_fixup): Use %s to print
hex values.
2021-04-12 Will Schmidt <will_schmidt@vnet.ibm.com>
* rs6000-tdep.c: Add support for single-stepping of
prefixed instructions.
2021-04-12 Will Schmidt <will_schmidt@vnet.ibm.com>
PR gdb/27525
* gdb/rs6000-tdep.c (ppc_displaced_step_fixup): Update to
handle the addpcis/lnia instruction.
2021-04-05 Will Schmidt <will_schmidt@vnet.ibm.com>
* MAINTAINERS (Write After Approval): Add myself.
2021-4-12 Carl Love <cel@us.ibm.com>
* rs6000-tdep.c (rs6000_builtin_type_vec128): Add t_float128 variable.
(rs6000_builtin_type_vec128): Add append_composite_type_field for
float128.
2021-04-12 Simon Marchi <simon.marchi@polymtl.ca>
* nat/windows-nat.c: Remove all code guarded by _WIN32_WCE.
* nat/windows-nat.h: Likewise.
2021-04-10 Eli Zaretskii <eliz@gnu.org>
* windows-nat.c (windows_nat::handle_load_dll): Call
windows_add_dll if get_image_name failed to glean the name of the
DLL by using the lpImageName pointer.
(windows_add_all_dlls): Now a thin wrapper around windows_add_dll.
(windows_add_dll): Now does what windows_add_all_dlls did before,
but also accepts an argument LOAD_ADDR, which, if non-NULL,
specifies the address where the DLL was loaded into the inferior,
and looks for the single DLL loaded at that address.
2021-04-09 Luis Machado <luis.machado@linaro.org>
* nat/aarch64-mte-linux-ptrace.c: Update include file order.
2021-04-08 Dominique Quatravaux <dominique.quatravaux@epfl.ch>
* darwin-nat.c (darwin_nat_target::resume): Remove status
variable.
2021-04-08 Felix Willgerodt <felix.willgerodt@intel.com>
* i386-tdep.c (i386_skip_prologue): Use symbol table to find the
prologue end for Intel compilers.
* amd64-tdep.c (amd64_skip_prologue): Likewise.
* producer.c (producer_is_icc_ge_19): New function.
* producer.h (producer_is_icc_ge_19): New declaration.
2021-04-08 Felix Willgerodt <felix.willgerodt@intel.com>
* producer.c: (producer_is_icc): Update for new version scheme.
(producer_parsing_tests): Update names and expected results.
* producer.h: (producer_is_icc): Update comment accordingly.
2021-04-07 Simon Marchi <simon.marchi@polymtl.ca>
* target.h (struct target_ops) <follow_fork>: Return void.
(target_follow_fork): Likewise.
* target.c (default_follow_fork): Likewise.
(target_follow_fork): Likewise.
* infrun.c (follow_fork_inferior): Adjust.
* fbsd-nat.h (class fbsd_nat_target) <follow_fork>: Return void.
* fbsd-nat.c (fbsd_nat_target:::follow_fork): Likewise.
* linux-nat.h (class linux_nat_target) <follow_fork>: Likewise.
* linux-nat.c (linux_nat_target::follow_fork): Return void.
* obsd-nat.h (class obsd_nat_target) <follow_fork>: Return void.
* obsd-nat.c (obsd_nat_target::follow_fork): Likewise.
* remote.c (class remote_target) <follow_fork>: Likewise.
(remote_target::follow_fork): Likewise.
* target-delegates.c: Re-generate.
2021-04-07 Weimin Pan <weimin.pan@oracle.com>
* ctfread.c (fetch_tid_type): New function, use throughout file.
(read_forward_type): New function.
(read_type_record): Call read_forward_type.
2021-04-07 Andrew Burgess <andrew.burgess@embecosm.com>
* f-exp.h (class fortran_structop_operation): New class.
* f-exp.y (exp): Create fortran_structop_operation instead of the
generic structop_operation.
* f-lang.c (fortran_undetermined::evaluate): Re-evaluate
expression as EVAL_NORMAL if the result type was dynamic so we can
extract the actual array bounds.
(fortran_structop_operation::evaluate): New function.
2021-04-07 Andrew Burgess <andrew.burgess@embecosm.com>
* eval.c (evaluate_subexp_standard): Remove
EVAL_AVOID_SIDE_EFFECTS handling from STRUCTOP_STRUCT and
STRUCTOP_PTR.
2021-04-07 Andrew Burgess <andrew.burgess@embecosm.com>
* valops.c (value_cast): Call value_deeply_equal before performing
any cast.
2021-04-07 Andrew Burgess <andrew.burgess@embecosm.com>
* gdbtypes.c (types_equal): Move pointer equality check earlier in
the function.
2021-04-07 Caroline Tice <cmtice@google.com>
* dwarf2/read.c (try_open_dwop_file): Add path for the binary to
the search paths used resolve relative location of .dwo file.
2021-04-07 Andrew Burgess <andrew.burgess@embecosm.com>
* dwarf2/section.c (dwarf2_section_info::get_bfd_owner): Add an
assert.
(dwarf2_section_info::get_file_name): Add an assert.
(dwarf2_section_info::read_string): Display a minimal, sane error
when the dwarf2_section_info is not associated with a bfd section.
2021-04-07 Andrew Burgess <andrew.burgess@embecosm.com>
* top.c (staged_gdb_datadir): Update comment.
(set_gdb_datadir): Copy the value of gdb_datadir back into
staged_datadir.
(init_main): Initialise staged_gdb_datadir.
2021-04-06 Tom de Vries <tdevries@suse.de>
PR breakpoints/25884
* infcmd.c (prepare_one_step): Using inline frame info to narrow
stepping range.
2021-04-06 Tom de Vries <tdevries@suse.de>
PR tui/27680
* tui/tui-disasm.c (len_without_escapes): Pass ptr pointing at escape
to style.parse.
2021-04-04 Simon Marchi <simon.marchi@polymtl.ca>
* avr-tdep.c (avr_frame_unwind_cache): Use
trad_frame_saved_reg::is_addr.
2021-04-02 Simon Marchi <simon.marchi@polymtl.ca>
* objfiles.c (get_objfile_bfd_data): Remove objfile parameter,
adjust callers.
2021-04-02 Simon Marchi <simon.marchi@polymtl.ca>
* psympriv.h (struct partial_symtab) <partial_symtab>: Change
objfile parameter for objfile_per_bfd_storage, adjust callers.
(struct standard_psymtab) <standard_psymtab>: Likewise.
(struct legacy_psymtab) <legacy_psymtab>: Likewise.
* psymtab.c (partial_symtab::partial_symtab): Likewise.
* ctfread.c (struct ctf_psymtab): Likewise.
* dwarf2/read.h (struct dwarf2_psymtab): Likewise.
* dwarf2/read.c (struct dwarf2_include_psymtab): Likewise.
(dwarf2_create_include_psymtab): Likewise.
* objfiles.h (struct objfile_per_bfd_storage)
<objfile_per_bfd_storage>: Add bfd parameter, adjust callers.
<get_bfd>: New method.
<m_bfd>: New field.
* objfiles.c (get_objfile_bfd_data): Adjust.
2021-04-02 Simon Marchi <simon.marchi@polymtl.ca>
* psymtab.c (partial_symtab::partial_symtab): Change
last_objfile_name to be an std::string.
* symfile.c (allocate_symtab): Likewise.
2021-04-02 Simon Marchi <simon.marchi@polymtl.ca>
* objfiles.h (struct objfile_per_bfd_storage) <intern>: New
methods.
(struct objfile) <intern>: Use
objfile::objfile_per_bfd_storage::intern.
2021-04-01 Simon Marchi <simon.marchi@efficios.com>
* gdbtypes.h (TYPE_FLAG_ENUM): Remove, replace all uses
with type::is_flag_enum.
2021-04-01 Simon Marchi <simon.marchi@efficios.com>
* gdbtypes.h (struct type) <is_flag_enum,
set_is_flag_enum>: New methods.
(TYPE_FLAG_ENUM): Use type::is_flag_enum, change all
write call sites to use type::set_is_flag_enum.
2021-04-01 Simon Marchi <simon.marchi@efficios.com>
* gdbtypes.h (TYPE_DECLARED_CLASS): Remove, replace all uses
with type::is_declared_class.
2021-04-01 Simon Marchi <simon.marchi@efficios.com>
* gdbtypes.h (struct type) <is_declared_class,
set_is_declared_class>: New methods.
(TYPE_DECLARED_CLASS): Use type::is_declared_class, change all
write call sites to use type::set_is_declared_class.
2021-02-28 Boris Staletic <boris.staletic@gmail.com>
* gdb/python/lib/gdb/__init__.py: Use importlib on python 3.4+
to avoid deprecation warnings.
2021-04-01 Martin Liska <mliska@suse.cz>
* cp-name-parser.y: Use startswith instead of strncmp.
* m2-exp.y: Likewise.
* macroexp.c (substitute_args): Likewise.
* mi/mi-main.c (command_notifies_uscc_observer): Likewise.
* rust-exp.y: Likewise.
2021-03-31 Tom Tromey <tom@tromey.com>
* dwarf2/read.c (dwarf2_gdb_index::map_matching_symbols): Merge
with dw2_map_matching_symbols.
(dwarf2_gdb_index::expand_symtabs_matching): Merge with
dw2_expand_symtabs_matching.
2021-03-31 Tom Tromey <tromey@adacore.com>
* dwarf2/stringify.h: Fix typo.
2021-03-30 Simon Marchi <simon.marchi@polymtl.ca>
PR gdb/27541
* dwarf2/read.c (dwarf2_has_info): Don't share dwarf2_per_bfd
with objfiles using READNOW.
2021-03-29 Tom Tromey <tromey@adacore.com>
* top.c (check_frame_language_change): Update.
* language.c (language_info): Remove parameter.
* language.h (language_info): Remove parameter.
2021-03-29 Luis Machado <luis.machado@linaro.org>
* compile/compile.c (get_args): Don't add empty argv entries.
2021-03-29 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
gdb:
* procfs.c (procfs_target::attach): Define inf.
Use it.
(procfs_target::create_inferior): Likewise.
2021-03-28 Tom Tromey <tom@tromey.com>
* elfread.c (can_lazily_read_symbols): Move to dwarf2/read.c.
(elf_symfile_read): Simplify.
* dwarf2/read.c (struct lazy_dwarf_reader): Move from elfread.c.
(make_lazy_dwarf_reader): New function.
(make_dwarf_gdb_index, make_dwarf_debug_names): Now static.
(dwarf2_initialize_objfile): Return void. Remove index_kind
parameter. Push on 'qf' list.
* dwarf2/public.h (dwarf2_initialize_objfile): Change return
type. Remove 'index_kind' parameter.
(make_dwarf_gdb_index, make_dwarf_debug_names): Don't declare.
2021-03-27 Tom Tromey <tom@tromey.com>
* elfread.c (elf_sym_fns_lazy_psyms): Don't declare.
2021-03-27 Tom Tromey <tom@tromey.com>
* elfread.c (elf_symfile_read): Don't clear 'qf'.
2021-03-26 Lancelot Six <lsix@lancelotsix.com>
* contrib/gdb-add-index.sh: Avoid variable shadowing and get
rid of 'local'.
2021-03-26 Tom Tromey <tom@tromey.com>
* symtab.c (struct output_source_filename_data): Add 'output'
method and operator().
(output_source_filename_data::output): Rename from
output_source_filename.
(output_partial_symbol_filename): Remove.
(info_sources_command): Update.
(struct add_partial_filename_data): Add operator().
(add_partial_filename_data::operator()): Rename from
maybe_add_partial_symtab_filename.
(make_source_files_completion_list): Update.
* symfile.c (quick_symbol_functions): Update.
* symfile-debug.c (objfile::map_symbol_filenames): Update.
* quick-symbol.h (symbol_filename_ftype): Change type of 'fun' and
'need_fullname'. Remove 'data' parameter.
(struct quick_symbol_functions) <map_symbol_filenames>: Likewise.
* psymtab.c (psymbol_functions::map_symbol_filenames): Update.
* psympriv.h (struct psymbol_functions) <map_symbol_filenames>:
Change type of 'fun' and 'need_fullname'. Remove 'data'
parameter.
* objfiles.h (struct objfile) <map_symbol_filenames>: Change type
of 'fun' and 'need_fullname'. Remove 'data' parameter.
* mi/mi-cmd-file.c (print_partial_file_name): Remove 'ignore'
parameter.
(mi_cmd_file_list_exec_source_files): Update.
* dwarf2/read.c
(dwarf2_base_index_functions::map_symbol_filenames): Update.
2021-03-26 Tom Tromey <tom@tromey.com>
* ada-lang.c (struct match_data): Add operator().
(match_data::operator()): Rename from aux_add_nonlocal_symbols.
(callback): Remove 'callback'.
2021-03-26 Tom Tromey <tom@tromey.com>
* psymtab.c (psymbol_functions::expand_symtabs_matching): Only
call make_ignore_params once.
2021-03-26 Tom Tromey <tom@tromey.com>
* psymtab.c (psymbol_functions::expand_symtabs_matching): Remove
"user" check.
2021-03-26 Simon Marchi <simon.marchi@efficios.com>
Pedro Alves <pedro@palves.net>
* async-event.c: Include "infrun.h".
(async_event_handler_marked): New.
* async-event.h (async_event_handler_marked): Declare.
* infrun.c (maybe_set_commit_resumed_all_targets): Switch to
inferior before calling target method. Don't commit-resumed if
target_has_pending_events is true.
* remote.c (remote_target::has_pending_events): New.
* target-delegates.c: Regenerate.
* target.c (target_has_pending_events): New.
* target.h (target_ops::has_pending_events): New target method.
(target_has_pending_events): New.
2021-03-26 Simon Marchi <simon.marchi@efficios.com>
Pedro Alves <pedro@palves.net>
* infcmd.c (run_command_1, attach_command, detach_command)
(interrupt_target_1): Use scoped_disable_commit_resumed.
* infrun.c (do_target_resume): Remove
target_commit_resume call.
(commit_resume_all_targets): Remove.
(maybe_set_commit_resumed_all_targets): New.
(maybe_call_commit_resumed_all_targets): New.
(enable_commit_resumed): New.
(scoped_disable_commit_resumed::scoped_disable_commit_resumed)
(scoped_disable_commit_resumed::~scoped_disable_commit_resumed)
(scoped_disable_commit_resumed::reset)
(scoped_disable_commit_resumed::reset_and_commit)
(scoped_enable_commit_resumed::scoped_enable_commit_resumed)
(scoped_enable_commit_resumed::~scoped_enable_commit_resumed):
New.
(proceed): Use scoped_disable_commit_resumed and
maybe_call_commit_resumed_all_targets.
(fetch_inferior_event): Use scoped_disable_commit_resumed.
* infrun.h (struct scoped_disable_commit_resumed): New.
(maybe_call_commit_resumed_all_process_targets): New.
(struct scoped_enable_commit_resumed): New.
* mi/mi-main.c (exec_continue): Use scoped_disable_commit_resumed.
* process-stratum-target.h (class process_stratum_target):
<commit_resumed_state>: New.
* record-full.c (record_full_wait_1): Change commit_resumed_state
around calling commit_resumed.
* remote.c (class remote_target) <commit_resume>: Rename to...
<commit_resumed>: ... this.
(struct stop_reply): Move up.
(remote_target::commit_resume): Rename to...
(remote_target::commit_resumed): ... this. Check if there is any
thread pending vCont resume.
(remote_target::remote_stop_ns): Generate stop replies for resumed
but pending vCont threads.
(remote_target::wait_ns): Add gdb_assert.
* target-delegates.c: Regenerate.
* target.c (target_wait, target_resume): Assert that the current
process_stratum target isn't in commit-resumed state.
(defer_target_commit_resume): Remove.
(target_commit_resume): Remove.
(target_commit_resumed): New.
(make_scoped_defer_target_commit_resume): Remove.
(target_stop): Assert that the current process_stratum target
isn't in commit-resumed state.
* target.h (struct target_ops) <commit_resume>: Rename to ...
<commit_resumed>: ... this.
(target_commit_resume): Remove.
(target_commit_resumed): New.
(make_scoped_defer_target_commit_resume): Remove.
* top.c (wait_sync_command_done): Use
scoped_enable_commit_resumed.
2021-03-26 Pedro Alves <pedro@palves.net>
* target.c (target_always_non_stop_p): Also check whether the
target can async.
2021-03-26 Tom Tromey <tom@tromey.com>
* dwarf2/read.c (dwarf2_read_debug_names)
(dwarf2_build_psymtabs_hard, create_addrmap_from_aranges)
(dw2_debug_names_iterator::next, create_type_unit_group):
Simplify.
2021-03-25 Pedro Alves <pedro@palves.net>
* gdb.server/bkpt-other-inferior.exp: Only enable remote output
around setting the breakpoint.
2021-03-25 Pedro Alves <pedro@palves.net>
* remote.c
(remote_target::check_pending_events_prevent_wildcard_vcont):
Check whether the event's ptid is not null_ptid before looking up
the corresponding inferior.
2021-03-24 Changbin Du <changbin.du@gmail.com>
* riscv-tdep.c (riscv_breakpoint_kind_from_pc): Remove call to
read_code.
2021-03-24 Simon Marchi <simon.marchi@polymtl.ca>
* target.h (current_top_target): Remove, make callers use the
current inferior instead.
* target.c (current_top_target): Remove.
2021-03-24 Simon Marchi <simon.marchi@polymtl.ca>
* target.h (target_shortname): Change to function declaration.
(target_longname): Likewise.
(target_attach_no_wait): Likewise.
(target_post_attach): Likewise.
(target_prepare_to_store): Likewise.
(target_supports_enable_disable_tracepoint): Likewise.
(target_supports_string_tracing): Likewise.
(target_supports_evaluation_of_breakpoint_conditions): Likewise.
(target_supports_dumpcore): Likewise.
(target_dumpcore): Likewise.
(target_can_run_breakpoint_commands): Likewise.
(target_files_info): Likewise.
(target_post_startup_inferior): Likewise.
(target_insert_fork_catchpoint): Likewise.
(target_remove_fork_catchpoint): Likewise.
(target_insert_vfork_catchpoint): Likewise.
(target_remove_vfork_catchpoint): Likewise.
(target_insert_exec_catchpoint): Likewise.
(target_remove_exec_catchpoint): Likewise.
(target_set_syscall_catchpoint): Likewise.
(target_rcmd): Likewise.
(target_can_lock_scheduler): Likewise.
(target_can_async_p): Likewise.
(target_is_async_p): Likewise.
(target_execution_direction): Likewise.
(target_extra_thread_info): Likewise.
(target_pid_to_exec_file): Likewise.
(target_thread_architecture): Likewise.
(target_find_memory_regions): Likewise.
(target_make_corefile_notes): Likewise.
(target_get_bookmark): Likewise.
(target_goto_bookmark): Likewise.
(target_stopped_by_watchpoint): Likewise.
(target_stopped_by_sw_breakpoint): Likewise.
(target_supports_stopped_by_sw_breakpoint): Likewise.
(target_stopped_by_hw_breakpoint): Likewise.
(target_supports_stopped_by_hw_breakpoint): Likewise.
(target_have_steppable_watchpoint): Likewise.
(target_can_use_hardware_watchpoint): Likewise.
(target_region_ok_for_hw_watchpoint): Likewise.
(target_can_do_single_step): Likewise.
(target_insert_watchpoint): Likewise.
(target_remove_watchpoint): Likewise.
(target_insert_hw_breakpoint): Likewise.
(target_remove_hw_breakpoint): Likewise.
(target_can_accel_watchpoint_condition): Likewise.
(target_can_execute_reverse): Likewise.
(target_get_ada_task_ptid): Likewise.
(target_filesystem_is_local): Likewise.
(target_trace_init): Likewise.
(target_download_tracepoint): Likewise.
(target_can_download_tracepoint): Likewise.
(target_download_trace_state_variable): Likewise.
(target_enable_tracepoint): Likewise.
(target_disable_tracepoint): Likewise.
(target_trace_start): Likewise.
(target_trace_set_readonly_regions): Likewise.
(target_get_trace_status): Likewise.
(target_get_tracepoint_status): Likewise.
(target_trace_stop): Likewise.
(target_trace_find): Likewise.
(target_get_trace_state_variable_value): Likewise.
(target_save_trace_data): Likewise.
(target_upload_tracepoints): Likewise.
(target_upload_trace_state_variables): Likewise.
(target_get_raw_trace_data): Likewise.
(target_get_min_fast_tracepoint_insn_len): Likewise.
(target_set_disconnected_tracing): Likewise.
(target_set_circular_trace_buffer): Likewise.
(target_set_trace_buffer_size): Likewise.
(target_set_trace_notes): Likewise.
(target_get_tib_address): Likewise.
(target_set_permissions): Likewise.
(target_static_tracepoint_marker_at): Likewise.
(target_static_tracepoint_markers_by_strid): Likewise.
(target_traceframe_info): Likewise.
(target_use_agent): Likewise.
(target_can_use_agent): Likewise.
(target_augmented_libraries_svr4_read): Likewise.
(target_log_command): Likewise.
* target.c (target_shortname): New.
(target_longname): New.
(target_attach_no_wait): New.
(target_post_attach): New.
(target_prepare_to_store): New.
(target_supports_enable_disable_tracepoint): New.
(target_supports_string_tracing): New.
(target_supports_evaluation_of_breakpoint_conditions): New.
(target_supports_dumpcore): New.
(target_dumpcore): New.
(target_can_run_breakpoint_commands): New.
(target_files_info): New.
(target_post_startup_inferior): New.
(target_insert_fork_catchpoint): New.
(target_remove_fork_catchpoint): New.
(target_insert_vfork_catchpoint): New.
(target_remove_vfork_catchpoint): New.
(target_insert_exec_catchpoint): New.
(target_remove_exec_catchpoint): New.
(target_set_syscall_catchpoint): New.
(target_rcmd): New.
(target_can_lock_scheduler): New.
(target_can_async_p): New.
(target_is_async_p): New.
(target_execution_direction): New.
(target_extra_thread_info): New.
(target_pid_to_exec_file): New.
(target_thread_architecture): New.
(target_find_memory_regions): New.
(target_make_corefile_notes): New.
(target_get_bookmark): New.
(target_goto_bookmark): New.
(target_stopped_by_watchpoint): New.
(target_stopped_by_sw_breakpoint): New.
(target_supports_stopped_by_sw_breakpoint): New.
(target_stopped_by_hw_breakpoint): New.
(target_supports_stopped_by_hw_breakpoint): New.
(target_have_steppable_watchpoint): New.
(target_can_use_hardware_watchpoint): New.
(target_region_ok_for_hw_watchpoint): New.
(target_can_do_single_step): New.
(target_insert_watchpoint): New.
(target_remove_watchpoint): New.
(target_insert_hw_breakpoint): New.
(target_remove_hw_breakpoint): New.
(target_can_accel_watchpoint_condition): New.
(target_can_execute_reverse): New.
(target_get_ada_task_ptid): New.
(target_filesystem_is_local): New.
(target_trace_init): New.
(target_download_tracepoint): New.
(target_can_download_tracepoint): New.
(target_download_trace_state_variable): New.
(target_enable_tracepoint): New.
(target_disable_tracepoint): New.
(target_trace_start): New.
(target_trace_set_readonly_regions): New.
(target_get_trace_status): New.
(target_get_tracepoint_status): New.
(target_trace_stop): New.
(target_trace_find): New.
(target_get_trace_state_variable_value): New.
(target_save_trace_data): New.
(target_upload_tracepoints): New.
(target_upload_trace_state_variables): New.
(target_get_raw_trace_data): New.
(target_get_min_fast_tracepoint_insn_len): New.
(target_set_disconnected_tracing): New.
(target_set_circular_trace_buffer): New.
(target_set_trace_buffer_size): New.
(target_set_trace_notes): New.
(target_get_tib_address): New.
(target_set_permissions): New.
(target_static_tracepoint_marker_at): New.
(target_static_tracepoint_markers_by_strid): New.
(target_traceframe_info): New.
(target_use_agent): New.
(target_can_use_agent): New.
(target_augmented_libraries_svr4_read): New.
(target_log_command): New.
* bfin-tdep.c (bfin_sw_breakpoint_from_kind): Adjust.
* infrun.c (set_schedlock_func): Adjust.
* mi/mi-main.c (exec_reverse_continue): Adjust.
* reverse.c (exec_reverse_once): Adjust.
* sh-tdep.c (sh_sw_breakpoint_from_kind): Adjust.
* tui/tui-stack.c (tui_locator_window::make_status_line): Adjust.
* remote-sim.c (gdbsim_target::detach): Adjust.
(gdbsim_target::files_info): Adjust.
2021-03-24 Tom Tromey <tom@tromey.com>
* dwarf2/read.c (dw2_map_matching_symbols): Update.
(dw2_expand_symtabs_matching_symbol): Remove 'kind' parameter.
(check_match, dw2_expand_symtabs_matching)
(dwarf2_debug_names_index::map_matching_symbols)
(dwarf2_debug_names_index::expand_symtabs_matching): Update.
2021-03-24 Keith Seitz <keiths@redhat.com>
* compile/compile-cplus-types.c
(compile_cplus_convert_struct_or_union): Fix TYPE_DECLARED_CLASS
thinko.
2021-03-24 Simon Marchi <simon.marchi@polymtl.ca>
* gdbarch.sh (gdbarch_data_registry): Make static.
* gdbarch.c: Re-generate.
2021-03-24 Luis Machado <luis.machado@linaro.org>
* NEWS: Mention memory tagging changes.
2021-03-24 Luis Machado <luis.machado@linaro.org>
* printcmd.c (decode_format): Handle the 'm' modifier.
(do_examine): Display allocation tags when required/supported.
(should_validate_memtags): New function.
(print_command_1): Display memory tag mismatches.
* valprint.c (show_memory_tag_violations): New function.
(value_print_option_defs): Add new option "memory-tag-violations".
(user_print_options) <memory_tag_violations>: Initialize to 1.
* valprint.h (struct format_data) <print_tags>: New field.
(value_print_options) <memory_tag_violations>: New field.
2021-03-24 Luis Machado <luis.machado@linaro.org>
* printcmd.c: Include gdbsupport/rsp-low.h.
(memory_tag_list): New static global.
(process_print_command_args): Factored out of
print_command_1.
(print_command_1): Use process_print_command_args.
(show_addr_not_tagged, show_memory_tagging_unsupported)
(memory_tag_command, memory_tag_print_tag_command)
(memory_tag_print_logical_tag_command)
(memory_tag_print_allocation_tag_command, parse_with_logical_tag_input)
(memory_tag_with_logical_tag_command, parse_set_allocation_tag_input)
(memory_tag_set_allocation_tag_command, memory_tag_check_command): New
functions.
(_initialize_printcmd): Add "memory-tag" prefix and subcommands.
2021-03-24 Luis Machado <luis.machado@linaro.org>
* aarch64-linux-tdep.c
(aarch64_linux_iterate_over_regset_sections): Handle MTE register set.
* aarch64-linux-tdep.h (AARCH64_LINUX_SIZEOF_MTE_REGSET): Define.
2021-03-24 Luis Machado <luis.machado@linaro.org>
* aarch64-linux-tdep.c
(aarch64_linux_report_signal_info): New function.
(aarch64_linux_init_abi): Register
aarch64_linux_report_signal_info as the report_signal_info hook.
* arch/aarch64-linux.h (SEGV_MTEAERR): Define.
(SEGV_MTESERR): Define.
2021-03-24 Luis Machado <luis.machado@linaro.org>
* aarch64-linux-tdep.c: Include gdbsupport/selftest.h.
(aarch64_linux_ltag_tests): New function.
(_initialize_aarch64_linux_tdep): Register aarch64_linux_ltag_tests.
2021-03-24 Luis Machado <luis.machado@linaro.org>
* aarch64-linux-tdep.c: Include target.h, arch-utils.h, value.h.
(aarch64_mte_get_atag, aarch64_linux_tagged_address_p)
(aarch64_linux_memtag_mismatch_p, aarch64_linux_set_memtags)
(aarch64_linux_get_memtag, aarch64_linux_memtag_to_string): New
functions.
(aarch64_linux_init_abi): Initialize MTE-related gdbarch hooks.
* arch/aarch64-mte-linux.c (aarch64_mte_make_ltag_bits)
(aarch64_mte_make_ltag, aarch64_linux_set_ltag)
(aarch64_linux_get_ltag): New functions.
* arch/aarch64-mte-linux.h (AARCH64_MTE_LOGICAL_TAG_START_BIT)
(AARCH64_MTE_LOGICAL_MAX_VALUE): Define.
(aarch64_mte_make_ltag_bits, aarch64_mte_make_ltag)
(aarch64_mte_set_ltag, aarch64_mte_get_ltag): New prototypes.
2021-03-24 Luis Machado <luis.machado@linaro.org>
* linux-tdep.c (struct smaps_vmflags) <memory_tagging>: New flag
bit.
(struct smaps_data): New struct.
(decode_vmflags): Handle the 'mt' flag.
(parse_smaps_data): New function, refactored from
linux_find_memory_regions_full.
(linux_address_in_memtag_page): New function.
(linux_find_memory_regions_full): Refactor into parse_smaps_data.
* linux-tdep.h (linux_address_in_memtag_page): New prototype.
2021-03-24 Luis Machado <luis.machado@linaro.org>
* linux-tdep.c (linux_find_memory_regions_full): Use std::string
instead of char arrays.
2021-03-24 Luis Machado <luis.machado@linaro.org>
* Makefile.in (ALL_64_TARGET_OBS): Add arch/aarch64-mte-linux.o.
(HFILES_NO_SRCDIR): Add arch/aarch64-mte-linux.h and
nat/aarch64-mte-linux-ptrace.h.
* aarch64-linux-nat.c: Include nat/aarch64-mte-linux-ptrace.h.
(aarch64_linux_nat_target) <supports_memory_tagging>: New method
override.
<fetch_memtags>: New method override.
<store_memtags>: New method override.
(aarch64_linux_nat_target::supports_memory_tagging): New method.
(aarch64_linux_nat_target::fetch_memtags): New method.
(aarch64_linux_nat_target::store_memtags): New method.
* arch/aarch64-mte-linux.c: New file.
* arch/aarch64-mte-linux.h: Include gdbsupport/common-defs.h.
(AARCH64_MTE_GRANULE_SIZE): Define.
(aarch64_memtag_type): New enum.
(aarch64_mte_get_tag_granules): New prototype.
* configure.nat (NATDEPFILES): Add nat/aarch64-mte-linux-ptrace.o.
* configure.tgt (aarch64*-*-linux*): Add arch/aarch64-mte-linux.o.
* nat/aarch64-mte-linux-ptrace.c: New file.
* nat/aarch64-mte-linux-ptrace.h: New file.
2021-03-24 Luis Machado <luis.machado@linaro.org>
* Makefile.in (HFILES_NO_SRCDIR): Add nat/aarch64-mte-linux-ptrace.h.
* nat/aarch64-mte-linux-ptrace.h: New file.
2021-03-24 Luis Machado <luis.machado@linaro.org>
* aarch64-linux-nat.c (fetch_mteregs_from_thread): New function.
(store_mteregs_to_thread): New function.
(aarch64_linux_nat_target::fetch_registers): Update to call
fetch_mteregs_from_thread.
(aarch64_linux_nat_target::store_registers): Update to call
store_mteregs_to_thread.
* aarch64-tdep.c (aarch64_mte_register_names): New struct.
(aarch64_cannot_store_register): Handle MTE registers.
(aarch64_gdbarch_init): Initialize and setup MTE registers.
* aarch64-tdep.h (gdbarch_tdep) <mte_reg_base>: New field.
<has_mte>: New method.
* arch/aarch64-linux.h (AARCH64_LINUX_SIZEOF_MTE): Define.
2021-03-24 Luis Machado <luis.machado@linaro.org>
* aarch64-linux-nat.c
(aarch64_linux_nat_target::read_description): Take MTE flag into
account.
Slight refactor to hwcap flag checking.
* aarch64-linux-tdep.c
(aarch64_linux_core_read_description): Likewise.
* aarch64-tdep.c (tdesc_aarch64_list): Add one more dimension for
MTE.
(aarch64_read_description): Add mte_p parameter and update to use it.
Update the documentation.
(aarch64_gdbarch_init): Update call to aarch64_read_description.
* aarch64-tdep.h (aarch64_read_description): Add mte_p parameter.
* arch/aarch64.c: Include ../features/aarch64-mte.c.
(aarch64_create_target_description): Add mte_p parameter and update
the code to use it.
* arch/aarch64.h (aarch64_create_target_description): Add mte_p
parameter.
* features/Makefile (FEATURE_XMLFILES): Add aarch64-mte.xml.
* features/aarch64-mte.c: New file, generated.
* features/aarch64-mte.xml: New file.
2021-03-24 Luis Machado <luis.machado@linaro.org>
* Makefile.in (HFILES_NO_SRCDIR): Add arch/aarch64-mte-linux.h.
* aarch64-linux-nat.c: Include arch/aarch64-mte-linux.h.
* aarch64-linux-tdep.c: Likewise
* arch/aarch64-mte-linux.h: New file.
2021-03-24 Luis Machado <luis.machado@linaro.org>
* remote: Include gdbsupport/selftest.h.
(test_memory_tagging_functions): New function.
(_initialize_remote): Register test_memory_tagging_functions.
2021-03-24 Luis Machado <luis.machado@linaro.org>
* remote.c (PACKET_memory_tagging_feature): New enum.
(remote_memory_tagging_p): New function.
(remote_protocol_features): New "memory-tagging" entry.
(remote_target::remote_query_supported): Handle memory tagging
support.
(remote_target::supports_memory_tagging): Implement.
(create_fetch_memtags_request, parse_fetch_memtags_reply)
(create_store_memtags_request): New functions.
(remote_target::fetch_memtags): Implement.
(remote_target::store_memtags): Implement.
(_initialize_remote): Add new "memory-tagging-feature"
config command.
2021-03-24 Luis Machado <luis.machado@linaro.org>
* arch-utils.c (default_memtag_to_string, default_tagged_address_p)
(default_memtag_matches_p, default_set_memtags)
(default_get_memtag): New functions.
* arch-utils.h (default_memtag_to_string, default_tagged_address_p)
(default_memtag_matches_p, default_set_memtags)
(default_get_memtag): New prototypes.
* gdbarch.c: Regenerate.
* gdbarch.h: Regenerate.
* gdbarch.sh (memtag_to_string, tagged_address_p, memtag_matches_p)
(set_memtags, get_memtag, memtag_granule_size): New gdbarch hooks.
(enum memtag_type): New enum.
2021-03-24 Luis Machado <luis.machado@linaro.org>
* remote.c (remote_target) <supports_memory_tagging>: New method
override.
<fetch_memtags>: New method override.
<store_memtags>: New method override.
(remote_target::supports_memory_tagging): New method.
(remote_target::fetch_memtags): New method.
(remote_target::store_memtags): New method.
* target-delegates.c: Regenerate.
* target.h (struct target_ops) <supports_memory_tagging>: New virtual
method.
<fetch_memtags>: New virtual method.
<store_memtags>: New virtual method.
(target_supports_memory_tagging): Define.
(target_fetch_memtags): Define.
(target_store_memtags): Define.
* target-debug.h (target_debug_print_size_t)
(target_debug_print_const_gdb_byte_vector_r)
(target_debug_print_gdb_byte_vector_r): New functions.
2021-03-23 Simon Marchi <simon.marchi@polymtl.ca>
* target.h (target_longname): Remove.
2021-03-23 Simon Marchi <simon.marchi@polymtl.ca>
* target.h (target_is_pushed): Remove, update callers to use
inferior::target_is_pushed instead.
* target.c (target_is_pushed): Remove.
2021-03-23 Simon Marchi <simon.marchi@polymtl.ca>
* target.h (push_target): Remove, update callers to use
inferior::push_target.
* target.c (push_target): Remove.
* inferior.h (class inferior) <push_target>: New overload.
2021-03-23 Simon Marchi <simon.marchi@polymtl.ca>
* target.h (unpush_target): Remove, update all callers
to use `inferior::unpush_target` instead.
(struct target_unpusher) <operator()>: Just declare.
* target.c (unpush_target): Remove.
(target_unpusher::operator()): New.
2021-03-22 Andrew Burgess <andrew.burgess@embecosm.com>
* dwarf2/read.c (process_psymtab_comp_unit): Replace abort with an
error.
(process_full_comp_unit): Validate the top-level tag before
processing the first DIE.
(read_func_scope): Ensure we have a valid builder.
2021-03-22 Andrew Burgess <andrew.burgess@embecosm.com>
* objc-lang.c (objc_demangle): Renamed to
objc_language::demangle_symbol, and moved later in the file.
(objc_language::sniff_from_mangled_name): Call demangle_symbol
member function.
(objc_language::demangle_symbol): Defined outside of class
declaration. The definition is the old objc_demangle with NULL
changed to nullptr, and if conditions relating to nullptr pointers
or null character checks made explicit.
* objc-lang.h (objc_demangle): Delete declaration.
2021-03-22 Martin Liska <mliska@suse.cz>
* arm-tdep.c (show_disassembly_style_sfunc): Replace usage of CONST_STRNEQ with startswith.
(_initialize_arm_tdep): Likewise.
2021-03-20 Tom Tromey <tom@tromey.com>
* xcoffread.c (xcoff_initial_scan): Create partial symtabs.
* symfile.c (syms_from_objfile_1, reread_symbols): Update.
* psymtab.h (make_psymbol_functions): Don't declare.
* psymtab.c (make_psymbol_functions): Remove.
(maintenance_print_psymbols): Update.
* psympriv.h (struct psymbol_functions): Add no-argument
constructor.
* objfiles.h (struct objfile) <reset_psymtabs>: Remove.
<partial_symtabs>: Remove.
* mdebugread.c (mdebug_build_psymtabs): Create partial symtabs.
* elfread.c (read_partial_symbols): Update.
(elf_symfile_read): Remove check for existing partial symbols.
Don't clear "qf".
* dwarf2/read.c (dwarf2_has_info): Remove check for existing
partial symbols.
(dwarf2_build_psymtabs): Add psymbol_functions parameter. Create
partial symtabs.
* dwarf2/public.h (dwarf2_build_psymtabs): Add psymbol_functions
parameter.
* dbxread.c (dbx_symfile_read): Create partial symtabs.
* ctfread.c (elfctf_build_psymtabs): Create partial symtabs.
2021-03-20 Tom Tromey <tom@tromey.com>
* dwarf2/read.c (dwarf2_build_psymtabs): Update.
* symfile.c (syms_from_objfile_1, reread_symbols): Update.
* symfile-debug.c (objfile::has_partial_symbols)
(objfile::find_last_source_symtab)
(objfile::forget_cached_source_info)
(objfile::map_symtabs_matching_filename, objfile::lookup_symbol)
(objfile::print_stats, objfile::dump)
(objfile::expand_symtabs_for_function)
(objfile::expand_all_symtabs)
(objfile::expand_symtabs_with_fullname)
(objfile::map_matching_symbols)
(objfile::expand_symtabs_matching)
(objfile::find_pc_sect_compunit_symtab)
(objfile::map_symbol_filenames)
(objfile::find_compunit_symtab_by_address)
(objfile::lookup_global_symbol_language)
(objfile::require_partial_symbols): Update.
* psymtab.c (maintenance_print_psymbols)
(maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
* objfiles.h (struct objfile) <qf>: Now a forward_list.
* objfiles.c (objfile_relocate1): Update.
* elfread.c (elf_symfile_read): Update.
2021-03-20 Tom Tromey <tom@tromey.com>
* objfiles.h (struct objfile) <psymtabs>: Remove method.
2021-03-20 Tom Tromey <tom@tromey.com>
* psymtab.c (psymbol_functions::count_psyms): Rename.
(psymbol_functions::print_stats): Update.
* psympriv.h (struct psymbol_functions) <count_psyms>: Declare
method.
2021-03-20 Tom Tromey <tom@tromey.com>
* psymtab.c (psymbol_functions::require_partial_symbols): Rename.
(psymbol_functions::find_pc_sect_psymtab): Rename.
(psymbol_functions::find_pc_sect_compunit_symtab)
(maintenance_print_psymbols, maintenance_check_psymtabs): Update.
* psympriv.h (struct psymbol_functions) <require_partial_symbols>:
Declare new method.
<get_partial_symtabs, find_pc_sect_psymtab>: Likewise.
2021-03-20 Tom Tromey <tom@tromey.com>
* xcoffread.c (xcoff_start_psymtab): Add partial_symtabs parameter.
(xcoff_end_psymtab, scan_xcoff_symtab): Update.
* psymtab.c (partial_symtab::partial_symtab): Add partial_symtabs
parameter.
(add_psymbol_to_bcache): Remove.
(partial_symtab::add_psymbol): Add partial_symtabs parameter.
(partial_symtab::add_psymbol, partial_symtab::partial_symtab):
Likewise.
* psympriv.h (partial_symtab): Add partial_symtabs parameter.
<add_psymbol>: Likewise.
(standard_psymtab, legacy_psymtab): Likewise.
* mdebugread.c (parse_partial_symbols): Update.
(handle_psymbol_enumerators): Add partial_symtabs parameter.
(handle_psymbol_enumerators): Update.
(new_psymtab): Add partial_symtabs parameter.
* dwarf2/read.h (dwarf2_psymtab): Add partial_symtabs parameter.
* dwarf2/read.c (dwarf2_include_psymtab): Add partial_symtabs
parameter.
(dwarf2_create_include_psymtab): Add partial_symtabs parameter.
(create_partial_symtab, add_partial_symbol, dwarf_decode_lines):
Update.
* dbxread.c (read_dbx_symtab): Update.
(start_psymtab): Add partial_symtabs parameter.
(dbx_end_psymtab): Update.
* ctfread.c (struct ctf_context) <partial_symtabs>: New member.
(ctf_psymtab): Add partial_symtabs parameter.
(create_partial_symtab, ctf_psymtab_type_cb, ctf_psymtab_var_cb):
Update.
(scan_partial_symbols): Add partial_symtabs parameter.
(scan_partial_symbols, elfctf_build_psymtabs)
(ctf_psymtab_add_enums): Update.
2021-03-20 Tom Tromey <tom@tromey.com>
* symfile.c (read_symbols): Use objfile method.
* symfile-debug.c (objfile::require_partial_symbols): New method.
* psymtab.h (require_partial_symbols): Don't declare.
* psymtab.c (require_partial_symbols): Use objfile method. Now
static.
(psymbol_functions::map_symtabs_matching_filename, OBJFILE)
(psymbol_functions::lookup_symbol)
(psymbol_functions::lookup_global_symbol_language)
(psymbol_functions::find_last_source_symtab)
(psymbol_functions::forget_cached_source_info)
(psymbol_functions::print_stats)
(psymbol_functions::expand_symtabs_for_function)
(psymbol_functions::expand_all_symtabs)
(psymbol_functions::expand_symtabs_with_fullname)
(psymbol_functions::map_symbol_filenames)
(psymbol_functions::map_matching_symbols)
(psymbol_functions::expand_symtabs_matching)
(psymbol_functions::find_compunit_symtab_by_address)
(maintenance_print_psymbols, maintenance_info_psymtabs)
(maintenance_check_psymtabs): Update.
* objfiles.h (struct objfile) <require_partial_symbols>: Declare
new method.
2021-03-20 Tom Tromey <tom@tromey.com>
* xcoffread.c (xcoff_sym_fns): Update.
* symfile.h (struct sym_fns) <sym_read_psymbols>: Remove.
* symfile-debug.c (objfile::has_partial_symbols): Use
can_lazily_read_symbols.
(debug_sym_read_psymbols): Remove.
(debug_sym_fns, install_symfile_debug_logging): Update.
* quick-symbol.h (struct quick_symbol_functions)
<can_lazily_read_symbols, read_partial_symbols>: New methods.
* psymtab.c (require_partial_symbols): Use new 'qf' methods.
* mipsread.c (ecoff_sym_fns): Update.
* machoread.c (macho_sym_fns): Update.
* elfread.c (struct lazy_dwarf_reader): New.
(elf_symfile_read): Update.
(read_psyms): Now a method of lazy_dwarf_reader.
(elf_sym_fns): Update.
(elf_sym_fns_lazy_psyms): Remove.
* dbxread.c (aout_sym_fns): Update.
* coffread.c (coff_sym_fns): Update.
2021-03-20 Tom Tromey <tom@tromey.com>
* symfile.c (syms_from_objfile_1): Call reset_psymtabs.
(reread_symbols): Move reset_psymtabs call later.
* objfiles.c (objfile::objfile): Don't initialize
partial_symtabs.
2021-03-20 Tom Tromey <tom@tromey.com>
* dwarf2/read.c (dwarf2_build_psymtabs): Call
set_partial_symtabs.
* symfile.c (syms_from_objfile_1, reread_symbols): Update.
* psymtab.h (make_psymbol_functions): Add partial_symtabs
parameter.
* psymtab.c (find_pc_sect_psymtab): Add partial_symtabs
parameter.
(psymbol_functions::find_pc_sect_compunit_symtab)
(psymbol_functions::print_stats, psymbol_functions::dump)
(psymbol_functions::has_symbols): Update.
(make_psymbol_functions, dump_psymtab_addrmap): Add
partial_symtabs parameter.
(maintenance_print_psymbols): Update.
(psymbol_functions::expand_symtabs_matching): Update.
* psympriv.h (struct psymbol_functions): Add constructor.
<m_partial_symtabs>: New member.
<set_partial_symtabs>: New method.
2021-03-20 Tom Tromey <tom@tromey.com>
* dwarf2/read.c (dwarf2_create_include_psymtab): Add per_bfd
parameter.
(process_psymtab_comp_unit_reader)
(build_type_psymtab_dependencies, dwarf2_build_psymtabs_hard)
(add_partial_subprogram, dwarf2_ranges_read, dwarf_decode_lines):
Reference psymtabs via per_bfd.
2021-03-20 Tom Tromey <tom@tromey.com>
* dwarf2/index-write.c (struct addrmap_index_data) <objfile>:
Remove.
(add_address_entry): Remove objfile parameter.
(add_address_entry_worker): Update.
(write_address_map): Replace objfile parameter with per_bfd.
(write_gdbindex, write_psymtabs_to_index): Update.
2021-03-20 Tom Tromey <tom@tromey.com>
* dwarf2/read.c (dwarf2_base_index_functions::print_stats): Add
print_bcache parameter.
* symfile-debug.c (objfile::print_stats): Add print_bcache
parameter.
* quick-symbol.h (struct quick_symbol_functions)
<print_stats>: Add print_bcache parameter.
* symmisc.c (print_symbol_bcache_statistics, count_psyms): Move
code to psymtab.c.
(print_objfile_statistics): Move psymtab code to psymtab.c.
* psymtab.c (count_psyms): Move from symmisc.c.
(psymbol_functions::print_stats): Print partial symbol and bcache
statistics. Add print_bcache parameter.
* objfiles.h (print_symbol_bcache_statistics): Don't declare.
(struct objfile) <print_stats>: Add print_bcache parameter.
* maint.c (maintenance_print_statistics): Update.
2021-03-20 Tom Tromey <tom@tromey.com>
* dwarf2/read.h (struct dwarf2_per_bfd) <psymtabs_addrmap>: New
member.
* dwarf2/read.c (create_addrmap_from_index)
(create_addrmap_from_aranges): Set per_bfd addrmap.
(dwarf2_read_gdb_index): Don't set partial_symtabs.
(dwarf2_base_index_functions::find_pc_sect_compunit_symtab): Use
per_bfd addrmap.
(dwarf2_read_debug_names): Don't set partial_symtabs.
(dwarf2_initialize_objfile): Likewise.
2021-03-20 Tom Tromey <tom@tromey.com>
* dwarf2/read.c (dwarf2_build_psymtabs): Set partial_symtabs
earlier.
2021-03-20 Tom Tromey <tom@tromey.com>
* psympriv.h (psymtab_discarder): Take psymtab_storage parameter.
(~psymtab_discarder, keep): Update.
<m_objfile>: Remove.
<m_partial_symtabs>: New member.
* dwarf2/read.c (dwarf2_build_psymtabs): Update.
2021-03-20 Tom Tromey <tom@tromey.com>
* xcoffread.c (xcoff_end_psymtab): Add partial_symtabs parameter.
(xcoff_end_psymtab): Update.
(scan_xcoff_symtab): Add partial_symtabs parameter.
(xcoff_initial_scan): Update.
* stabsread.h (dbx_end_psymtab): Add partial_symtabs parameter.
* mdebugread.c (mdebug_build_psymtabs): Update.
(parse_partial_symbols): Add partial_symtabs parameter.
* dbxread.c (dbx_symfile_read): Update.
(read_dbx_symtab): Add partial_symtabs parameter.
(read_dbx_symtab): Update.
(dbx_end_psymtab): Add partial_symtabs parameter.
2021-03-20 Tom Tromey <tom@tromey.com>
* quick-symbol.h (struct quick_symbol_functions)
<relocated>: New method.
* psymtab.h (struct psymbol_functions) <relocated>: New
method.
<fill_psymbol_map>: Declare method.
<m_psymbol_map>: New member.
* psymtab.c (psymbol_functions::fill_psymbol_map): Rename.
(psymbol_functions::find_compunit_symtab_by_address): Update.
* objfiles.h (reset_psymtabs): Don't clear psymbol_map.
(struct objfile) <psymbol_map>: Remove.
* objfiles.c (objfile_relocate1): Update.
2021-03-20 Tom Tromey <tom@tromey.com>
* psympriv.h (struct psymbol_functions): New.
* symfile.c (syms_from_objfile_1, reread_symbols): Update.
* symfile-debug.c (objfile::find_compunit_symtab_by_address)
(objfile::lookup_global_symbol_language): Update.
* quick-symbol.h (struct quick_symbol_functions): Convert function
pointers to methods. Add virtual destructor.
(quick_symbol_functions_up): New typedef.
* psymtab.h (psym_functions, dwarf2_gdb_index_functions)
(dwarf2_debug_names_functions): Don't declare.
(make_psymbol_functions): Declare.
* psymtab.c (psymbol_functions::map_symtabs_matching_filename)
(psymbol_functions::find_pc_sect_compunit_symtab)
(psymbol_functions::lookup_symbol)
(psymbol_functions::lookup_global_symbol_language)
(psymbol_functions::find_last_source_symtab)
(psymbol_functions::forget_cached_source_info)
(psymbol_functions::print_stats, psymbol_functions::dump)
(psymbol_functions::expand_symtabs_for_function)
(psymbol_functions::expand_all_symtabs)
(psymbol_functions::expand_symtabs_with_fullname)
(psymbol_functions::map_symbol_filenames)
(psymbol_functions::map_matching_symbols)
(psymbol_functions::expand_symtabs_matching)
(psymbol_functions::has_symbols)
(psymbol_functions::find_compunit_symtab_by_address): Rename.
(psym_functions): Remove.
(make_psymbol_functions): New function.
* objfiles.h (struct objfile) <qf>: Change type.
* elfread.c (elf_symfile_read): Update.
* dwarf2/read.c (struct dwarf2_base_index_functions)
(struct dwarf2_gdb_index, struct dwarf2_debug_names_index): New.
(make_dwarf_gdb_index, make_dwarf_debug_names): New functions.
(dwarf2_base_index_functions::find_last_source_symtab)
(dwarf2_base_index_functions::forget_cached_source_info)
(dwarf2_base_index_functions::map_symtabs_matching_filename)
(dwarf2_gdb_index::lookup_symbol)
(dwarf2_base_index_functions::print_stats)
(dwarf2_gdb_index::dump)
(dwarf2_gdb_index::expand_symtabs_for_function)
(dwarf2_base_index_functions::expand_all_symtabs)
(dwarf2_base_index_functions::expand_symtabs_with_fullname):
Rename.
(dwarf2_gdb_index::map_matching_symbols): New method.
(dwarf2_gdb_index::expand_symtabs_matching): New method.
(dwarf2_base_index_functions::find_pc_sect_compunit_symtab)
(dwarf2_base_index_functions::map_symbol_filenames)
(dwarf2_base_index_functions::has_symbols): Rename.
(dwarf2_gdb_index_functions): Remove.
(dwarf2_debug_names_index::lookup_symbol)
(dwarf2_debug_names_index::dump)
(dwarf2_debug_names_index::expand_symtabs_for_function)
(dwarf2_debug_names_index::map_matching_symbols)
(dwarf2_debug_names_index::expand_symtabs_matching): Rename.
(dwarf2_debug_names_functions): Remove.
* dwarf2/public.h (make_dwarf_gdb_index, make_dwarf_debug_names):
Declare.
2021-03-20 Tom Tromey <tom@tromey.com>
* psymtab.c (require_partial_symbols): Check that 'sf' is not
null.
* xcoffread.c (xcoff_sym_fns): Update.
* symfile.h (struct sym_fns) <qf>: Remove.
* symfile.c (syms_from_objfile_1, reread_symbols): Update.
* symfile-debug.c (objfile::has_partial_symbols)
(objfile::find_last_source_symtab)
(objfile::forget_cached_source_info)
(objfile::map_symtabs_matching_filename, objfile::lookup_symbol)
(objfile::print_stats, objfile::dump)
(objfile::expand_symtabs_for_function)
(objfile::expand_all_symtabs)
(objfile::expand_symtabs_with_fullname)
(objfile::map_matching_symbols)
(objfile::expand_symtabs_matching)
(objfile::find_pc_sect_compunit_symtab)
(objfile::map_symbol_filenames)
(objfile::find_compunit_symtab_by_address)
(objfile::lookup_global_symbol_language, debug_sym_fns)
(install_symfile_debug_logging): Update.
* objfiles.h (struct objfile) <qf>: New member.
* mipsread.c (ecoff_sym_fns): Update.
* machoread.c (macho_sym_fns): Update.
* elfread.c (elf_sym_fns_gdb_index, elf_sym_fns_debug_names):
Don't declare.
(elf_symfile_read, elf_sym_fns, elf_sym_fns_lazy_psyms): Update.
* dbxread.c (aout_sym_fns): Update.
* coffread.c (coff_sym_fns): Update.
2021-03-20 Tom Tromey <tom@tromey.com>
* symfile.h (symbol_compare_ftype, symbol_filename_ftype)
(expand_symtabs_file_matcher_ftype)
(expand_symtabs_symbol_matcher_ftype)
(expand_symtabs_exp_notify_ftype, struct quick_symbol_functions):
Move to quick-symbol.h.
* quick-symbol.h: New file.
2021-03-20 Tom Tromey <tom@tromey.com>
* symtab.c (iterate_over_symtabs, expand_symtab_containing_pc)
(lookup_symbol_via_quick_fns, find_quick_global_symbol_language)
(basic_lookup_transparent_type_quick)
(find_pc_sect_compunit_symtab, find_symbol_at_address)
(find_line_symtab, global_symbol_searcher::expand_symtabs):
Update.
* symmisc.c (print_objfile_statistics, dump_objfile)
(maintenance_expand_symtabs): Update.
* symfile.c (symbol_file_add_with_addrs)
(expand_symtabs_matching, map_symbol_filenames): Update.
* symfile-debug.c (objfile::has_partial_symbols)
(objfile::find_last_source_symtab)
(objfile::forget_cached_source_info)
(objfile::map_symtabs_matching_filename, objfile::lookup_symbol)
(objfile::print_stats, objfile::dump)
(objfile::expand_symtabs_for_function)
(objfile::expand_all_symtabs)
(objfile::expand_symtabs_with_fullname)
(objfile::map_matching_symbols)
(objfile::expand_symtabs_matching)
(objfile::find_pc_sect_compunit_symtab)
(objfile::map_symbol_filenames)
(objfile::find_compunit_symtab_by_address)
(objfile::lookup_global_symbol_language): New methods.
(debug_sym_quick_functions): Remove.
(debug_sym_fns, install_symfile_debug_logging): Update.
* source.c (forget_cached_source_info_for_objfile)
(select_source_symtab): Update.
* objfiles.h (struct objfile): Add methods corresponding to
quick_symbol_functions.
* objfiles.c (objfile::has_partial_symbols): Move to
symfile-debug.c.
* linespec.c (iterate_over_all_matching_symtabs): Update.
* cp-support.c (add_symbol_overload_list_qualified): Update.
* ada-lang.c (add_nonlocal_symbols): Update.
2021-03-20 Tom Tromey <tom@tromey.com>
* objfiles.h (struct objfile) <has_partial_symbols>: Return bool.
* symfile.h (struct quick_symbol_functions) <has_symbols>: Return
bool.
* symfile-debug.c (debug_qf_has_symbols): Return bool.
* psymtab.c (psym_has_symbols): Return bool.
* objfiles.c (objfile::has_partial_symbols): Return bool.
* dwarf2/read.c (dw2_has_symbols): Return bool.
2021-03-20 Tom Tromey <tom@tromey.com>
* symfile.c (read_symbols): Update.
* objfiles.h (struct objfile) <has_partial_symbols>: New method.
(objfile_has_partial_symbols): Don't declare.
* objfiles.c (objfile::has_partial_symbols): Rename from
objfile_has_partial_symbols.
(objfile_has_symbols, have_partial_symbols): Update.
* elfread.c (elf_symfile_read): Update.
* dwarf2/read.c (dwarf2_has_info): Update.
* coffread.c (coff_symfile_read): Update.
2021-03-20 Tom Tromey <tom@tromey.com>
* coffread.c: Include dwarf2/public.h.
* dwarf2/frame.c: Include dwarf2/public.h.
* dwarf2/index-write.h: Include dwarf2/public.h, not symfile.h.
* dwarf2/public.h: New file.
* dwarf2/read.c: Include dwarf2/public.h.
* elfread.c: Include dwarf2/public.h.
* machoread.c: Include dwarf2/public.h.
* symfile.h (dwarf2_has_info, enum dw_index_kind)
(dwarf2_initialize_objfile, dwarf2_build_psymtabs)
(dwarf2_build_frame_info): Move to dwarf2/public.h.
* xcoffread.c: Include dwarf2/public.h.
2021-03-20 Tom Tromey <tom@tromey.com>
* symfile.h (enum dwarf2_section_enum)
(dwarf2_get_section_info): Move to dwarf2/read.h.
* dwarf2/read.h (enum dwarf2_section_enum)
(dwarf2_get_section_info): Move from symfile.h.
2021-03-19 Pedro Alves <pedro@palves.net>
* thread.c (any_thread_of_inferior): Check if there's a selected
thread before calling inferior_thread().
2021-03-18 Tom Tromey <tromey@adacore.com>
* dwarf2/stringify.c (dwarf_unit_type_name): New function. Use
get_DW_UT_name.
* dwarf2/stringify.h (dwarf_unit_type_name): Declare.
* dwarf2/comp-unit.c (dwarf_unit_type_name): Remove.
2021-03-18 Andrew Burgess <andrew.burgess@embecosm.com>
* python/py-param.c (get_set_value): Update header comment.
2021-03-17 Simon Marchi <simon.marchi@polymtl.ca>
* infrun.c (check_multi_target_resumption): Remove argument to
all_non_exited_inferiors.
2021-03-16 Christian Biesinger <cbiesinger@google.com>
* windows-nat.c (windows_init_thread_list): Add message to
debug log.
2021-03-16 Andrew Burgess <andrew.burgess@embecosm.com>
* python/py-framefilter.c (py_print_frame): Use PyInt_Check as
well as PyLong_Check for Python 2.
2021-03-15 Tom Tromey <tromey@adacore.com>
PR build/27579:
* rust-exp.y (maker_map): Use gdb::hash_enum.
* stap-probe.c (stap_maker_map): Use gdb::hash_enum.
2021-03-15 Simon Marchi <simon.marchi@polymtl.ca>
* dwarf2/read.c (create_debug_type_hash_table): Remove colon at
end of debug print.
2021-03-15 Simon Marchi <simon.marchi@polymtl.ca>
* dwarf2/read.c (dw2_get_file_names_reader): Remove info_ptr
parameter, adjust caller.
2021-03-15 Tom Tromey <tromey@adacore.com>
* ada-exp.y (simple_exp): Always push a result for unary '+'.
2021-03-15 Tom Tromey <tromey@adacore.com>
* ada-lang.c (ada_unop_ind_operation::evaluate): Call
ada_ensure_varsize_limit.
2021-03-15 Tom Tromey <tromey@adacore.com>
* ada-lang.c (numeric_type_p, integer_type_p): Return true for
fixed-point.
* ada-exp.y (maybe_overload): New function.
(ada_wrap_overload): New function.
(ada_un_wrap2, ada_wrap2, ada_wrap_op): Use maybe_overload.
(exp1, simple_exp, relation, and_exp, and_then_exp, or_exp)
(or_else_exp, xor_exp, primary): Update.
2021-03-15 Tom Tromey <tromey@adacore.com>
PR ada/27545:
* ada-lang.c (ada_var_value_operation::evaluate): Use recursive
call for tagged type.
2021-03-15 Tom Tromey <tromey@adacore.com>
* ada-exp.y (exp1): Handle resolution of the right hand side of an
assignment.
2021-03-15 Tom Tromey <tromey@adacore.com>
* ada-lang.c (ada_aggregate_operation::assign_aggregate): Return
container.
(ada_assign_operation::evaluate): Update.
* ada-exp.h (class ada_aggregate_operation) <assign_aggregate>:
Change return type.
2021-03-15 Felix Willgerodt <felix.willgerodt@intel.com>
* i386-tdep.c (i386_floatformat_for_type): Add COMPLEX*32 and REAL*16.
2021-03-15 Andrew Burgess <andrew.burgess@embecosm.com>
* python/python.c (gdbpy_source_objfile_script): Use
make_scoped_restore to restore gdbpy_current_objfile.
(gdbpy_execute_objfile_script): Likewise.
2021-03-14 Tom Tromey <tom@tromey.com>
* dwarf2/read.c (read_attribute_value): Use cu_header
consistently.
2021-03-14 Tom Tromey <tom@tromey.com>
* dwarf2/read.c (struct die_reader_specs) <abfd>: Fix formatting.
(peek_die_abbrev): Use reader.abfd.
2021-03-14 Tom Tromey <tom@tromey.com>
* dwarf2/read.c (dwarf2_per_cu_data::get_header): Set
m_header_read_in.
2021-03-13 Tom Tromey <tom@tromey.com>
* dwarf2/read.c (struct partial_die_info): Update.
(peek_die_abbrev, skip_children, skip_one_die, read_full_die_1)
(load_partial_dies, partial_die_info::partial_die_info): Update.
* dwarf2/abbrev.h (lookup_abbrev): Constify.
2021-03-13 Tom Tromey <tom@tromey.com>
* dwarf2/abbrev.c (abbrev_table::read): Remove Irix 6 workaround.
2021-03-12 Christian Biesinger <cbiesinger@google.com>
PR threads/27239
* cp-support.c: Use scoped_segv_handler_restore.
* event-top.c (thread_local_segv_handler): Made static.
(scoped_segv_handler_restore::scoped_segv_handler_restore):
New function.
(scoped_segv_handler_restore::~scoped_segv_handler_restore): New
function.
* event-top.h (class scoped_segv_handler_restore): New class.
(thread_local_segv_handler): Removed.
2021-03-10 Tom Tromey <tromey@adacore.com>
* parser-defs.h (parser_state): Change completion to bool.
<parse_completion>: Likewise.
* ada-lang.h (ada_find_operator_symbol, ada_resolve_funcall)
(ada_resolve_variable, ada_resolve_function): Update.
* ada-lang.c (ada_find_operator_symbol): Change
parse_completion to bool.
(ada_resolve_funcall, ada_resolve_variable)
(ada_resolve_function): Likewise.
2021-03-09 Tom Tromey <tromey@adacore.com>
* eval.c (operation::evaluate_funcall): Use function formal
parameter types when evaluating.
2021-03-09 Andrew Burgess <andrew.burgess@embecosm.com>
* gdb-gdb.py.in (StructMainTypePrettyPrinter) <owner_to_string>:
Updated fields names flag_objfile_owned to m_flag_objfile_owned,
and owner to m_owner.
2021-03-09 Felix Willgerodt <felix.willgerodt@intel.com>
* f-exp.h (eval_op_f_loc): Declare.
(expr::fortran_loc_operation): New typedef.
* f-exp.y (exp): Handle UNOP_FORTRAN_LOC after parsing an
UNOP_INTRINSIC.
(f77_keywords): Add LOC keyword.
* f-lang.c (eval_op_f_loc): New function.
* std-operator.def (UNOP_FORTRAN_LOC): New operator.
2021-03-09 Andrew Burgess <andrew.burgess@embecosm.com>
* f-exp.h (eval_op_f_array_shape): Declare.
(fortran_array_shape_operation): New type.
* f-exp.y (exp): Handle UNOP_FORTRAN_SHAPE after parsing
UNOP_INTRINSIC.
(f77_keywords): Add "shape" keyword.
* f-lang.c (fortran_array_shape): New function.
(eval_op_f_array_shape): New function.
* std-operator.def (UNOP_FORTRAN_SHAPE): New operator.
2021-03-09 Andrew Burgess <andrew.burgess@embecosm.com>
* f-exp.y (eval_op_f_array_size): Declare 1 and 2 argument forms
of this function.
(expr::fortran_array_size_1arg): New type.
(expr::fortran_array_size_2arg): Likewise.
* f-exp.y (exp): Handle FORTRAN_ARRAY_SIZE after parsing
UNOP_OR_BINOP_INTRINSIC.
(f77_keywords): Add "size" keyword.
* f-lang.c (fortran_array_size): New function.
(eval_op_f_array_size): New function, has a 1 arg and 2 arg form.
* std-operator.def (FORTRAN_ARRAY_SIZE): New operator.
2021-03-09 Andrew Burgess <andrew.burgess@embecosm.com>
* f-exp.h (eval_op_f_rank): Declare.
(expr::fortran_rank_operation): New typedef.
* f-exp.y (exp): Handle UNOP_FORTRAN_RANK after parsing an
UNOP_INTRINSIC.
(f77_keywords): Add "rank" keyword.
* f-lang.c (eval_op_f_rank): New function.
* std-operator.def (UNOP_FORTRAN_RANK): New operator.
2021-03-08 Tom Tromey <tom@tromey.com>
* printcmd.c (set_command): Remove null check.
* value.c (init_if_undefined_command): Remove null check.
2021-03-08 Tom Tromey <tom@tromey.com>
* parse.c (parser_state::push_symbol, parser_state::push_dollar):
Update.
* p-exp.y (variable): Update.
* go-exp.y (variable): Update.
* expprint.c (dump_for_expression): Use bound_minimal_symbol.
Remove overload for objfile.
* expop.h (eval_op_var_msym_value): Use bound_minimal_symbol
parameter.
(check_objfile): Likewise.
(dump_for_expression): Likewise. Remove overload for objfile.
(class var_msym_value_operation): Use bound_minimal_symbol.
* eval.c (eval_op_var_msym_value): Use bound_minimal_symbol
parameter.
(var_msym_value_operation::evaluate_for_address)
(var_msym_value_operation::evaluate_for_sizeof)
(var_msym_value_operation::evaluate_for_cast): Update.
* d-exp.y (PrimaryExpression): Update.
* c-exp.y (variable): Update.
* ax-gdb.c (var_msym_value_operation::do_generate_ax): Update.
* ada-lang.c (ada_var_msym_value_operation::evaluate_for_cast):
Update.
* ada-exp.y (write_var_or_type): Update.
2021-03-08 Tom Tromey <tom@tromey.com>
* parser-defs.h (exp_uses_objfile): Return bool.
* parse.c (exp_uses_objfile): Return bool.
2021-03-08 Tom Tromey <tom@tromey.com>
* value.h (eval_skip_value): Don't declare.
* opencl-lang.c (eval_opencl_assign): Update.
* m2-lang.c (eval_op_m2_high, eval_op_m2_subscript): Update.
* f-lang.c (eval_op_f_abs, eval_op_f_mod, eval_op_f_ceil)
(eval_op_f_floor, eval_op_f_modulo, eval_op_f_cmplx): Remove.
* expression.h (enum noside) <EVAL_SKIP>: Remove.
* expop.h (typeof_operation::evaluate)
(decltype_operation::evaluate, unop_addr_operation::evaluate)
(unop_sizeof_operation::evaluate, assign_operation::evaluate)
(cxx_cast_operation::evaluate): Update.
* eval.c (eval_skip_value): Remove.
(eval_op_scope, eval_op_var_entry_value)
(eval_op_func_static_var, eval_op_string, eval_op_objc_selector)
(eval_op_concat, eval_op_ternop, eval_op_structop_struct)
(eval_op_structop_ptr, eval_op_member, eval_op_add, eval_op_sub)
(eval_op_binary, eval_op_subscript, eval_op_equal)
(eval_op_notequal, eval_op_less, eval_op_gtr, eval_op_geq)
(eval_op_leq, eval_op_repeat, eval_op_plus, eval_op_neg)
(eval_op_complement, eval_op_lognot, eval_op_ind)
(eval_op_memval, eval_op_preinc, eval_op_predec)
(eval_op_postinc, eval_op_postdec, eval_op_type)
(eval_binop_assign_modify, eval_op_objc_msgcall)
(eval_multi_subscript, logical_and_operation::evaluate)
(logical_or_operation::evaluate, array_operation::evaluate)
(operation::evaluate_for_cast)
(var_msym_value_operation::evaluate_for_cast)
(var_value_operation::evaluate_for_cast): Update.
* c-lang.c (c_string_operation::evaluate): Update.
* c-exp.h (objc_nsstring_operation::evaluate)
(objc_selector_operation::evaluate): Update.
* ada-lang.c (ada_assign_operation::evaluate)
(eval_ternop_in_range, ada_unop_neg, ada_unop_in_range)
(ada_atr_size): Update.
2021-03-08 Tom Tromey <tom@tromey.com>
* eval.c: Merge "namespace" scopes.
2021-03-08 Tom Tromey <tom@tromey.com>
* parser-defs.h (struct expr_builder) <expr_builder>: Inline.
<release>: Inline.
* parse.c (expr_builder::expr_builder, expr_builder::release):
Remove.
2021-03-08 Tom Tromey <tom@tromey.com>
* parse.c (expression::expression, expression::~expression):
Remove.
* expression.h (struct expression): Inline constructor. Remove
destructor.
2021-03-08 Tom Tromey <tom@tromey.com>
* std-operator.def (BINOP_END): Remove.
* p-exp.y (tokentab3, tokentab2): Use OP_NULL, not BINOP_END.
* go-exp.y (tokentab2): Use OP_NULL, not BINOP_END.
* f-exp.y (dot_ops, f77_keywords): Use OP_NULL, not BINOP_END.
* d-exp.y (tokentab2, ident_tokens): Use OP_NULL, not BINOP_END.
* c-exp.y (tokentab3, tokentab2, ident_tokens): Use OP_NULL, not
BINOP_END.
2021-03-08 Tom Tromey <tom@tromey.com>
* expression.h (enum exp_opcode) <OP_UNUSED_LAST>: Remove.
2021-03-08 Tom Tromey <tom@tromey.com>
* std-operator.def (OP_EXTENDED0): Remove.
2021-03-08 Tom Tromey <tom@tromey.com>
* std-operator.def (OP_NAME, OP_ATR_IMAGE, OP_ATR_MODULUS)
(OP_OTHERS, OP_CHOICES, OP_POSITIONAL, OP_DISCRETE_RANGE):
Remove.
2021-03-08 Tom Tromey <tom@tromey.com>
* std-operator.def (UNOP_CAP, UNOP_CHR, UNOP_ORD, UNOP_FLOAT)
(UNOP_MAX, UNOP_MIN, UNOP_ODD, UNOP_TRUNC, OP_M2_STRING): Remove.
2021-03-08 Tom Tromey <tom@tromey.com>
* std-operator.def (OP_ATR_MIN, OP_ATR_MAX): Remove.
* ada-lang.c (ada_binop_minmax): Update.
* ada-exp.h (ada_binop_min_operation, ada_binop_max_operation):
Use BINOP_MIN and BINOP_MAX.
2021-03-08 Tom Tromey <tom@tromey.com>
* value.h (evaluate_subexp_with_coercion): Don't declare.
* parse.c (exp_descriptor_standard): Remove.
(expr_builder::expr_builder, expr_builder::release): Update.
(expression::expression): Remove size_t parameter.
(expression::~expression): Simplify.
(expression::resize): Remove.
(write_exp_elt, write_exp_elt_opcode, write_exp_elt_sym)
(write_exp_elt_msym, write_exp_elt_block, write_exp_elt_objfile)
(write_exp_elt_longcst, write_exp_elt_floatcst)
(write_exp_elt_type, write_exp_elt_intern, write_exp_string)
(write_exp_string_vector, write_exp_bitstring): Remove.
* p-lang.h (class pascal_language) <opcode_print_table,
op_print_tab>: Remove.
* p-lang.c (pascal_language::op_print_tab): Remove.
* opencl-lang.c (class opencl_language) <opcode_print_table>:
Remove.
* objc-lang.c (objc_op_print_tab): Remove.
(class objc_language) <opcode_print_table>: Remove.
* m2-lang.h (class m2_language) <opcode_print_table,
op_print_tab>: Remove.
* m2-lang.c (m2_language::op_print_tab): Remove.
* language.h (struct language_defn) <post_parser, expression_ops,
opcode_print_table>: Remove.
* language.c (language_defn::expression_ops)
(auto_or_unknown_language::opcode_print_table): Remove.
* go-lang.h (class go_language) <opcode_print_table,
op_print_tab>: Remove.
* go-lang.c (go_language::op_print_tab): Remove.
* f-lang.h (class f_language) <opcode_print_table>: Remove
<op_print_tab>: Remove.
* f-lang.c (f_language::op_print_tab): Remove.
* expression.h (union exp_element): Remove.
(struct expression): Remove size_t parameter from constructor.
<resize>: Remove.
<first_opcode>: Update.
<nelts, elts>: Remove.
(EXP_ELEM_TO_BYTES, BYTES_TO_EXP_ELEM): Remove.
(evaluate_subexp_standard, print_expression, op_string)
(dump_raw_expression): Don't declare.
* expprint.c (print_expression, print_subexp)
(print_subexp_funcall, print_subexp_standard, op_string)
(dump_raw_expression, dump_subexp, dump_subexp_body)
(dump_subexp_body_funcall, dump_subexp_body_standard): Remove.
(dump_prefix_expression): Update.
* eval.c (evaluate_subexp): Remove.
(evaluate_expression, evaluate_type): Update.
(evaluate_subexpression_type): Remove.
(fetch_subexp_value): Remove "pc" parameter. Update.
(extract_field_op, evaluate_struct_tuple, evaluate_funcall)
(evaluate_subexp_standard, evaluate_subexp_for_address)
(evaluate_subexp_with_coercion, evaluate_subexp_for_sizeof)
(evaluate_subexp_for_cast): Remove.
(parse_and_eval_type): Update.
* dtrace-probe.c (dtrace_probe::compile_to_ax): Update.
* d-lang.c (d_op_print_tab): Remove.
(class d_language) <opcode_print_table>: Remove.
* c-lang.h (c_op_print_tab): Don't declare.
* c-lang.c (c_op_print_tab): Remove.
(class c_language, class cplus_language, class asm_language, class
minimal_language) <opcode_print_table>: Remove.
* breakpoint.c (update_watchpoint, watchpoint_check)
(watchpoint_exp_is_const, watch_command_1): Update.
* ax-gdb.h (union exp_element): Don't declare.
* ax-gdb.c (const_var_ref, const_expr, maybe_const_expr)
(gen_repeat, gen_sizeof, gen_expr_for_cast, gen_expr)
(gen_expr_binop_rest): Remove.
(gen_trace_for_expr, gen_eval_for_expr, gen_printf): Update.
* ada-lang.c (ada_op_print_tab): Remove.
(class ada_language) <post_parser, opcode_print_table>: Remove.
2021-03-08 Tom Tromey <tom@tromey.com>
* go-lang.c (go_language::expression_ops): Don't declare.
* go-lang.h (class go_language) <expression_ops>: Remove.
* opencl-lang.c (evaluate_subexp_opencl, exp_descriptor_opencl):
Remove.
(class opencl_language) <expression_ops>: Remove.
* d-lang.c (class d_language) <expression_ops>: Remove.
* c-lang.h (evaluate_subexp_c, exp_descriptor_c): Don't declare.
* c-lang.c (evaluate_subexp_c, exp_descriptor_c): Remove.
(class c_language, class cplus_language, class asm_language)
(class minimal_language) <expression_ops>: Remove.
2021-03-08 Tom Tromey <tom@tromey.com>
* ada-lang.c (resolve_subexp, replace_operator_with_call)
(evaluate_subexp_type, assign_aggregate)
(aggregate_assign_positional, aggregate_assign_from_choices)
(aggregate_assign_others, ada_evaluate_subexp_for_cast)
(ada_evaluate_subexp, ADA_OPERATORS, ada_operator_length)
(ada_operator_check, ada_forward_operator_length)
(ada_dump_subexp_body, ada_print_subexp, ada_exp_descriptor):
Remove.
(post_parser): Update.
(class ada_language) <expresssion_ops>: Remove.
2021-03-08 Tom Tromey <tom@tromey.com>
* m2-lang.h (class m2_language) <expresssion_ops,
exp_descriptor_modula2>: Remove.
* m2-lang.c (evaluate_subexp_modula2)
(m2_language::exp_descriptor_modula2): Remove.
2021-03-08 Tom Tromey <tom@tromey.com>
* f-lang.h (class f_language) <expresssion_ops>: Remove.
<exp_descriptor_tab>: Remove.
* f-lang.c (fortran_value_subarray, evaluate_subexp_f)
(operator_length_f, print_unop_subexp_f, print_binop_subexp_f)
(print_subexp_f, dump_subexp_body_f, operator_check_f)
(f_language::exp_descriptor_tab, fortran_prepare_argument):
Remove.
2021-03-08 Tom Tromey <tom@tromey.com>
* rust-lang.h (class rust_language) <expression_ops,
exp_descriptor_tab>: Remove.
* rust-lang.c (rust_evaluate_funcall): Remove.
(rust_range, rust_subscript, eval_op_rust_complement): Don't use
EVAL_SKIP.
(rust_evaluate_subexp): Remove.
(rust_aggregate_operation::evaluate): Don't use EVAL_SKIP.
(rust_operator_length, rust_dump_subexp_body, rust_print_subexp)
(rust_operator_check, rust_language::exp_descriptor_tab): Remove.
2021-03-08 Tom Tromey <tom@tromey.com>
* ada-exp.y: Create operations.
(empty_stoken): Remove.
(ada_pop, ada_wrap, ada_addrof, ada_un_wrap2, ada_wrap2)
(ada_wrap_op, ada_wrap3, ada_funcall): New functions.
(components): New global.
(push_component, choice_component, pop_component, pop_components):
New functions.
(associations): New global
(push_association, pop_association, pop_associations): New
functions.
(ada_parse): Update.
(write_var_from_sym, write_int): Create operations.
(write_exp_op_with_string): Remove.
(write_object_renaming, write_selectors, write_ambiguous_var)
(write_var_or_type, write_name_assoc): Create operations.
* ada-lang.h (ada_index_type): Declare.
* ada-lang.c (ada_index_type): No longer static.
2021-03-08 Tom Tromey <tom@tromey.com>
* f-exp.y: Create operations.
(f_language::parser): Update.
2021-03-08 Tom Tromey <tom@tromey.com>
* m2-exp.y: Create operations.
(m2_language::parser): Update.
2021-03-08 Tom Tromey <tom@tromey.com>
* p-exp.y: Create operations.
(pascal_language::parser): Update.
2021-03-08 Tom Tromey <tom@tromey.com>
* d-exp.y: Create operations.
(d_parse): Update.
2021-03-08 Tom Tromey <tom@tromey.com>
* go-exp.y: Create operations.
(go_language::parser): Update.
2021-03-08 Tom Tromey <tom@tromey.com>
* objc-lang.c (end_msglist): Create operations.
* c-exp.y: Change parser to create operations.
(write_destructor_name): Remove.
(c_parse): Update.
2021-03-08 Tom Tromey <tom@tromey.com>
* rust-exp.y: Create operations.
(rust_parser::convert_params_to_expression): Change return type.
(binop_maker_ftype): New typedef.
(maker_map): New global.
(rust_parser::convert_ast_to_expression): Change return type.
(rust_language::parser): Update.
(_initialize_rust_exp): Initialize maker_map.
2021-03-08 Tom Tromey <tom@tromey.com>
* stap-probe.c (binop_maker_ftype): New typedef.
(stap_maker_map): New global.
(stap_make_binop): New function.
(stap_parse_register_operand): Return operation_up.
(stap_parse_single_operand, stap_parse_argument_conditionally)
(stap_parse_argument_1): Likewise.
(stap_parse_argument): Create operations.
(stap_probe::parse_arguments): Update.
(_initialize_stap_probe): Initialize stap_maker_map.
* ppc-linux-tdep.c (ppc_stap_parse_special_token): Change return
type.
* i386-tdep.h (i386_stap_parse_special_token): Change return
type.
* i386-tdep.c (i386_stap_parse_special_token_triplet)
(i386_stap_parse_special_token_three_arg_disp)
(i386_stap_parse_special_token): Change return type.
* gdbarch.sh (stap_parse_special_token): Change return type.
* gdbarch.c: Rebuild.
* gdbarch.h: Rebuild.
* arm-linux-tdep.c (arm_stap_parse_special_token): Change return
type.
* aarch64-linux-tdep.c (aarch64_stap_parse_special_token): Change
return type.
2021-03-08 Tom Tromey <tom@tromey.com>
* gdbarch.sh (dtrace_parse_probe_argument): Change return type.
* gdbarch.h: Rebuild.
* gdbarch.c: Rebuild.
* dtrace-probe.c (dtrace_probe::build_arg_exprs): Update.
* amd64-linux-tdep.c (amd64_dtrace_parse_probe_argument): Change
return type.
(amd64_dtrace_parse_probe_argument): Update.
2021-03-08 Tom Tromey <tom@tromey.com>
* parser-defs.h (struct parser_state) <push, push_new,
push_c_string, push_symbol, push_dollar, pop, pop_vector, wrap,
wrap2>: New methods.
<m_operations>: New member.
* parse.c (parser_state::push_c_string)
(parser_state::push_symbol, parser_state::push_dollar): New
methods.
2021-03-08 Tom Tromey <tom@tromey.com>
* parser-defs.h (struct expr_completion_state) <expout_last_op>:
New member.
(struct parser_state) <mark_struct_expression>: New method.
* parse.c (parser_state::mark_struct_expression): Update assert.
(parser_state::mark_struct_expression): New method.
(parser_state::mark_completion_tag): Update assert.
(parse_expression_for_completion): Handle expout_last_op.
2021-03-08 Tom Tromey <tom@tromey.com>
* ada-exp.h (class ada_var_value_operation) <get_symbol>: Remove;
now in superclass.
* value.h (fetch_subexp_value): Add "op" parameter.
* value.c (init_if_undefined_command): Update.
* tracepoint.c (validate_actionline, encode_actions_1): Update.
* stap-probe.c (stap_probe::compile_to_ax): Update.
* printcmd.c (set_command): Update.
* ppc-linux-nat.c (ppc_linux_nat_target::check_condition):
Update.
* parser-defs.h (struct expr_builder) <set_operation>: New
method.
* parse.c (parse_exp_in_context, exp_uses_objfile): Update.
* expression.h (struct expression) <first_opcode>: Update.
<op>: New member.
* expprint.c (dump_raw_expression, dump_prefix_expression):
Update.
* expop.h (class var_value_operation) <get_symbol>: New method.
(class register_operation) <get_name>: New method.
(class equal_operation): No longer a typedef, now a subclass.
(class unop_memval_operation) <get_type>: New method.
(class assign_operation) <get_lhs>: New method.
(class unop_cast_operation) <get_type>: New method.
* eval.c (evaluate_expression, evaluate_type)
(evaluate_subexpression_type): Update.
(fetch_subexp_value): Add "op" parameter.
(parse_and_eval_type): Update.
* dtrace-probe.c (dtrace_probe::compile_to_ax): Update.
* breakpoint.c (update_watchpoint, watchpoint_check)
(watchpoint_exp_is_const, watch_command_1): Update.
* ax-gdb.c (gen_trace_for_expr, gen_eval_for_expr, gen_printf):
Update.
2021-03-08 Tom Tromey <tom@tromey.com>
* ada-lang.c (ada_value_binop): Do not use op_string.
2021-03-08 Tom Tromey <tom@tromey.com>
* expprint.c (dump_for_expression): New overload.
* expop.h (check_objfile, dump_for_expression): Declare new
overloads.
* ada-lang.c (check_objfile): New overload.
(assign_component, ada_aggregate_component::uses_objfile)
(ada_aggregate_component::dump, ada_aggregate_component::assign)
(ada_aggregate_component::assign_aggregate)
(ada_positional_component::uses_objfile)
(ada_positional_component::dump, ada_positional_component::assign)
(ada_discrete_range_association::uses_objfile)
(ada_discrete_range_association::dump)
(ada_discrete_range_association::assign)
(ada_name_association::uses_objfile, ada_name_association::dump)
(ada_name_association::assign)
(ada_choices_component::uses_objfile, ada_choices_component::dump)
(ada_choices_component::assign)
(ada_others_component::uses_objfile, ada_others_component::dump)
(ada_others_component::assign, ada_assign_operation::evaluate):
New methods.
* ada-exp.h (ada_string_operation) <get_name>: New method.
(class ada_assign_operation): New.
(class ada_component): New.
(ada_component_up): New typedef.
(class ada_aggregate_operation, class ada_aggregate_component)
(class ada_positional_component, class ada_others_component)
(class ada_association): New.
(ada_association_up): New typedef.
(class ada_choices_component)
(class ada_discrete_range_association)
(class ada_name_association): New.
2021-03-08 Tom Tromey <tom@tromey.com>
* ada-lang.c (ada_var_value_operation::resolve)
(ada_funcall_operation::resolve)
(ada_ternop_slice_operation::resolve): New methods.
* ada-exp.h (struct ada_resolvable): New.
(class ada_var_value_operation): Derive from ada_resolvable.
<get_block, resolve>: New methods.
(class ada_funcall_operation): Derive from ada_resolvable.
<resolve>: New method.
(class ada_ternop_slice_operation): Derive from ada_resolvable.
<resolve>: New method.
2021-03-08 Tom Tromey <tom@tromey.com>
* ada-lang.c (ada_funcall_operation::evaluate): New method.
* ada-exp.h (class ada_var_msym_value_operation) <get_symbol>: New
method.
(class ada_funcall_operation): New.
2021-03-08 Tom Tromey <tom@tromey.com>
* ada-lang.c (ada_structop_operation::evaluate): New method.
* ada-exp.h (class ada_structop_operation): New.
2021-03-08 Tom Tromey <tom@tromey.com>
* ada-lang.c (ada_unop_ind_operation::evaluate): New method.
* ada-exp.h (class ada_unop_ind_operation): New.
2021-03-08 Tom Tromey <tom@tromey.com>
* ada-lang.c (ada_binop_exp): No longer static.
* ada-exp.h (ada_binop_exp_operation): New typedef.
2021-03-08 Tom Tromey <tom@tromey.com>
* ada-lang.c (ada_val_atr): No longer static.
(ada_atr_val_operation::evaluate): New method.
* ada-exp.h (class ada_atr_val_operation): New.
2021-03-08 Tom Tromey <tom@tromey.com>
* ada-lang.c (ada_pos_atr): No longer static.
* ada-exp.h (ada_pos_operation): New typedef.
2021-03-08 Tom Tromey <tom@tromey.com>
* ada-lang.c (ada_pos_atr): Rename from value_pos_atr. Change
parameters.
(ada_evaluate_subexp): Use it.
2021-03-08 Tom Tromey <tom@tromey.com>
* ada-lang.c (ada_binop_minmax): No longer static.
* ada-exp.h (ada_binop_min_operation, ada_binop_max_operation):
New typedefs.
2021-03-08 Tom Tromey <tom@tromey.com>
* ada-lang.c (ada_var_msym_value_operation::evaluate_for_cast):
New method.
* ada-exp.h (class ada_var_msym_value_operation): New.
2021-03-08 Tom Tromey <tom@tromey.com>
* ada-lang.c (ada_var_value_operation::evaluate_for_cast)
(ada_var_value_operation::evaluate): New methods.
* ada-exp.h (class ada_var_value_operation): New.
2021-03-08 Tom Tromey <tom@tromey.com>
* ada-lang.c (ada_unop_atr_operation::evaluate): New method.
* ada-exp.h (class ada_unop_atr_operation): New.
2021-03-08 Tom Tromey <tom@tromey.com>
* ada-lang.c (ada_binop_in_bounds): No longer static.
* ada-exp.h (class ada_binop_in_bounds_operation): New.
2021-03-08 Tom Tromey <tom@tromey.com>
* ada-lang.c (ada_ternop_slice): No longer static.
* ada-exp.h (class ada_ternop_slice_operation): New.
2021-03-08 Tom Tromey <tom@tromey.com>
* ada-exp.h (ada_bitwise_operation): New template class.
(ada_bitwise_and_operation, ada_bitwise_ior_operation)
(ada_bitwise_xor_operation): New typedefs.
2021-03-08 Tom Tromey <tom@tromey.com>
* ada-lang.c (ada_equal_binop): No longer static.
* ada-exp.h (class ada_binop_equal_operation): New.
2021-03-08 Tom Tromey <tom@tromey.com>
* ada-lang.c (ada_mult_binop): No longer static.
* ada-exp.h (ada_binop_mul_operation ada_binop_div_operation)
(ada_binop_rem_operation, ada_binop_mod_operation): New typedefs.
2021-03-08 Tom Tromey <tom@tromey.com>
* ada-lang.c (ada_binop_addsub_operation::evaluate): New method.
* ada-exp.h (class ada_binop_addsub_operation): New.
2021-03-08 Tom Tromey <tom@tromey.com>
* ada-lang.h (ada_find_operator_symbol, ada_resolve_funcall)
(ada_resolve_variable): Declare.
* ada-lang.c (ada_find_operator_symbol, ada_resolve_funcall)
(ada_resolve_variable): New functions.
(resolve_subexp): Update.
2021-03-08 Tom Tromey <tom@tromey.com>
* opencl-lang.c (opencl_ternop_cond_operation::evaluate): New
method.
* c-exp.h (class opencl_ternop_cond_operation): New.
2021-03-08 Tom Tromey <tom@tromey.com>
* opencl-lang.c (opencl_logical_binop_operation::evaluate): New
method.
* c-exp.h (class opencl_logical_binop_operation): New.
2021-03-08 Tom Tromey <tom@tromey.com>
* opencl-lang.c (opencl_structop_operation::evaluate): New
method.
* c-exp.h (class opencl_structop_operation): New.
2021-03-08 Tom Tromey <tom@tromey.com>
* opencl-lang.c (opencl_logical_not): No longer static. Change
parameters.
(evaluate_subexp_opencl): Update.
* c-exp.h (opencl_notequal_operation): New typedef.
2021-03-08 Tom Tromey <tom@tromey.com>
* opencl-lang.c (opencl_relop, eval_opencl_assign): No longer
static. Change parameters.
(eval_opencl_assign): No longer static. Add "op" parameter.
(evaluate_subexp_opencl): Update.
* c-exp.h (opencl_binop_operation): New template class.
(opencl_assign_operation, opencl_equal_operation)
(opencl_notequal_operation, opencl_less_operation)
(opencl_gtr_operation, opencl_geq_operation)
(opencl_leq_operation): New typedefs.
2021-03-08 Tom Tromey <tom@tromey.com>
* opencl-lang.c (opencl_value_cast): No longer static.
* c-exp.h (opencl_cast_type_operation): New typedef.
2021-03-08 Tom Tromey <tom@tromey.com>
* f-exp.h (eval_op_f_allocated): Declare.
(fortran_allocated_operation): New typedef.
* f-lang.c (eval_op_f_allocated): No longer static.
2021-03-08 Tom Tromey <tom@tromey.com>
* f-lang.c (eval_op_f_associated): New functions.
* f-exp.h (fortran_associated_1arg, fortran_associated_2arg): New
typedefs.
2021-03-08 Tom Tromey <tom@tromey.com>
* f-lang.c (fortran_bound_1arg::evaluate)
(fortran_bound_2arg::evaluate): New methods.
* f-exp.h (class fortran_bound_1arg, class fortran_bound_2arg):
New.
2021-03-08 Tom Tromey <tom@tromey.com>
* expop.h (class unop_addr_operation) <get_expression>: New
method.
* f-lang.c (fortran_undetermined::value_subarray)
(fortran_undetermined::evaluate): New methods.
(fortran_prepare_argument): New overload.
* f-exp.h (class fortran_range_operation)
(class fortran_undetermined): New classes.
2021-03-08 Tom Tromey <tom@tromey.com>
* rust-lang.c (rust_structop::evaluate_funcall): New method.
* rust-exp.h (class rust_structop) <evaluate_funcall>: Declare
method.
2021-03-08 Tom Tromey <tom@tromey.com>
* expression.h (class operation) <evaluate_funcall>: New methods.
* expop.h (class scope_operation) <evaluate_funcall>: New method.
(class var_value_operation) <evaluate_funcall>: New method.
(class structop_base_operation) <evaluate_funcall>: New method.
(class var_msym_value_operation) <evaluate_funcall>: New method.
(class structop_member_base): New class.
(class structop_member_operation): Derive from
structop_member_base.
(class structop_mptr_operation): Derive from
structop_member_base.
(class funcall_operation): New class.
* eval.c (operation::evaluate_funcall)
(var_value_operation::evaluate_funcall)
(scope_operation::evaluate_funcall)
(structop_member_base::evaluate_funcall)
(structop_base_operation::evaluate_funcall): New methods.
2021-03-08 Tom Tromey <tom@tromey.com>
* expop.h (class array_operation): New.
* eval.c (array_operation::evaluate_struct_tuple)
(array_operation::evaluate): New methods.
2021-03-08 Tom Tromey <tom@tromey.com>
* expop.h (class adl_func_operation): New.
* eval.c (adl_func_operation::evaluate): New method.
2021-03-08 Tom Tromey <tom@tromey.com>
* ada-lang.c (ada_unop_in_range): No longer static.
* ada-exp.h (class ada_unop_range_operation): New.
2021-03-08 Tom Tromey <tom@tromey.com>
* ada-lang.c (ada_unop_neg, ada_atr_tag, ada_atr_size, ada_abs):
No longer static.
* ada-exp.h (ada_neg_operation, ada_atr_tag_operation)
(ada_atr_size_operation, ada_abs_operation): New typedefs.
2021-03-08 Tom Tromey <tom@tromey.com>
* expop.h (class logical_and_operation)
(class logical_or_operation): New.
* eval.c (logical_and_operation::evaluate)
(logical_or_operation::evaluate): New methods.
* ax-gdb.c (logical_and_operation::do_generate_ax)
(logical_or_operation::do_generate_ax): New methods.
2021-03-08 Tom Tromey <tom@tromey.com>
* m2-lang.c (eval_op_m2_high, eval_op_m2_subscript): No longer
static.
* m2-exp.h: New file.
2021-03-08 Tom Tromey <tom@tromey.com>
* rust-lang.c (rust_aggregate_operation::evaluate): New method.
* rust-exp.h (class rust_aggregate_operation): New.
2021-03-08 Tom Tromey <tom@tromey.com>
* rust-lang.c (eval_op_rust_struct_anon, eval_op_rust_structop):
No longer static.
* rust-exp.h (class rust_struct_anon): New.
(class rust_structop): New.
2021-03-08 Tom Tromey <tom@tromey.com>
* rust-lang.c (rust_range): No longer static.
* rust-exp.h (class rust_range_operation): New.
2021-03-08 Tom Tromey <tom@tromey.com>
* rust-lang.c (rust_subscript): No longer static.
* rust-exp.h (class rust_subscript_operation): New.
2021-03-08 Tom Tromey <tom@tromey.com>
* rust-lang.c (eval_op_rust_ind): No longer static. Add "opcode"
parameter.
(rust_evaluate_subexp): Update.
* rust-exp.h (class rust_unop_ind_operation): New.
2021-03-08 Tom Tromey <tom@tromey.com>
* rust-lang.c (eval_op_rust_complement, eval_op_rust_array): No
longer static. Add "opcode" parameter.
(rust_evaluate_subexp): Update.
* rust-exp.h: New file.
2021-03-08 Tom Tromey <tom@tromey.com>
* f-lang.c (eval_op_f_abs, eval_op_f_mod, eval_op_f_ceil)
(eval_op_f_floor, eval_op_f_modulo, eval_op_f_cmplx)
(eval_op_f_kind): No longer static. Add "opcode" parameter.
(evaluate_subexp_f): Update.
* f-exp.h: New file.
2021-03-08 Tom Tromey <tom@tromey.com>
* ada-lang.c (ada_ternop_range_operation::evaluate): New method.
* ada-exp.h (class ada_ternop_range_operation): New.
2021-03-08 Tom Tromey <tom@tromey.com>
* ada-lang.c (ada_qual_operation::evaluate): New method.
* ada-exp.h (class ada_qual_operation): New.
2021-03-08 Tom Tromey <tom@tromey.com>
* ada-lang.c (ada_string_operation::evaluate): New method.
* ada-exp.h (class ada_string_operation): New.
2021-03-08 Tom Tromey <tom@tromey.com>
* ada-lang.c (ada_wrapped_operation::evaluate): New method.
* ada-exp.h: New file.
2021-03-08 Tom Tromey <tom@tromey.com>
* expop.h (class multi_subscript_operation): New.
* eval.c (multi_subscript_operation::evaluate): New method.
2021-03-08 Tom Tromey <tom@tromey.com>
* eval.c (objc_msgcall_operation::evaluate): New method.
* c-exp.h (class objc_msgcall_operation): New.
2021-03-08 Tom Tromey <tom@tromey.com>
* expop.h (class var_value_operation): New.
* eval.c (var_value_operation::evaluate)
(var_value_operation::evaluate_for_address)
(var_value_operation::evaluate_with_coercion)
(var_value_operation::evaluate_for_sizeof)
(var_value_operation::evaluate_for_cast): New methods.
* ax-gdb.c (var_value_operation::do_generate_ax): New method.
2021-03-08 Tom Tromey <tom@tromey.com>
* expop.h (cxx_cast_ftype): New typedef.
(cxx_cast_operation): New template.
(dynamic_cast_operation, reinterpret_cast_operation): New
typedefs.
2021-03-08 Tom Tromey <tom@tromey.com>
* expop.h (class unop_cast_type_operation): New.
* ax-gdb.c (unop_cast_type_operation::do_generate_ax): New
method.
2021-03-08 Tom Tromey <tom@tromey.com>
* expop.h (class unop_cast_operation): New.
* ax-gdb.c (unop_cast_operation::do_generate_ax): New method.
2021-03-08 Tom Tromey <tom@tromey.com>
* expop.h (class assign_modify_operation): New.
* eval.c (eval_binop_assign_modify): No longer static.
* ax-gdb.c (assign_modify_operation::do_generate_ax): New method.
2021-03-08 Tom Tromey <tom@tromey.com>
* expop.h (class assign_operation): New.
* ax-gdb.c (assign_operation::do_generate_ax): New method.
2021-03-08 Tom Tromey <tom@tromey.com>
* expop.h (class type_instance_operation): New.
* eval.c (type_instance_operation::evaluate): New method.
2021-03-08 Tom Tromey <tom@tromey.com>
* expop.h (class op_this_operation): New.
* ax-gdb.c (op_this_operation::do_generate_ax): New method.
2021-03-08 Tom Tromey <tom@tromey.com>
* expop.h (class unop_memval_operation)
(class unop_memval_type_operation): New.
* eval.c (eval_op_memval): No longer static.
(unop_memval_operation::evaluate_for_address)
(unop_memval_type_operation::evaluate_for_address)
(unop_memval_operation::evaluate_for_sizeof)
(unop_memval_type_operation::evaluate_for_sizeof): New methods.
* ax-gdb.c (unop_memval_operation::do_generate_ax)
(unop_memval_type_operation::do_generate_ax): New methods.
2021-03-08 Tom Tromey <tom@tromey.com>
* expop.h (class unop_alignof_operation): New.
* eval.c (eval_op_alignof): No longer static.
2021-03-08 Tom Tromey <tom@tromey.com>
* expop.h (class unop_sizeof_operation): New.
* ax-gdb.c (unop_sizeof_operation::do_generate_ax): New method.
2021-03-08 Tom Tromey <tom@tromey.com>
* expop.h (class unop_addr_operation): New.
* ax-gdb.c (gen_expr_unop) <case UNOP_ADDR>: New.
2021-03-08 Tom Tromey <tom@tromey.com>
* expop.h (class typeid_operation): New.
2021-03-08 Tom Tromey <tom@tromey.com>
* expop.h (class decltype_operation): New.
2021-03-08 Tom Tromey <tom@tromey.com>
* expop.h (class typeof_operation): New.
2021-03-08 Tom Tromey <tom@tromey.com>
* expop.h (class type_operation): New.
* eval.c (eval_op_type): No longer static.
2021-03-08 Tom Tromey <tom@tromey.com>
* expop.h (class unop_ind_base_operation)
(class unop_ind_operation): New.
* eval.c (eval_op_ind): No longer static. Remove "op" parameter.
(unop_ind_base_operation::evaluate_for_address)
(unop_ind_base_operation::evaluate_for_sizeof): New method.
* ax-gdb.c (gen_expr_unop) <case UNOP_IND>: New.
2021-03-08 Tom Tromey <tom@tromey.com>
* expop.h (unop_incr_operation): New template.
(preinc_operation, predec_operation, postinc_operation)
(postdec_operation): New typedefs.
* eval.c (eval_op_preinc, eval_op_predec, eval_op_postinc)
(eval_op_postdec): No longer static.
2021-03-08 Tom Tromey <tom@tromey.com>
* expop.h (unary_ftype): New typedef.
(unop_operation, usual_ax_binop_operation): New templates.
(unary_plus_operation, unary_neg_operation)
(unary_complement_operation, unary_logical_not_operation): New
typedefs.
* eval.c (eval_op_plus, eval_op_neg, eval_op_complement)
(eval_op_lognot): No longer static.
* ax-gdb.c (gen_expr_unop): New function.
2021-03-08 Tom Tromey <tom@tromey.com>
* ax-gdb.c (comma_operation::do_generate_ax): New method.
2021-03-08 Tom Tromey <tom@tromey.com>
* expop.h (class repeat_operation): New.
* eval.c (eval_op_repeat): No longer static. Remove "op"
parameter.
(evaluate_subexp_standard): Update.
* ax-gdb.c (repeat_operation::do_generate_ax): New method.
2021-03-08 Tom Tromey <tom@tromey.com>
* expop.h (class comparison_operation): New.
(equal_operation, notequal_operation, less_operation)
(gtr_operation, geq_operation, leq_operation): New typedefs.
* eval.c (eval_op_equal, eval_op_notequal, eval_op_less)
(eval_op_gtr, eval_op_geq, eval_op_leq): No longer static.
2021-03-08 Tom Tromey <tom@tromey.com>
* expop.h (class subscript_operation): New.
* eval.c (eval_op_subscript): No longer static.
2021-03-08 Tom Tromey <tom@tromey.com>
* expop.h (class binop_operation, class usual_ax_binop_operation):
New.
(exp_operation, intdiv_operation, mod_operation, mul_operation)
(div_operation, rem_operation, lsh_operation, rsh_operation)
(bitwise_and_operation, bitwise_ior_operation)
(bitwise_xor_operation): New typedefs.
* eval.c (eval_op_binary): No longer static.
2021-03-08 Tom Tromey <tom@tromey.com>
* expop.h (class sub_operation): New.
* eval.c (eval_op_sub): No longer static. Remove "op" parameter.
(evaluate_subexp_standard): Update.
2021-03-08 Tom Tromey <tom@tromey.com>
* expop.h (class add_operation): New.
* eval.c (eval_op_add): No longer static. Remove "op" parameter.
(evaluate_subexp_standard): Update.
2021-03-08 Tom Tromey <tom@tromey.com>
* expop.h (class concat_operation): New.
* eval.c (eval_op_concat): No longer static. Remove "op"
parameter.
(evaluate_subexp_standard): Update.
2021-03-08 Tom Tromey <tom@tromey.com>
* expop.h (class structop_member_operation)
(class structop_mptr_operation): New.
* eval.c (eval_op_member): No longer static.
2021-03-08 Tom Tromey <tom@tromey.com>
* expop.h (class structop_ptr_operation): New.
* eval.c (eval_op_structop_ptr): No longer static. Remove "op"
parameter.
2021-03-08 Tom Tromey <tom@tromey.com>
* expop.h (class structop_base_operation)
(class structop_operation): New.
* eval.c (eval_op_structop_struct): No longer static.
2021-03-08 Tom Tromey <tom@tromey.com>
* expop.h (class complex_operation): New.
2021-03-08 Tom Tromey <tom@tromey.com>
* eval.c (eval_op_objc_selector): No longer static.
* c-exp.h (class objc_selector_operation): New.
2021-03-08 Tom Tromey <tom@tromey.com>
* eval.c: Include c-exp.h.
* c-exp.h (class objc_nsstring_operation): New.
2021-03-08 Tom Tromey <tom@tromey.com>
* c-lang.c (c_string_operation::evaluate): New method.
* c-exp.h: New file.
2021-03-08 Tom Tromey <tom@tromey.com>
* expop.h (class ternop_cond_operation): New.
* ax-gdb.c (ternop_cond_operation::do_generate_ax): New method.
2021-03-08 Tom Tromey <tom@tromey.com>
* expop.h (class ternop_slice_operation): New.
* eval.c (eval_op_ternop): No longer static.
2021-03-08 Tom Tromey <tom@tromey.com>
* expop.h (class string_operation): New.
* eval.c (eval_op_string): No longer static.
2021-03-08 Tom Tromey <tom@tromey.com>
* expop.h (class internalvar_operation): New.
* ax-gdb.c (internalvar_operation::do_generate_ax): New method.
2021-03-08 Tom Tromey <tom@tromey.com>
* expop.h (class bool_operation): New.
2021-03-08 Tom Tromey <tom@tromey.com>
* expop.h (class register_operation): New.
* eval.c (eval_op_register): No longer static.
* ax-gdb.c (register_operation::do_generate_ax): New method.
2021-03-08 Tom Tromey <tom@tromey.com>
* expop.h (class last_operation): New.
2021-03-08 Tom Tromey <tom@tromey.com>
* expop.h (class func_static_var_operation): New.
* eval.c (eval_op_func_static_var): No longer static.
2021-03-08 Tom Tromey <tom@tromey.com>
* expop.h (class var_entry_value_operation): New.
* eval.c (eval_op_var_entry_value): No longer static.
2021-03-08 Tom Tromey <tom@tromey.com>
* expression.h (class operation) <set_outermost>: New method.
* expop.h (class var_msym_value_operation): New.
* eval.c (eval_op_var_msym_value): No longer static.
(var_msym_value_operation::evaluate_for_address)
(var_msym_value_operation::evaluate_for_sizeof)
(var_msym_value_operation::evaluate_for_cast): New methods.
* ax-gdb.c (var_msym_value_operation::do_generate_ax): New
method.
2021-03-08 Tom Tromey <tom@tromey.com>
* expop.h (class long_const_operation): New.
* ax-gdb.c (long_const_operation::do_generate_ax): New method.
2021-03-08 Tom Tromey <tom@tromey.com>
* expop.h (class scope_operation): New.
* eval.c (eval_op_scope): No longer static.
(scope_operation::evaluate_for_address): New method.
* ax-gdb.c (scope_operation::do_generate_ax): New method.
2021-03-08 Tom Tromey <tom@tromey.com>
* expprint.c (float_const_operation::dump): New method.
* expop.h (float_data): New typedef.
(class float_const_operation): New.
2021-03-08 Tom Tromey <tom@tromey.com>
* expop.h (gen_expr_binop, gen_expr_structop): Declare.
* ax-gdb.c (gen_expr_binop): New function.
(gen_expr_structop): Likewise.
2021-03-08 Tom Tromey <tom@tromey.com>
* expprint.c (expr::dump_for_expression): New functions.
* expop.h (dump_for_expression): New overloads.
(tuple_holding_operation::dump, tuple_holding_operation::do_dump):
Update.
2021-03-08 Tom Tromey <tom@tromey.com>
* expression.h (expr::operation): New class.
(expr::make_operation): New function.
(expr::operation_up): New typedef.
* expop.h: New file.
* eval.c (operation::evaluate_for_cast)
(operation::evaluate_for_address, operation::evaluate_for_sizeof):
New methods.
* ax-gdb.c (operation::generate_ax): New method.
2021-03-08 Tom Tromey <tom@tromey.com>
* ax-gdb.c (gen_expr_binop_rest): Remove "pc" parameter.
(gen_expr_binop_rest): New overload.
2021-03-08 Tom Tromey <tom@tromey.com>
* eval.c (eval_multi_subscript): New function.
(evaluate_subexp_standard): Use it.
2021-03-08 Tom Tromey <tom@tromey.com>
* ada-lang.c (ada_binop_exp): New function.
(ada_evaluate_subexp): Use it.
2021-03-08 Tom Tromey <tom@tromey.com>
* ada-lang.c (ada_val_atr): Rename from value_val_atr. Change
parameters.
(ada_evaluate_subexp): Use it.
2021-03-08 Tom Tromey <tom@tromey.com>
* ada-lang.c (ada_binop_minmax): New function.
(ada_evaluate_subexp): Use it.
2021-03-08 Tom Tromey <tom@tromey.com>
* ada-lang.c (ada_unop_atr): New function.
(ada_evaluate_subexp): Use it.
2021-03-08 Tom Tromey <tom@tromey.com>
* ada-lang.c (ada_binop_in_bounds): New function.
(ada_evaluate_subexp): Use it.
2021-03-08 Tom Tromey <tom@tromey.com>
* ada-lang.c (ada_ternop_slice): New function.
(ada_evaluate_subexp): Use it.
2021-03-08 Tom Tromey <tom@tromey.com>
* ada-lang.c (ada_equal_binop): New function.
(ada_evaluate_subexp): Use it.
2021-03-08 Tom Tromey <tom@tromey.com>
* ada-lang.c (ada_mult_binop): New function.
(ada_evaluate_subexp): Use it.
2021-03-08 Tom Tromey <tom@tromey.com>
* ada-lang.c (ada_abs): New function.
(ada_evaluate_subexp): Use it.
2021-03-08 Tom Tromey <tom@tromey.com>
* ada-lang.c (ada_atr_size): New function.
(ada_evaluate_subexp): Use it.
2021-03-08 Tom Tromey <tom@tromey.com>
* ada-lang.c (ada_atr_tag): New function.
(ada_evaluate_subexp): Use it.
2021-03-08 Tom Tromey <tom@tromey.com>
* ada-lang.c (ada_unop_in_range): New function.
(ada_evaluate_subexp): Use it.
2021-03-08 Tom Tromey <tom@tromey.com>
* ada-lang.c (ada_unop_neg): New function.
(ada_evaluate_subexp): Use it.
2021-03-08 Tom Tromey <tom@tromey.com>
* ada-lang.c (eval_ternop_in_range): New function.
(ada_evaluate_subexp): Use it.
2021-03-08 Tom Tromey <tom@tromey.com>
* opencl-lang.c (eval_opencl_assign): New function.
(evaluate_subexp_opencl): Use it.
2021-03-08 Tom Tromey <tom@tromey.com>
* eval.c (eval_op_objc_msgcall): New function.
(evaluate_subexp_standard): Use it.
2021-03-08 Tom Tromey <tom@tromey.com>
* eval.c (eval_binop_assign_modify): New function.
(evaluate_subexp_standard): Use it.
2021-03-08 Tom Tromey <tom@tromey.com>
* m2-lang.c (eval_op_m2_subscript): New function.
(evaluate_subexp_modula2): Use it.
2021-03-08 Tom Tromey <tom@tromey.com>
* m2-lang.c (eval_op_m2_high): New function.
(evaluate_subexp_modula2): Use it.
2021-03-08 Tom Tromey <tom@tromey.com>
* eval.c (evaluate_subexp_for_address_base): New function.
(evaluate_subexp_for_address): Use it.
(evaluate_subexp_for_sizeof_base): New function.
(evaluate_subexp_for_sizeof): Use it.
2021-03-08 Tom Tromey <tom@tromey.com>
* rust-lang.c (eval_op_rust_structop): New function.
(rust_evaluate_subexp): Use it.
2021-03-08 Tom Tromey <tom@tromey.com>
* rust-lang.c (eval_op_rust_struct_anon): New function.
(rust_evaluate_subexp): Use it.
2021-03-08 Tom Tromey <tom@tromey.com>
* rust-lang.c (eval_op_rust_array): New function.
(rust_evaluate_subexp): Use it.
2021-03-08 Tom Tromey <tom@tromey.com>
* rust-lang.c (eval_op_rust_complement): New function.
(rust_evaluate_subexp): Use it.
2021-03-08 Tom Tromey <tom@tromey.com>
* rust-lang.c (eval_op_rust_ind): New function.
(rust_evaluate_subexp): Use it.
2021-03-08 Tom Tromey <tom@tromey.com>
* rust-lang.c (rust_subscript): Change parameters.
(rust_evaluate_subexp): Update.
2021-03-08 Tom Tromey <tom@tromey.com>
* rust-lang.c (rust_range): Change parameters.
(rust_evaluate_subexp): Update.
2021-03-08 Tom Tromey <tom@tromey.com>
* f-lang.c (eval_op_f_allocated): New function.
(evaluate_subexp_f): Use it.
2021-03-08 Tom Tromey <tom@tromey.com>
* f-lang.c (fortran_require_array): New function.
(evaluate_subexp_f): Use it.
2021-03-08 Tom Tromey <tom@tromey.com>
* f-lang.c (eval_op_f_kind): New function.
(evaluate_subexp_f): Use it.
2021-03-08 Tom Tromey <tom@tromey.com>
* f-lang.c (eval_op_f_cmplx): New function.
(evaluate_subexp_f): Use it.
2021-03-08 Tom Tromey <tom@tromey.com>
* f-lang.c (eval_op_f_modulo): New function.
(evaluate_subexp_f): Use it.
2021-03-08 Tom Tromey <tom@tromey.com>
* f-lang.c (eval_op_f_floor): New function.
(evaluate_subexp_f): Use it.
2021-03-08 Tom Tromey <tom@tromey.com>
* f-lang.c (eval_op_f_ceil): New function.
(evaluate_subexp_f): Use it.
2021-03-08 Tom Tromey <tom@tromey.com>
* f-lang.c (eval_op_f_mod): New function.
(evaluate_subexp_f): Use it.
2021-03-08 Tom Tromey <tom@tromey.com>
* f-lang.c (eval_op_f_abs): New function.
(evaluate_subexp_f): Use it.
2021-03-08 Tom Tromey <tom@tromey.com>
* eval.c (eval_op_type): New function.
(evaluate_subexp_standard): Use it.
2021-03-08 Tom Tromey <tom@tromey.com>
* eval.c (eval_op_postdec): New function.
(evaluate_subexp_standard): Use it.
2021-03-08 Tom Tromey <tom@tromey.com>
* eval.c (eval_op_postinc): New function.
(evaluate_subexp_standard): Use it.
2021-03-08 Tom Tromey <tom@tromey.com>
* eval.c (eval_op_predec): New file.
(evaluate_subexp_standard): Use it.
2021-03-08 Tom Tromey <tom@tromey.com>
* eval.c (eval_op_preinc): New function.
(evaluate_subexp_standard): Use it.
2021-03-08 Tom Tromey <tom@tromey.com>
* eval.c (eval_op_memval): New function.
(evaluate_subexp_standard): Use it.
2021-03-08 Tom Tromey <tom@tromey.com>
* eval.c (eval_op_alignof): New function.
(evaluate_subexp_standard): Use it.
2021-03-08 Tom Tromey <tom@tromey.com>
* eval.c (eval_op_ind): New function.
(evaluate_subexp_standard): Use it.
2021-03-08 Tom Tromey <tom@tromey.com>
* eval.c (eval_op_lognot): New function.
(evaluate_subexp_standard): Use it.
2021-03-08 Tom Tromey <tom@tromey.com>
* eval.c (eval_op_complement): New function.
(evaluate_subexp_standard): Use it.
2021-03-08 Tom Tromey <tom@tromey.com>
* eval.c (eval_op_neg): New function.
(evaluate_subexp_standard): Use it.
2021-03-08 Tom Tromey <tom@tromey.com>
* eval.c (eval_op_plus): New function.
(evaluate_subexp_standard): Use it.
2021-03-08 Tom Tromey <tom@tromey.com>
* eval.c (eval_op_repeat): New function.
(evaluate_subexp_standard): Use it.
2021-03-08 Tom Tromey <tom@tromey.com>
* eval.c (eval_op_leq): New function.
(evaluate_subexp_standard): Use it.
2021-03-08 Tom Tromey <tom@tromey.com>
* eval.c (eval_op_geq): New function.
(evaluate_subexp_standard): Use it.
2021-03-08 Tom Tromey <tom@tromey.com>
* eval.c (eval_op_gtr): New function.
(evaluate_subexp_standard): Use it.
2021-03-08 Tom Tromey <tom@tromey.com>
* eval.c (eval_op_less): New function.
(evaluate_subexp_standard): Use it.
2021-03-08 Tom Tromey <tom@tromey.com>
* eval.c (eval_op_notequal): New function.
(evaluate_subexp_standard): Use it.
2021-03-08 Tom Tromey <tom@tromey.com>
* eval.c (eval_op_equal): New function.
(evaluate_subexp_standard): Use it.
2021-03-08 Tom Tromey <tom@tromey.com>
* eval.c (eval_op_subscript): New function.
(evaluate_subexp_standard): Use it.
2021-03-08 Tom Tromey <tom@tromey.com>
* eval.c (eval_op_binary): New function.
(evaluate_subexp_standard): Use it.
2021-03-08 Tom Tromey <tom@tromey.com>
* eval.c (eval_op_sub): New function.
(evaluate_subexp_standard): Use it.
2021-03-08 Tom Tromey <tom@tromey.com>
* eval.c (eval_op_add): New function.
(evaluate_subexp_standard): Use it.
2021-03-08 Tom Tromey <tom@tromey.com>
* eval.c (eval_op_member): New function.
(evaluate_subexp_standard): Use it.
2021-03-08 Tom Tromey <tom@tromey.com>
* eval.c (eval_op_structop_ptr): New function.
(evaluate_subexp_standard): Use it.
2021-03-08 Tom Tromey <tom@tromey.com>
* eval.c (eval_op_structop_struct): New function.
(evaluate_subexp_standard): Use it.
2021-03-08 Tom Tromey <tom@tromey.com>
* eval.c (eval_op_ternop): New function.
(evaluate_subexp_standard): Use it.
2021-03-08 Tom Tromey <tom@tromey.com>
* eval.c (eval_op_concat): New function.
(evaluate_subexp_standard): Use it.
2021-03-08 Tom Tromey <tom@tromey.com>
* eval.c (eval_op_objc_selector): New function.
(evaluate_subexp_standard): Use it.
2021-03-08 Tom Tromey <tom@tromey.com>
* eval.c (eval_op_string): New function.
(evaluate_subexp_standard): Use it.
2021-03-08 Tom Tromey <tom@tromey.com>
* eval.c (eval_op_register): New function.
(evaluate_subexp_standard): Use it.
2021-03-08 Tom Tromey <tom@tromey.com>
* eval.c (eval_op_func_static_var): New function.
(evaluate_subexp_standard): Use it.
2021-03-08 Tom Tromey <tom@tromey.com>
* eval.c (eval_op_var_msym_value): New function.
(evaluate_subexp_standard): Use it.
2021-03-08 Tom Tromey <tom@tromey.com>
* eval.c (eval_op_var_entry_value): New function.
(evaluate_subexp_standard): Use it.
2021-03-08 Tom Tromey <tom@tromey.com>
* eval.c (eval_op_scope): New function.
(evaluate_subexp_standard): Use it.
2021-03-06 Chernov Sergey <klen_s@mail.ru>
PR gdb/27528:
* ada-lang.c (ada_fold_name): Use gdb::to_string.
2021-03-06 Tom Tromey <tom@tromey.com>
* dwarf2/sect-names.h (dwarf2_elf_names): Declare.
* dwarf2/read.h (dwarf2_get_dwz_file): Move to dwz.h.
* dwarf2/read.c (dwarf2_elf_names): No longer static.
(locate_dwz_sections, dwz_search_other_debugdirs)
(dwarf2_get_dwz_file): Move to dwz.c.
* dwarf2/dwz.h (dwarf2_get_dwz_file): Move declaration from
read.h.
* dwarf2/dwz.c (locate_dwz_sections, dwz_search_other_debugdirs)
(dwarf2_get_dwz_file): Move from read.c.
2021-03-06 Tom Tromey <tom@tromey.com>
* debuginfod-support.h: Include scoped_fd.h.
2021-03-06 Tom Tromey <tom@tromey.com>
* dwarf2/read.h (dwarf2_get_dwz_file): Add 'require' parameter.
* dwarf2/read.c (dwarf2_get_dwz_file): Add 'require' parameter.
(get_abbrev_section_for_cu, read_attribute_value)
(get_debug_line_section): Update.
* dwarf2/macro.c (dwarf_decode_macro_bytes): Update.
2021-03-06 Tom Tromey <tom@tromey.com>
* dwarf2/sect-names.h (struct dwarf2_section_names) <matches>: New
method.
* dwarf2/read.c (section_is_p): Remove.
(dwarf2_per_bfd::locate_sections)
(dwarf2_per_bfd::locate_sections, locate_dwz_sections)
(locate_v1_virtual_dwo_sections, dwarf2_locate_dwo_sections)
(dwarf2_locate_common_dwp_sections)
(dwarf2_locate_v2_dwp_sections, dwarf2_locate_v5_dwp_sections):
Update.
2021-03-06 Tom Tromey <tom@tromey.com>
* xcoffread.c: Include sect-names.h.
* symfile.h (struct dwarf2_section_names, struct
dwarf2_debug_sections): Move to dwarf2/sect-names.h.
* dwarf2/sect-names.h: New file, from symfile.h.
* dwarf2/read.c: Include sect-names.h.
2021-03-06 Tom Tromey <tom@tromey.com>
* dwarf2/read.c (read_attribute): Make 'abbrev' const.
* dwarf2/abbrev.c (abbrev_table::alloc_abbrev): Remove.
(abbrev_table::read): Update.
* dwarf2/abbrev.h (struct attr_abbrev): Move earlier.
(struct abbrev_info): Reformat.
<attrs>: Now an array.
(struct abbrev_table) <alloc_abbrev>: Remove.
2021-03-06 Weimin Pan <weimin.pan@oracle.com>
* ctfread.c (ctf_psymtab_add_enums): New function.
(ctf_psymtab_type_cb): call ctf_psymtab_add_enums.
2021-03-06 Weimin Pan <weimin.pan@oracle.com>
* ctfread.c (read_func_kind_type): Set up function arguments.
2021-03-05 Craig Blackmore <craig.blackmore@embecosm.com>
Andrew Burgess <andrew.burgess@embecosm.com>
* riscv-none-tdep.c: Add 'user-regs.h' and 'target-description.h'
includes.
(riscv_csrset): New static global.
(riscv_update_csrmap): New function.
(riscv_iterate_over_regset_sections): Process CSRs.
2021-03-05 Andrew Burgess <andrew.burgess@embecosm.com>
* riscv-tdep.c (riscv_feature_name_csr): Define.
(riscv_feature_name_cpu): Define.
(riscv_feature_name_fpu): Define.
(riscv_feature_name_virtual): Define.
(riscv_xreg_feature): Use riscv_feature_name_cpu.
(riscv_freg_feature): Use riscv_feature_name_fpu.
(riscv_virtual_feature): Use riscv_feature_name_virtual.
(riscv_csr_feature): Use riscv_feature_name_csr.
* riscv-tdep.h (riscv_feature_name_csr): Declare.
2021-03-05 Andrew Burgess <andrew.burgess@embecosm.com>
Craig Blackmore <craig.blackmore@embecosm.com>
* Makefile.in (ALL_TARGET_OBS): Add riscv-none-tdep.o.
(ALLDEPFILES): Add riscv-none-tdep.c.
* configure: Regenerate.
* configure.ac (CONFIG_OBS): Add elf-none-tdep.o when BFD has ELF
support.
* configure.tgt (riscv*-*-*): Include riscv-none-tdep.c.
* elf-none-tdep.c: New file.
* elf-none-tdep.h: New file.
* riscv-none-tdep.c: New file.
2021-03-05 Craig Blackmore <craig.blackmore@embecosm.com>
Andrew Burgess <andrew.burgess@embecosm.com>
* corelow.c: Add 'xml-tdesc.h' include.
(core_target::read_description): Load the target description from
the core file when possible.
* fbsd-tdep.c (fbsd_make_corefile_notes): Add target description
note.
* gcore-elf.c: Add 'gdbsupport/tdesc.h' include.
(gcore_elf_make_tdesc_note): New function.
* gcore-elf.h (gcore_elf_make_tdesc_note): Declare.
* linux-tdep.c (linux_make_corefile_notes): Add target description
note.
2021-03-05 Andrew Burgess <andrew.burgess@embecosm.com>
* Makefile.in (SFILES): Add gcore-elf.c.
(HFILES_NO_SRCDIR): Add gcore-elf.h
* configure: Regenerate.
* configure.ac: Add gcore-elf.o to CONFIG_OBS if we have ELF
support.
* fbsd-tdep.c: Add 'gcore-elf.h' include.
(struct fbsd_collect_regset_section_cb_data): Delete.
(fbsd_collect_regset_section_cb): Delete.
(fbsd_collect_thread_registers): Delete.
(struct fbsd_corefile_thread_data): Delete.
(fbsd_corefile_thread): Delete.
(fbsd_make_corefile_notes): Call
gcore_elf_build_thread_register_notes instead of the now deleted
FreeBSD code.
* gcore-elf.c: New file, the content was moved here from
linux-tdep.c, functions were renamed and given minor cleanup.
* gcore-elf.h: New file.
* gcore.c (gcore_find_signalled_thread): Moved here from
linux-tdep.c and given a new name. Minor cleanups.
* gcore.h (gcore_find_signalled_thread): Declare.
* linux-tdep.c: Add 'gcore.h' and 'gcore-elf.h' includes.
(struct linux_collect_regset_section_cb_data): Delete.
(linux_collect_regset_section_cb): Delete.
(linux_collect_thread_registers): Delete.
(linux_corefile_thread): Call
gcore_elf_build_thread_register_notes.
(find_signalled_thread): Delete.
(linux_make_corefile_notes): Call gcore_find_signalled_thread.
2021-03-04 Simon Marchi <simon.marchi@polymtl.ca>
PR gdb/27147
* sparc-nat.h (sparc_fetch_inferior_registers): Add
process_stratum_target parameter,
sparc_store_inferior_registers): update callers.
* sparc-nat.c (sparc_fetch_inferior_registers,
sparc_store_inferior_registers): Add process_stratum_target
parameter. Switch current thread before calling
sparc_supply_gregset / sparc_collect_rwindow.
(sparc_store_inferior_registers): Likewise.
* sparc-obsd-tdep.c (sparc32obsd_supply_uthread): Add assertion.
(sparc32obsd_collect_uthread): Likewise.
* sparc-tdep.c (sparc_supply_rwindow, sparc_collect_rwindow):
Add assertion.
* sparc64-obsd-tdep.c (sparc64obsd_collect_uthread,
sparc64obsd_supply_uthread): Add assertion.
2021-03-04 Tom Tromey <tromey@adacore.com>
* ada-lang.c (struct match_data) <found_sym>: Now bool.
(aux_add_nonlocal_symbols): Update.
(ada_add_block_symbols): Change "found_sym" to bool.
2021-03-03 Tom Tromey <tromey@adacore.com>
* ada-lang.c (ada_resolve_function): Update comment.
(is_nonfunction, add_symbols_from_enclosing_procs)
(remove_extra_symbols): Likewise.
(struct match_data): Add constructor, initializers.
(add_nonlocal_symbols): Remove memset.
(aux_add_nonlocal_symbols): Update comment.
(ada_add_block_renamings, add_nonlocal_symbols)
(ada_add_all_symbols): Likewise.
* ada-exp.y (write_var_or_type): Clean up trailing whitespace.
2021-03-02 Tom Tromey <tromey@adacore.com>
* ada-lang.c (cast_from_gnat_encoded_fixed_point_type)
(cast_to_gnat_encoded_fixed_point_type): Remove.
(ada_value_cast, ada_evaluate_subexp): Update.
(gnat_encoded_fixed_point_type_info)
(ada_is_gnat_encoded_fixed_point_type)
(gnat_encoded_fixed_point_delta)
(gnat_encoded_fixed_point_scaling_factor): Remove.
* ada-lang.h (ada_is_gnat_encoded_fixed_point_type)
(gnat_encoded_fixed_point_delta)
(gnat_encoded_fixed_point_scaling_factor): Don't declare.
* ada-typeprint.c (print_gnat_encoded_fixed_point_type): Remove.
(ada_print_type): Update.
* ada-valprint.c (ada_value_print_num): Update.
* dwarf2/read.c (ada_get_gnat_encoded_number)
(ada_get_gnat_encoded_ratio): New functions.
(finish_fixed_point_type): Use them. Add parameters.
(GNAT_FIXED_POINT_SUFFIX): New define.
(gnat_encoded_fixed_point_type_info): New function.
(read_base_type): Handle gnat encodings.
2021-03-02 Tom Tromey <tromey@adacore.com>
* ada-lang.c (ada_fold_name, ada_variant_discrim_name)
(ada_enum_name, scan_discrim_bound, to_fixed_range_type): Use
std::string.
(GROW_VECT): Remove.
(grow_vect): Remove.
2021-03-02 Tom Tromey <tromey@adacore.com>
* ada-lang.h (ada_lookup_symbol_list): Return a vector.
* ada-lang.c (resolve_subexp): Update.
(ada_resolve_function): Accept a vector.
(is_nonfunction, add_defn_to_vec)
(add_symbols_from_enclosing_procs): Likewise.
(num_defns_collected, defns_collected): Remove.
(remove_extra_symbols): Return a vector.
(remove_irrelevant_renamings): Return void.
(ada_add_local_symbols): Accept a vector.
(struct match_data) <obstackp>: Remove.
<resultp>: New member.
(aux_add_nonlocal_symbols): Update.
(ada_add_block_renamings, add_nonlocal_symbols)
(ada_add_all_symbols): Accept a vector.
(ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Return a
vector.
(ada_lookup_symbol): Update.
(ada_add_block_symbols): Accept a vector.
(get_var_value, iterate_over_symbols): Update.
* ada-exp.y (block_lookup, write_var_or_type, write_name_assoc):
Update.
2021-03-02 Tom Tromey <tromey@adacore.com>
* ada-lang.c (resolve_subexp): Use any_of and erase-remove idiom.
2021-03-02 Tom Tromey <tromey@adacore.com>
* ada-lang.c (struct ada_symbol_cache) <cache_space>: Now an
auto_obstack.
<root>: Initialize.
(ada_pspace_data): Remove destructor.
<sym_cache>: Now a unique_ptr.
(ada_init_symbol_cache, ada_free_symbol_cache): Remove.
(ada_get_symbol_cache): Use 'new'.
(ada_clear_symbol_cache): Rewrite.
2021-03-02 Tom Tromey <tromey@adacore.com>
* ada-lang.c (add_nonlocal_symbols): Handle case where objfile->sf
is null.
2021-02-27 Lancelot Six <lsix@lancelotsix.com>
PR gdb/27393
* source.c (add_path): Skip empty dirnames.
2021-02-25 Kevin Buettner <kevinb@redhat.com>
* nat/aarch64-sve-linux-ptrace.h: Add comment regarding
include order for <sys/ptrace.h> and <asm/ptrace.h>.
2021-02-25 Simon Marchi <simon.marchi@polymtl.ca>
PR gdb/26861
* target.c (target_mourn_inferior): Only compare pids in
target_mourn_inferior.
2021-02-25 Jan Matyas <jmatyas@codasip.com>
PR gdb/26819
* remote.c (remote_target::start_remote): Ensure the single
thread, automatically added for remote targets without the
concept of threading, is initially in set to the "resumed"
state.
* remote.c (remote_target::add_current_inferior_and_thread):
Add return value - return the main thread.
2021-02-25 Jan Vrany <jan.vrany@labware.com>
* gdb/mi/mi-interp.c (mi_traceframe_changed): Remove trailing \n from output.
(mi_tsv_created): Likewise.
(mi_tsv_deleted): Likewise.
2021-02-25 Tom de Vries <tdevries@suse.de>
PR symtab/27354
* dwarf2/read.c (open_and_init_dwo_file): Use rcuh_kind::COMPILE as
section_kind for &dwo_file->sections.info.
2021-02-25 Andrew Burgess <andrew.burgess@embecosm.com>
PR fortran/26155
* f-lang.c (fortran_argument_convert): Delete declaration.
(fortran_prepare_argument): New function.
(evaluate_subexp_f): Move logic to new function
fortran_prepare_argument.
2021-02-25 Andrew Burgess <andrew.burgess@embecosm.com>
* f-exp.y (f77_keywords): Add 'associated'.
* f-lang.c (fortran_associated): New function.
(evaluate_subexp_f): Handle FORTRAN_ASSOCIATED.
(operator_length_f): Likewise.
(print_unop_or_binop_subexp_f): New function.
(print_subexp_f): Make use of print_unop_or_binop_subexp_f for
FORTRAN_ASSOCIATED, FORTRAN_LBOUND, and FORTRAN_UBOUND.
(dump_subexp_body_f): Handle FORTRAN_ASSOCIATED.
(operator_check_f): Likewise.
* std-operator.def: Add FORTRAN_ASSOCIATED.
2021-02-25 Andrew Burgess <andrew.burgess@embecosm.com>
* f-exp.y (fortran_operators): Add ".xor.".
2021-02-24 Tom de Vries <tdevries@suse.de>
PR symtab/27336
* dwarf2/attribute.c (attribute::form_is_signed): New function
factored out of ...
* dwarf2/attribute.h (attribute::as_signed): ... here.
(attribute::is_nonnegative, attribute::as_nonnegative): New function.
(attribute::form_is_signed): Declare.
* dwarf2/read.c (new_symbol): Use is_nonnegative and as_nonnegative
for DW_AT_decl_file.
2021-02-24 Kevin Buettner <kevinb@redhat.com>
* nat/aarch64-linux-hw-point.c: Add comment regarding include
order for <sys/ptrace.h> and <asm/ptrace.h>.
2021-02-24 Kevin Buettner <kevinb@redhat.com>
* nat/aarch64-linux-hw-point.c: Include <asm/ptrace.h> after
<sys/ptrace.h>.
2021-02-24 Andrew Burgess <andrew.burgess@embecosm.com>
* exec.c (set_section_command): Move variable declarations into
the function body, and use std::string instead of a fixed size
buffer.
2021-02-24 Andrew Burgess <andrew.burgess@embecosm.com>
* exec.c (exec_target::get_section_table): Delete member function.
(section_table_read_available_memory): Use current_top_target, not
just the exec_ops target.
* target-delegates.c: Regenerate.
* target.c (default_get_section_table): New function.
* target.h (target_ops::get_section_table): Change default
behaviour to call default_get_section_table.
(default_get_section_table): Declare.
2021-02-24 Andrew Burgess <andrew.burgess@embecosm.com>
* exec.c (exec_target::close): Call new clear_target_sections
function.
(program_space::add_target_sections): Update name of member
variable.
(program_space::add_target_sections): Update name of member
variable.
(program_space::remove_target_sections): Likewise.
(exec_one_fork): Use new target_sections member function.
(exec_target::get_section_table): Likewise.
(exec_target::files_info): Likewise.
(set_section_command): Likewise.
(exec_set_section_address): Likewise.
(exec_target::has_memory): Use new target_sections member
function.
* progspace.h (program_space::clear_target_sections): New member
function.
(program_space::target_sections): Rename member variable to
m_target_sections, replace with a new member function.
(program_space::m_target_sections): New member variable.
* solib-dsbt.c (scan_dyntag): Use new member function.
* solib-svr4.c (scan_dyntag): Likewise.
2021-02-24 Andrew Burgess <andrew.burgess@embecosm.com>
* gdb/bfd-target.c (class target_bfd) <get_section_table>: Make
return type const.
* gdb/exec.c (struct exec_target) <get_section_table>: Likewise.
(section_table_read_available_memory): Make local const.
(exec_target::xfer_partial): Make local const.
(print_section_info): Make parameter const.
* gdb/exec.h (print_section_info): Likewise.
* gdb/ppc64-tdep.c (ppc64_convert_from_func_ptr_addr): Make local
const.
* gdb/record-btrace.c (record_btrace_target::xfer_partial):
Likewise.
* gdb/remote.c (remote_target::remote_xfer_live_readonly_partial):
Likewise.
* gdb/s390-tdep.c (s390_load): Likewise.
* gdb/solib-dsbt.c (scan_dyntag): Likewise.
* gdb/solib-svr4.c (scan_dyntag): Likewise.
* gdb/target-debug.h (target_debug_print_target_section_table_p):
Rename to...
(target_debug_print_const_target_section_table_p): ...this.
* gdb/target-delegates.c: Regenerate.
* gdb/target.c (target_get_section_table): Make return type const.
(target_section_by_addr): Likewise. Also make some locals const.
(memory_xfer_partial_1): Make some locals const.
* gdb/target.h (struct target_ops) <get_section_table>: Make
return type const.
(target_section_by_addr): Likewise.
(target_get_section_table): Likewise.
2021-02-24 Andrew Burgess <andrew.burgess@embecosm.com>
* NEWS: Mention new 'maint info target-sections' command.
* maint.c (maintenance_info_target_sections): New function.
(_initialize_maint_cmds): Register new command.
2021-02-24 Andrew Burgess <andrew.burgess@embecosm.com>
* riscv-tdep.c (riscv_features_from_gdbarch_info): Rename to...
(riscv_features_from_bfd): ...this. Change parameter type to
'bfd*', and update as required.
(riscv_find_default_target_description): Update call to
riscv_features_from_bfd. Select a default xlen based on
info.bfd_arch_info.
(riscv_gdbarch_init): Update call to riscv_features_from_bfd.
2021-02-24 Andrew Burgess <andrew.burgess@embecosm.com>
* eval.c (evaluate_subexp_standard): Call value_ind for points to
dynamic types in UNOP_IND.
2021-02-23 Simon Marchi <simon.marchi@polymtl.ca>
PR gdb/26828
* dwarf2/read.c (dwarf2_queue_guard) <dwarf2_queue_guard>:
Instantiate queue.
(~dwarf2_queue_guard): Clear queue.
(queue_comp_unit): Assert that queue is
instantiated.
(process_queue): Adjust.
* dwarf2/read.h (struct dwarf2_per_bfd) <queue>: Make optional.
2021-02-23 Simon Marchi <simon.marchi@polymtl.ca>
PR gdb/26828
* dwarf2/read.c (maybe_queue_comp_unit): Check if CU is expanded
to decide whether or not to enqueue it for expansion.
(follow_die_offset, follow_die_sig_1): Ensure we load the DIEs
after calling maybe_queue_comp_unit.
2021-02-23 Simon Marchi <simon.marchi@polymtl.ca>
* linux-nat.c (linux_nat_filter_event): Return void.
2021-02-22 Tom Tromey <tromey@adacore.com>
* solib-svr4.c (enable_break): Update.
* bfd-target.c (class target_bfd) <target_bfd>: Change parameter
type.
(target_bfd_reopen): Change parameter type.
* bfd-target.h (target_bfd_reopen): Change parameter type.
2021-02-22 Simon Marchi <simon.marchi@polymtl.ca>
* thread.c (add_thread_silent): Add assert.
(find_thread_ptid): Add assert.
2021-02-22 Simon Marchi <simon.marchi@polymtl.ca>
PR gdb/27435
* inf-ptrace.c (struct target_unpusher): Move to target.h.
(target_unpush_up): Likewise.
* procfs.c (procfs_target::attach): Push target early. Use
target_unpush_up to unpush target in case of error.
* target.h (struct target_unpusher): Move here.
(target_unpush_up): Likewise.
2021-02-19 Kevin Buettner <kevinb@redhat.com>
* nat/amd64-linux-siginfo.c: Include "gdbsupport/common-defs.h"
(which in turn includes <gnulib/config.h>) before include
of <signal.h>.
2021-02-19 Nelson Chu <nelson.chu@sifive.com>
PR 27158
* riscv-tdep.c (decode_ci_type_insn): Updated encoding macros.
(decode_j_type_insn): Likewise.
(decode_cj_type_insn): Likewise.
(decode_b_type_insn): Likewise.
(decode): Likewise.
2021-02-18 Tom Tromey <tom@tromey.com>
* expression.h (struct expression) <evaluate>: Declare method.
* eval.c (evaluate_subexp): Simplify.
(expression::evaluate): New method.
(evaluate_expression, evaluate_type): Use expression::evaluate.
2021-02-17 Kevin Buettner <kevinb@redhat.com>
* ada-lang.c (ada_fold_name): Check for non-empty string prior
to accessing it.
(ada_lookup_name_info): Likewise.
2021-02-13 Mike Frysinger <vapier@gentoo.org>
* aclocal.m4: Regenerate.
2021-02-12 Tom de Vries <tdevries@suse.de>
PR threads/26228
* linux-nat.c (lin_thread_get_thread_signals): Remove.
(lin_thread_signals): New static var.
(lin_thread_get_thread_signal_num, lin_thread_get_thread_signal):
New function.
* linux-nat.h (lin_thread_get_thread_signals): Remove.
(lin_thread_get_thread_signal_num, lin_thread_get_thread_signal):
Declare.
* linux-thread-db.c (check_thread_signals): Use
lin_thread_get_thread_signal_num and lin_thread_get_thread_signal.
2021-02-12 Andrew Burgess <andrew.burgess@embecosm.com>
* f-exp.y (f77_keywords): Add allocated.
* f-lang.c (evaluate_subexp_f): Handle UNOP_FORTRAN_ALLOCATED.
(operator_length_f): Likewise.
(print_subexp_f): Likewise.
(dump_subexp_body_f): Likewise.
(operator_check_f): Likewise.
* std-operator.def (UNOP_FORTRAN_ALLOCATED): New operator.
2021-02-11 Tom de Vries <tdevries@suse.de>
PR symtab/27353
* dwarf2/attribute.c (attribute::form_requires_reprocessing):
Return true for DW_FORM_strx.
2021-02-11 Tom Tromey <tromey@adacore.com>
PR gdb/27383:
* parse.c (write_exp_symbol_reference): Write sym.block.
2021-02-11 Andrew Burgess <andrew.burgess@embecosm.com>
* NEWS: Mention changes to 'maint info sections'.
* maint.c (match_substring): Return a bool, fix whitespace issue.
(struct single_bfd_flag_info): New struct.
(bfd_flag_info): New static global.
(match_bfd_flags): Return a bool, use bfd_flag_info.
(print_bfd_flags): Use bfd_flag_info.
(maint_print_section_info): Delete trailing whitespace.
(struct maint_info_sections_opts): New struct.
(maint_info_sections_option_defs): New static global.
(maint_info_sections_completer): New function.
(maintenance_info_sections): Use option parsing mechanism.
(_initialize_maint_cmds): Update command help text for 'maint info
sections' and register a command completer.
2021-02-11 Andrew Burgess <andrew.burgess@embecosm.com>
* maint.c (print_bfd_section_info_maybe_relocated): Delete,
functionality merged into...
(maint_print_all_sections): ...this new function.
(maintenance_info_sections): Make use of maint_print_all_sections,
allow all objects to be printed even where there's no executable.
2021-02-11 Andrew Burgess <andrew.burgess@embecosm.com>
* breakpoint.c (resolve_sal_pc): Make use of
bound_minimal_symbol::obj_section.
* maint.c (maintenance_translate_address): Likewise.
* minsyms.c (minimal_symbol_upper_bound): Likewise.
* minsyms.h (struct bound_minimal_symbol) <obj_section>: New
member function.
* printcmd.c (info_address_command): Make use of
bound_minimal_symbol::obj_section.
2021-02-11 Alan Modra <amodra@gmail.com>
* arm-symbian-tdep.c: Delete.
* NEWS: Mention arm-symbian removal.
* Makefile.in: Remove arm-symbian-tdep entries.
* configure.tgt: Remove arm*-*-symbianelf*.
* doc/gdb.texinfo: Remove mention of SymbianOS.
* osabi.c (gdb_osabi_names): Remove "Symbian".
* osabi.h (enum gdb_osabi): Remove GDB_OSABI_SYMBIAN.
* testsuite/gdb.base/ending-run.exp: Remove E32Main handling.
* testsuite/gdb.ada/catch_ex_std.exp: Remove arm*-*-symbianelf*
handling.
* testsuite/gdb.base/dup-sect.exp: Likewise.
* testsuite/gdb.base/long_long.exp: Likewise.
* testsuite/gdb.base/solib-weak.exp: Likewise.
* testsuite/gdb.guile/scm-section-script.exp: Likewise.
* testsuite/gdb.python/py-section-script.exp: Likewise.
* testsuite/lib/dwarf.exp: Likewise.
* testsuite/lib/gdb.exp: Likewise.
2021-02-10 Andrew Burgess <andrew.burgess@embecosm.com>
* f-exp.y (UNOP_OR_BINOP_INTRINSIC): New token.
(exp): New pattern using UNOP_OR_BINOP_INTRINSIC.
(one_or_two_args): New pattern.
(f77_keywords): Add lbound and ubound.
* f-lang.c (fortran_bounds_all_dims): New function.
(fortran_bounds_for_dimension): New function.
(evaluate_subexp_f): Handle FORTRAN_LBOUND and FORTRAN_UBOUND.
(operator_length_f): Likewise.
(print_subexp_f): Likewise.
(dump_subexp_body_f): Likewise.
(operator_check_f): Likewise.
* std-operator.def (FORTRAN_LBOUND): Define.
(FORTRAN_UBOUND): Define.
2021-02-10 Andrew Burgess <andrew.burgess@embecosm.com>
* coff-pe-read.c (add_pe_forwarded_sym): Make use of section_index
and set_section_index member functions where appropriate.
* coffread.c (coff_symtab_read): Likewise.
(process_coff_symbol): Likewise.
* ctfread.c (set_symbol_address): Likewise.
* dwarf2/read.c (add_partial_symbol): Likewise.
(var_decode_location): Likewise.
* language.c: Likewise.
* minsyms.c (minimal_symbol_reader::record_full): Likewise.
(compact_minimal_symbols): Likewise.
(minimal_symbol_upper_bound): Likewise.
* objfiles.c (relocate_one_symbol): Likewise.
* psympriv.h (partial_symbol::obj_section): Likewise.
(partial_symbol::address): Likewise.
* psymtab.c (partial_symtab::add_psymbol): Likewise.
* stabsread.c (scan_file_globals): Likewise.
* symmisc.c (dump_msymbols): Likewise.
* symtab.c (general_symbol_info::obj_section): Likewise.
(fixup_section): Likewise.
(get_msymbol_address): Likewise.
* symtab.h (general_symbol_info::section): Rename to...
(general_symbol_info::m_section): ...this.
(general_symbol_info::set_section_index): New member function.
(general_symbol_info::section_index): Likewise.
(SYMBOL_SECTION): Delete.
(MSYMBOL_VALUE_ADDRESS): Make use of section_index and
set_section_index member functions where appropriate.
(MSYMBOL_SECTION): Delete.
(symbol::symbol): Update to initialize 'm_section'.
* xcoffread.c (read_xcoff_symtab): Make use of set_section_index.
(process_xcoff_symbol): Likewise.
2021-02-10 Andrew Burgess <andrew.burgess@embecosm.com>
* breakpoint.c (resolve_sal_pc): Replace SYMBOL_OBJ_SECTION and
MSYMBOL_OBJ_SECTION.
* findvar.c (language_defn::read_var_value): Likewise.
* infcmd.c (jump_command): Likewise.
* linespec.c (minsym_found): Likewise.
* maint.c (maintenance_translate_address): Likewise.
* minsyms.c (lookup_minimal_symbol_by_pc_section): Likewise.
(minimal_symbol_upper_bound): Likewise.
* parse.c (find_minsym_type_and_address): Likewise.
(operator_check_standard): Likewise.
* printcmd.c (info_address_command): Likewise.
* symmisc.c (dump_msymbols): Likewise.
(print_symbol): Likewise.
* symtab.c (general_symbol_info::obj_section): Define new
function.
(fixup_symbol_section): Replace SYMBOL_OBJ_SECTION.
(find_pc_sect_compunit_symtab): Likewise.
(find_function_start_sal): Likewise.
(skip_prologue_sal): Replace SYMBOL_OBJ_SECTION and
MSYMBOL_OBJ_SECTION.
* symtab.h (struct general_symbol_info) <obj_section>: Declare new
function.
(SYMBOL_OBJ_SECTION): Delete.
(MSYMBOL_OBJ_SECTION): Delete.
2021-02-09 Tom Tromey <tom@tromey.com>
* stap-probe.c (stap_parse_argument_conditionally): Fix typo.
2021-02-09 Tom de Vries <tdevries@suse.de>
PR symtab/27341
* dwarf2/read.c (read_array_type): Return NULL when not being able to
construct an array type. Add assert to ensure that element_type is
not being modified.
2021-02-09 Andrew Burgess <andrew.burgess@embecosm.com>
* gcore.c (struct gcore_collect_regset_section_cb_data): Delete.
(gcore_collect_regset_section_cb): Delete.
(gcore_collect_thread_registers): Delete.
(gcore_build_thread_register_notes): Delete.
(gcore_find_signalled_thread): Delete.
* gcore.h: Remove 'gdbsupport/gdb_signals.h' include and delete
'gdbarch' and 'thread_info' declarations.
(gcore_build_thread_register_notes): Delete declaration.
(gcore_find_signalled_thread): Likewise.
* fbsd-tdep.c: Remove 'gcore.h' include.
(struct fbsd_collect_regset_section_cb_data): New struct.
(fbsd_collect_regset_section_cb): New function.
(fbsd_collect_thread_registers): New function.
(struct fbsd_corefile_thread_data): New struct.
(fbsd_corefile_thread): New function.
(fbsd_make_corefile_notes): Call FreeBSD specific code.
* linux-tdep.c: Remove 'gcore.h' include.
(struct linux_collect_regset_section_cb_data): New struct.
(linux_collect_regset_section_cb): New function.
(linux_collect_thread_registers): New function.
(linux_corefile_thread): Call Linux specific code.
(find_signalled_thread): New function.
(linux_make_corefile_notes): Call find_signalled_thread.
2021-02-09 Tom Tromey <tromey@adacore.com>
* ada-lang.c (coerce_unspec_val_to_type): Avoid making lazy
not_lval value.
* value.c (value_contents_copy_raw): Now static.
* value.h (value_contents_copy_raw): Don't declare.
2021-02-09 Tom Tromey <tromey@adacore.com>
* gdbtypes.c (resolve_dynamic_struct): Handle structure with no
fields.
2021-02-08 Shahab Vahedi <shahab@synopsys.com>
PR tdep/27369
* arc-linux-tdep.c (handle_atomic_sequence): New.
(arc_linux_software_single_step): Call handle_atomic_sequence().
2021-02-08 Andrew Burgess <andrew.burgess@embecosm.com>
* python/py-tui.c (gdbpy_tui_window) <is_valid>: New member
function.
(REQUIRE_WINDOW): Call is_valid member function.
(REQUIRE_WINDOW_FOR_SETTER): New define.
(gdbpy_tui_is_valid): Call is_valid member function.
(gdbpy_tui_set_title): Call REQUIRE_WINDOW_FOR_SETTER instead.
* tui/tui-data.h (struct tui_win_info) <is_visible>: Check
tui_active too.
* tui/tui-layout.c (tui_apply_current_layout): Add an assert.
* tui/tui.c (tui_enable): Move setting of tui_active earlier in
the function.
2021-02-08 Andrew Burgess <andrew.burgess@embecosm.com>
* python/py-tui.c (gdbpy_tui_set_title): Check that the new value
for the title is not nullptr.
2021-02-08 Andrew Burgess <andrew.burgess@embecosm.com>
* tui-layout.c (saved_tui_windows): Delete.
(tui_apply_current_layout): Don't make use of saved_tui_windows,
call new get_windows member function instead.
(tui_get_window_by_name): Check in tui_windows.
(tui_layout_window::apply): Don't add to tui_windows.
* tui-layout.h (tui_layout_base::get_windows): New member function.
(tui_layout_window::get_windows): Likewise.
(tui_layout_split::get_windows): Likewise.
2021-02-08 Andrew Burgess <andrew.burgess@embecosm.com>
* tui/tui-layout.c (tui_apply_current_layout): Restore the delete
of the window objects.
2021-02-08 Andrew Burgess <andrew.burgess@embecosm.com>
* python/python.c (gdbpy_print_stack): Reformat an error message.
2021-02-08 Andrew Burgess <andrew.burgess@embecosm.com>
* tui/tui-interp.c (tui_command_line_handler): New function.
(tui_interp::resume): Register tui_command_line_handler as the
input_handler.
* tui/tui-io.c (tui_inject_newline_into_command_window): New
function.
(tui_getc_1): Delete handling of '\n' and '\r'.
* tui-io.h (tui_inject_newline_into_command_window): Declare.
2021-02-07 Hannes Domani <ssbssa@yahoo.de>
* tui/tui-regs.c (tui_data_window::display_registers_from):
Mark invisible register sub windows.
(tui_data_window::check_register_values): Ignore invisible
register sub windows.
2021-02-07 Hannes Domani <ssbssa@yahoo.de>
* tui/tui-regs.c (tui_data_item_window::rerender): Don't call
n_spaces with a negative value.
2021-02-07 Hannes Domani <ssbssa@yahoo.de>
* tui/tui-regs.c (tui_data_window::display_registers_from):
Add refresh_window call.
2021-02-07 Hannes Domani <ssbssa@yahoo.de>
* python/py-frame.c (frapy_richcompare): Compare frame_id_is_next.
2021-02-05 Simon Marchi <simon.marchi@polymtl.ca>
* symmisc.c (std_in, std_out, std_err): Remove.
(_initialize_symmisc): Don't set std_in, std_out and std_err.
2021-02-05 Tom de Vries <tdevries@suse.de>
PR breakpoints/27330
* breakpoint.c (create_exception_master_breakpoint): Handle case that
glibc object file has debug info.
2021-02-05 Tom de Vries <tdevries@suse.de>
PR symtab/27333
* dwarf2/read.c (process_psymtab_comp_unit): Handle DW_TAG_type_unit.
2021-02-05 Tom de Vries <tdevries@suse.de>
PR breakpoints/27313
* break-catch-syscall.c (catch_syscall_split_args): Reject negative
syscall numbers.
2021-02-05 Tom Tromey <tom@tromey.com>
* compile/compile-c-support.c (get_compile_context)
(c_get_compile_context, cplus_get_compile_context): Change return
type.
* language.c (language_defn::get_compile_instance): New method.
* language.h (language_defn::get_compile_instance): Change return
type. No longer inline.
* c-lang.c (c_language::get_compile_instance): Change return type.
(cplus_language::get_compile_instance): Change return type.
* c-lang.h (c_get_compile_context, cplus_get_compile_context):
Change return type.
* compile/compile.c (compile_to_object): Update.
2021-02-05 Tom Tromey <tom@tromey.com>
* parser-defs.h (write_exp_symbol_reference): Declare.
* parse.c (write_exp_symbol_reference): New function.
* p-exp.y (variable): Use write_exp_symbol_reference.
* m2-exp.y (variable): Use write_exp_symbol_reference.
* f-exp.y (variable): Use write_exp_symbol_reference.
* d-exp.y (PrimaryExpression): Use write_exp_symbol_reference.
* c-exp.y (variable): Use write_exp_symbol_reference.
2021-02-05 Tom de Vries <tdevries@suse.de>
PR exp/27265
* valarith.c (complex_binop): Throw an error if complex type can't
be created.
2021-02-05 Tom de Vries <tdevries@suse.de>
PR symtab/27307
* dwarf2/read.c (create_cus_from_debug_names_list): Add missing
return.
2021-02-05 Tom de Vries <tdevries@suse.de>
* dwarf2/read.c (create_cus_from_debug_names_list): Fix indentation.
2021-02-04 Mike Frysinger <vapier@gentoo.org>
* configure.tgt (riscv*-*-*): Set gdb_sim.
2021-02-04 Simon Marchi <simon.marchi@polymtl.ca>
* target.c (target_is_non_stop_p): Return bool.
* target.h (target_is_non_stop_p): Return bool.
2021-02-04 Simon Marchi <simon.marchi@efficios.com>
* record-full.c (record_full_async_inferior_event_handler):
Don't clear async event handler.
(record_full_base_target::wait): Clear async event handler at
beginning.
2021-02-04 Simon Marchi <simon.marchi@efficios.com>
* record-btrace.c (record_btrace_handle_async_inferior_event):
Don't clear async event handler.
(record_btrace_target::wait): Clear async event handler at
beginning.
2021-02-04 Simon Marchi <simon.marchi@efficios.com>
* remote.c (remote_target::wait): Clear async event handler at
beginning, mark if needed at the end.
(remote_async_inferior_event_handler): Don't set or clear async
event handler.
2021-02-04 Simon Marchi <simon.marchi@efficios.com>
* async-event.h (async_event_handler_func): Add documentation.
* async-event.c (check_async_event_handlers): Don't clear
async_event_handler ready flag.
* infrun.c (infrun_async_inferior_event_handler): Clear ready
flag.
* record-btrace.c (record_btrace_handle_async_inferior_event):
Likewise.
* record-full.c (record_full_async_inferior_event_handler):
Likewise.
* remote-notif.c (remote_async_get_pending_events_handler):
Likewise.
* remote.c (remote_async_inferior_event_handler): Likewise.
2021-02-03 Simon Marchi <simon.marchi@polymtl.ca>
* infrun.c (handle_inferior_event): Move stop_soon variable to
inner scope.
2021-02-03 Pedro Alves <pedro@palves.net>
* infcmd.c (detach_command): Hold strong reference to target, and
if all-stop on entry, restart threads on exit.
* infrun.c (switch_back_to_stepped_thread): Factor out bits to ...
(restart_stepped_thread): ... this new function. Also handle
trap_expected.
(restart_after_all_stop_detach): New function.
* infrun.h (restart_after_all_stop_detach): Declare.
2021-02-03 Pedro Alves <pedro@palves.net>
* infrun.c (struct step_over_info): Initialize fields.
(prepare_for_detach): Handle ongoing in-line step over.
2021-02-03 Pedro Alves <pedro@palves.net>
* linux-nat.c (linux_nat_target::detach): Remove breakpoints
here...
* remote.c (remote_target::remote_detach_1): ... and here ...
* target.c (target_detach): ... instead of here.
* target.h (target_ops::detach): Add comment.
2021-02-03 Pedro Alves <pedro@palves.net>
* infrun.c (struct wait_one_event): Move higher up.
(prepare_for_detach): Abort in-progress displaced steps instead of
letting them complete.
(handle_one): If the inferior is detaching, don't add the thread
back to the global step-over chain.
(restart_threads): Don't restart threads if detaching.
(handle_signal_stop): Remove inferior::detaching reference.
2021-02-03 Pedro Alves <pedro@palves.net>
* infrun.c (prepare_for_detach): Don't release scoped_restore
before returning.
2021-02-03 Pedro Alves <pedro@palves.net>
* infrun.c (handle_one): New function, factored out from ...
(stop_all_threads): ... here.
2021-02-03 Pedro Alves <pedro@palves.net>
* remote.c (remote_notif_stop_ack): Don't error out on
TARGET_WAITKIND_IGNORE; instead, just ignore the notification.
(remote_target::discard_pending_stop_replies): Don't delete
in-flight notification; instead, clear its contents.
2021-02-03 Pedro Alves <pedro@palves.net>
* remote.c (extended_remote_target::attach): Set target async in
the target-non-stop path too.
2021-02-03 Pedro Alves <pedro@palves.net>
PR gdb/27055
* infrun.c (handle_signal_stop): Move main context_switch call
earlier, before STOP_QUIETLY_NO_SIGSTOP.
2021-02-02 Lancelot SIX <lsix@lancelotsix.com>
* NEWS (Changed commands): Add entry for the behavior change of
the inferior command.
* inferior.c (inferior_command): When no argument is given to the
inferior command, display info about the currently selected
inferior.
2021-02-02 Simon Marchi <simon.marchi@efficios.com>
* dwarf2/read.c (read_loclist_index, read_rnglist_index): Return
a sect_offset.
(read_attribute_reprocess): Adjust.
2021-02-02 Simon Marchi <simon.marchi@efficios.com>
* dwarf2/die.h (struct die_info) <ranges_base>: Split in...
<gnu_ranges_base>: ... this...
<rnglists_base>: ... and this.
* dwarf2/read.c (struct dwarf2_cu) <ranges_base>: Split in...
<gnu_ranges_base>: ... this...
<rnglists_base>: ... and this.
(read_cutu_die_from_dwo): Adjust
(dwarf2_get_pc_bounds): Adjust
(dwarf2_record_block_ranges): Adjust.
(read_full_die_1): Adjust
(partial_die_info::read): Adjust.
(read_rnglist_index): Adjust.
2021-02-02 Simon Marchi <simon.marchi@efficios.com>
PR gdb/26813
* dwarf2/read.c (read_loclists_rnglists_header): Add
header_offset parameter and use it.
(read_loclist_index): Read header of the current contribution,
not the one at the beginning of the section.
(read_rnglist_index): Likewise.
2021-02-02 Simon Marchi <simon.marchi@efficios.com>
PR gdb/26813
* dwarf2/attribute.h (struct attribute) <set_unsigned>: Clear
requires_reprocessing flag.
* dwarf2/attribute.c (attribute::form_is_unsigned): Handle
DW_FORM_loclistx.
(attribute::form_requires_reprocessing): Handle DW_FORM_rnglistx
and DW_FORM_loclistx.
* dwarf2/read.c (read_attribute_reprocess): Use set_unsigned
instead of set_address for DW_FORM_loclistx and
DW_FORM_rnglistx.
2021-02-02 Simon Marchi <simon.marchi@efficios.com>
* dwarf2/read.c (read_loclist_index): Remove bound check for
start of offset.
(read_rnglist_index): Likewise.
2021-02-02 Simon Marchi <simon.marchi@efficios.com>
* dwarf2/read.c (read_loclist_index): Add bound check for the end
of the offset.
2021-02-02 Simon Marchi <simon.marchi@efficios.com>
* dwarf2/read.c (read_rnglist_index): Fix bound check.
2021-02-02 Simon Marchi <simon.marchi@efficios.com>
* dwarf2/read.c (read_loclist_index): Change complaints into
errors.
2021-02-02 Tom de Vries <tdevries@suse.de>
PR symtab/24620
* dwarf2/index-write.c (write_one_signatured_type): Skip if
psymtab == nullptr.
2021-02-01 Andrew Burgess <andrew.burgess@embecosm.com>
* Makefile.in (HFILES_NO_SRCDIR): Add corefile.h.
* gcore.c (struct gcore_collect_regset_section_cb_data): Moved
here from linux-tdep.c and given a new name. Minor cleanups.
(gcore_collect_regset_section_cb): Likewise.
(gcore_collect_thread_registers): Likewise.
(gcore_build_thread_register_notes): Likewise.
(gcore_find_signalled_thread): Likewise.
* gcore.h (gcore_build_thread_register_notes): Declare.
(gcore_find_signalled_thread): Declare.
* fbsd-tdep.c: Add 'gcore.h' include.
(struct fbsd_collect_regset_section_cb_data): Delete.
(fbsd_collect_regset_section_cb): Delete.
(fbsd_collect_thread_registers): Delete.
(struct fbsd_corefile_thread_data): Delete.
(fbsd_corefile_thread): Delete.
(fbsd_make_corefile_notes): Call
gcore_build_thread_register_notes instead of the now deleted
FreeBSD code.
* linux-tdep.c: Add 'gcore.h' include.
(struct linux_collect_regset_section_cb_data): Delete.
(linux_collect_regset_section_cb): Delete.
(linux_collect_thread_registers): Delete.
(linux_corefile_thread): Call
gcore_build_thread_register_notes.
(find_signalled_thread): Delete.
(linux_make_corefile_notes): Call gcore_find_signalled_thread.
2021-01-29 Tom de Vries <tdevries@suse.de>
PR breakpoints/26063
* infrun.c (process_event_stop_test): Reset
ecs->event_thread->current_line to 0 if is-stmt=n and frame has
changed.
2021-01-28 Andrew Burgess <andrew.burgess@embecosm.com>
* thread.c (thr_try_catch_cmd): Replace swith_to_thread with an
assert. Extend the header comment.
2021-01-28 Andrew Burgess <andrew.burgess@embecosm.com>
* Makefile.in (SUBDIR_TUI_SRCS): Add tui/tui-location.c.
(HFILES_NO_SRCDIR): Add tui/tui-location.h.
* tui/tui-data.h (TUI_STATUS_WIN): Define.
(tui_locator_win_info_ptr): Delete declaration.
* tui/tui-disasm.c: Add 'tui/tui-location.h' include.
(tui_disasm_window::set_contents): Fetch state from tui_location
global.
(tui_get_begin_asm_address): Likewise.
* tui/tui-layout.c (tui_apply_current_layout): Remove special case
for locator window.
(get_locator_window): Delete.
(initialize_known_windows): Treat locator window just like all the
rest.
* tui/tui-source.c: Add 'tui/tui-location.h' include.
(tui_source_window::set_contents): Fetch state from tui_location
global.
(tui_source_window::showing_source_p): Likewise.
* tui/tui-stack.c: Add 'tui/tui-location.h' include.
(_locator): Delete.
(tui_locator_win_info_ptr): Delete.
(tui_locator_window::make_status_line): Fetch state from
tui_location global.
(tui_locator_window::rerender): Remove check of 'handle',
reindent function body.
(tui_locator_window::set_locator_fullname): Delete.
(tui_locator_window::set_locator_info): Delete.
(tui_update_locator_fullname): Delete.
(tui_show_frame_info): Likewise.
(tui_show_locator_content): Access window through TUI_STATUS_WIN.
* tui/tui-stack.h (tui_locator_window::set_locator_info): Moved to
tui/tui-location.h and renamed to
tui_location_tracker::set_location.
(tui_locator_window::set_locator_fullname): Moved to
tui/tui-location.h and renamed to
tui_location_tracker::set_fullname.
(tui_locator_window::full_name): Delete.
(tui_locator_window::proc_name): Delete.
(tui_locator_window::line_no): Delete.
(tui_locator_window::addr): Delete.
(tui_locator_window::gdbarch): Delete.
(tui_update_locator_fullname): Delete declaration.
* tui/tui-wingeneral.c (tui_refresh_all): Removed special handling
for locator window.
* tui/tui-winsource.c: Add 'tui/tui-location.h' include.
(tui_display_main): Call function on tui_location directly.
* tui/tui.h (enum tui_win_type): Add STATUS_WIN.
* tui/tui-location.c: New file.
* tui/tui-location.h: New file.
2021-01-28 Simon Marchi <simon.marchi@polymtl.ca>
* gdbtypes.h (get_type_arch): Rename to...
(struct type) <arch>: ... this, update all users.
2021-01-28 Simon Marchi <simon.marchi@polymtl.ca>
* gdbtypes.h (struct type) <arch>: Rename to...
<arch_owner>: ... this, update all users.
<objfile>: Rename to...
<objfile_owner>: ... this, update all users.
2021-01-28 Andrew Burgess <andrew.burgess@embecosm.com>
* gdbcmd.h (execute_command_to_string): Update comment.
* top.c (execute_command_to_string): Update header comment.
2021-01-28 Tom de Vries <tdevries@suse.de>
PR breakpoints/27205
* breakpoint.c (create_longjmp_master_breakpoint_probe)
(create_longjmp_master_breakpoint_names): New function, factored out
of ...
(create_longjmp_master_breakpoint): ... here. Only try to install
longjmp_names breakpoints in libc.so/libc.so.debug if installing probe
breakpoint in libc.so failed.
2021-01-27 Lancelot SIX <lsix@lancelotsix.com>
PR gdb/27133
* cli/cli-interp.c (cli_interp_base::set_logging): Ensure the
unique_ptr is released when the wrapped pointer is kept for later
use.
2021-01-27 Matthew Malcomson <matthew.malcomson@arm.com>
* aarch64-tdep.c (aarch64_displaced_step_others): Account for
BLR and BR instructions.
* arch/aarch64-insn.h (enum aarch64_opcodes): Add BR opcode.
(enum aarch64_masks): New.
2021-01-26 Tom Tromey <tromey@adacore.com>
* windows-nat.c (DEBUG_EXEC, DEBUG_EVENTS, DEBUG_MEM)
(DEBUG_EXCEPT): Use debug_prefixed_printf_cond.
(windows_init_thread_list, windows_nat::handle_load_dll)
(windows_nat::handle_unload_dll, windows_nat_target::resume)
(windows_nat_target::resume)
(windows_nat_target::get_windows_debug_event)
(windows_nat_target::interrupt, windows_xfer_memory)
(windows_nat_target::close): Update.
* nat/windows-nat.c (DEBUG_EVENTS): Use
debug_prefixed_printf_cond.
(matching_pending_stop, fetch_pending_stop)
(continue_last_debug_event): Update.
2020-12-17 Mihails Strasuns <mihails.strasuns@intel.com>
* linux-tdep.c (linux_make_mappings_corefile_notes): Start using
elfcore_write_file_note.
2021-01-26 Shahab Vahedi <shahab@synopsys.com>
* arc-tdep.c (arc_add_reggroups): New function.
(arc_gdbarch_init): Call arc_add_reggroups.
2021-01-26 Anton Kolesov <anton.kolesov@synopsys.com>
* arc-tdep.c (arc_skip_prologue): Log "pc" address.
2021-01-25 Bernd Edlinger <bernd.edlinger@hotmail.de>
Simon Marchi <simon.marchi@polymtl.ca>
Tom de Vries <tdevries@suse.de>
* dwarf2/read.c (partial_die_info::read): Use as_unsigned () for
DW_AT_ranges.
2021-01-25 Tom Tromey <tromey@adacore.com>
* dwarf2/read.c (get_mpz): New function.
(get_dwarf2_rational_constant): Use it.
2021-01-25 Tom Tromey <tromey@adacore.com>
* ada-lang.c (resolve_subexp): Handle array context.
2021-01-23 Tom Tromey <tom@tromey.com>
PR compile/25575
* compile/compile-loc2c.c (note_register): New function.
(pushf_register_address, pushf_register): Use it.
2021-01-23 Tom Tromey <tom@tromey.com>
* symtab.h (struct symbol_computed_ops) <generate_c_location>:
Change type of "registers_used".
* dwarf2/loc.h (dwarf2_compile_property_to_c): Update.
* dwarf2/loc.c (dwarf2_compile_property_to_c)
(locexpr_generate_c_location, loclist_generate_c_location): Change
type of "registers_used".
* compile/compile.h (compile_dwarf_expr_to_c)
(compile_dwarf_bounds_to_c): Update.
* compile/compile-loc2c.c (pushf_register_address)
(pushf_register, do_compile_dwarf_expr_to_c)
(compile_dwarf_expr_to_c, compile_dwarf_bounds_to_c): Change type
of "registers_used".
* compile/compile-c.h (generate_c_for_variable_locations):
Update.
* compile/compile-c-symbols.c (generate_vla_size)
(generate_c_for_for_one_variable): Change type of
"registers_used".
(generate_c_for_variable_locations): Return std::vector.
* compile/compile-c-support.c (generate_register_struct): Change
type of "registers_used".
(compute): Update.
2021-01-23 Tom Tromey <tom@tromey.com>
* compile/compile-internal.h (class compile_instance)
<set_arguments>: Change return type.
* compile/compile.c (compile_to_object): Remove call to reset.
(compile_instance::set_arguments): Change return type.
2021-01-23 Simon Marchi <simon.marchi@polymtl.ca>
* gdbtypes.c (copy_type_recursive): Use get_type_arch.
* gdbtypes.h (struct type) <set_owner>: Add asserts.
2021-01-23 Lancelot SIX <lsix@lancelotsix.com>
* Makefile.in (SELFTESTS_SRCS): Add
unittests/gdb_tilde_expand-selftests.c.
* unittests/gdb_tilde_expand-selftests.c: New file.
2021-01-22 Andrew Burgess <andrew.burgess@embecosm.com>
PR cli/25956
* NEWS: Mention new command.
* cli/cli-style.c: Add 'cli/cli-setshow.h' include.
(version_style): Define.
(cli_style_option::cli_style_option): Add intensity parameter, and
use as appropriate.
(_initialize_cli_style): Register version style set/show commands.
* cli/cli-style.h (cli_style_option): Add intensity parameter.
(version_style): Declare.
* top.c (print_gdb_version): Use version_stype, and styled_string
to print the GDB version string.
2021-01-22 Andrew Burgess <andrew.burgess@embecosm.com>
* utils.c (emit_style_escape): Only emit an escape sequence if the
requested style is different than the current applied style.
(fputs_maybe_filtered): Adjust the juggling of the wrap_style, and
current applied_style.
(fputs_styled): Remove is_default check.
(fputs_styled_unfiltered): Likewise.
(vfprintf_styled_no_gdbfmt): Likewise.
2021-01-22 Simon Marchi <simon.marchi@polymtl.ca>
* remote.h (remote_debug_printf): New.
(remote_debug_printf_nofunc): New.
(REMOTE_SCOPED_DEBUG_ENTER_EXIT): New.
* remote.c: Use above macros throughout file.
2021-01-22 Simon Marchi <simon.marchi@polymtl.ca>
* remote.h (remote_debug): Change to bool.
* remote.c (remote_debug): Change to bool.
(_initialize_remote): Adjust.
2021-01-22 Simon Marchi <simon.marchi@polymtl.ca>
* target.h (remote_debug): Move to...
* remote.h (remote_debug): ... here.
* top.c (remote_debug): Move to...
* remote.c (remote_debug): ... here.
* remote-sim.c: Include remote.h.
2021-01-22 Simon Marchi <simon.marchi@polymtl.ca>
* cli/cli-cmds.c (show_remote_debug): Remove.
(show_remote_timeout): Remove.
(_initialize_cli_cmds): Don't register commands.
* remote.c (show_remote_debug): Move here.
(show_remote_timeout): Move here.
(_initialize_remote): Register commands.
2021-01-22 Simon Marchi <simon.marchi@polymtl.ca>
* gdbtypes.h (TYPE_OBJFILE): Remove, change all users to use the
type::objfile method instead.
2021-01-22 Simon Marchi <simon.marchi@polymtl.ca>
* gdbtypes.h (TYPE_OBJFILE_OWNED): Remove, update all users to
use the type::is_objfile_owned method.
2021-01-22 Simon Marchi <simon.marchi@efficios.com>
* gdbtypes.h (TYPE_OBJFILE_OWNED): Adjust.
(TYPE_OWNER): Remove.
(TYPE_OBJFILE): Adjust.
(struct main_type) <flag_objfile_owned>: Rename to...
<m_flag_objfile_owned>: ... this.
<owner>: Rename to...
<m_owner>: ... this.
(struct type) <is_objfile_owned, set_owner, objfile, arch>: New
methods.
(TYPE_ALLOC): Adjust.
* gdbtypes.c (alloc_type): Adjust.
(alloc_type_arch): Adjust.
(alloc_type_copy): Adjust.
(get_type_arch): Adjust.
(smash_type): Adjust.
(lookup_array_range_type): Adjust.
(recursive_dump_type): Adjust.
(copy_type_recursive): Adjust.
* compile/compile-c-types.c (convert_func): Adjust.
(convert_type_basic): Adjust.
* compile/compile-cplus-types.c (compile_cplus_convert_func):
Adjust.
* language.c
(language_arch_info::type_and_symbol::alloc_type_symbol):
Adjust.
2021-01-21 Luis Machado <luis.machado@linaro.org>
* coffread.c (enter_linenos): Passing string to complaint.
* valops.c (value_assign): Make array view.
2021-01-21 Simon Marchi <simon.marchi@polymtl.ca>
* auto-load.h (debug_auto_load): Move here.
(auto_load_debug_printf): New.
* auto-load.c: Use auto_load_debug_printf.
(debug_auto_load): Move to header.
* linux-thread-db.c (try_thread_db_load): Use
auto_load_debug_printf.
* main.c (captured_main_1): Likewise.
2021-01-21 Simon Marchi <simon.marchi@polymtl.ca>
* f-valprint.c (f77_array_offset_tbl): Remove.
2021-01-21 Simon Marchi <simon.marchi@polymtl.ca>
* gdb_bfd.c (bfd_cache_debug_printf): New, use throughout file.
2021-01-21 Simon Marchi <simon.marchi@polymtl.ca>
* ser-tcp.c (wait_for_connect): Use interruptible_select instead
of gdb_select.
2021-01-21 Hannes Domani <ssbssa@yahoo.de>
PR python/19151
* python/py-breakpoint.c (bppy_get_location): Handle
bp_hardware_breakpoint.
(bppy_init): Likewise.
(gdbpy_breakpoint_created): Likewise.
2021-01-21 Simon Marchi <simon.marchi@polymtl.ca>
* arm-tdep.c (arm_debug_printf): Add and use throughout file.
2021-01-20 Simon Marchi <simon.marchi@polymtl.ca>
* gdb_bfd.c (debug_bfd_cache): Change type to bool.
(_initialize_gdb_bfd): Adjust.
2021-01-20 Simon Marchi <simon.marchi@polymtl.ca>
PR gdb/26828
* dwarf2/read.c (maybe_queue_comp_unit): Add assertion.
2021-01-20 Simon Marchi <simon.marchi@polymtl.ca>
* dwarf2/read.c (follow_die_offset): Add logging.
(dwarf2_per_objfile::age_comp_units): Add logging.
2021-01-20 Simon Marchi <simon.marchi@polymtl.ca>
* aarch64-linux-tdep.c (aarch64_linux_record_tdep): Make static.
* aarch64-tdep.c (tdesc_aarch64_list, aarch64_prologue_unwind,
aarch64_stub_unwind, aarch64_normal_base, ): Make static.
* arm-linux-tdep.c (arm_prologue_unwind): Make static.
* arm-tdep.c (struct frame_unwind): Make static.
* auto-load.c (auto_load_safe_path_vec): Make static.
* csky-tdep.c (csky_stub_unwind): Make static.
* gdbarch.c (gdbarch_data_registry): Make static.
* gnu-v2-abi.c (gnu_v2_abi_ops): Make static.
* i386-netbsd-tdep.c (i386nbsd_mc_reg_offset): Make static.
* i386-tdep.c (i386_frame_setup_skip_insns,
i386_tramp_chain_in_reg_insns, i386_tramp_chain_on_stack_insns):
Make static.
* infrun.c (observer_mode): Make static.
* linux-nat.c (sigchld_action): Make static.
* linux-thread-db.c (thread_db_list): Make static.
* maint-test-options.c (maintenance_test_options_list):
* mep-tdep.c (mep_csr_registers): Make static.
* mi/mi-cmds.c (struct mi_cmd_stats): Remove struct type name.
(stats): Make static.
* nat/linux-osdata.c (struct osdata_type): Make static.
* ppc-netbsd-tdep.c (ppcnbsd_reg_offsets): Make static.
* progspace.c (last_program_space_num): Make static.
* python/py-param.c (struct parm_constant): Remove struct type
name.
(parm_constants): Make static.
* python/py-record-btrace.c (btpy_list_methods): Make static.
* python/py-record.c (recpy_gap_type): Make static.
* record.c (record_goto_cmdlist): Make static.
* regcache.c (regcache_descr_handle): Make static.
* registry.h (DEFINE_REGISTRY): Make definition static.
* symmisc.c (std_in, std_out, std_err): Make static.
* top.c (previous_saved_command_line): Make static.
* tracepoint.c (trace_user, trace_notes, trace_stop_notes): Make
static.
* unittests/command-def-selftests.c (nr_duplicates,
nr_invalid_prefixcmd, lists): Make static.
* unittests/observable-selftests.c (test_notification): Make
static.
* unittests/optional/assignment/1.cc (counter): Make static.
* unittests/optional/assignment/2.cc (counter): Make static.
* unittests/optional/assignment/3.cc (counter): Make static.
* unittests/optional/assignment/4.cc (counter): Make static.
* unittests/optional/assignment/5.cc (counter): Make static.
* unittests/optional/assignment/6.cc (counter): Make static.
2021-01-20 Joel Sherrill <joel@rtems.org>
PR gdb/27219
* remote.c (struct remote_thread_info) <resume_state>: Rename
to...
<get_resume_state>: ... this.
(remote_target::resume): Adjust.
(remote_target::commit_resume): Adjust.
(remote_target::select_thread_for_ambiguous_stop_reply): Adjust.
2021-01-20 Sergio Durigan Junior <sergiodj@sergiodj.net>
Tom Tromey <tom@tromey.com>
* stap-probe.c (stap_parse_single_operand): Handle '!'
operator.
(stap_parse_argument_conditionally): Likewise.
Skip spaces after processing open-parenthesis sub-expression.
(stap_parse_argument_1): Skip spaces after call to
stap_parse_argument_conditionally.
Handle case when right-side expression is a parenthesized
sub-expression.
Skip spaces after call to stap_parse_argument_1.
2021-01-19 Lancelot SIX <lsix@lancelotsix.com>
* top.h (switch_thru_all_uis): Use DISABLE_COPY_AND_ASSIGN.
2021-01-19 Luis Machado <luis.machado@linaro.org>
* trad-frame.h (trad_frame_saved_reg) <set_value_bytes>: Allocate
memory and save data.
(trad_frame_set_value, trad_frame_set_realreg, trad_frame_set_addr)
(trad_frame_set_unknown, trad_frame_set_value_bytes)
(trad_frame_value_p, trad_frame_addr_p, trad_frame_realreg_p)
(trad_frame_value_bytes_p): Remove.
(trad_frame_reset_saved_regs): Adjust documentation.
* trad-frame.c (trad_frame_alloc_saved_regs): Initialize via a
constructor and reset the state of the registers.
(trad_frame_value_p, trad_frame_addr_p, trad_frame_realreg_p)
(trad_frame_value_bytes_p, trad_frame_set_value)
(trad_frame_set_realreg, trad_frame_set_addr)
(trad_frame_set_unknown, trad_frame_set_value_bytes): Remove.
(trad_frame_set_reg_realreg): Update to call member function.
(trad_frame_set_reg_addr, trad_frame_set_reg_value_bytes): Likewise.
(trad_frame_get_prev_register): Likewise.
* aarch64-tdep.c (aarch64_analyze_prologue)
(aarch64_analyze_prologue_test, aarch64_make_prologue_cache_1)
(aarch64_prologue_prev_register): Update to use member functions.
* alpha-mdebug-tdep.c (alpha_mdebug_frame_unwind_cache): Likewise.
* alpha-tdep.c (alpha_heuristic_frame_unwind_cache): Likewise.
* arc-tdep.c (arc_print_frame_cache, arc_make_frame_cache): Likewise.
* arm-tdep.c (arm_make_prologue_cache, arm_exidx_fill_cache)
(arm_make_epilogue_frame_cache): Likewise.
* avr-tdep.c (avr_frame_unwind_cache)
(avr_frame_prev_register): Likewise.
* cris-tdep.c (cris_scan_prologue): Likewise.
* csky-tdep.c (csky_frame_unwind_cache): Likewise.
* frv-tdep.c (frv_analyze_prologue): Likewise.
* hppa-tdep.c (hppa_frame_cache, hppa_fallback_frame_cache): Likewise.
* lm32-tdep.c (lm32_frame_cache): Likewise.
* m32r-tdep.c (m32r_frame_unwind_cache): Likewise.
* m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
* mips-tdep.c (set_reg_offset, mips_insn16_frame_cache)
(mips_micro_frame_cache, mips_insn32_frame_cache): Likewise.
(reset_saved_regs): Adjust to set realreg.
* riscv-tdep.c (riscv_scan_prologue, riscv_frame_cache): Adjust to
call member functions.
* rs6000-tdep.c (rs6000_frame_cache, rs6000_epilogue_frame_cache)
* s390-tdep.c (s390_prologue_frame_unwind_cache)
(s390_backchain_frame_unwind_cache): Likewise.
* score-tdep.c (score7_analyze_prologue)
(score3_analyze_prologue, score_make_prologue_cache): Likewise.
* sparc-netbsd-tdep.c (sparc32nbsd_sigcontext_saved_regs): Likewise.
* sparc-sol2-tdep.c (sparc32_sol2_sigtramp_frame_cache): Likewise.
* sparc64-netbsd-tdep.c (sparc64nbsd_sigcontext_saved_regs): Likewise.
* sparc64-sol2-tdep.c (sparc64_sol2_sigtramp_frame_cache): Likewise.
* tilegx-tdep.c (tilegx_analyze_prologue)
(tilegx_frame_cache): Likewise.
* v850-tdep.c (v850_frame_cache): Likewise.
* vax-tdep.c (vax_frame_cache): Likewise.
2021-01-19 Luis Machado <luis.machado@linaro.org>
* frame.h (get_frame_register_bytes): Pass a gdb::array_view instead
of buffer + length.
(put_frame_register_bytes): Likewise.
Adjust documentation.
(get_frame_memory): Pass a gdb::array_view instead of buffer + length.
(safe_frame_unwind_memory): Likewise.
* frame.c (get_frame_register_bytes, put_frame_register_bytes)
(get_frame_memory, safe_frame_unwind_memory): Adjust to use
gdb::array_view.
* amd64-fbsd-tdep.c (amd64fbsd_sigtramp_p): Likewise.
* amd64-linux-tdep.c (amd64_linux_sigtramp_start): Likewise.
* amd64-obsd-tdep.c (amd64obsd_sigtramp_p): Likewise.
* arc-linux-tdep.c (arc_linux_is_sigtramp): Likewise.
* cris-tdep.c (cris_sigtramp_start, cris_rt_sigtramp_start): Likewise.
* dwarf2/loc.c (rw_pieced_value): Likewise.
* hppa-tdep.c (hppa_frame_cache): Likewise.
* i386-fbsd-tdep.c (i386fbsd_sigtramp_p): Likewise.
* i386-gnu-tdep.c (i386_gnu_sigtramp_start): Likewise.
* i386-linux-tdep.c (i386_linux_sigtramp_start)
(i386_linux_rt_sigtramp_start): Likewise.
* i386-obsd-tdep.c (i386obsd_sigtramp_p): Likewise.
* i386-tdep.c (i386_register_to_value): Likewise.
* i387-tdep.c (i387_register_to_value): Likewise.
* ia64-tdep.c (ia64_register_to_value): Likewise.
* m32r-linux-tdep.c (m32r_linux_sigtramp_start)
(m32r_linux_rt_sigtramp_start): Likewise.
* m68k-linux-tdep.c (m68k_linux_pc_in_sigtramp): Likewise.
* m68k-tdep.c (m68k_register_to_value): Likewise.
* mips-tdep.c (mips_register_to_value)
(mips_value_to_register): Likewise.
* ppc-fbsd-tdep.c (ppcfbsd_sigtramp_frame_sniffer)
(ppcfbsd_sigtramp_frame_cache): Likewise.
* ppc-obsd-tdep.c (ppcobsd_sigtramp_frame_sniffer)
(ppcobsd_sigtramp_frame_cache): Likewise.
* rs6000-tdep.c (rs6000_in_function_epilogue_frame_p)
(rs6000_register_to_value): Likewise.
* tilegx-tdep.c (tilegx_analyze_prologue): Likewise.
* tramp-frame.c (tramp_frame_start): Likewise.
* valops.c (value_assign): Likewise.
2021-01-19 Luis Machado <luis.machado@linaro.org>
* aarch64-linux-tdep.c (aarch64_linux_restore_vreg): Pass in an
array_view.
* trad-frame.c (trad_frame_set_value_bytes): Use gdb::array_view
instead of buffer and size.
(trad_frame_set_reg_value_bytes): Likewise.
* trad-frame.h (trad_frame_set_reg_value_bytes): Likewise.
(trad_frame_set_value_bytes): Likewise.
2021-01-18 Mike Frysinger <vapier@gentoo.org>
* copyright.py (NOT_FSF_LIST): Delete sim/testsuite/sim/bfin/s21.s.
2021-01-18 Andrew Burgess <andrew.burgess@embecosm.com>
* riscv-fbsd-tdep.c (riscv_fbsd_supply_gregset): Delete.
(riscv_fbsd_gregset): Use riscv_supply_regset.
(riscv_fbsd_fpregset): Likewise.
* riscv-linux-tdep.c (riscv_linux_gregset): Likewise.
(riscv_linux_fregset): Likewise.
* riscv-tdep.c (riscv_supply_regset): Define new function.
* riscv-tdep.h (riscv_supply_regset): Declare new function.
2021-01-18 Tom de Vries <tdevries@suse.de>
PR tdep/27172
* nat/amd64-linux-siginfo.c (cpt_si_lower, cpt_si_upper, SEGV_BNDERR):
New macro.
(compat_siginfo_from_siginfo): Copy cpt_si_lower and cpt_si_upper
for SEGV_BNDERR.
2021-01-18 Simon Marchi <simon.marchi@polymtl.ca>
* remote.c (class remote_target) <remote_hostio_send_command,
remote_hostio_parse_result>: Constify parameter.
(remote_hostio_parse_result): Likewise.
(remote_target::remote_hostio_send_command): Adjust.
(remote_target::remote_hostio_pread_vFile): Adjust.
(remote_target::fileio_readlink): Adjust.
(remote_target::fileio_fstat): Adjust.
2021-01-18 Simon Marchi <simon.marchi@polymtl.ca>
* remote.c (remote_target::start_remote): Move wait_status to
narrower scope.
2021-01-18 Simon Marchi <simon.marchi@polymtl.ca>
* remote.c (class remote_target):
<add_current_inferior_and_thread>: Constify parameter.
(stop_reply_extract_thread): Likewise.
(remote_target::get_current_thread): Likewise.
(remote_target::add_current_inferior_and_thread): Likewise.
2021-01-18 Simon Marchi <simon.marchi@polymtl.ca>
* remote.c (class remote_target)
<remote_unpack_thread_info_response,
parse_threadlist_response>: Constify parameter and/or return
value and or local variable.
(stub_unpack_int): Likewise.
(unpack_nibble): Likewise.
(unpack_byte): Likewise.
(unpack_int): Likewise.
(unpack_string): Likewise.
(unpack_threadid): Likewise.
(remote_target::remote_unpack_thread_info_response): Likewise.
(remote_target::parse_threadlist_response): Likewise.
2021-01-15 Andrew Burgess <andrew.burgess@embecosm.com>
* tui/tui.c (tui_is_window_visible): Compare to nullptr, not 0.
2021-01-14 Lancelot Six <lsix@lancelotsix.com>
* MAINTAINERS (Write After Approval): Add myself.
2021-01-14 Bernd Edlinger <bernd.edlinger@hotmail.de>
* trad-frame.c (trad_frame_alloc_saved_regs): Avoid compile-error
because is_trivially_default_constructible was first implemented with
gcc-5.
2021-01-14 Tom de Vries <tdevries@suse.de>
PR breakpoints/27151
* objfiles.h (in_plt_section): Handle .plt.sec.
2021-01-13 Andrew Burgess <andrew.burgess@embecosm.com>
PR gdb/26819
* remote.c
(remote_target::select_thread_for_ambiguous_stop_reply): New
member function.
(remote_target::process_stop_reply): Call
select_thread_for_ambiguous_stop_reply.
2021-01-13 Simon Marchi <simon.marchi@efficios.com>
* record-btrace.c (class record_btrace_target): Remove.
(record_btrace_target::commit_resume): Remove.
* record-full.c (class record_full_target): Remove.
(record_full_target::commit_resume): Remove.
2021-01-13 Simon Marchi <simon.marchi@efficios.com>
* remote.c (enum class resume_state): New.
(struct resumed_pending_vcont_info): New.
(struct remote_thread_info) <resume_state, set_not_resumed,
set_resumed_pending_vcont, resumed_pending_vcont_info,
set_resumed, m_resume_state, m_resumed_pending_vcont_info>:
New.
<last_resume_step, last_resume_sig, vcont_resumed>: Remove.
(remote_target::remote_add_thread): Adjust.
(remote_target::process_initial_stop_replies): Adjust.
(remote_target::resume): Adjust.
(remote_target::commit_resume): Rely on state in
remote_thread_info and not on tp->executing.
(remote_target::process_stop_reply): Adjust.
2021-01-13 Simon Marchi <simon.marchi@polymtl.ca>
* arc-tdep.h (arc_debug_printf): New.
* arc-tdep.c: Use arc_debug_printf.
* arc-linux-nat.c (arc_linux_nat_debug_printf): Add and use.
* arc-linux-tdep.c (arc_linux_debug_printf): Add and use.
* arc-newlib-tdep.c (arc_newlib_debug_printf): Add and use.
2021-01-13 Simon Marchi <simon.marchi@polymtl.ca>
* arc-tdep.h (arc_debug): Change type to bool.
* arc-tdep.c (arc_debug): Change type to bool.
(arc_analyze_prologue): Adjust.
(_initialize_arc_tdep): Use add_setshow_boolean_cmd.
* arc-linux-nat.c (ps_get_thread_area): Adjust.
2021-01-13 Simon Marchi <simon.marchi@polymtl.ca>
* auto-load.c (auto_load_objfile_script_1): Use bool.
(execute_script_contents): Use bool.
2021-01-13 Simon Marchi <simon.marchi@polymtl.ca>
* auto-load.h (auto_load_gdb_scripts_enabled): Return bool, move
comment here.
* auto-load.c (auto_load_gdb_scripts_enabled): Return bool, move
comment to header.
* extension-priv.h (struct extension_language_script_ops)
<auto_load_enabled>: Return bool.
* extension.h (ext_lang_auto_load_enabled): Return bool, move
comment here.
* extension.c (ext_lang_auto_load_enabled): Return bool, move
comment to header.
* guile/guile-header.h (gdbscm_auto_load_enabled): Return bool,
move comment here.
* guile/scm-auto-load.c (gdbscm_auto_load_enabled): Return bool,
move comment to header.
* python/python-header.h (gdbpy_auto_load_enabled): Return bool,
move comment here.
* python/py-auto-load.c (gdbpy_auto_load_enabled): Return bool,
move comment to header.
2021-01-13 Simon Marchi <simon.marchi@polymtl.ca>
* auto-load.h (file_is_auto_load_safe): Change return type to
bool, move comment here.
* auto-load.c (file_is_auto_load_safe): Change return type and
advice_printed to bool. Move comment to header.
2021-01-13 Simon Marchi <simon.marchi@polymtl.ca>
* jit.c (jit_debug_printf): New, use throughout file.
2021-01-12 Simon Marchi <simon.marchi@polymtl.ca>
* infrun.c (normal_stop): Fix indentation.
2021-01-12 Simon Marchi <simon.marchi@polymtl.ca>
* top.h (readnow_symbol_files, readnever_symbol_files): Move
declarations to ...
* symfile.h: ... here.
* symfile.c: Update doc.
2021-01-12 Simon Marchi <simon.marchi@polymtl.ca>
* target.h (baud_rate, serial_parity): Move declarations...
* serial.h: ... here.
* main.c: Include serial.h.
* serial.c (baud_rate, serial_parity): Update doc.
2021-01-12 Simon Marchi <simon.marchi@polymtl.ca>
* top.c (pre_init_ui_hook): Remove.
2021-01-12 Srinath Parvathaneni <srinath.parvathaneni@arm.com>
* aarch64-tdep.c (aarch64_vnh_type): Add "bf" field in h registers.
(aarch64_vnv_type): Add "bf" type in h field of v registers.
* features/aarch64-fpu.c (create_feature_aarch64_fpu): Regenerated.
* features/aarch64-fpu.xml: Add bfloat16 type.
2021-01-12 Andrew Burgess <andrew.burgess@embecosm.com>
* expprint.c (dump_subexp_body_standard): Handle OP_BOOL.
2021-01-12 Andrew Burgess <andrew.burgess@embecosm.com>
* f-exp.y (dot_ops): Rename to...
(fortran_operators): ...this. Add a header comment. Add symbol
based operators.
(yylex): Update to use fortran_operators not dot_ops. Remove
special handling for '**', this is now included in
fortran_operators.
2021-01-11 Simon Marchi <simon.marchi@polymtl.ca>
* arch/aarch64-insn.h (aarch64_debug_printf): New.
* arch/aarch64-insn.c: Use aarch64_debug_printf.
* aarch64-tdep.c: Use aarch64_debug_printf.
2021-01-11 Simon Marchi <simon.marchi@polymtl.ca>
* solib-aix.c (solib_aix_debug_printf): New, use throughout
file.
2021-01-11 Simon Marchi <simon.marchi@polymtl.ca>
* jit.c (jit_debug): Change type to bool.
(_initialize_jit): Adjust.
2021-01-09 Tom Tromey <tom@tromey.com>
PR compile/23672
* compile/compile.c (compile_to_object): Avoid crash when
osabi_triplet_regexp returns NULL.
2021-01-09 Tom Tromey <tom@tromey.com>
* tracepoint.h (class collection_list) <append_exp>: Take a
std::string.
* tracepoint.c (collection_list::append_exp): Take a std::string.
(encode_actions_1): Update.
2021-01-08 Tom Tromey <tromey@adacore.com>
* parse.c (parse_expression): Add void_context_p parameter. Use
parse_exp_in_context.
* printcmd.c (print_command_1): Change voidprint to bool. Pass to
parse_expression.
(print_command, call_command): Update.
* expression.h (parse_expression): Add void_context_p parameter.
2021-01-08 Andrew Burgess <andrew.burgess@embecosm.com>
* value.c (set_value_component_location): Adjust the VALUE_LVAL
for internalvar components that have a dynamic location.
2021-01-08 Tom de Vries <tdevries@suse.de>
PR gdb/26881
* breakpoint.c (create_exception_master_breakpoint_probe)
(create_exception_master_breakpoint_hook): Factor out
of ...
(create_exception_master_breakpoint): ... here. Only try to install
the master exception breakpoint in objfile.debug using the
_Unwind_DebugHook method, if the install using probes in objfile
failed.
2021-01-08 Andrew Burgess <andrew.burgess@embecosm.com>
* f-lang.c (fortran_value_subarray): Call value_from_component.
2021-01-07 Mike Frysinger <vapier@gentoo.org>
* remote-sim.c: Include memory-map.h.
(gdbsim_target): Define memory_map override.
(gdbsim_target::memory_map): Define.
2021-01-07 Tom Tromey <tromey@adacore.com>
* ada-lang.c (do_full_match): Conditionally skip "_ada_" prefix.
2021-01-07 Tom Tromey <tromey@adacore.com>
* ada-lang.c (add_component_interval): Start loop using vector's
updated size.
2021-01-06 Tom Tromey <tromey@adacore.com>
* ada-lang.c (ada_evaluate_subexp) <BINOP_ADD, BINOP_SUB>:
Do not cast result.
* valarith.c (fixed_point_binop): Handle multiplication
and division specially.
* valops.c (value_to_gdb_mpq): New function.
(value_cast_to_fixed_point): Use it.
2021-01-05 Hannes Domani <ssbssa@yahoo.de>
* tui/tui-winsource.c (tui_source_window_base::refresh_window):
Call wnoutrefresh instead of tui_win_info::refresh_window.
2021-01-05 Hannes Domani <ssbssa@yahoo.de>
* tui/tui-source.c (tui_source_window::show_line_number):
Redraw second space after line number.
2021-01-05 Hannes Domani <ssbssa@yahoo.de>
PR tui/26927
* tui/tui-winsource.c (tui_source_window_base::refresh_window):
Fix source pad size in prefresh.
(tui_source_window_base::show_source_content): Grow source pad
if necessary.
2021-01-04 Mike Frysinger <vapier@gentoo.org>
* bfin-tdep.c (bfin_push_dummy_call): Use align_up.
(bfin_frame_align): Use align_down.
2021-01-04 Tom de Vries <tdevries@suse.de>
* buildsym.c (buildsym_compunit::record_line): Filter out end-of-seq
terminators that do not terminate anything.
2021-01-04 Simon Marchi <simon.marchi@efficios.com>
* debug.c (debug_print_depth): New.
* infrun.h (INFRUN_SCOPED_DEBUG_START_END): New.
(INFRUN_SCOPED_DEBUG_ENTER_EXIT): New.
* infrun.c (start_step_over): Use
INFRUN_SCOPED_DEBUG_ENTER_EXIT.
(proceed): Use INFRUN_SCOPED_DEBUG_ENTER_EXIT and
INFRUN_SCOPED_DEBUG_START_END.
(fetch_inferior_event): Use INFRUN_SCOPED_DEBUG_ENTER_EXIT.
2021-01-04 Simon Marchi <simon.marchi@efficios.com>
* infrun.c (print_target_wait_results): Use infrun_debug_printf.
2021-01-04 Simon Marchi <simon.marchi@efficios.com>
* utils.c (vfprintf_unfiltered): Print timestamp only when
previous debug output ended with a newline.
2021-01-04 Luis Machado <luis.machado@linaro.org>
Update all users of trad_frame_saved_reg to use the new member
functions.
Remote all struct keywords from declarations of trad_frame_saved_reg
types, except on forward declarations.
* aarch64-tdep.c: Update.
* alpha-mdebug-tdep.c: Update.
* alpha-tdep.c: Update.
* arc-tdep.c: Update.
* arm-tdep.c: Update.
* avr-tdep.c: Update.
* cris-tdep.c: Update.
* csky-tdep.c: Update.
* frv-tdep.c: Update.
* hppa-linux-tdep.c: Update.
* hppa-tdep.c: Update.
* hppa-tdep.h: Update.
* lm32-tdep.c: Update.
* m32r-linux-tdep.c: Update.
* m32r-tdep.c: Update.
* m68hc11-tdep.c: Update.
* mips-tdep.c: Update.
* moxie-tdep.c: Update.
* riscv-tdep.c: Update.
* rs6000-tdep.c: Update.
* s390-linux-tdep.c: Update.
* s390-tdep.c: Update.
* score-tdep.c: Update.
* sparc-netbsd-tdep.c: Update.
* sparc-sol2-tdep.c: Update.
* sparc64-fbsd-tdep.c: Update.
* sparc64-netbsd-tdep.c: Update.
* sparc64-obsd-tdep.c: Update.
* sparc64-sol2-tdep.c: Update.
* tilegx-tdep.c: Update.
* v850-tdep.c: Update.
* vax-tdep.c: Update.
* frame-unwind.c (frame_unwind_got_bytes): Make parameter const.
* frame-unwind.h (frame_unwind_got_bytes): Likewise.
* trad-frame.c: Update.
Remove TF_REG_* enum.
(trad_frame_alloc_saved_regs): Add a static assertion to check for
a trivially-constructible struct.
(trad_frame_reset_saved_regs): Adjust to use member function.
(trad_frame_value_p): Likewise.
(trad_frame_addr_p): Likewise.
(trad_frame_realreg_p): Likewise.
(trad_frame_value_bytes_p): Likewise.
(trad_frame_set_value): Likewise.
(trad_frame_set_realreg): Likewise.
(trad_frame_set_addr): Likewise.
(trad_frame_set_unknown): Likewise.
(trad_frame_set_value_bytes): Likewise.
(trad_frame_get_prev_register): Likewise.
* trad-frame.h: Update.
(trad_frame_saved_reg_kind): New enum.
(struct trad_frame_saved_reg) <addr, realreg, data>: Remove.
<m_kind, m_reg>: New member fields.
<set_value, set_realreg, set_addr, set_unknown, set_value_bytes>
<kind, value, realreg, addr, value_bytes, is_value, is_realreg>
<is_addr, is_unknown, is_value_bytes>: New member functions.
2021-01-02 Simon Marchi <simon.marchi@polymtl.ca>
* target-float.c: Fix typos.
2021-01-02 Hannes Domani <ssbssa@yahoo.de>
* gdb-gdb.py.in: Fix main_type.flds_bnds.bounds pretty printer.
2021-01-01 Joel Brobecker <brobecker@adacore.com>
* gdbarch.sh: Update copyright year range.
2021-01-01 Joel Brobecker <brobecker@adacore.com>
Update copyright year range in copyright header of all GDB files.
2021-01-01 Joel Brobecker <brobecker@adacore.com>
* copyright.py (get_update_list): Add "gdbserver" and "gdbsupport"
to the list of directories to update.
2021-01-01 Joel Brobecker <brobecker@adacore.com>
* top.c (print_gdb_version): Update copyright year.
2021-01-01, 21 Joel Brobecker <brobecker@adacore.com>
* config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2020.
For older changes see ChangeLog-2020.
Local Variables:
mode: change-log
left-margin: 8
fill-column: 74
version-control: never
coding: utf-8
End: