1 2021-04-06 Tom de Vries <tdevries@suse.de>
4 * infcmd.c (prepare_one_step): Using inline frame info to narrow
7 2021-04-06 Tom de Vries <tdevries@suse.de>
10 * tui/tui-disasm.c (len_without_escapes): Pass ptr pointing at escape
13 2021-04-04 Simon Marchi <simon.marchi@polymtl.ca>
15 * avr-tdep.c (avr_frame_unwind_cache): Use
16 trad_frame_saved_reg::is_addr.
18 2021-04-02 Simon Marchi <simon.marchi@polymtl.ca>
20 * objfiles.c (get_objfile_bfd_data): Remove objfile parameter,
23 2021-04-02 Simon Marchi <simon.marchi@polymtl.ca>
25 * psympriv.h (struct partial_symtab) <partial_symtab>: Change
26 objfile parameter for objfile_per_bfd_storage, adjust callers.
27 (struct standard_psymtab) <standard_psymtab>: Likewise.
28 (struct legacy_psymtab) <legacy_psymtab>: Likewise.
29 * psymtab.c (partial_symtab::partial_symtab): Likewise.
30 * ctfread.c (struct ctf_psymtab): Likewise.
31 * dwarf2/read.h (struct dwarf2_psymtab): Likewise.
32 * dwarf2/read.c (struct dwarf2_include_psymtab): Likewise.
33 (dwarf2_create_include_psymtab): Likewise.
34 * objfiles.h (struct objfile_per_bfd_storage)
35 <objfile_per_bfd_storage>: Add bfd parameter, adjust callers.
36 <get_bfd>: New method.
38 * objfiles.c (get_objfile_bfd_data): Adjust.
40 2021-04-02 Simon Marchi <simon.marchi@polymtl.ca>
42 * psymtab.c (partial_symtab::partial_symtab): Change
43 last_objfile_name to be an std::string.
44 * symfile.c (allocate_symtab): Likewise.
46 2021-04-02 Simon Marchi <simon.marchi@polymtl.ca>
48 * objfiles.h (struct objfile_per_bfd_storage) <intern>: New
50 (struct objfile) <intern>: Use
51 objfile::objfile_per_bfd_storage::intern.
53 2021-04-01 Simon Marchi <simon.marchi@efficios.com>
55 * gdbtypes.h (TYPE_FLAG_ENUM): Remove, replace all uses
56 with type::is_flag_enum.
58 2021-04-01 Simon Marchi <simon.marchi@efficios.com>
60 * gdbtypes.h (struct type) <is_flag_enum,
61 set_is_flag_enum>: New methods.
62 (TYPE_FLAG_ENUM): Use type::is_flag_enum, change all
63 write call sites to use type::set_is_flag_enum.
65 2021-04-01 Simon Marchi <simon.marchi@efficios.com>
67 * gdbtypes.h (TYPE_DECLARED_CLASS): Remove, replace all uses
68 with type::is_declared_class.
70 2021-04-01 Simon Marchi <simon.marchi@efficios.com>
72 * gdbtypes.h (struct type) <is_declared_class,
73 set_is_declared_class>: New methods.
74 (TYPE_DECLARED_CLASS): Use type::is_declared_class, change all
75 write call sites to use type::set_is_declared_class.
77 2021-02-28 Boris Staletic <boris.staletic@gmail.com>
79 * gdb/python/lib/gdb/__init__.py: Use importlib on python 3.4+
80 to avoid deprecation warnings.
82 2021-04-01 Martin Liska <mliska@suse.cz>
84 * cp-name-parser.y: Use startswith instead of strncmp.
86 * macroexp.c (substitute_args): Likewise.
87 * mi/mi-main.c (command_notifies_uscc_observer): Likewise.
88 * rust-exp.y: Likewise.
90 2021-03-31 Tom Tromey <tom@tromey.com>
92 * dwarf2/read.c (dwarf2_gdb_index::map_matching_symbols): Merge
93 with dw2_map_matching_symbols.
94 (dwarf2_gdb_index::expand_symtabs_matching): Merge with
95 dw2_expand_symtabs_matching.
97 2021-03-31 Tom Tromey <tromey@adacore.com>
99 * dwarf2/stringify.h: Fix typo.
101 2021-03-30 Simon Marchi <simon.marchi@polymtl.ca>
104 * dwarf2/read.c (dwarf2_has_info): Don't share dwarf2_per_bfd
105 with objfiles using READNOW.
107 2021-03-29 Tom Tromey <tromey@adacore.com>
109 * top.c (check_frame_language_change): Update.
110 * language.c (language_info): Remove parameter.
111 * language.h (language_info): Remove parameter.
113 2021-03-29 Luis Machado <luis.machado@linaro.org>
115 * compile/compile.c (get_args): Don't add empty argv entries.
117 2021-03-29 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
120 * procfs.c (procfs_target::attach): Define inf.
122 (procfs_target::create_inferior): Likewise.
124 2021-03-28 Tom Tromey <tom@tromey.com>
126 * elfread.c (can_lazily_read_symbols): Move to dwarf2/read.c.
127 (elf_symfile_read): Simplify.
128 * dwarf2/read.c (struct lazy_dwarf_reader): Move from elfread.c.
129 (make_lazy_dwarf_reader): New function.
130 (make_dwarf_gdb_index, make_dwarf_debug_names): Now static.
131 (dwarf2_initialize_objfile): Return void. Remove index_kind
132 parameter. Push on 'qf' list.
133 * dwarf2/public.h (dwarf2_initialize_objfile): Change return
134 type. Remove 'index_kind' parameter.
135 (make_dwarf_gdb_index, make_dwarf_debug_names): Don't declare.
137 2021-03-27 Tom Tromey <tom@tromey.com>
139 * elfread.c (elf_sym_fns_lazy_psyms): Don't declare.
141 2021-03-27 Tom Tromey <tom@tromey.com>
143 * elfread.c (elf_symfile_read): Don't clear 'qf'.
145 2021-03-26 Lancelot Six <lsix@lancelotsix.com>
147 * contrib/gdb-add-index.sh: Avoid variable shadowing and get
150 2021-03-26 Tom Tromey <tom@tromey.com>
152 * symtab.c (struct output_source_filename_data): Add 'output'
153 method and operator().
154 (output_source_filename_data::output): Rename from
155 output_source_filename.
156 (output_partial_symbol_filename): Remove.
157 (info_sources_command): Update.
158 (struct add_partial_filename_data): Add operator().
159 (add_partial_filename_data::operator()): Rename from
160 maybe_add_partial_symtab_filename.
161 (make_source_files_completion_list): Update.
162 * symfile.c (quick_symbol_functions): Update.
163 * symfile-debug.c (objfile::map_symbol_filenames): Update.
164 * quick-symbol.h (symbol_filename_ftype): Change type of 'fun' and
165 'need_fullname'. Remove 'data' parameter.
166 (struct quick_symbol_functions) <map_symbol_filenames>: Likewise.
167 * psymtab.c (psymbol_functions::map_symbol_filenames): Update.
168 * psympriv.h (struct psymbol_functions) <map_symbol_filenames>:
169 Change type of 'fun' and 'need_fullname'. Remove 'data'
171 * objfiles.h (struct objfile) <map_symbol_filenames>: Change type
172 of 'fun' and 'need_fullname'. Remove 'data' parameter.
173 * mi/mi-cmd-file.c (print_partial_file_name): Remove 'ignore'
175 (mi_cmd_file_list_exec_source_files): Update.
177 (dwarf2_base_index_functions::map_symbol_filenames): Update.
179 2021-03-26 Tom Tromey <tom@tromey.com>
181 * ada-lang.c (struct match_data): Add operator().
182 (match_data::operator()): Rename from aux_add_nonlocal_symbols.
183 (callback): Remove 'callback'.
185 2021-03-26 Tom Tromey <tom@tromey.com>
187 * psymtab.c (psymbol_functions::expand_symtabs_matching): Only
188 call make_ignore_params once.
190 2021-03-26 Tom Tromey <tom@tromey.com>
192 * psymtab.c (psymbol_functions::expand_symtabs_matching): Remove
195 2021-03-26 Simon Marchi <simon.marchi@efficios.com>
196 Pedro Alves <pedro@palves.net>
198 * async-event.c: Include "infrun.h".
199 (async_event_handler_marked): New.
200 * async-event.h (async_event_handler_marked): Declare.
201 * infrun.c (maybe_set_commit_resumed_all_targets): Switch to
202 inferior before calling target method. Don't commit-resumed if
203 target_has_pending_events is true.
204 * remote.c (remote_target::has_pending_events): New.
205 * target-delegates.c: Regenerate.
206 * target.c (target_has_pending_events): New.
207 * target.h (target_ops::has_pending_events): New target method.
208 (target_has_pending_events): New.
210 2021-03-26 Simon Marchi <simon.marchi@efficios.com>
211 Pedro Alves <pedro@palves.net>
213 * infcmd.c (run_command_1, attach_command, detach_command)
214 (interrupt_target_1): Use scoped_disable_commit_resumed.
215 * infrun.c (do_target_resume): Remove
216 target_commit_resume call.
217 (commit_resume_all_targets): Remove.
218 (maybe_set_commit_resumed_all_targets): New.
219 (maybe_call_commit_resumed_all_targets): New.
220 (enable_commit_resumed): New.
221 (scoped_disable_commit_resumed::scoped_disable_commit_resumed)
222 (scoped_disable_commit_resumed::~scoped_disable_commit_resumed)
223 (scoped_disable_commit_resumed::reset)
224 (scoped_disable_commit_resumed::reset_and_commit)
225 (scoped_enable_commit_resumed::scoped_enable_commit_resumed)
226 (scoped_enable_commit_resumed::~scoped_enable_commit_resumed):
228 (proceed): Use scoped_disable_commit_resumed and
229 maybe_call_commit_resumed_all_targets.
230 (fetch_inferior_event): Use scoped_disable_commit_resumed.
231 * infrun.h (struct scoped_disable_commit_resumed): New.
232 (maybe_call_commit_resumed_all_process_targets): New.
233 (struct scoped_enable_commit_resumed): New.
234 * mi/mi-main.c (exec_continue): Use scoped_disable_commit_resumed.
235 * process-stratum-target.h (class process_stratum_target):
236 <commit_resumed_state>: New.
237 * record-full.c (record_full_wait_1): Change commit_resumed_state
238 around calling commit_resumed.
239 * remote.c (class remote_target) <commit_resume>: Rename to...
240 <commit_resumed>: ... this.
241 (struct stop_reply): Move up.
242 (remote_target::commit_resume): Rename to...
243 (remote_target::commit_resumed): ... this. Check if there is any
244 thread pending vCont resume.
245 (remote_target::remote_stop_ns): Generate stop replies for resumed
246 but pending vCont threads.
247 (remote_target::wait_ns): Add gdb_assert.
248 * target-delegates.c: Regenerate.
249 * target.c (target_wait, target_resume): Assert that the current
250 process_stratum target isn't in commit-resumed state.
251 (defer_target_commit_resume): Remove.
252 (target_commit_resume): Remove.
253 (target_commit_resumed): New.
254 (make_scoped_defer_target_commit_resume): Remove.
255 (target_stop): Assert that the current process_stratum target
256 isn't in commit-resumed state.
257 * target.h (struct target_ops) <commit_resume>: Rename to ...
258 <commit_resumed>: ... this.
259 (target_commit_resume): Remove.
260 (target_commit_resumed): New.
261 (make_scoped_defer_target_commit_resume): Remove.
262 * top.c (wait_sync_command_done): Use
263 scoped_enable_commit_resumed.
265 2021-03-26 Pedro Alves <pedro@palves.net>
267 * target.c (target_always_non_stop_p): Also check whether the
270 2021-03-26 Tom Tromey <tom@tromey.com>
272 * dwarf2/read.c (dwarf2_read_debug_names)
273 (dwarf2_build_psymtabs_hard, create_addrmap_from_aranges)
274 (dw2_debug_names_iterator::next, create_type_unit_group):
277 2021-03-25 Pedro Alves <pedro@palves.net>
279 * gdb.server/bkpt-other-inferior.exp: Only enable remote output
280 around setting the breakpoint.
282 2021-03-25 Pedro Alves <pedro@palves.net>
285 (remote_target::check_pending_events_prevent_wildcard_vcont):
286 Check whether the event's ptid is not null_ptid before looking up
287 the corresponding inferior.
289 2021-03-24 Changbin Du <changbin.du@gmail.com>
291 * riscv-tdep.c (riscv_breakpoint_kind_from_pc): Remove call to
294 2021-03-24 Simon Marchi <simon.marchi@polymtl.ca>
296 * target.h (current_top_target): Remove, make callers use the
297 current inferior instead.
298 * target.c (current_top_target): Remove.
300 2021-03-24 Simon Marchi <simon.marchi@polymtl.ca>
302 * target.h (target_shortname): Change to function declaration.
303 (target_longname): Likewise.
304 (target_attach_no_wait): Likewise.
305 (target_post_attach): Likewise.
306 (target_prepare_to_store): Likewise.
307 (target_supports_enable_disable_tracepoint): Likewise.
308 (target_supports_string_tracing): Likewise.
309 (target_supports_evaluation_of_breakpoint_conditions): Likewise.
310 (target_supports_dumpcore): Likewise.
311 (target_dumpcore): Likewise.
312 (target_can_run_breakpoint_commands): Likewise.
313 (target_files_info): Likewise.
314 (target_post_startup_inferior): Likewise.
315 (target_insert_fork_catchpoint): Likewise.
316 (target_remove_fork_catchpoint): Likewise.
317 (target_insert_vfork_catchpoint): Likewise.
318 (target_remove_vfork_catchpoint): Likewise.
319 (target_insert_exec_catchpoint): Likewise.
320 (target_remove_exec_catchpoint): Likewise.
321 (target_set_syscall_catchpoint): Likewise.
322 (target_rcmd): Likewise.
323 (target_can_lock_scheduler): Likewise.
324 (target_can_async_p): Likewise.
325 (target_is_async_p): Likewise.
326 (target_execution_direction): Likewise.
327 (target_extra_thread_info): Likewise.
328 (target_pid_to_exec_file): Likewise.
329 (target_thread_architecture): Likewise.
330 (target_find_memory_regions): Likewise.
331 (target_make_corefile_notes): Likewise.
332 (target_get_bookmark): Likewise.
333 (target_goto_bookmark): Likewise.
334 (target_stopped_by_watchpoint): Likewise.
335 (target_stopped_by_sw_breakpoint): Likewise.
336 (target_supports_stopped_by_sw_breakpoint): Likewise.
337 (target_stopped_by_hw_breakpoint): Likewise.
338 (target_supports_stopped_by_hw_breakpoint): Likewise.
339 (target_have_steppable_watchpoint): Likewise.
340 (target_can_use_hardware_watchpoint): Likewise.
341 (target_region_ok_for_hw_watchpoint): Likewise.
342 (target_can_do_single_step): Likewise.
343 (target_insert_watchpoint): Likewise.
344 (target_remove_watchpoint): Likewise.
345 (target_insert_hw_breakpoint): Likewise.
346 (target_remove_hw_breakpoint): Likewise.
347 (target_can_accel_watchpoint_condition): Likewise.
348 (target_can_execute_reverse): Likewise.
349 (target_get_ada_task_ptid): Likewise.
350 (target_filesystem_is_local): Likewise.
351 (target_trace_init): Likewise.
352 (target_download_tracepoint): Likewise.
353 (target_can_download_tracepoint): Likewise.
354 (target_download_trace_state_variable): Likewise.
355 (target_enable_tracepoint): Likewise.
356 (target_disable_tracepoint): Likewise.
357 (target_trace_start): Likewise.
358 (target_trace_set_readonly_regions): Likewise.
359 (target_get_trace_status): Likewise.
360 (target_get_tracepoint_status): Likewise.
361 (target_trace_stop): Likewise.
362 (target_trace_find): Likewise.
363 (target_get_trace_state_variable_value): Likewise.
364 (target_save_trace_data): Likewise.
365 (target_upload_tracepoints): Likewise.
366 (target_upload_trace_state_variables): Likewise.
367 (target_get_raw_trace_data): Likewise.
368 (target_get_min_fast_tracepoint_insn_len): Likewise.
369 (target_set_disconnected_tracing): Likewise.
370 (target_set_circular_trace_buffer): Likewise.
371 (target_set_trace_buffer_size): Likewise.
372 (target_set_trace_notes): Likewise.
373 (target_get_tib_address): Likewise.
374 (target_set_permissions): Likewise.
375 (target_static_tracepoint_marker_at): Likewise.
376 (target_static_tracepoint_markers_by_strid): Likewise.
377 (target_traceframe_info): Likewise.
378 (target_use_agent): Likewise.
379 (target_can_use_agent): Likewise.
380 (target_augmented_libraries_svr4_read): Likewise.
381 (target_log_command): Likewise.
382 * target.c (target_shortname): New.
383 (target_longname): New.
384 (target_attach_no_wait): New.
385 (target_post_attach): New.
386 (target_prepare_to_store): New.
387 (target_supports_enable_disable_tracepoint): New.
388 (target_supports_string_tracing): New.
389 (target_supports_evaluation_of_breakpoint_conditions): New.
390 (target_supports_dumpcore): New.
391 (target_dumpcore): New.
392 (target_can_run_breakpoint_commands): New.
393 (target_files_info): New.
394 (target_post_startup_inferior): New.
395 (target_insert_fork_catchpoint): New.
396 (target_remove_fork_catchpoint): New.
397 (target_insert_vfork_catchpoint): New.
398 (target_remove_vfork_catchpoint): New.
399 (target_insert_exec_catchpoint): New.
400 (target_remove_exec_catchpoint): New.
401 (target_set_syscall_catchpoint): New.
403 (target_can_lock_scheduler): New.
404 (target_can_async_p): New.
405 (target_is_async_p): New.
406 (target_execution_direction): New.
407 (target_extra_thread_info): New.
408 (target_pid_to_exec_file): New.
409 (target_thread_architecture): New.
410 (target_find_memory_regions): New.
411 (target_make_corefile_notes): New.
412 (target_get_bookmark): New.
413 (target_goto_bookmark): New.
414 (target_stopped_by_watchpoint): New.
415 (target_stopped_by_sw_breakpoint): New.
416 (target_supports_stopped_by_sw_breakpoint): New.
417 (target_stopped_by_hw_breakpoint): New.
418 (target_supports_stopped_by_hw_breakpoint): New.
419 (target_have_steppable_watchpoint): New.
420 (target_can_use_hardware_watchpoint): New.
421 (target_region_ok_for_hw_watchpoint): New.
422 (target_can_do_single_step): New.
423 (target_insert_watchpoint): New.
424 (target_remove_watchpoint): New.
425 (target_insert_hw_breakpoint): New.
426 (target_remove_hw_breakpoint): New.
427 (target_can_accel_watchpoint_condition): New.
428 (target_can_execute_reverse): New.
429 (target_get_ada_task_ptid): New.
430 (target_filesystem_is_local): New.
431 (target_trace_init): New.
432 (target_download_tracepoint): New.
433 (target_can_download_tracepoint): New.
434 (target_download_trace_state_variable): New.
435 (target_enable_tracepoint): New.
436 (target_disable_tracepoint): New.
437 (target_trace_start): New.
438 (target_trace_set_readonly_regions): New.
439 (target_get_trace_status): New.
440 (target_get_tracepoint_status): New.
441 (target_trace_stop): New.
442 (target_trace_find): New.
443 (target_get_trace_state_variable_value): New.
444 (target_save_trace_data): New.
445 (target_upload_tracepoints): New.
446 (target_upload_trace_state_variables): New.
447 (target_get_raw_trace_data): New.
448 (target_get_min_fast_tracepoint_insn_len): New.
449 (target_set_disconnected_tracing): New.
450 (target_set_circular_trace_buffer): New.
451 (target_set_trace_buffer_size): New.
452 (target_set_trace_notes): New.
453 (target_get_tib_address): New.
454 (target_set_permissions): New.
455 (target_static_tracepoint_marker_at): New.
456 (target_static_tracepoint_markers_by_strid): New.
457 (target_traceframe_info): New.
458 (target_use_agent): New.
459 (target_can_use_agent): New.
460 (target_augmented_libraries_svr4_read): New.
461 (target_log_command): New.
462 * bfin-tdep.c (bfin_sw_breakpoint_from_kind): Adjust.
463 * infrun.c (set_schedlock_func): Adjust.
464 * mi/mi-main.c (exec_reverse_continue): Adjust.
465 * reverse.c (exec_reverse_once): Adjust.
466 * sh-tdep.c (sh_sw_breakpoint_from_kind): Adjust.
467 * tui/tui-stack.c (tui_locator_window::make_status_line): Adjust.
468 * remote-sim.c (gdbsim_target::detach): Adjust.
469 (gdbsim_target::files_info): Adjust.
471 2021-03-24 Tom Tromey <tom@tromey.com>
473 * dwarf2/read.c (dw2_map_matching_symbols): Update.
474 (dw2_expand_symtabs_matching_symbol): Remove 'kind' parameter.
475 (check_match, dw2_expand_symtabs_matching)
476 (dwarf2_debug_names_index::map_matching_symbols)
477 (dwarf2_debug_names_index::expand_symtabs_matching): Update.
479 2021-03-24 Keith Seitz <keiths@redhat.com>
481 * compile/compile-cplus-types.c
482 (compile_cplus_convert_struct_or_union): Fix TYPE_DECLARED_CLASS
485 2021-03-24 Simon Marchi <simon.marchi@polymtl.ca>
487 * gdbarch.sh (gdbarch_data_registry): Make static.
488 * gdbarch.c: Re-generate.
490 2021-03-24 Luis Machado <luis.machado@linaro.org>
492 * NEWS: Mention memory tagging changes.
494 2021-03-24 Luis Machado <luis.machado@linaro.org>
496 * printcmd.c (decode_format): Handle the 'm' modifier.
497 (do_examine): Display allocation tags when required/supported.
498 (should_validate_memtags): New function.
499 (print_command_1): Display memory tag mismatches.
500 * valprint.c (show_memory_tag_violations): New function.
501 (value_print_option_defs): Add new option "memory-tag-violations".
502 (user_print_options) <memory_tag_violations>: Initialize to 1.
503 * valprint.h (struct format_data) <print_tags>: New field.
504 (value_print_options) <memory_tag_violations>: New field.
506 2021-03-24 Luis Machado <luis.machado@linaro.org>
508 * printcmd.c: Include gdbsupport/rsp-low.h.
509 (memory_tag_list): New static global.
510 (process_print_command_args): Factored out of
512 (print_command_1): Use process_print_command_args.
513 (show_addr_not_tagged, show_memory_tagging_unsupported)
514 (memory_tag_command, memory_tag_print_tag_command)
515 (memory_tag_print_logical_tag_command)
516 (memory_tag_print_allocation_tag_command, parse_with_logical_tag_input)
517 (memory_tag_with_logical_tag_command, parse_set_allocation_tag_input)
518 (memory_tag_set_allocation_tag_command, memory_tag_check_command): New
520 (_initialize_printcmd): Add "memory-tag" prefix and subcommands.
522 2021-03-24 Luis Machado <luis.machado@linaro.org>
524 * aarch64-linux-tdep.c
525 (aarch64_linux_iterate_over_regset_sections): Handle MTE register set.
526 * aarch64-linux-tdep.h (AARCH64_LINUX_SIZEOF_MTE_REGSET): Define.
528 2021-03-24 Luis Machado <luis.machado@linaro.org>
530 * aarch64-linux-tdep.c
531 (aarch64_linux_report_signal_info): New function.
532 (aarch64_linux_init_abi): Register
533 aarch64_linux_report_signal_info as the report_signal_info hook.
534 * arch/aarch64-linux.h (SEGV_MTEAERR): Define.
535 (SEGV_MTESERR): Define.
537 2021-03-24 Luis Machado <luis.machado@linaro.org>
539 * aarch64-linux-tdep.c: Include gdbsupport/selftest.h.
540 (aarch64_linux_ltag_tests): New function.
541 (_initialize_aarch64_linux_tdep): Register aarch64_linux_ltag_tests.
543 2021-03-24 Luis Machado <luis.machado@linaro.org>
545 * aarch64-linux-tdep.c: Include target.h, arch-utils.h, value.h.
546 (aarch64_mte_get_atag, aarch64_linux_tagged_address_p)
547 (aarch64_linux_memtag_mismatch_p, aarch64_linux_set_memtags)
548 (aarch64_linux_get_memtag, aarch64_linux_memtag_to_string): New
550 (aarch64_linux_init_abi): Initialize MTE-related gdbarch hooks.
551 * arch/aarch64-mte-linux.c (aarch64_mte_make_ltag_bits)
552 (aarch64_mte_make_ltag, aarch64_linux_set_ltag)
553 (aarch64_linux_get_ltag): New functions.
554 * arch/aarch64-mte-linux.h (AARCH64_MTE_LOGICAL_TAG_START_BIT)
555 (AARCH64_MTE_LOGICAL_MAX_VALUE): Define.
556 (aarch64_mte_make_ltag_bits, aarch64_mte_make_ltag)
557 (aarch64_mte_set_ltag, aarch64_mte_get_ltag): New prototypes.
559 2021-03-24 Luis Machado <luis.machado@linaro.org>
561 * linux-tdep.c (struct smaps_vmflags) <memory_tagging>: New flag
563 (struct smaps_data): New struct.
564 (decode_vmflags): Handle the 'mt' flag.
565 (parse_smaps_data): New function, refactored from
566 linux_find_memory_regions_full.
567 (linux_address_in_memtag_page): New function.
568 (linux_find_memory_regions_full): Refactor into parse_smaps_data.
569 * linux-tdep.h (linux_address_in_memtag_page): New prototype.
571 2021-03-24 Luis Machado <luis.machado@linaro.org>
573 * linux-tdep.c (linux_find_memory_regions_full): Use std::string
574 instead of char arrays.
576 2021-03-24 Luis Machado <luis.machado@linaro.org>
578 * Makefile.in (ALL_64_TARGET_OBS): Add arch/aarch64-mte-linux.o.
579 (HFILES_NO_SRCDIR): Add arch/aarch64-mte-linux.h and
580 nat/aarch64-mte-linux-ptrace.h.
581 * aarch64-linux-nat.c: Include nat/aarch64-mte-linux-ptrace.h.
582 (aarch64_linux_nat_target) <supports_memory_tagging>: New method
584 <fetch_memtags>: New method override.
585 <store_memtags>: New method override.
586 (aarch64_linux_nat_target::supports_memory_tagging): New method.
587 (aarch64_linux_nat_target::fetch_memtags): New method.
588 (aarch64_linux_nat_target::store_memtags): New method.
589 * arch/aarch64-mte-linux.c: New file.
590 * arch/aarch64-mte-linux.h: Include gdbsupport/common-defs.h.
591 (AARCH64_MTE_GRANULE_SIZE): Define.
592 (aarch64_memtag_type): New enum.
593 (aarch64_mte_get_tag_granules): New prototype.
594 * configure.nat (NATDEPFILES): Add nat/aarch64-mte-linux-ptrace.o.
595 * configure.tgt (aarch64*-*-linux*): Add arch/aarch64-mte-linux.o.
596 * nat/aarch64-mte-linux-ptrace.c: New file.
597 * nat/aarch64-mte-linux-ptrace.h: New file.
599 2021-03-24 Luis Machado <luis.machado@linaro.org>
601 * Makefile.in (HFILES_NO_SRCDIR): Add nat/aarch64-mte-linux-ptrace.h.
602 * nat/aarch64-mte-linux-ptrace.h: New file.
604 2021-03-24 Luis Machado <luis.machado@linaro.org>
606 * aarch64-linux-nat.c (fetch_mteregs_from_thread): New function.
607 (store_mteregs_to_thread): New function.
608 (aarch64_linux_nat_target::fetch_registers): Update to call
609 fetch_mteregs_from_thread.
610 (aarch64_linux_nat_target::store_registers): Update to call
611 store_mteregs_to_thread.
612 * aarch64-tdep.c (aarch64_mte_register_names): New struct.
613 (aarch64_cannot_store_register): Handle MTE registers.
614 (aarch64_gdbarch_init): Initialize and setup MTE registers.
615 * aarch64-tdep.h (gdbarch_tdep) <mte_reg_base>: New field.
616 <has_mte>: New method.
617 * arch/aarch64-linux.h (AARCH64_LINUX_SIZEOF_MTE): Define.
619 2021-03-24 Luis Machado <luis.machado@linaro.org>
621 * aarch64-linux-nat.c
622 (aarch64_linux_nat_target::read_description): Take MTE flag into
624 Slight refactor to hwcap flag checking.
625 * aarch64-linux-tdep.c
626 (aarch64_linux_core_read_description): Likewise.
627 * aarch64-tdep.c (tdesc_aarch64_list): Add one more dimension for
629 (aarch64_read_description): Add mte_p parameter and update to use it.
630 Update the documentation.
631 (aarch64_gdbarch_init): Update call to aarch64_read_description.
632 * aarch64-tdep.h (aarch64_read_description): Add mte_p parameter.
633 * arch/aarch64.c: Include ../features/aarch64-mte.c.
634 (aarch64_create_target_description): Add mte_p parameter and update
636 * arch/aarch64.h (aarch64_create_target_description): Add mte_p
638 * features/Makefile (FEATURE_XMLFILES): Add aarch64-mte.xml.
639 * features/aarch64-mte.c: New file, generated.
640 * features/aarch64-mte.xml: New file.
642 2021-03-24 Luis Machado <luis.machado@linaro.org>
644 * Makefile.in (HFILES_NO_SRCDIR): Add arch/aarch64-mte-linux.h.
645 * aarch64-linux-nat.c: Include arch/aarch64-mte-linux.h.
646 * aarch64-linux-tdep.c: Likewise
647 * arch/aarch64-mte-linux.h: New file.
649 2021-03-24 Luis Machado <luis.machado@linaro.org>
651 * remote: Include gdbsupport/selftest.h.
652 (test_memory_tagging_functions): New function.
653 (_initialize_remote): Register test_memory_tagging_functions.
655 2021-03-24 Luis Machado <luis.machado@linaro.org>
657 * remote.c (PACKET_memory_tagging_feature): New enum.
658 (remote_memory_tagging_p): New function.
659 (remote_protocol_features): New "memory-tagging" entry.
660 (remote_target::remote_query_supported): Handle memory tagging
662 (remote_target::supports_memory_tagging): Implement.
663 (create_fetch_memtags_request, parse_fetch_memtags_reply)
664 (create_store_memtags_request): New functions.
665 (remote_target::fetch_memtags): Implement.
666 (remote_target::store_memtags): Implement.
667 (_initialize_remote): Add new "memory-tagging-feature"
670 2021-03-24 Luis Machado <luis.machado@linaro.org>
672 * arch-utils.c (default_memtag_to_string, default_tagged_address_p)
673 (default_memtag_matches_p, default_set_memtags)
674 (default_get_memtag): New functions.
675 * arch-utils.h (default_memtag_to_string, default_tagged_address_p)
676 (default_memtag_matches_p, default_set_memtags)
677 (default_get_memtag): New prototypes.
678 * gdbarch.c: Regenerate.
679 * gdbarch.h: Regenerate.
680 * gdbarch.sh (memtag_to_string, tagged_address_p, memtag_matches_p)
681 (set_memtags, get_memtag, memtag_granule_size): New gdbarch hooks.
682 (enum memtag_type): New enum.
684 2021-03-24 Luis Machado <luis.machado@linaro.org>
686 * remote.c (remote_target) <supports_memory_tagging>: New method
688 <fetch_memtags>: New method override.
689 <store_memtags>: New method override.
690 (remote_target::supports_memory_tagging): New method.
691 (remote_target::fetch_memtags): New method.
692 (remote_target::store_memtags): New method.
693 * target-delegates.c: Regenerate.
694 * target.h (struct target_ops) <supports_memory_tagging>: New virtual
696 <fetch_memtags>: New virtual method.
697 <store_memtags>: New virtual method.
698 (target_supports_memory_tagging): Define.
699 (target_fetch_memtags): Define.
700 (target_store_memtags): Define.
701 * target-debug.h (target_debug_print_size_t)
702 (target_debug_print_const_gdb_byte_vector_r)
703 (target_debug_print_gdb_byte_vector_r): New functions.
705 2021-03-23 Simon Marchi <simon.marchi@polymtl.ca>
707 * target.h (target_longname): Remove.
709 2021-03-23 Simon Marchi <simon.marchi@polymtl.ca>
711 * target.h (target_is_pushed): Remove, update callers to use
712 inferior::target_is_pushed instead.
713 * target.c (target_is_pushed): Remove.
715 2021-03-23 Simon Marchi <simon.marchi@polymtl.ca>
717 * target.h (push_target): Remove, update callers to use
718 inferior::push_target.
719 * target.c (push_target): Remove.
720 * inferior.h (class inferior) <push_target>: New overload.
722 2021-03-23 Simon Marchi <simon.marchi@polymtl.ca>
724 * target.h (unpush_target): Remove, update all callers
725 to use `inferior::unpush_target` instead.
726 (struct target_unpusher) <operator()>: Just declare.
727 * target.c (unpush_target): Remove.
728 (target_unpusher::operator()): New.
730 2021-03-22 Andrew Burgess <andrew.burgess@embecosm.com>
732 * dwarf2/read.c (process_psymtab_comp_unit): Replace abort with an
734 (process_full_comp_unit): Validate the top-level tag before
735 processing the first DIE.
736 (read_func_scope): Ensure we have a valid builder.
738 2021-03-22 Andrew Burgess <andrew.burgess@embecosm.com>
740 * objc-lang.c (objc_demangle): Renamed to
741 objc_language::demangle_symbol, and moved later in the file.
742 (objc_language::sniff_from_mangled_name): Call demangle_symbol
744 (objc_language::demangle_symbol): Defined outside of class
745 declaration. The definition is the old objc_demangle with NULL
746 changed to nullptr, and if conditions relating to nullptr pointers
747 or null character checks made explicit.
748 * objc-lang.h (objc_demangle): Delete declaration.
750 2021-03-22 Martin Liska <mliska@suse.cz>
752 * arm-tdep.c (show_disassembly_style_sfunc): Replace usage of CONST_STRNEQ with startswith.
753 (_initialize_arm_tdep): Likewise.
755 2021-03-20 Tom Tromey <tom@tromey.com>
757 * xcoffread.c (xcoff_initial_scan): Create partial symtabs.
758 * symfile.c (syms_from_objfile_1, reread_symbols): Update.
759 * psymtab.h (make_psymbol_functions): Don't declare.
760 * psymtab.c (make_psymbol_functions): Remove.
761 (maintenance_print_psymbols): Update.
762 * psympriv.h (struct psymbol_functions): Add no-argument
764 * objfiles.h (struct objfile) <reset_psymtabs>: Remove.
765 <partial_symtabs>: Remove.
766 * mdebugread.c (mdebug_build_psymtabs): Create partial symtabs.
767 * elfread.c (read_partial_symbols): Update.
768 (elf_symfile_read): Remove check for existing partial symbols.
770 * dwarf2/read.c (dwarf2_has_info): Remove check for existing
772 (dwarf2_build_psymtabs): Add psymbol_functions parameter. Create
774 * dwarf2/public.h (dwarf2_build_psymtabs): Add psymbol_functions
776 * dbxread.c (dbx_symfile_read): Create partial symtabs.
777 * ctfread.c (elfctf_build_psymtabs): Create partial symtabs.
779 2021-03-20 Tom Tromey <tom@tromey.com>
781 * dwarf2/read.c (dwarf2_build_psymtabs): Update.
782 * symfile.c (syms_from_objfile_1, reread_symbols): Update.
783 * symfile-debug.c (objfile::has_partial_symbols)
784 (objfile::find_last_source_symtab)
785 (objfile::forget_cached_source_info)
786 (objfile::map_symtabs_matching_filename, objfile::lookup_symbol)
787 (objfile::print_stats, objfile::dump)
788 (objfile::expand_symtabs_for_function)
789 (objfile::expand_all_symtabs)
790 (objfile::expand_symtabs_with_fullname)
791 (objfile::map_matching_symbols)
792 (objfile::expand_symtabs_matching)
793 (objfile::find_pc_sect_compunit_symtab)
794 (objfile::map_symbol_filenames)
795 (objfile::find_compunit_symtab_by_address)
796 (objfile::lookup_global_symbol_language)
797 (objfile::require_partial_symbols): Update.
798 * psymtab.c (maintenance_print_psymbols)
799 (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
800 * objfiles.h (struct objfile) <qf>: Now a forward_list.
801 * objfiles.c (objfile_relocate1): Update.
802 * elfread.c (elf_symfile_read): Update.
804 2021-03-20 Tom Tromey <tom@tromey.com>
806 * objfiles.h (struct objfile) <psymtabs>: Remove method.
808 2021-03-20 Tom Tromey <tom@tromey.com>
810 * psymtab.c (psymbol_functions::count_psyms): Rename.
811 (psymbol_functions::print_stats): Update.
812 * psympriv.h (struct psymbol_functions) <count_psyms>: Declare
815 2021-03-20 Tom Tromey <tom@tromey.com>
817 * psymtab.c (psymbol_functions::require_partial_symbols): Rename.
818 (psymbol_functions::find_pc_sect_psymtab): Rename.
819 (psymbol_functions::find_pc_sect_compunit_symtab)
820 (maintenance_print_psymbols, maintenance_check_psymtabs): Update.
821 * psympriv.h (struct psymbol_functions) <require_partial_symbols>:
823 <get_partial_symtabs, find_pc_sect_psymtab>: Likewise.
825 2021-03-20 Tom Tromey <tom@tromey.com>
827 * xcoffread.c (xcoff_start_psymtab): Add partial_symtabs parameter.
828 (xcoff_end_psymtab, scan_xcoff_symtab): Update.
829 * psymtab.c (partial_symtab::partial_symtab): Add partial_symtabs
831 (add_psymbol_to_bcache): Remove.
832 (partial_symtab::add_psymbol): Add partial_symtabs parameter.
833 (partial_symtab::add_psymbol, partial_symtab::partial_symtab):
835 * psympriv.h (partial_symtab): Add partial_symtabs parameter.
836 <add_psymbol>: Likewise.
837 (standard_psymtab, legacy_psymtab): Likewise.
838 * mdebugread.c (parse_partial_symbols): Update.
839 (handle_psymbol_enumerators): Add partial_symtabs parameter.
840 (handle_psymbol_enumerators): Update.
841 (new_psymtab): Add partial_symtabs parameter.
842 * dwarf2/read.h (dwarf2_psymtab): Add partial_symtabs parameter.
843 * dwarf2/read.c (dwarf2_include_psymtab): Add partial_symtabs
845 (dwarf2_create_include_psymtab): Add partial_symtabs parameter.
846 (create_partial_symtab, add_partial_symbol, dwarf_decode_lines):
848 * dbxread.c (read_dbx_symtab): Update.
849 (start_psymtab): Add partial_symtabs parameter.
850 (dbx_end_psymtab): Update.
851 * ctfread.c (struct ctf_context) <partial_symtabs>: New member.
852 (ctf_psymtab): Add partial_symtabs parameter.
853 (create_partial_symtab, ctf_psymtab_type_cb, ctf_psymtab_var_cb):
855 (scan_partial_symbols): Add partial_symtabs parameter.
856 (scan_partial_symbols, elfctf_build_psymtabs)
857 (ctf_psymtab_add_enums): Update.
859 2021-03-20 Tom Tromey <tom@tromey.com>
861 * symfile.c (read_symbols): Use objfile method.
862 * symfile-debug.c (objfile::require_partial_symbols): New method.
863 * psymtab.h (require_partial_symbols): Don't declare.
864 * psymtab.c (require_partial_symbols): Use objfile method. Now
866 (psymbol_functions::map_symtabs_matching_filename, OBJFILE)
867 (psymbol_functions::lookup_symbol)
868 (psymbol_functions::lookup_global_symbol_language)
869 (psymbol_functions::find_last_source_symtab)
870 (psymbol_functions::forget_cached_source_info)
871 (psymbol_functions::print_stats)
872 (psymbol_functions::expand_symtabs_for_function)
873 (psymbol_functions::expand_all_symtabs)
874 (psymbol_functions::expand_symtabs_with_fullname)
875 (psymbol_functions::map_symbol_filenames)
876 (psymbol_functions::map_matching_symbols)
877 (psymbol_functions::expand_symtabs_matching)
878 (psymbol_functions::find_compunit_symtab_by_address)
879 (maintenance_print_psymbols, maintenance_info_psymtabs)
880 (maintenance_check_psymtabs): Update.
881 * objfiles.h (struct objfile) <require_partial_symbols>: Declare
884 2021-03-20 Tom Tromey <tom@tromey.com>
886 * xcoffread.c (xcoff_sym_fns): Update.
887 * symfile.h (struct sym_fns) <sym_read_psymbols>: Remove.
888 * symfile-debug.c (objfile::has_partial_symbols): Use
889 can_lazily_read_symbols.
890 (debug_sym_read_psymbols): Remove.
891 (debug_sym_fns, install_symfile_debug_logging): Update.
892 * quick-symbol.h (struct quick_symbol_functions)
893 <can_lazily_read_symbols, read_partial_symbols>: New methods.
894 * psymtab.c (require_partial_symbols): Use new 'qf' methods.
895 * mipsread.c (ecoff_sym_fns): Update.
896 * machoread.c (macho_sym_fns): Update.
897 * elfread.c (struct lazy_dwarf_reader): New.
898 (elf_symfile_read): Update.
899 (read_psyms): Now a method of lazy_dwarf_reader.
900 (elf_sym_fns): Update.
901 (elf_sym_fns_lazy_psyms): Remove.
902 * dbxread.c (aout_sym_fns): Update.
903 * coffread.c (coff_sym_fns): Update.
905 2021-03-20 Tom Tromey <tom@tromey.com>
907 * symfile.c (syms_from_objfile_1): Call reset_psymtabs.
908 (reread_symbols): Move reset_psymtabs call later.
909 * objfiles.c (objfile::objfile): Don't initialize
912 2021-03-20 Tom Tromey <tom@tromey.com>
914 * dwarf2/read.c (dwarf2_build_psymtabs): Call
916 * symfile.c (syms_from_objfile_1, reread_symbols): Update.
917 * psymtab.h (make_psymbol_functions): Add partial_symtabs
919 * psymtab.c (find_pc_sect_psymtab): Add partial_symtabs
921 (psymbol_functions::find_pc_sect_compunit_symtab)
922 (psymbol_functions::print_stats, psymbol_functions::dump)
923 (psymbol_functions::has_symbols): Update.
924 (make_psymbol_functions, dump_psymtab_addrmap): Add
925 partial_symtabs parameter.
926 (maintenance_print_psymbols): Update.
927 (psymbol_functions::expand_symtabs_matching): Update.
928 * psympriv.h (struct psymbol_functions): Add constructor.
929 <m_partial_symtabs>: New member.
930 <set_partial_symtabs>: New method.
932 2021-03-20 Tom Tromey <tom@tromey.com>
934 * dwarf2/read.c (dwarf2_create_include_psymtab): Add per_bfd
936 (process_psymtab_comp_unit_reader)
937 (build_type_psymtab_dependencies, dwarf2_build_psymtabs_hard)
938 (add_partial_subprogram, dwarf2_ranges_read, dwarf_decode_lines):
939 Reference psymtabs via per_bfd.
941 2021-03-20 Tom Tromey <tom@tromey.com>
943 * dwarf2/index-write.c (struct addrmap_index_data) <objfile>:
945 (add_address_entry): Remove objfile parameter.
946 (add_address_entry_worker): Update.
947 (write_address_map): Replace objfile parameter with per_bfd.
948 (write_gdbindex, write_psymtabs_to_index): Update.
950 2021-03-20 Tom Tromey <tom@tromey.com>
952 * dwarf2/read.c (dwarf2_base_index_functions::print_stats): Add
953 print_bcache parameter.
954 * symfile-debug.c (objfile::print_stats): Add print_bcache
956 * quick-symbol.h (struct quick_symbol_functions)
957 <print_stats>: Add print_bcache parameter.
958 * symmisc.c (print_symbol_bcache_statistics, count_psyms): Move
960 (print_objfile_statistics): Move psymtab code to psymtab.c.
961 * psymtab.c (count_psyms): Move from symmisc.c.
962 (psymbol_functions::print_stats): Print partial symbol and bcache
963 statistics. Add print_bcache parameter.
964 * objfiles.h (print_symbol_bcache_statistics): Don't declare.
965 (struct objfile) <print_stats>: Add print_bcache parameter.
966 * maint.c (maintenance_print_statistics): Update.
968 2021-03-20 Tom Tromey <tom@tromey.com>
970 * dwarf2/read.h (struct dwarf2_per_bfd) <psymtabs_addrmap>: New
972 * dwarf2/read.c (create_addrmap_from_index)
973 (create_addrmap_from_aranges): Set per_bfd addrmap.
974 (dwarf2_read_gdb_index): Don't set partial_symtabs.
975 (dwarf2_base_index_functions::find_pc_sect_compunit_symtab): Use
977 (dwarf2_read_debug_names): Don't set partial_symtabs.
978 (dwarf2_initialize_objfile): Likewise.
980 2021-03-20 Tom Tromey <tom@tromey.com>
982 * dwarf2/read.c (dwarf2_build_psymtabs): Set partial_symtabs
985 2021-03-20 Tom Tromey <tom@tromey.com>
987 * psympriv.h (psymtab_discarder): Take psymtab_storage parameter.
988 (~psymtab_discarder, keep): Update.
990 <m_partial_symtabs>: New member.
991 * dwarf2/read.c (dwarf2_build_psymtabs): Update.
993 2021-03-20 Tom Tromey <tom@tromey.com>
995 * xcoffread.c (xcoff_end_psymtab): Add partial_symtabs parameter.
996 (xcoff_end_psymtab): Update.
997 (scan_xcoff_symtab): Add partial_symtabs parameter.
998 (xcoff_initial_scan): Update.
999 * stabsread.h (dbx_end_psymtab): Add partial_symtabs parameter.
1000 * mdebugread.c (mdebug_build_psymtabs): Update.
1001 (parse_partial_symbols): Add partial_symtabs parameter.
1002 * dbxread.c (dbx_symfile_read): Update.
1003 (read_dbx_symtab): Add partial_symtabs parameter.
1004 (read_dbx_symtab): Update.
1005 (dbx_end_psymtab): Add partial_symtabs parameter.
1007 2021-03-20 Tom Tromey <tom@tromey.com>
1009 * quick-symbol.h (struct quick_symbol_functions)
1010 <relocated>: New method.
1011 * psymtab.h (struct psymbol_functions) <relocated>: New
1013 <fill_psymbol_map>: Declare method.
1014 <m_psymbol_map>: New member.
1015 * psymtab.c (psymbol_functions::fill_psymbol_map): Rename.
1016 (psymbol_functions::find_compunit_symtab_by_address): Update.
1017 * objfiles.h (reset_psymtabs): Don't clear psymbol_map.
1018 (struct objfile) <psymbol_map>: Remove.
1019 * objfiles.c (objfile_relocate1): Update.
1021 2021-03-20 Tom Tromey <tom@tromey.com>
1023 * psympriv.h (struct psymbol_functions): New.
1024 * symfile.c (syms_from_objfile_1, reread_symbols): Update.
1025 * symfile-debug.c (objfile::find_compunit_symtab_by_address)
1026 (objfile::lookup_global_symbol_language): Update.
1027 * quick-symbol.h (struct quick_symbol_functions): Convert function
1028 pointers to methods. Add virtual destructor.
1029 (quick_symbol_functions_up): New typedef.
1030 * psymtab.h (psym_functions, dwarf2_gdb_index_functions)
1031 (dwarf2_debug_names_functions): Don't declare.
1032 (make_psymbol_functions): Declare.
1033 * psymtab.c (psymbol_functions::map_symtabs_matching_filename)
1034 (psymbol_functions::find_pc_sect_compunit_symtab)
1035 (psymbol_functions::lookup_symbol)
1036 (psymbol_functions::lookup_global_symbol_language)
1037 (psymbol_functions::find_last_source_symtab)
1038 (psymbol_functions::forget_cached_source_info)
1039 (psymbol_functions::print_stats, psymbol_functions::dump)
1040 (psymbol_functions::expand_symtabs_for_function)
1041 (psymbol_functions::expand_all_symtabs)
1042 (psymbol_functions::expand_symtabs_with_fullname)
1043 (psymbol_functions::map_symbol_filenames)
1044 (psymbol_functions::map_matching_symbols)
1045 (psymbol_functions::expand_symtabs_matching)
1046 (psymbol_functions::has_symbols)
1047 (psymbol_functions::find_compunit_symtab_by_address): Rename.
1048 (psym_functions): Remove.
1049 (make_psymbol_functions): New function.
1050 * objfiles.h (struct objfile) <qf>: Change type.
1051 * elfread.c (elf_symfile_read): Update.
1052 * dwarf2/read.c (struct dwarf2_base_index_functions)
1053 (struct dwarf2_gdb_index, struct dwarf2_debug_names_index): New.
1054 (make_dwarf_gdb_index, make_dwarf_debug_names): New functions.
1055 (dwarf2_base_index_functions::find_last_source_symtab)
1056 (dwarf2_base_index_functions::forget_cached_source_info)
1057 (dwarf2_base_index_functions::map_symtabs_matching_filename)
1058 (dwarf2_gdb_index::lookup_symbol)
1059 (dwarf2_base_index_functions::print_stats)
1060 (dwarf2_gdb_index::dump)
1061 (dwarf2_gdb_index::expand_symtabs_for_function)
1062 (dwarf2_base_index_functions::expand_all_symtabs)
1063 (dwarf2_base_index_functions::expand_symtabs_with_fullname):
1065 (dwarf2_gdb_index::map_matching_symbols): New method.
1066 (dwarf2_gdb_index::expand_symtabs_matching): New method.
1067 (dwarf2_base_index_functions::find_pc_sect_compunit_symtab)
1068 (dwarf2_base_index_functions::map_symbol_filenames)
1069 (dwarf2_base_index_functions::has_symbols): Rename.
1070 (dwarf2_gdb_index_functions): Remove.
1071 (dwarf2_debug_names_index::lookup_symbol)
1072 (dwarf2_debug_names_index::dump)
1073 (dwarf2_debug_names_index::expand_symtabs_for_function)
1074 (dwarf2_debug_names_index::map_matching_symbols)
1075 (dwarf2_debug_names_index::expand_symtabs_matching): Rename.
1076 (dwarf2_debug_names_functions): Remove.
1077 * dwarf2/public.h (make_dwarf_gdb_index, make_dwarf_debug_names):
1080 2021-03-20 Tom Tromey <tom@tromey.com>
1082 * psymtab.c (require_partial_symbols): Check that 'sf' is not
1084 * xcoffread.c (xcoff_sym_fns): Update.
1085 * symfile.h (struct sym_fns) <qf>: Remove.
1086 * symfile.c (syms_from_objfile_1, reread_symbols): Update.
1087 * symfile-debug.c (objfile::has_partial_symbols)
1088 (objfile::find_last_source_symtab)
1089 (objfile::forget_cached_source_info)
1090 (objfile::map_symtabs_matching_filename, objfile::lookup_symbol)
1091 (objfile::print_stats, objfile::dump)
1092 (objfile::expand_symtabs_for_function)
1093 (objfile::expand_all_symtabs)
1094 (objfile::expand_symtabs_with_fullname)
1095 (objfile::map_matching_symbols)
1096 (objfile::expand_symtabs_matching)
1097 (objfile::find_pc_sect_compunit_symtab)
1098 (objfile::map_symbol_filenames)
1099 (objfile::find_compunit_symtab_by_address)
1100 (objfile::lookup_global_symbol_language, debug_sym_fns)
1101 (install_symfile_debug_logging): Update.
1102 * objfiles.h (struct objfile) <qf>: New member.
1103 * mipsread.c (ecoff_sym_fns): Update.
1104 * machoread.c (macho_sym_fns): Update.
1105 * elfread.c (elf_sym_fns_gdb_index, elf_sym_fns_debug_names):
1107 (elf_symfile_read, elf_sym_fns, elf_sym_fns_lazy_psyms): Update.
1108 * dbxread.c (aout_sym_fns): Update.
1109 * coffread.c (coff_sym_fns): Update.
1111 2021-03-20 Tom Tromey <tom@tromey.com>
1113 * symfile.h (symbol_compare_ftype, symbol_filename_ftype)
1114 (expand_symtabs_file_matcher_ftype)
1115 (expand_symtabs_symbol_matcher_ftype)
1116 (expand_symtabs_exp_notify_ftype, struct quick_symbol_functions):
1117 Move to quick-symbol.h.
1118 * quick-symbol.h: New file.
1120 2021-03-20 Tom Tromey <tom@tromey.com>
1122 * symtab.c (iterate_over_symtabs, expand_symtab_containing_pc)
1123 (lookup_symbol_via_quick_fns, find_quick_global_symbol_language)
1124 (basic_lookup_transparent_type_quick)
1125 (find_pc_sect_compunit_symtab, find_symbol_at_address)
1126 (find_line_symtab, global_symbol_searcher::expand_symtabs):
1128 * symmisc.c (print_objfile_statistics, dump_objfile)
1129 (maintenance_expand_symtabs): Update.
1130 * symfile.c (symbol_file_add_with_addrs)
1131 (expand_symtabs_matching, map_symbol_filenames): Update.
1132 * symfile-debug.c (objfile::has_partial_symbols)
1133 (objfile::find_last_source_symtab)
1134 (objfile::forget_cached_source_info)
1135 (objfile::map_symtabs_matching_filename, objfile::lookup_symbol)
1136 (objfile::print_stats, objfile::dump)
1137 (objfile::expand_symtabs_for_function)
1138 (objfile::expand_all_symtabs)
1139 (objfile::expand_symtabs_with_fullname)
1140 (objfile::map_matching_symbols)
1141 (objfile::expand_symtabs_matching)
1142 (objfile::find_pc_sect_compunit_symtab)
1143 (objfile::map_symbol_filenames)
1144 (objfile::find_compunit_symtab_by_address)
1145 (objfile::lookup_global_symbol_language): New methods.
1146 (debug_sym_quick_functions): Remove.
1147 (debug_sym_fns, install_symfile_debug_logging): Update.
1148 * source.c (forget_cached_source_info_for_objfile)
1149 (select_source_symtab): Update.
1150 * objfiles.h (struct objfile): Add methods corresponding to
1151 quick_symbol_functions.
1152 * objfiles.c (objfile::has_partial_symbols): Move to
1154 * linespec.c (iterate_over_all_matching_symtabs): Update.
1155 * cp-support.c (add_symbol_overload_list_qualified): Update.
1156 * ada-lang.c (add_nonlocal_symbols): Update.
1158 2021-03-20 Tom Tromey <tom@tromey.com>
1160 * objfiles.h (struct objfile) <has_partial_symbols>: Return bool.
1161 * symfile.h (struct quick_symbol_functions) <has_symbols>: Return
1163 * symfile-debug.c (debug_qf_has_symbols): Return bool.
1164 * psymtab.c (psym_has_symbols): Return bool.
1165 * objfiles.c (objfile::has_partial_symbols): Return bool.
1166 * dwarf2/read.c (dw2_has_symbols): Return bool.
1168 2021-03-20 Tom Tromey <tom@tromey.com>
1170 * symfile.c (read_symbols): Update.
1171 * objfiles.h (struct objfile) <has_partial_symbols>: New method.
1172 (objfile_has_partial_symbols): Don't declare.
1173 * objfiles.c (objfile::has_partial_symbols): Rename from
1174 objfile_has_partial_symbols.
1175 (objfile_has_symbols, have_partial_symbols): Update.
1176 * elfread.c (elf_symfile_read): Update.
1177 * dwarf2/read.c (dwarf2_has_info): Update.
1178 * coffread.c (coff_symfile_read): Update.
1180 2021-03-20 Tom Tromey <tom@tromey.com>
1182 * coffread.c: Include dwarf2/public.h.
1183 * dwarf2/frame.c: Include dwarf2/public.h.
1184 * dwarf2/index-write.h: Include dwarf2/public.h, not symfile.h.
1185 * dwarf2/public.h: New file.
1186 * dwarf2/read.c: Include dwarf2/public.h.
1187 * elfread.c: Include dwarf2/public.h.
1188 * machoread.c: Include dwarf2/public.h.
1189 * symfile.h (dwarf2_has_info, enum dw_index_kind)
1190 (dwarf2_initialize_objfile, dwarf2_build_psymtabs)
1191 (dwarf2_build_frame_info): Move to dwarf2/public.h.
1192 * xcoffread.c: Include dwarf2/public.h.
1194 2021-03-20 Tom Tromey <tom@tromey.com>
1196 * symfile.h (enum dwarf2_section_enum)
1197 (dwarf2_get_section_info): Move to dwarf2/read.h.
1198 * dwarf2/read.h (enum dwarf2_section_enum)
1199 (dwarf2_get_section_info): Move from symfile.h.
1201 2021-03-19 Pedro Alves <pedro@palves.net>
1203 * thread.c (any_thread_of_inferior): Check if there's a selected
1204 thread before calling inferior_thread().
1206 2021-03-18 Tom Tromey <tromey@adacore.com>
1208 * dwarf2/stringify.c (dwarf_unit_type_name): New function. Use
1210 * dwarf2/stringify.h (dwarf_unit_type_name): Declare.
1211 * dwarf2/comp-unit.c (dwarf_unit_type_name): Remove.
1213 2021-03-18 Andrew Burgess <andrew.burgess@embecosm.com>
1215 * python/py-param.c (get_set_value): Update header comment.
1217 2021-03-17 Simon Marchi <simon.marchi@polymtl.ca>
1219 * infrun.c (check_multi_target_resumption): Remove argument to
1220 all_non_exited_inferiors.
1222 2021-03-16 Christian Biesinger <cbiesinger@google.com>
1224 * windows-nat.c (windows_init_thread_list): Add message to
1227 2021-03-16 Andrew Burgess <andrew.burgess@embecosm.com>
1229 * python/py-framefilter.c (py_print_frame): Use PyInt_Check as
1230 well as PyLong_Check for Python 2.
1232 2021-03-15 Tom Tromey <tromey@adacore.com>
1235 * rust-exp.y (maker_map): Use gdb::hash_enum.
1236 * stap-probe.c (stap_maker_map): Use gdb::hash_enum.
1238 2021-03-15 Simon Marchi <simon.marchi@polymtl.ca>
1240 * dwarf2/read.c (create_debug_type_hash_table): Remove colon at
1243 2021-03-15 Simon Marchi <simon.marchi@polymtl.ca>
1245 * dwarf2/read.c (dw2_get_file_names_reader): Remove info_ptr
1246 parameter, adjust caller.
1248 2021-03-15 Tom Tromey <tromey@adacore.com>
1250 * ada-exp.y (simple_exp): Always push a result for unary '+'.
1252 2021-03-15 Tom Tromey <tromey@adacore.com>
1254 * ada-lang.c (ada_unop_ind_operation::evaluate): Call
1255 ada_ensure_varsize_limit.
1257 2021-03-15 Tom Tromey <tromey@adacore.com>
1259 * ada-lang.c (numeric_type_p, integer_type_p): Return true for
1261 * ada-exp.y (maybe_overload): New function.
1262 (ada_wrap_overload): New function.
1263 (ada_un_wrap2, ada_wrap2, ada_wrap_op): Use maybe_overload.
1264 (exp1, simple_exp, relation, and_exp, and_then_exp, or_exp)
1265 (or_else_exp, xor_exp, primary): Update.
1267 2021-03-15 Tom Tromey <tromey@adacore.com>
1270 * ada-lang.c (ada_var_value_operation::evaluate): Use recursive
1271 call for tagged type.
1273 2021-03-15 Tom Tromey <tromey@adacore.com>
1275 * ada-exp.y (exp1): Handle resolution of the right hand side of an
1278 2021-03-15 Tom Tromey <tromey@adacore.com>
1280 * ada-lang.c (ada_aggregate_operation::assign_aggregate): Return
1282 (ada_assign_operation::evaluate): Update.
1283 * ada-exp.h (class ada_aggregate_operation) <assign_aggregate>:
1286 2021-03-15 Felix Willgerodt <felix.willgerodt@intel.com>
1288 * i386-tdep.c (i386_floatformat_for_type): Add COMPLEX*32 and REAL*16.
1290 2021-03-15 Andrew Burgess <andrew.burgess@embecosm.com>
1292 * python/python.c (gdbpy_source_objfile_script): Use
1293 make_scoped_restore to restore gdbpy_current_objfile.
1294 (gdbpy_execute_objfile_script): Likewise.
1296 2021-03-14 Tom Tromey <tom@tromey.com>
1298 * dwarf2/read.c (read_attribute_value): Use cu_header
1301 2021-03-14 Tom Tromey <tom@tromey.com>
1303 * dwarf2/read.c (struct die_reader_specs) <abfd>: Fix formatting.
1304 (peek_die_abbrev): Use reader.abfd.
1306 2021-03-14 Tom Tromey <tom@tromey.com>
1308 * dwarf2/read.c (dwarf2_per_cu_data::get_header): Set
1311 2021-03-13 Tom Tromey <tom@tromey.com>
1313 * dwarf2/read.c (struct partial_die_info): Update.
1314 (peek_die_abbrev, skip_children, skip_one_die, read_full_die_1)
1315 (load_partial_dies, partial_die_info::partial_die_info): Update.
1316 * dwarf2/abbrev.h (lookup_abbrev): Constify.
1318 2021-03-13 Tom Tromey <tom@tromey.com>
1320 * dwarf2/abbrev.c (abbrev_table::read): Remove Irix 6 workaround.
1322 2021-03-12 Christian Biesinger <cbiesinger@google.com>
1325 * cp-support.c: Use scoped_segv_handler_restore.
1326 * event-top.c (thread_local_segv_handler): Made static.
1327 (scoped_segv_handler_restore::scoped_segv_handler_restore):
1329 (scoped_segv_handler_restore::~scoped_segv_handler_restore): New
1331 * event-top.h (class scoped_segv_handler_restore): New class.
1332 (thread_local_segv_handler): Removed.
1334 2021-03-10 Tom Tromey <tromey@adacore.com>
1336 * parser-defs.h (parser_state): Change completion to bool.
1337 <parse_completion>: Likewise.
1338 * ada-lang.h (ada_find_operator_symbol, ada_resolve_funcall)
1339 (ada_resolve_variable, ada_resolve_function): Update.
1340 * ada-lang.c (ada_find_operator_symbol): Change
1341 parse_completion to bool.
1342 (ada_resolve_funcall, ada_resolve_variable)
1343 (ada_resolve_function): Likewise.
1345 2021-03-09 Tom Tromey <tromey@adacore.com>
1347 * eval.c (operation::evaluate_funcall): Use function formal
1348 parameter types when evaluating.
1350 2021-03-09 Andrew Burgess <andrew.burgess@embecosm.com>
1352 * gdb-gdb.py.in (StructMainTypePrettyPrinter) <owner_to_string>:
1353 Updated fields names flag_objfile_owned to m_flag_objfile_owned,
1354 and owner to m_owner.
1356 2021-03-09 Felix Willgerodt <felix.willgerodt@intel.com>
1358 * f-exp.h (eval_op_f_loc): Declare.
1359 (expr::fortran_loc_operation): New typedef.
1360 * f-exp.y (exp): Handle UNOP_FORTRAN_LOC after parsing an
1362 (f77_keywords): Add LOC keyword.
1363 * f-lang.c (eval_op_f_loc): New function.
1364 * std-operator.def (UNOP_FORTRAN_LOC): New operator.
1366 2021-03-09 Andrew Burgess <andrew.burgess@embecosm.com>
1368 * f-exp.h (eval_op_f_array_shape): Declare.
1369 (fortran_array_shape_operation): New type.
1370 * f-exp.y (exp): Handle UNOP_FORTRAN_SHAPE after parsing
1372 (f77_keywords): Add "shape" keyword.
1373 * f-lang.c (fortran_array_shape): New function.
1374 (eval_op_f_array_shape): New function.
1375 * std-operator.def (UNOP_FORTRAN_SHAPE): New operator.
1377 2021-03-09 Andrew Burgess <andrew.burgess@embecosm.com>
1379 * f-exp.y (eval_op_f_array_size): Declare 1 and 2 argument forms
1381 (expr::fortran_array_size_1arg): New type.
1382 (expr::fortran_array_size_2arg): Likewise.
1383 * f-exp.y (exp): Handle FORTRAN_ARRAY_SIZE after parsing
1384 UNOP_OR_BINOP_INTRINSIC.
1385 (f77_keywords): Add "size" keyword.
1386 * f-lang.c (fortran_array_size): New function.
1387 (eval_op_f_array_size): New function, has a 1 arg and 2 arg form.
1388 * std-operator.def (FORTRAN_ARRAY_SIZE): New operator.
1390 2021-03-09 Andrew Burgess <andrew.burgess@embecosm.com>
1392 * f-exp.h (eval_op_f_rank): Declare.
1393 (expr::fortran_rank_operation): New typedef.
1394 * f-exp.y (exp): Handle UNOP_FORTRAN_RANK after parsing an
1396 (f77_keywords): Add "rank" keyword.
1397 * f-lang.c (eval_op_f_rank): New function.
1398 * std-operator.def (UNOP_FORTRAN_RANK): New operator.
1400 2021-03-08 Tom Tromey <tom@tromey.com>
1402 * printcmd.c (set_command): Remove null check.
1403 * value.c (init_if_undefined_command): Remove null check.
1405 2021-03-08 Tom Tromey <tom@tromey.com>
1407 * parse.c (parser_state::push_symbol, parser_state::push_dollar):
1409 * p-exp.y (variable): Update.
1410 * go-exp.y (variable): Update.
1411 * expprint.c (dump_for_expression): Use bound_minimal_symbol.
1412 Remove overload for objfile.
1413 * expop.h (eval_op_var_msym_value): Use bound_minimal_symbol
1415 (check_objfile): Likewise.
1416 (dump_for_expression): Likewise. Remove overload for objfile.
1417 (class var_msym_value_operation): Use bound_minimal_symbol.
1418 * eval.c (eval_op_var_msym_value): Use bound_minimal_symbol
1420 (var_msym_value_operation::evaluate_for_address)
1421 (var_msym_value_operation::evaluate_for_sizeof)
1422 (var_msym_value_operation::evaluate_for_cast): Update.
1423 * d-exp.y (PrimaryExpression): Update.
1424 * c-exp.y (variable): Update.
1425 * ax-gdb.c (var_msym_value_operation::do_generate_ax): Update.
1426 * ada-lang.c (ada_var_msym_value_operation::evaluate_for_cast):
1428 * ada-exp.y (write_var_or_type): Update.
1430 2021-03-08 Tom Tromey <tom@tromey.com>
1432 * parser-defs.h (exp_uses_objfile): Return bool.
1433 * parse.c (exp_uses_objfile): Return bool.
1435 2021-03-08 Tom Tromey <tom@tromey.com>
1437 * value.h (eval_skip_value): Don't declare.
1438 * opencl-lang.c (eval_opencl_assign): Update.
1439 * m2-lang.c (eval_op_m2_high, eval_op_m2_subscript): Update.
1440 * f-lang.c (eval_op_f_abs, eval_op_f_mod, eval_op_f_ceil)
1441 (eval_op_f_floor, eval_op_f_modulo, eval_op_f_cmplx): Remove.
1442 * expression.h (enum noside) <EVAL_SKIP>: Remove.
1443 * expop.h (typeof_operation::evaluate)
1444 (decltype_operation::evaluate, unop_addr_operation::evaluate)
1445 (unop_sizeof_operation::evaluate, assign_operation::evaluate)
1446 (cxx_cast_operation::evaluate): Update.
1447 * eval.c (eval_skip_value): Remove.
1448 (eval_op_scope, eval_op_var_entry_value)
1449 (eval_op_func_static_var, eval_op_string, eval_op_objc_selector)
1450 (eval_op_concat, eval_op_ternop, eval_op_structop_struct)
1451 (eval_op_structop_ptr, eval_op_member, eval_op_add, eval_op_sub)
1452 (eval_op_binary, eval_op_subscript, eval_op_equal)
1453 (eval_op_notequal, eval_op_less, eval_op_gtr, eval_op_geq)
1454 (eval_op_leq, eval_op_repeat, eval_op_plus, eval_op_neg)
1455 (eval_op_complement, eval_op_lognot, eval_op_ind)
1456 (eval_op_memval, eval_op_preinc, eval_op_predec)
1457 (eval_op_postinc, eval_op_postdec, eval_op_type)
1458 (eval_binop_assign_modify, eval_op_objc_msgcall)
1459 (eval_multi_subscript, logical_and_operation::evaluate)
1460 (logical_or_operation::evaluate, array_operation::evaluate)
1461 (operation::evaluate_for_cast)
1462 (var_msym_value_operation::evaluate_for_cast)
1463 (var_value_operation::evaluate_for_cast): Update.
1464 * c-lang.c (c_string_operation::evaluate): Update.
1465 * c-exp.h (objc_nsstring_operation::evaluate)
1466 (objc_selector_operation::evaluate): Update.
1467 * ada-lang.c (ada_assign_operation::evaluate)
1468 (eval_ternop_in_range, ada_unop_neg, ada_unop_in_range)
1469 (ada_atr_size): Update.
1471 2021-03-08 Tom Tromey <tom@tromey.com>
1473 * eval.c: Merge "namespace" scopes.
1475 2021-03-08 Tom Tromey <tom@tromey.com>
1477 * parser-defs.h (struct expr_builder) <expr_builder>: Inline.
1479 * parse.c (expr_builder::expr_builder, expr_builder::release):
1482 2021-03-08 Tom Tromey <tom@tromey.com>
1484 * parse.c (expression::expression, expression::~expression):
1486 * expression.h (struct expression): Inline constructor. Remove
1489 2021-03-08 Tom Tromey <tom@tromey.com>
1491 * std-operator.def (BINOP_END): Remove.
1492 * p-exp.y (tokentab3, tokentab2): Use OP_NULL, not BINOP_END.
1493 * go-exp.y (tokentab2): Use OP_NULL, not BINOP_END.
1494 * f-exp.y (dot_ops, f77_keywords): Use OP_NULL, not BINOP_END.
1495 * d-exp.y (tokentab2, ident_tokens): Use OP_NULL, not BINOP_END.
1496 * c-exp.y (tokentab3, tokentab2, ident_tokens): Use OP_NULL, not
1499 2021-03-08 Tom Tromey <tom@tromey.com>
1501 * expression.h (enum exp_opcode) <OP_UNUSED_LAST>: Remove.
1503 2021-03-08 Tom Tromey <tom@tromey.com>
1505 * std-operator.def (OP_EXTENDED0): Remove.
1507 2021-03-08 Tom Tromey <tom@tromey.com>
1509 * std-operator.def (OP_NAME, OP_ATR_IMAGE, OP_ATR_MODULUS)
1510 (OP_OTHERS, OP_CHOICES, OP_POSITIONAL, OP_DISCRETE_RANGE):
1513 2021-03-08 Tom Tromey <tom@tromey.com>
1515 * std-operator.def (UNOP_CAP, UNOP_CHR, UNOP_ORD, UNOP_FLOAT)
1516 (UNOP_MAX, UNOP_MIN, UNOP_ODD, UNOP_TRUNC, OP_M2_STRING): Remove.
1518 2021-03-08 Tom Tromey <tom@tromey.com>
1520 * std-operator.def (OP_ATR_MIN, OP_ATR_MAX): Remove.
1521 * ada-lang.c (ada_binop_minmax): Update.
1522 * ada-exp.h (ada_binop_min_operation, ada_binop_max_operation):
1523 Use BINOP_MIN and BINOP_MAX.
1525 2021-03-08 Tom Tromey <tom@tromey.com>
1527 * value.h (evaluate_subexp_with_coercion): Don't declare.
1528 * parse.c (exp_descriptor_standard): Remove.
1529 (expr_builder::expr_builder, expr_builder::release): Update.
1530 (expression::expression): Remove size_t parameter.
1531 (expression::~expression): Simplify.
1532 (expression::resize): Remove.
1533 (write_exp_elt, write_exp_elt_opcode, write_exp_elt_sym)
1534 (write_exp_elt_msym, write_exp_elt_block, write_exp_elt_objfile)
1535 (write_exp_elt_longcst, write_exp_elt_floatcst)
1536 (write_exp_elt_type, write_exp_elt_intern, write_exp_string)
1537 (write_exp_string_vector, write_exp_bitstring): Remove.
1538 * p-lang.h (class pascal_language) <opcode_print_table,
1539 op_print_tab>: Remove.
1540 * p-lang.c (pascal_language::op_print_tab): Remove.
1541 * opencl-lang.c (class opencl_language) <opcode_print_table>:
1543 * objc-lang.c (objc_op_print_tab): Remove.
1544 (class objc_language) <opcode_print_table>: Remove.
1545 * m2-lang.h (class m2_language) <opcode_print_table,
1546 op_print_tab>: Remove.
1547 * m2-lang.c (m2_language::op_print_tab): Remove.
1548 * language.h (struct language_defn) <post_parser, expression_ops,
1549 opcode_print_table>: Remove.
1550 * language.c (language_defn::expression_ops)
1551 (auto_or_unknown_language::opcode_print_table): Remove.
1552 * go-lang.h (class go_language) <opcode_print_table,
1553 op_print_tab>: Remove.
1554 * go-lang.c (go_language::op_print_tab): Remove.
1555 * f-lang.h (class f_language) <opcode_print_table>: Remove
1556 <op_print_tab>: Remove.
1557 * f-lang.c (f_language::op_print_tab): Remove.
1558 * expression.h (union exp_element): Remove.
1559 (struct expression): Remove size_t parameter from constructor.
1561 <first_opcode>: Update.
1562 <nelts, elts>: Remove.
1563 (EXP_ELEM_TO_BYTES, BYTES_TO_EXP_ELEM): Remove.
1564 (evaluate_subexp_standard, print_expression, op_string)
1565 (dump_raw_expression): Don't declare.
1566 * expprint.c (print_expression, print_subexp)
1567 (print_subexp_funcall, print_subexp_standard, op_string)
1568 (dump_raw_expression, dump_subexp, dump_subexp_body)
1569 (dump_subexp_body_funcall, dump_subexp_body_standard): Remove.
1570 (dump_prefix_expression): Update.
1571 * eval.c (evaluate_subexp): Remove.
1572 (evaluate_expression, evaluate_type): Update.
1573 (evaluate_subexpression_type): Remove.
1574 (fetch_subexp_value): Remove "pc" parameter. Update.
1575 (extract_field_op, evaluate_struct_tuple, evaluate_funcall)
1576 (evaluate_subexp_standard, evaluate_subexp_for_address)
1577 (evaluate_subexp_with_coercion, evaluate_subexp_for_sizeof)
1578 (evaluate_subexp_for_cast): Remove.
1579 (parse_and_eval_type): Update.
1580 * dtrace-probe.c (dtrace_probe::compile_to_ax): Update.
1581 * d-lang.c (d_op_print_tab): Remove.
1582 (class d_language) <opcode_print_table>: Remove.
1583 * c-lang.h (c_op_print_tab): Don't declare.
1584 * c-lang.c (c_op_print_tab): Remove.
1585 (class c_language, class cplus_language, class asm_language, class
1586 minimal_language) <opcode_print_table>: Remove.
1587 * breakpoint.c (update_watchpoint, watchpoint_check)
1588 (watchpoint_exp_is_const, watch_command_1): Update.
1589 * ax-gdb.h (union exp_element): Don't declare.
1590 * ax-gdb.c (const_var_ref, const_expr, maybe_const_expr)
1591 (gen_repeat, gen_sizeof, gen_expr_for_cast, gen_expr)
1592 (gen_expr_binop_rest): Remove.
1593 (gen_trace_for_expr, gen_eval_for_expr, gen_printf): Update.
1594 * ada-lang.c (ada_op_print_tab): Remove.
1595 (class ada_language) <post_parser, opcode_print_table>: Remove.
1597 2021-03-08 Tom Tromey <tom@tromey.com>
1599 * go-lang.c (go_language::expression_ops): Don't declare.
1600 * go-lang.h (class go_language) <expression_ops>: Remove.
1601 * opencl-lang.c (evaluate_subexp_opencl, exp_descriptor_opencl):
1603 (class opencl_language) <expression_ops>: Remove.
1604 * d-lang.c (class d_language) <expression_ops>: Remove.
1605 * c-lang.h (evaluate_subexp_c, exp_descriptor_c): Don't declare.
1606 * c-lang.c (evaluate_subexp_c, exp_descriptor_c): Remove.
1607 (class c_language, class cplus_language, class asm_language)
1608 (class minimal_language) <expression_ops>: Remove.
1610 2021-03-08 Tom Tromey <tom@tromey.com>
1612 * ada-lang.c (resolve_subexp, replace_operator_with_call)
1613 (evaluate_subexp_type, assign_aggregate)
1614 (aggregate_assign_positional, aggregate_assign_from_choices)
1615 (aggregate_assign_others, ada_evaluate_subexp_for_cast)
1616 (ada_evaluate_subexp, ADA_OPERATORS, ada_operator_length)
1617 (ada_operator_check, ada_forward_operator_length)
1618 (ada_dump_subexp_body, ada_print_subexp, ada_exp_descriptor):
1620 (post_parser): Update.
1621 (class ada_language) <expresssion_ops>: Remove.
1623 2021-03-08 Tom Tromey <tom@tromey.com>
1625 * m2-lang.h (class m2_language) <expresssion_ops,
1626 exp_descriptor_modula2>: Remove.
1627 * m2-lang.c (evaluate_subexp_modula2)
1628 (m2_language::exp_descriptor_modula2): Remove.
1630 2021-03-08 Tom Tromey <tom@tromey.com>
1632 * f-lang.h (class f_language) <expresssion_ops>: Remove.
1633 <exp_descriptor_tab>: Remove.
1634 * f-lang.c (fortran_value_subarray, evaluate_subexp_f)
1635 (operator_length_f, print_unop_subexp_f, print_binop_subexp_f)
1636 (print_subexp_f, dump_subexp_body_f, operator_check_f)
1637 (f_language::exp_descriptor_tab, fortran_prepare_argument):
1640 2021-03-08 Tom Tromey <tom@tromey.com>
1642 * rust-lang.h (class rust_language) <expression_ops,
1643 exp_descriptor_tab>: Remove.
1644 * rust-lang.c (rust_evaluate_funcall): Remove.
1645 (rust_range, rust_subscript, eval_op_rust_complement): Don't use
1647 (rust_evaluate_subexp): Remove.
1648 (rust_aggregate_operation::evaluate): Don't use EVAL_SKIP.
1649 (rust_operator_length, rust_dump_subexp_body, rust_print_subexp)
1650 (rust_operator_check, rust_language::exp_descriptor_tab): Remove.
1652 2021-03-08 Tom Tromey <tom@tromey.com>
1654 * ada-exp.y: Create operations.
1655 (empty_stoken): Remove.
1656 (ada_pop, ada_wrap, ada_addrof, ada_un_wrap2, ada_wrap2)
1657 (ada_wrap_op, ada_wrap3, ada_funcall): New functions.
1658 (components): New global.
1659 (push_component, choice_component, pop_component, pop_components):
1661 (associations): New global
1662 (push_association, pop_association, pop_associations): New
1664 (ada_parse): Update.
1665 (write_var_from_sym, write_int): Create operations.
1666 (write_exp_op_with_string): Remove.
1667 (write_object_renaming, write_selectors, write_ambiguous_var)
1668 (write_var_or_type, write_name_assoc): Create operations.
1669 * ada-lang.h (ada_index_type): Declare.
1670 * ada-lang.c (ada_index_type): No longer static.
1672 2021-03-08 Tom Tromey <tom@tromey.com>
1674 * f-exp.y: Create operations.
1675 (f_language::parser): Update.
1677 2021-03-08 Tom Tromey <tom@tromey.com>
1679 * m2-exp.y: Create operations.
1680 (m2_language::parser): Update.
1682 2021-03-08 Tom Tromey <tom@tromey.com>
1684 * p-exp.y: Create operations.
1685 (pascal_language::parser): Update.
1687 2021-03-08 Tom Tromey <tom@tromey.com>
1689 * d-exp.y: Create operations.
1692 2021-03-08 Tom Tromey <tom@tromey.com>
1694 * go-exp.y: Create operations.
1695 (go_language::parser): Update.
1697 2021-03-08 Tom Tromey <tom@tromey.com>
1699 * objc-lang.c (end_msglist): Create operations.
1700 * c-exp.y: Change parser to create operations.
1701 (write_destructor_name): Remove.
1704 2021-03-08 Tom Tromey <tom@tromey.com>
1706 * rust-exp.y: Create operations.
1707 (rust_parser::convert_params_to_expression): Change return type.
1708 (binop_maker_ftype): New typedef.
1709 (maker_map): New global.
1710 (rust_parser::convert_ast_to_expression): Change return type.
1711 (rust_language::parser): Update.
1712 (_initialize_rust_exp): Initialize maker_map.
1714 2021-03-08 Tom Tromey <tom@tromey.com>
1716 * stap-probe.c (binop_maker_ftype): New typedef.
1717 (stap_maker_map): New global.
1718 (stap_make_binop): New function.
1719 (stap_parse_register_operand): Return operation_up.
1720 (stap_parse_single_operand, stap_parse_argument_conditionally)
1721 (stap_parse_argument_1): Likewise.
1722 (stap_parse_argument): Create operations.
1723 (stap_probe::parse_arguments): Update.
1724 (_initialize_stap_probe): Initialize stap_maker_map.
1725 * ppc-linux-tdep.c (ppc_stap_parse_special_token): Change return
1727 * i386-tdep.h (i386_stap_parse_special_token): Change return
1729 * i386-tdep.c (i386_stap_parse_special_token_triplet)
1730 (i386_stap_parse_special_token_three_arg_disp)
1731 (i386_stap_parse_special_token): Change return type.
1732 * gdbarch.sh (stap_parse_special_token): Change return type.
1733 * gdbarch.c: Rebuild.
1734 * gdbarch.h: Rebuild.
1735 * arm-linux-tdep.c (arm_stap_parse_special_token): Change return
1737 * aarch64-linux-tdep.c (aarch64_stap_parse_special_token): Change
1740 2021-03-08 Tom Tromey <tom@tromey.com>
1742 * gdbarch.sh (dtrace_parse_probe_argument): Change return type.
1743 * gdbarch.h: Rebuild.
1744 * gdbarch.c: Rebuild.
1745 * dtrace-probe.c (dtrace_probe::build_arg_exprs): Update.
1746 * amd64-linux-tdep.c (amd64_dtrace_parse_probe_argument): Change
1748 (amd64_dtrace_parse_probe_argument): Update.
1750 2021-03-08 Tom Tromey <tom@tromey.com>
1752 * parser-defs.h (struct parser_state) <push, push_new,
1753 push_c_string, push_symbol, push_dollar, pop, pop_vector, wrap,
1754 wrap2>: New methods.
1755 <m_operations>: New member.
1756 * parse.c (parser_state::push_c_string)
1757 (parser_state::push_symbol, parser_state::push_dollar): New
1760 2021-03-08 Tom Tromey <tom@tromey.com>
1762 * parser-defs.h (struct expr_completion_state) <expout_last_op>:
1764 (struct parser_state) <mark_struct_expression>: New method.
1765 * parse.c (parser_state::mark_struct_expression): Update assert.
1766 (parser_state::mark_struct_expression): New method.
1767 (parser_state::mark_completion_tag): Update assert.
1768 (parse_expression_for_completion): Handle expout_last_op.
1770 2021-03-08 Tom Tromey <tom@tromey.com>
1772 * ada-exp.h (class ada_var_value_operation) <get_symbol>: Remove;
1774 * value.h (fetch_subexp_value): Add "op" parameter.
1775 * value.c (init_if_undefined_command): Update.
1776 * tracepoint.c (validate_actionline, encode_actions_1): Update.
1777 * stap-probe.c (stap_probe::compile_to_ax): Update.
1778 * printcmd.c (set_command): Update.
1779 * ppc-linux-nat.c (ppc_linux_nat_target::check_condition):
1781 * parser-defs.h (struct expr_builder) <set_operation>: New
1783 * parse.c (parse_exp_in_context, exp_uses_objfile): Update.
1784 * expression.h (struct expression) <first_opcode>: Update.
1786 * expprint.c (dump_raw_expression, dump_prefix_expression):
1788 * expop.h (class var_value_operation) <get_symbol>: New method.
1789 (class register_operation) <get_name>: New method.
1790 (class equal_operation): No longer a typedef, now a subclass.
1791 (class unop_memval_operation) <get_type>: New method.
1792 (class assign_operation) <get_lhs>: New method.
1793 (class unop_cast_operation) <get_type>: New method.
1794 * eval.c (evaluate_expression, evaluate_type)
1795 (evaluate_subexpression_type): Update.
1796 (fetch_subexp_value): Add "op" parameter.
1797 (parse_and_eval_type): Update.
1798 * dtrace-probe.c (dtrace_probe::compile_to_ax): Update.
1799 * breakpoint.c (update_watchpoint, watchpoint_check)
1800 (watchpoint_exp_is_const, watch_command_1): Update.
1801 * ax-gdb.c (gen_trace_for_expr, gen_eval_for_expr, gen_printf):
1804 2021-03-08 Tom Tromey <tom@tromey.com>
1806 * ada-lang.c (ada_value_binop): Do not use op_string.
1808 2021-03-08 Tom Tromey <tom@tromey.com>
1810 * expprint.c (dump_for_expression): New overload.
1811 * expop.h (check_objfile, dump_for_expression): Declare new
1813 * ada-lang.c (check_objfile): New overload.
1814 (assign_component, ada_aggregate_component::uses_objfile)
1815 (ada_aggregate_component::dump, ada_aggregate_component::assign)
1816 (ada_aggregate_component::assign_aggregate)
1817 (ada_positional_component::uses_objfile)
1818 (ada_positional_component::dump, ada_positional_component::assign)
1819 (ada_discrete_range_association::uses_objfile)
1820 (ada_discrete_range_association::dump)
1821 (ada_discrete_range_association::assign)
1822 (ada_name_association::uses_objfile, ada_name_association::dump)
1823 (ada_name_association::assign)
1824 (ada_choices_component::uses_objfile, ada_choices_component::dump)
1825 (ada_choices_component::assign)
1826 (ada_others_component::uses_objfile, ada_others_component::dump)
1827 (ada_others_component::assign, ada_assign_operation::evaluate):
1829 * ada-exp.h (ada_string_operation) <get_name>: New method.
1830 (class ada_assign_operation): New.
1831 (class ada_component): New.
1832 (ada_component_up): New typedef.
1833 (class ada_aggregate_operation, class ada_aggregate_component)
1834 (class ada_positional_component, class ada_others_component)
1835 (class ada_association): New.
1836 (ada_association_up): New typedef.
1837 (class ada_choices_component)
1838 (class ada_discrete_range_association)
1839 (class ada_name_association): New.
1841 2021-03-08 Tom Tromey <tom@tromey.com>
1843 * ada-lang.c (ada_var_value_operation::resolve)
1844 (ada_funcall_operation::resolve)
1845 (ada_ternop_slice_operation::resolve): New methods.
1846 * ada-exp.h (struct ada_resolvable): New.
1847 (class ada_var_value_operation): Derive from ada_resolvable.
1848 <get_block, resolve>: New methods.
1849 (class ada_funcall_operation): Derive from ada_resolvable.
1850 <resolve>: New method.
1851 (class ada_ternop_slice_operation): Derive from ada_resolvable.
1852 <resolve>: New method.
1854 2021-03-08 Tom Tromey <tom@tromey.com>
1856 * ada-lang.c (ada_funcall_operation::evaluate): New method.
1857 * ada-exp.h (class ada_var_msym_value_operation) <get_symbol>: New
1859 (class ada_funcall_operation): New.
1861 2021-03-08 Tom Tromey <tom@tromey.com>
1863 * ada-lang.c (ada_structop_operation::evaluate): New method.
1864 * ada-exp.h (class ada_structop_operation): New.
1866 2021-03-08 Tom Tromey <tom@tromey.com>
1868 * ada-lang.c (ada_unop_ind_operation::evaluate): New method.
1869 * ada-exp.h (class ada_unop_ind_operation): New.
1871 2021-03-08 Tom Tromey <tom@tromey.com>
1873 * ada-lang.c (ada_binop_exp): No longer static.
1874 * ada-exp.h (ada_binop_exp_operation): New typedef.
1876 2021-03-08 Tom Tromey <tom@tromey.com>
1878 * ada-lang.c (ada_val_atr): No longer static.
1879 (ada_atr_val_operation::evaluate): New method.
1880 * ada-exp.h (class ada_atr_val_operation): New.
1882 2021-03-08 Tom Tromey <tom@tromey.com>
1884 * ada-lang.c (ada_pos_atr): No longer static.
1885 * ada-exp.h (ada_pos_operation): New typedef.
1887 2021-03-08 Tom Tromey <tom@tromey.com>
1889 * ada-lang.c (ada_pos_atr): Rename from value_pos_atr. Change
1891 (ada_evaluate_subexp): Use it.
1893 2021-03-08 Tom Tromey <tom@tromey.com>
1895 * ada-lang.c (ada_binop_minmax): No longer static.
1896 * ada-exp.h (ada_binop_min_operation, ada_binop_max_operation):
1899 2021-03-08 Tom Tromey <tom@tromey.com>
1901 * ada-lang.c (ada_var_msym_value_operation::evaluate_for_cast):
1903 * ada-exp.h (class ada_var_msym_value_operation): New.
1905 2021-03-08 Tom Tromey <tom@tromey.com>
1907 * ada-lang.c (ada_var_value_operation::evaluate_for_cast)
1908 (ada_var_value_operation::evaluate): New methods.
1909 * ada-exp.h (class ada_var_value_operation): New.
1911 2021-03-08 Tom Tromey <tom@tromey.com>
1913 * ada-lang.c (ada_unop_atr_operation::evaluate): New method.
1914 * ada-exp.h (class ada_unop_atr_operation): New.
1916 2021-03-08 Tom Tromey <tom@tromey.com>
1918 * ada-lang.c (ada_binop_in_bounds): No longer static.
1919 * ada-exp.h (class ada_binop_in_bounds_operation): New.
1921 2021-03-08 Tom Tromey <tom@tromey.com>
1923 * ada-lang.c (ada_ternop_slice): No longer static.
1924 * ada-exp.h (class ada_ternop_slice_operation): New.
1926 2021-03-08 Tom Tromey <tom@tromey.com>
1928 * ada-exp.h (ada_bitwise_operation): New template class.
1929 (ada_bitwise_and_operation, ada_bitwise_ior_operation)
1930 (ada_bitwise_xor_operation): New typedefs.
1932 2021-03-08 Tom Tromey <tom@tromey.com>
1934 * ada-lang.c (ada_equal_binop): No longer static.
1935 * ada-exp.h (class ada_binop_equal_operation): New.
1937 2021-03-08 Tom Tromey <tom@tromey.com>
1939 * ada-lang.c (ada_mult_binop): No longer static.
1940 * ada-exp.h (ada_binop_mul_operation ada_binop_div_operation)
1941 (ada_binop_rem_operation, ada_binop_mod_operation): New typedefs.
1943 2021-03-08 Tom Tromey <tom@tromey.com>
1945 * ada-lang.c (ada_binop_addsub_operation::evaluate): New method.
1946 * ada-exp.h (class ada_binop_addsub_operation): New.
1948 2021-03-08 Tom Tromey <tom@tromey.com>
1950 * ada-lang.h (ada_find_operator_symbol, ada_resolve_funcall)
1951 (ada_resolve_variable): Declare.
1952 * ada-lang.c (ada_find_operator_symbol, ada_resolve_funcall)
1953 (ada_resolve_variable): New functions.
1954 (resolve_subexp): Update.
1956 2021-03-08 Tom Tromey <tom@tromey.com>
1958 * opencl-lang.c (opencl_ternop_cond_operation::evaluate): New
1960 * c-exp.h (class opencl_ternop_cond_operation): New.
1962 2021-03-08 Tom Tromey <tom@tromey.com>
1964 * opencl-lang.c (opencl_logical_binop_operation::evaluate): New
1966 * c-exp.h (class opencl_logical_binop_operation): New.
1968 2021-03-08 Tom Tromey <tom@tromey.com>
1970 * opencl-lang.c (opencl_structop_operation::evaluate): New
1972 * c-exp.h (class opencl_structop_operation): New.
1974 2021-03-08 Tom Tromey <tom@tromey.com>
1976 * opencl-lang.c (opencl_logical_not): No longer static. Change
1978 (evaluate_subexp_opencl): Update.
1979 * c-exp.h (opencl_notequal_operation): New typedef.
1981 2021-03-08 Tom Tromey <tom@tromey.com>
1983 * opencl-lang.c (opencl_relop, eval_opencl_assign): No longer
1984 static. Change parameters.
1985 (eval_opencl_assign): No longer static. Add "op" parameter.
1986 (evaluate_subexp_opencl): Update.
1987 * c-exp.h (opencl_binop_operation): New template class.
1988 (opencl_assign_operation, opencl_equal_operation)
1989 (opencl_notequal_operation, opencl_less_operation)
1990 (opencl_gtr_operation, opencl_geq_operation)
1991 (opencl_leq_operation): New typedefs.
1993 2021-03-08 Tom Tromey <tom@tromey.com>
1995 * opencl-lang.c (opencl_value_cast): No longer static.
1996 * c-exp.h (opencl_cast_type_operation): New typedef.
1998 2021-03-08 Tom Tromey <tom@tromey.com>
2000 * f-exp.h (eval_op_f_allocated): Declare.
2001 (fortran_allocated_operation): New typedef.
2002 * f-lang.c (eval_op_f_allocated): No longer static.
2004 2021-03-08 Tom Tromey <tom@tromey.com>
2006 * f-lang.c (eval_op_f_associated): New functions.
2007 * f-exp.h (fortran_associated_1arg, fortran_associated_2arg): New
2010 2021-03-08 Tom Tromey <tom@tromey.com>
2012 * f-lang.c (fortran_bound_1arg::evaluate)
2013 (fortran_bound_2arg::evaluate): New methods.
2014 * f-exp.h (class fortran_bound_1arg, class fortran_bound_2arg):
2017 2021-03-08 Tom Tromey <tom@tromey.com>
2019 * expop.h (class unop_addr_operation) <get_expression>: New
2021 * f-lang.c (fortran_undetermined::value_subarray)
2022 (fortran_undetermined::evaluate): New methods.
2023 (fortran_prepare_argument): New overload.
2024 * f-exp.h (class fortran_range_operation)
2025 (class fortran_undetermined): New classes.
2027 2021-03-08 Tom Tromey <tom@tromey.com>
2029 * rust-lang.c (rust_structop::evaluate_funcall): New method.
2030 * rust-exp.h (class rust_structop) <evaluate_funcall>: Declare
2033 2021-03-08 Tom Tromey <tom@tromey.com>
2035 * expression.h (class operation) <evaluate_funcall>: New methods.
2036 * expop.h (class scope_operation) <evaluate_funcall>: New method.
2037 (class var_value_operation) <evaluate_funcall>: New method.
2038 (class structop_base_operation) <evaluate_funcall>: New method.
2039 (class var_msym_value_operation) <evaluate_funcall>: New method.
2040 (class structop_member_base): New class.
2041 (class structop_member_operation): Derive from
2042 structop_member_base.
2043 (class structop_mptr_operation): Derive from
2044 structop_member_base.
2045 (class funcall_operation): New class.
2046 * eval.c (operation::evaluate_funcall)
2047 (var_value_operation::evaluate_funcall)
2048 (scope_operation::evaluate_funcall)
2049 (structop_member_base::evaluate_funcall)
2050 (structop_base_operation::evaluate_funcall): New methods.
2052 2021-03-08 Tom Tromey <tom@tromey.com>
2054 * expop.h (class array_operation): New.
2055 * eval.c (array_operation::evaluate_struct_tuple)
2056 (array_operation::evaluate): New methods.
2058 2021-03-08 Tom Tromey <tom@tromey.com>
2060 * expop.h (class adl_func_operation): New.
2061 * eval.c (adl_func_operation::evaluate): New method.
2063 2021-03-08 Tom Tromey <tom@tromey.com>
2065 * ada-lang.c (ada_unop_in_range): No longer static.
2066 * ada-exp.h (class ada_unop_range_operation): New.
2068 2021-03-08 Tom Tromey <tom@tromey.com>
2070 * ada-lang.c (ada_unop_neg, ada_atr_tag, ada_atr_size, ada_abs):
2072 * ada-exp.h (ada_neg_operation, ada_atr_tag_operation)
2073 (ada_atr_size_operation, ada_abs_operation): New typedefs.
2075 2021-03-08 Tom Tromey <tom@tromey.com>
2077 * expop.h (class logical_and_operation)
2078 (class logical_or_operation): New.
2079 * eval.c (logical_and_operation::evaluate)
2080 (logical_or_operation::evaluate): New methods.
2081 * ax-gdb.c (logical_and_operation::do_generate_ax)
2082 (logical_or_operation::do_generate_ax): New methods.
2084 2021-03-08 Tom Tromey <tom@tromey.com>
2086 * m2-lang.c (eval_op_m2_high, eval_op_m2_subscript): No longer
2088 * m2-exp.h: New file.
2090 2021-03-08 Tom Tromey <tom@tromey.com>
2092 * rust-lang.c (rust_aggregate_operation::evaluate): New method.
2093 * rust-exp.h (class rust_aggregate_operation): New.
2095 2021-03-08 Tom Tromey <tom@tromey.com>
2097 * rust-lang.c (eval_op_rust_struct_anon, eval_op_rust_structop):
2099 * rust-exp.h (class rust_struct_anon): New.
2100 (class rust_structop): New.
2102 2021-03-08 Tom Tromey <tom@tromey.com>
2104 * rust-lang.c (rust_range): No longer static.
2105 * rust-exp.h (class rust_range_operation): New.
2107 2021-03-08 Tom Tromey <tom@tromey.com>
2109 * rust-lang.c (rust_subscript): No longer static.
2110 * rust-exp.h (class rust_subscript_operation): New.
2112 2021-03-08 Tom Tromey <tom@tromey.com>
2114 * rust-lang.c (eval_op_rust_ind): No longer static. Add "opcode"
2116 (rust_evaluate_subexp): Update.
2117 * rust-exp.h (class rust_unop_ind_operation): New.
2119 2021-03-08 Tom Tromey <tom@tromey.com>
2121 * rust-lang.c (eval_op_rust_complement, eval_op_rust_array): No
2122 longer static. Add "opcode" parameter.
2123 (rust_evaluate_subexp): Update.
2124 * rust-exp.h: New file.
2126 2021-03-08 Tom Tromey <tom@tromey.com>
2128 * f-lang.c (eval_op_f_abs, eval_op_f_mod, eval_op_f_ceil)
2129 (eval_op_f_floor, eval_op_f_modulo, eval_op_f_cmplx)
2130 (eval_op_f_kind): No longer static. Add "opcode" parameter.
2131 (evaluate_subexp_f): Update.
2132 * f-exp.h: New file.
2134 2021-03-08 Tom Tromey <tom@tromey.com>
2136 * ada-lang.c (ada_ternop_range_operation::evaluate): New method.
2137 * ada-exp.h (class ada_ternop_range_operation): New.
2139 2021-03-08 Tom Tromey <tom@tromey.com>
2141 * ada-lang.c (ada_qual_operation::evaluate): New method.
2142 * ada-exp.h (class ada_qual_operation): New.
2144 2021-03-08 Tom Tromey <tom@tromey.com>
2146 * ada-lang.c (ada_string_operation::evaluate): New method.
2147 * ada-exp.h (class ada_string_operation): New.
2149 2021-03-08 Tom Tromey <tom@tromey.com>
2151 * ada-lang.c (ada_wrapped_operation::evaluate): New method.
2152 * ada-exp.h: New file.
2154 2021-03-08 Tom Tromey <tom@tromey.com>
2156 * expop.h (class multi_subscript_operation): New.
2157 * eval.c (multi_subscript_operation::evaluate): New method.
2159 2021-03-08 Tom Tromey <tom@tromey.com>
2161 * eval.c (objc_msgcall_operation::evaluate): New method.
2162 * c-exp.h (class objc_msgcall_operation): New.
2164 2021-03-08 Tom Tromey <tom@tromey.com>
2166 * expop.h (class var_value_operation): New.
2167 * eval.c (var_value_operation::evaluate)
2168 (var_value_operation::evaluate_for_address)
2169 (var_value_operation::evaluate_with_coercion)
2170 (var_value_operation::evaluate_for_sizeof)
2171 (var_value_operation::evaluate_for_cast): New methods.
2172 * ax-gdb.c (var_value_operation::do_generate_ax): New method.
2174 2021-03-08 Tom Tromey <tom@tromey.com>
2176 * expop.h (cxx_cast_ftype): New typedef.
2177 (cxx_cast_operation): New template.
2178 (dynamic_cast_operation, reinterpret_cast_operation): New
2181 2021-03-08 Tom Tromey <tom@tromey.com>
2183 * expop.h (class unop_cast_type_operation): New.
2184 * ax-gdb.c (unop_cast_type_operation::do_generate_ax): New
2187 2021-03-08 Tom Tromey <tom@tromey.com>
2189 * expop.h (class unop_cast_operation): New.
2190 * ax-gdb.c (unop_cast_operation::do_generate_ax): New method.
2192 2021-03-08 Tom Tromey <tom@tromey.com>
2194 * expop.h (class assign_modify_operation): New.
2195 * eval.c (eval_binop_assign_modify): No longer static.
2196 * ax-gdb.c (assign_modify_operation::do_generate_ax): New method.
2198 2021-03-08 Tom Tromey <tom@tromey.com>
2200 * expop.h (class assign_operation): New.
2201 * ax-gdb.c (assign_operation::do_generate_ax): New method.
2203 2021-03-08 Tom Tromey <tom@tromey.com>
2205 * expop.h (class type_instance_operation): New.
2206 * eval.c (type_instance_operation::evaluate): New method.
2208 2021-03-08 Tom Tromey <tom@tromey.com>
2210 * expop.h (class op_this_operation): New.
2211 * ax-gdb.c (op_this_operation::do_generate_ax): New method.
2213 2021-03-08 Tom Tromey <tom@tromey.com>
2215 * expop.h (class unop_memval_operation)
2216 (class unop_memval_type_operation): New.
2217 * eval.c (eval_op_memval): No longer static.
2218 (unop_memval_operation::evaluate_for_address)
2219 (unop_memval_type_operation::evaluate_for_address)
2220 (unop_memval_operation::evaluate_for_sizeof)
2221 (unop_memval_type_operation::evaluate_for_sizeof): New methods.
2222 * ax-gdb.c (unop_memval_operation::do_generate_ax)
2223 (unop_memval_type_operation::do_generate_ax): New methods.
2225 2021-03-08 Tom Tromey <tom@tromey.com>
2227 * expop.h (class unop_alignof_operation): New.
2228 * eval.c (eval_op_alignof): No longer static.
2230 2021-03-08 Tom Tromey <tom@tromey.com>
2232 * expop.h (class unop_sizeof_operation): New.
2233 * ax-gdb.c (unop_sizeof_operation::do_generate_ax): New method.
2235 2021-03-08 Tom Tromey <tom@tromey.com>
2237 * expop.h (class unop_addr_operation): New.
2238 * ax-gdb.c (gen_expr_unop) <case UNOP_ADDR>: New.
2240 2021-03-08 Tom Tromey <tom@tromey.com>
2242 * expop.h (class typeid_operation): New.
2244 2021-03-08 Tom Tromey <tom@tromey.com>
2246 * expop.h (class decltype_operation): New.
2248 2021-03-08 Tom Tromey <tom@tromey.com>
2250 * expop.h (class typeof_operation): New.
2252 2021-03-08 Tom Tromey <tom@tromey.com>
2254 * expop.h (class type_operation): New.
2255 * eval.c (eval_op_type): No longer static.
2257 2021-03-08 Tom Tromey <tom@tromey.com>
2259 * expop.h (class unop_ind_base_operation)
2260 (class unop_ind_operation): New.
2261 * eval.c (eval_op_ind): No longer static. Remove "op" parameter.
2262 (unop_ind_base_operation::evaluate_for_address)
2263 (unop_ind_base_operation::evaluate_for_sizeof): New method.
2264 * ax-gdb.c (gen_expr_unop) <case UNOP_IND>: New.
2266 2021-03-08 Tom Tromey <tom@tromey.com>
2268 * expop.h (unop_incr_operation): New template.
2269 (preinc_operation, predec_operation, postinc_operation)
2270 (postdec_operation): New typedefs.
2271 * eval.c (eval_op_preinc, eval_op_predec, eval_op_postinc)
2272 (eval_op_postdec): No longer static.
2274 2021-03-08 Tom Tromey <tom@tromey.com>
2276 * expop.h (unary_ftype): New typedef.
2277 (unop_operation, usual_ax_binop_operation): New templates.
2278 (unary_plus_operation, unary_neg_operation)
2279 (unary_complement_operation, unary_logical_not_operation): New
2281 * eval.c (eval_op_plus, eval_op_neg, eval_op_complement)
2282 (eval_op_lognot): No longer static.
2283 * ax-gdb.c (gen_expr_unop): New function.
2285 2021-03-08 Tom Tromey <tom@tromey.com>
2287 * ax-gdb.c (comma_operation::do_generate_ax): New method.
2289 2021-03-08 Tom Tromey <tom@tromey.com>
2291 * expop.h (class repeat_operation): New.
2292 * eval.c (eval_op_repeat): No longer static. Remove "op"
2294 (evaluate_subexp_standard): Update.
2295 * ax-gdb.c (repeat_operation::do_generate_ax): New method.
2297 2021-03-08 Tom Tromey <tom@tromey.com>
2299 * expop.h (class comparison_operation): New.
2300 (equal_operation, notequal_operation, less_operation)
2301 (gtr_operation, geq_operation, leq_operation): New typedefs.
2302 * eval.c (eval_op_equal, eval_op_notequal, eval_op_less)
2303 (eval_op_gtr, eval_op_geq, eval_op_leq): No longer static.
2305 2021-03-08 Tom Tromey <tom@tromey.com>
2307 * expop.h (class subscript_operation): New.
2308 * eval.c (eval_op_subscript): No longer static.
2310 2021-03-08 Tom Tromey <tom@tromey.com>
2312 * expop.h (class binop_operation, class usual_ax_binop_operation):
2314 (exp_operation, intdiv_operation, mod_operation, mul_operation)
2315 (div_operation, rem_operation, lsh_operation, rsh_operation)
2316 (bitwise_and_operation, bitwise_ior_operation)
2317 (bitwise_xor_operation): New typedefs.
2318 * eval.c (eval_op_binary): No longer static.
2320 2021-03-08 Tom Tromey <tom@tromey.com>
2322 * expop.h (class sub_operation): New.
2323 * eval.c (eval_op_sub): No longer static. Remove "op" parameter.
2324 (evaluate_subexp_standard): Update.
2326 2021-03-08 Tom Tromey <tom@tromey.com>
2328 * expop.h (class add_operation): New.
2329 * eval.c (eval_op_add): No longer static. Remove "op" parameter.
2330 (evaluate_subexp_standard): Update.
2332 2021-03-08 Tom Tromey <tom@tromey.com>
2334 * expop.h (class concat_operation): New.
2335 * eval.c (eval_op_concat): No longer static. Remove "op"
2337 (evaluate_subexp_standard): Update.
2339 2021-03-08 Tom Tromey <tom@tromey.com>
2341 * expop.h (class structop_member_operation)
2342 (class structop_mptr_operation): New.
2343 * eval.c (eval_op_member): No longer static.
2345 2021-03-08 Tom Tromey <tom@tromey.com>
2347 * expop.h (class structop_ptr_operation): New.
2348 * eval.c (eval_op_structop_ptr): No longer static. Remove "op"
2351 2021-03-08 Tom Tromey <tom@tromey.com>
2353 * expop.h (class structop_base_operation)
2354 (class structop_operation): New.
2355 * eval.c (eval_op_structop_struct): No longer static.
2357 2021-03-08 Tom Tromey <tom@tromey.com>
2359 * expop.h (class complex_operation): New.
2361 2021-03-08 Tom Tromey <tom@tromey.com>
2363 * eval.c (eval_op_objc_selector): No longer static.
2364 * c-exp.h (class objc_selector_operation): New.
2366 2021-03-08 Tom Tromey <tom@tromey.com>
2368 * eval.c: Include c-exp.h.
2369 * c-exp.h (class objc_nsstring_operation): New.
2371 2021-03-08 Tom Tromey <tom@tromey.com>
2373 * c-lang.c (c_string_operation::evaluate): New method.
2374 * c-exp.h: New file.
2376 2021-03-08 Tom Tromey <tom@tromey.com>
2378 * expop.h (class ternop_cond_operation): New.
2379 * ax-gdb.c (ternop_cond_operation::do_generate_ax): New method.
2381 2021-03-08 Tom Tromey <tom@tromey.com>
2383 * expop.h (class ternop_slice_operation): New.
2384 * eval.c (eval_op_ternop): No longer static.
2386 2021-03-08 Tom Tromey <tom@tromey.com>
2388 * expop.h (class string_operation): New.
2389 * eval.c (eval_op_string): No longer static.
2391 2021-03-08 Tom Tromey <tom@tromey.com>
2393 * expop.h (class internalvar_operation): New.
2394 * ax-gdb.c (internalvar_operation::do_generate_ax): New method.
2396 2021-03-08 Tom Tromey <tom@tromey.com>
2398 * expop.h (class bool_operation): New.
2400 2021-03-08 Tom Tromey <tom@tromey.com>
2402 * expop.h (class register_operation): New.
2403 * eval.c (eval_op_register): No longer static.
2404 * ax-gdb.c (register_operation::do_generate_ax): New method.
2406 2021-03-08 Tom Tromey <tom@tromey.com>
2408 * expop.h (class last_operation): New.
2410 2021-03-08 Tom Tromey <tom@tromey.com>
2412 * expop.h (class func_static_var_operation): New.
2413 * eval.c (eval_op_func_static_var): No longer static.
2415 2021-03-08 Tom Tromey <tom@tromey.com>
2417 * expop.h (class var_entry_value_operation): New.
2418 * eval.c (eval_op_var_entry_value): No longer static.
2420 2021-03-08 Tom Tromey <tom@tromey.com>
2422 * expression.h (class operation) <set_outermost>: New method.
2423 * expop.h (class var_msym_value_operation): New.
2424 * eval.c (eval_op_var_msym_value): No longer static.
2425 (var_msym_value_operation::evaluate_for_address)
2426 (var_msym_value_operation::evaluate_for_sizeof)
2427 (var_msym_value_operation::evaluate_for_cast): New methods.
2428 * ax-gdb.c (var_msym_value_operation::do_generate_ax): New
2431 2021-03-08 Tom Tromey <tom@tromey.com>
2433 * expop.h (class long_const_operation): New.
2434 * ax-gdb.c (long_const_operation::do_generate_ax): New method.
2436 2021-03-08 Tom Tromey <tom@tromey.com>
2438 * expop.h (class scope_operation): New.
2439 * eval.c (eval_op_scope): No longer static.
2440 (scope_operation::evaluate_for_address): New method.
2441 * ax-gdb.c (scope_operation::do_generate_ax): New method.
2443 2021-03-08 Tom Tromey <tom@tromey.com>
2445 * expprint.c (float_const_operation::dump): New method.
2446 * expop.h (float_data): New typedef.
2447 (class float_const_operation): New.
2449 2021-03-08 Tom Tromey <tom@tromey.com>
2451 * expop.h (gen_expr_binop, gen_expr_structop): Declare.
2452 * ax-gdb.c (gen_expr_binop): New function.
2453 (gen_expr_structop): Likewise.
2455 2021-03-08 Tom Tromey <tom@tromey.com>
2457 * expprint.c (expr::dump_for_expression): New functions.
2458 * expop.h (dump_for_expression): New overloads.
2459 (tuple_holding_operation::dump, tuple_holding_operation::do_dump):
2462 2021-03-08 Tom Tromey <tom@tromey.com>
2464 * expression.h (expr::operation): New class.
2465 (expr::make_operation): New function.
2466 (expr::operation_up): New typedef.
2467 * expop.h: New file.
2468 * eval.c (operation::evaluate_for_cast)
2469 (operation::evaluate_for_address, operation::evaluate_for_sizeof):
2471 * ax-gdb.c (operation::generate_ax): New method.
2473 2021-03-08 Tom Tromey <tom@tromey.com>
2475 * ax-gdb.c (gen_expr_binop_rest): Remove "pc" parameter.
2476 (gen_expr_binop_rest): New overload.
2478 2021-03-08 Tom Tromey <tom@tromey.com>
2480 * eval.c (eval_multi_subscript): New function.
2481 (evaluate_subexp_standard): Use it.
2483 2021-03-08 Tom Tromey <tom@tromey.com>
2485 * ada-lang.c (ada_binop_exp): New function.
2486 (ada_evaluate_subexp): Use it.
2488 2021-03-08 Tom Tromey <tom@tromey.com>
2490 * ada-lang.c (ada_val_atr): Rename from value_val_atr. Change
2492 (ada_evaluate_subexp): Use it.
2494 2021-03-08 Tom Tromey <tom@tromey.com>
2496 * ada-lang.c (ada_binop_minmax): New function.
2497 (ada_evaluate_subexp): Use it.
2499 2021-03-08 Tom Tromey <tom@tromey.com>
2501 * ada-lang.c (ada_unop_atr): New function.
2502 (ada_evaluate_subexp): Use it.
2504 2021-03-08 Tom Tromey <tom@tromey.com>
2506 * ada-lang.c (ada_binop_in_bounds): New function.
2507 (ada_evaluate_subexp): Use it.
2509 2021-03-08 Tom Tromey <tom@tromey.com>
2511 * ada-lang.c (ada_ternop_slice): New function.
2512 (ada_evaluate_subexp): Use it.
2514 2021-03-08 Tom Tromey <tom@tromey.com>
2516 * ada-lang.c (ada_equal_binop): New function.
2517 (ada_evaluate_subexp): Use it.
2519 2021-03-08 Tom Tromey <tom@tromey.com>
2521 * ada-lang.c (ada_mult_binop): New function.
2522 (ada_evaluate_subexp): Use it.
2524 2021-03-08 Tom Tromey <tom@tromey.com>
2526 * ada-lang.c (ada_abs): New function.
2527 (ada_evaluate_subexp): Use it.
2529 2021-03-08 Tom Tromey <tom@tromey.com>
2531 * ada-lang.c (ada_atr_size): New function.
2532 (ada_evaluate_subexp): Use it.
2534 2021-03-08 Tom Tromey <tom@tromey.com>
2536 * ada-lang.c (ada_atr_tag): New function.
2537 (ada_evaluate_subexp): Use it.
2539 2021-03-08 Tom Tromey <tom@tromey.com>
2541 * ada-lang.c (ada_unop_in_range): New function.
2542 (ada_evaluate_subexp): Use it.
2544 2021-03-08 Tom Tromey <tom@tromey.com>
2546 * ada-lang.c (ada_unop_neg): New function.
2547 (ada_evaluate_subexp): Use it.
2549 2021-03-08 Tom Tromey <tom@tromey.com>
2551 * ada-lang.c (eval_ternop_in_range): New function.
2552 (ada_evaluate_subexp): Use it.
2554 2021-03-08 Tom Tromey <tom@tromey.com>
2556 * opencl-lang.c (eval_opencl_assign): New function.
2557 (evaluate_subexp_opencl): Use it.
2559 2021-03-08 Tom Tromey <tom@tromey.com>
2561 * eval.c (eval_op_objc_msgcall): New function.
2562 (evaluate_subexp_standard): Use it.
2564 2021-03-08 Tom Tromey <tom@tromey.com>
2566 * eval.c (eval_binop_assign_modify): New function.
2567 (evaluate_subexp_standard): Use it.
2569 2021-03-08 Tom Tromey <tom@tromey.com>
2571 * m2-lang.c (eval_op_m2_subscript): New function.
2572 (evaluate_subexp_modula2): Use it.
2574 2021-03-08 Tom Tromey <tom@tromey.com>
2576 * m2-lang.c (eval_op_m2_high): New function.
2577 (evaluate_subexp_modula2): Use it.
2579 2021-03-08 Tom Tromey <tom@tromey.com>
2581 * eval.c (evaluate_subexp_for_address_base): New function.
2582 (evaluate_subexp_for_address): Use it.
2583 (evaluate_subexp_for_sizeof_base): New function.
2584 (evaluate_subexp_for_sizeof): Use it.
2586 2021-03-08 Tom Tromey <tom@tromey.com>
2588 * rust-lang.c (eval_op_rust_structop): New function.
2589 (rust_evaluate_subexp): Use it.
2591 2021-03-08 Tom Tromey <tom@tromey.com>
2593 * rust-lang.c (eval_op_rust_struct_anon): New function.
2594 (rust_evaluate_subexp): Use it.
2596 2021-03-08 Tom Tromey <tom@tromey.com>
2598 * rust-lang.c (eval_op_rust_array): New function.
2599 (rust_evaluate_subexp): Use it.
2601 2021-03-08 Tom Tromey <tom@tromey.com>
2603 * rust-lang.c (eval_op_rust_complement): New function.
2604 (rust_evaluate_subexp): Use it.
2606 2021-03-08 Tom Tromey <tom@tromey.com>
2608 * rust-lang.c (eval_op_rust_ind): New function.
2609 (rust_evaluate_subexp): Use it.
2611 2021-03-08 Tom Tromey <tom@tromey.com>
2613 * rust-lang.c (rust_subscript): Change parameters.
2614 (rust_evaluate_subexp): Update.
2616 2021-03-08 Tom Tromey <tom@tromey.com>
2618 * rust-lang.c (rust_range): Change parameters.
2619 (rust_evaluate_subexp): Update.
2621 2021-03-08 Tom Tromey <tom@tromey.com>
2623 * f-lang.c (eval_op_f_allocated): New function.
2624 (evaluate_subexp_f): Use it.
2626 2021-03-08 Tom Tromey <tom@tromey.com>
2628 * f-lang.c (fortran_require_array): New function.
2629 (evaluate_subexp_f): Use it.
2631 2021-03-08 Tom Tromey <tom@tromey.com>
2633 * f-lang.c (eval_op_f_kind): New function.
2634 (evaluate_subexp_f): Use it.
2636 2021-03-08 Tom Tromey <tom@tromey.com>
2638 * f-lang.c (eval_op_f_cmplx): New function.
2639 (evaluate_subexp_f): Use it.
2641 2021-03-08 Tom Tromey <tom@tromey.com>
2643 * f-lang.c (eval_op_f_modulo): New function.
2644 (evaluate_subexp_f): Use it.
2646 2021-03-08 Tom Tromey <tom@tromey.com>
2648 * f-lang.c (eval_op_f_floor): New function.
2649 (evaluate_subexp_f): Use it.
2651 2021-03-08 Tom Tromey <tom@tromey.com>
2653 * f-lang.c (eval_op_f_ceil): New function.
2654 (evaluate_subexp_f): Use it.
2656 2021-03-08 Tom Tromey <tom@tromey.com>
2658 * f-lang.c (eval_op_f_mod): New function.
2659 (evaluate_subexp_f): Use it.
2661 2021-03-08 Tom Tromey <tom@tromey.com>
2663 * f-lang.c (eval_op_f_abs): New function.
2664 (evaluate_subexp_f): Use it.
2666 2021-03-08 Tom Tromey <tom@tromey.com>
2668 * eval.c (eval_op_type): New function.
2669 (evaluate_subexp_standard): Use it.
2671 2021-03-08 Tom Tromey <tom@tromey.com>
2673 * eval.c (eval_op_postdec): New function.
2674 (evaluate_subexp_standard): Use it.
2676 2021-03-08 Tom Tromey <tom@tromey.com>
2678 * eval.c (eval_op_postinc): New function.
2679 (evaluate_subexp_standard): Use it.
2681 2021-03-08 Tom Tromey <tom@tromey.com>
2683 * eval.c (eval_op_predec): New file.
2684 (evaluate_subexp_standard): Use it.
2686 2021-03-08 Tom Tromey <tom@tromey.com>
2688 * eval.c (eval_op_preinc): New function.
2689 (evaluate_subexp_standard): Use it.
2691 2021-03-08 Tom Tromey <tom@tromey.com>
2693 * eval.c (eval_op_memval): New function.
2694 (evaluate_subexp_standard): Use it.
2696 2021-03-08 Tom Tromey <tom@tromey.com>
2698 * eval.c (eval_op_alignof): New function.
2699 (evaluate_subexp_standard): Use it.
2701 2021-03-08 Tom Tromey <tom@tromey.com>
2703 * eval.c (eval_op_ind): New function.
2704 (evaluate_subexp_standard): Use it.
2706 2021-03-08 Tom Tromey <tom@tromey.com>
2708 * eval.c (eval_op_lognot): New function.
2709 (evaluate_subexp_standard): Use it.
2711 2021-03-08 Tom Tromey <tom@tromey.com>
2713 * eval.c (eval_op_complement): New function.
2714 (evaluate_subexp_standard): Use it.
2716 2021-03-08 Tom Tromey <tom@tromey.com>
2718 * eval.c (eval_op_neg): New function.
2719 (evaluate_subexp_standard): Use it.
2721 2021-03-08 Tom Tromey <tom@tromey.com>
2723 * eval.c (eval_op_plus): New function.
2724 (evaluate_subexp_standard): Use it.
2726 2021-03-08 Tom Tromey <tom@tromey.com>
2728 * eval.c (eval_op_repeat): New function.
2729 (evaluate_subexp_standard): Use it.
2731 2021-03-08 Tom Tromey <tom@tromey.com>
2733 * eval.c (eval_op_leq): New function.
2734 (evaluate_subexp_standard): Use it.
2736 2021-03-08 Tom Tromey <tom@tromey.com>
2738 * eval.c (eval_op_geq): New function.
2739 (evaluate_subexp_standard): Use it.
2741 2021-03-08 Tom Tromey <tom@tromey.com>
2743 * eval.c (eval_op_gtr): New function.
2744 (evaluate_subexp_standard): Use it.
2746 2021-03-08 Tom Tromey <tom@tromey.com>
2748 * eval.c (eval_op_less): New function.
2749 (evaluate_subexp_standard): Use it.
2751 2021-03-08 Tom Tromey <tom@tromey.com>
2753 * eval.c (eval_op_notequal): New function.
2754 (evaluate_subexp_standard): Use it.
2756 2021-03-08 Tom Tromey <tom@tromey.com>
2758 * eval.c (eval_op_equal): New function.
2759 (evaluate_subexp_standard): Use it.
2761 2021-03-08 Tom Tromey <tom@tromey.com>
2763 * eval.c (eval_op_subscript): New function.
2764 (evaluate_subexp_standard): Use it.
2766 2021-03-08 Tom Tromey <tom@tromey.com>
2768 * eval.c (eval_op_binary): New function.
2769 (evaluate_subexp_standard): Use it.
2771 2021-03-08 Tom Tromey <tom@tromey.com>
2773 * eval.c (eval_op_sub): New function.
2774 (evaluate_subexp_standard): Use it.
2776 2021-03-08 Tom Tromey <tom@tromey.com>
2778 * eval.c (eval_op_add): New function.
2779 (evaluate_subexp_standard): Use it.
2781 2021-03-08 Tom Tromey <tom@tromey.com>
2783 * eval.c (eval_op_member): New function.
2784 (evaluate_subexp_standard): Use it.
2786 2021-03-08 Tom Tromey <tom@tromey.com>
2788 * eval.c (eval_op_structop_ptr): New function.
2789 (evaluate_subexp_standard): Use it.
2791 2021-03-08 Tom Tromey <tom@tromey.com>
2793 * eval.c (eval_op_structop_struct): New function.
2794 (evaluate_subexp_standard): Use it.
2796 2021-03-08 Tom Tromey <tom@tromey.com>
2798 * eval.c (eval_op_ternop): New function.
2799 (evaluate_subexp_standard): Use it.
2801 2021-03-08 Tom Tromey <tom@tromey.com>
2803 * eval.c (eval_op_concat): New function.
2804 (evaluate_subexp_standard): Use it.
2806 2021-03-08 Tom Tromey <tom@tromey.com>
2808 * eval.c (eval_op_objc_selector): New function.
2809 (evaluate_subexp_standard): Use it.
2811 2021-03-08 Tom Tromey <tom@tromey.com>
2813 * eval.c (eval_op_string): New function.
2814 (evaluate_subexp_standard): Use it.
2816 2021-03-08 Tom Tromey <tom@tromey.com>
2818 * eval.c (eval_op_register): New function.
2819 (evaluate_subexp_standard): Use it.
2821 2021-03-08 Tom Tromey <tom@tromey.com>
2823 * eval.c (eval_op_func_static_var): New function.
2824 (evaluate_subexp_standard): Use it.
2826 2021-03-08 Tom Tromey <tom@tromey.com>
2828 * eval.c (eval_op_var_msym_value): New function.
2829 (evaluate_subexp_standard): Use it.
2831 2021-03-08 Tom Tromey <tom@tromey.com>
2833 * eval.c (eval_op_var_entry_value): New function.
2834 (evaluate_subexp_standard): Use it.
2836 2021-03-08 Tom Tromey <tom@tromey.com>
2838 * eval.c (eval_op_scope): New function.
2839 (evaluate_subexp_standard): Use it.
2841 2021-03-06 Chernov Sergey <klen_s@mail.ru>
2844 * ada-lang.c (ada_fold_name): Use gdb::to_string.
2846 2021-03-06 Tom Tromey <tom@tromey.com>
2848 * dwarf2/sect-names.h (dwarf2_elf_names): Declare.
2849 * dwarf2/read.h (dwarf2_get_dwz_file): Move to dwz.h.
2850 * dwarf2/read.c (dwarf2_elf_names): No longer static.
2851 (locate_dwz_sections, dwz_search_other_debugdirs)
2852 (dwarf2_get_dwz_file): Move to dwz.c.
2853 * dwarf2/dwz.h (dwarf2_get_dwz_file): Move declaration from
2855 * dwarf2/dwz.c (locate_dwz_sections, dwz_search_other_debugdirs)
2856 (dwarf2_get_dwz_file): Move from read.c.
2858 2021-03-06 Tom Tromey <tom@tromey.com>
2860 * debuginfod-support.h: Include scoped_fd.h.
2862 2021-03-06 Tom Tromey <tom@tromey.com>
2864 * dwarf2/read.h (dwarf2_get_dwz_file): Add 'require' parameter.
2865 * dwarf2/read.c (dwarf2_get_dwz_file): Add 'require' parameter.
2866 (get_abbrev_section_for_cu, read_attribute_value)
2867 (get_debug_line_section): Update.
2868 * dwarf2/macro.c (dwarf_decode_macro_bytes): Update.
2870 2021-03-06 Tom Tromey <tom@tromey.com>
2872 * dwarf2/sect-names.h (struct dwarf2_section_names) <matches>: New
2874 * dwarf2/read.c (section_is_p): Remove.
2875 (dwarf2_per_bfd::locate_sections)
2876 (dwarf2_per_bfd::locate_sections, locate_dwz_sections)
2877 (locate_v1_virtual_dwo_sections, dwarf2_locate_dwo_sections)
2878 (dwarf2_locate_common_dwp_sections)
2879 (dwarf2_locate_v2_dwp_sections, dwarf2_locate_v5_dwp_sections):
2882 2021-03-06 Tom Tromey <tom@tromey.com>
2884 * xcoffread.c: Include sect-names.h.
2885 * symfile.h (struct dwarf2_section_names, struct
2886 dwarf2_debug_sections): Move to dwarf2/sect-names.h.
2887 * dwarf2/sect-names.h: New file, from symfile.h.
2888 * dwarf2/read.c: Include sect-names.h.
2890 2021-03-06 Tom Tromey <tom@tromey.com>
2892 * dwarf2/read.c (read_attribute): Make 'abbrev' const.
2893 * dwarf2/abbrev.c (abbrev_table::alloc_abbrev): Remove.
2894 (abbrev_table::read): Update.
2895 * dwarf2/abbrev.h (struct attr_abbrev): Move earlier.
2896 (struct abbrev_info): Reformat.
2897 <attrs>: Now an array.
2898 (struct abbrev_table) <alloc_abbrev>: Remove.
2900 2021-03-06 Weimin Pan <weimin.pan@oracle.com>
2902 * ctfread.c (ctf_psymtab_add_enums): New function.
2903 (ctf_psymtab_type_cb): call ctf_psymtab_add_enums.
2905 2021-03-06 Weimin Pan <weimin.pan@oracle.com>
2907 * ctfread.c (read_func_kind_type): Set up function arguments.
2909 2021-03-05 Craig Blackmore <craig.blackmore@embecosm.com>
2910 Andrew Burgess <andrew.burgess@embecosm.com>
2912 * riscv-none-tdep.c: Add 'user-regs.h' and 'target-description.h'
2914 (riscv_csrset): New static global.
2915 (riscv_update_csrmap): New function.
2916 (riscv_iterate_over_regset_sections): Process CSRs.
2918 2021-03-05 Andrew Burgess <andrew.burgess@embecosm.com>
2920 * riscv-tdep.c (riscv_feature_name_csr): Define.
2921 (riscv_feature_name_cpu): Define.
2922 (riscv_feature_name_fpu): Define.
2923 (riscv_feature_name_virtual): Define.
2924 (riscv_xreg_feature): Use riscv_feature_name_cpu.
2925 (riscv_freg_feature): Use riscv_feature_name_fpu.
2926 (riscv_virtual_feature): Use riscv_feature_name_virtual.
2927 (riscv_csr_feature): Use riscv_feature_name_csr.
2928 * riscv-tdep.h (riscv_feature_name_csr): Declare.
2930 2021-03-05 Andrew Burgess <andrew.burgess@embecosm.com>
2931 Craig Blackmore <craig.blackmore@embecosm.com>
2933 * Makefile.in (ALL_TARGET_OBS): Add riscv-none-tdep.o.
2934 (ALLDEPFILES): Add riscv-none-tdep.c.
2935 * configure: Regenerate.
2936 * configure.ac (CONFIG_OBS): Add elf-none-tdep.o when BFD has ELF
2938 * configure.tgt (riscv*-*-*): Include riscv-none-tdep.c.
2939 * elf-none-tdep.c: New file.
2940 * elf-none-tdep.h: New file.
2941 * riscv-none-tdep.c: New file.
2943 2021-03-05 Craig Blackmore <craig.blackmore@embecosm.com>
2944 Andrew Burgess <andrew.burgess@embecosm.com>
2946 * corelow.c: Add 'xml-tdesc.h' include.
2947 (core_target::read_description): Load the target description from
2948 the core file when possible.
2949 * fbsd-tdep.c (fbsd_make_corefile_notes): Add target description
2951 * gcore-elf.c: Add 'gdbsupport/tdesc.h' include.
2952 (gcore_elf_make_tdesc_note): New function.
2953 * gcore-elf.h (gcore_elf_make_tdesc_note): Declare.
2954 * linux-tdep.c (linux_make_corefile_notes): Add target description
2957 2021-03-05 Andrew Burgess <andrew.burgess@embecosm.com>
2959 * Makefile.in (SFILES): Add gcore-elf.c.
2960 (HFILES_NO_SRCDIR): Add gcore-elf.h
2961 * configure: Regenerate.
2962 * configure.ac: Add gcore-elf.o to CONFIG_OBS if we have ELF
2964 * fbsd-tdep.c: Add 'gcore-elf.h' include.
2965 (struct fbsd_collect_regset_section_cb_data): Delete.
2966 (fbsd_collect_regset_section_cb): Delete.
2967 (fbsd_collect_thread_registers): Delete.
2968 (struct fbsd_corefile_thread_data): Delete.
2969 (fbsd_corefile_thread): Delete.
2970 (fbsd_make_corefile_notes): Call
2971 gcore_elf_build_thread_register_notes instead of the now deleted
2973 * gcore-elf.c: New file, the content was moved here from
2974 linux-tdep.c, functions were renamed and given minor cleanup.
2975 * gcore-elf.h: New file.
2976 * gcore.c (gcore_find_signalled_thread): Moved here from
2977 linux-tdep.c and given a new name. Minor cleanups.
2978 * gcore.h (gcore_find_signalled_thread): Declare.
2979 * linux-tdep.c: Add 'gcore.h' and 'gcore-elf.h' includes.
2980 (struct linux_collect_regset_section_cb_data): Delete.
2981 (linux_collect_regset_section_cb): Delete.
2982 (linux_collect_thread_registers): Delete.
2983 (linux_corefile_thread): Call
2984 gcore_elf_build_thread_register_notes.
2985 (find_signalled_thread): Delete.
2986 (linux_make_corefile_notes): Call gcore_find_signalled_thread.
2988 2021-03-04 Simon Marchi <simon.marchi@polymtl.ca>
2991 * sparc-nat.h (sparc_fetch_inferior_registers): Add
2992 process_stratum_target parameter,
2993 sparc_store_inferior_registers): update callers.
2994 * sparc-nat.c (sparc_fetch_inferior_registers,
2995 sparc_store_inferior_registers): Add process_stratum_target
2996 parameter. Switch current thread before calling
2997 sparc_supply_gregset / sparc_collect_rwindow.
2998 (sparc_store_inferior_registers): Likewise.
2999 * sparc-obsd-tdep.c (sparc32obsd_supply_uthread): Add assertion.
3000 (sparc32obsd_collect_uthread): Likewise.
3001 * sparc-tdep.c (sparc_supply_rwindow, sparc_collect_rwindow):
3003 * sparc64-obsd-tdep.c (sparc64obsd_collect_uthread,
3004 sparc64obsd_supply_uthread): Add assertion.
3006 2021-03-04 Tom Tromey <tromey@adacore.com>
3008 * ada-lang.c (struct match_data) <found_sym>: Now bool.
3009 (aux_add_nonlocal_symbols): Update.
3010 (ada_add_block_symbols): Change "found_sym" to bool.
3012 2021-03-03 Tom Tromey <tromey@adacore.com>
3014 * ada-lang.c (ada_resolve_function): Update comment.
3015 (is_nonfunction, add_symbols_from_enclosing_procs)
3016 (remove_extra_symbols): Likewise.
3017 (struct match_data): Add constructor, initializers.
3018 (add_nonlocal_symbols): Remove memset.
3019 (aux_add_nonlocal_symbols): Update comment.
3020 (ada_add_block_renamings, add_nonlocal_symbols)
3021 (ada_add_all_symbols): Likewise.
3022 * ada-exp.y (write_var_or_type): Clean up trailing whitespace.
3024 2021-03-02 Tom Tromey <tromey@adacore.com>
3026 * ada-lang.c (cast_from_gnat_encoded_fixed_point_type)
3027 (cast_to_gnat_encoded_fixed_point_type): Remove.
3028 (ada_value_cast, ada_evaluate_subexp): Update.
3029 (gnat_encoded_fixed_point_type_info)
3030 (ada_is_gnat_encoded_fixed_point_type)
3031 (gnat_encoded_fixed_point_delta)
3032 (gnat_encoded_fixed_point_scaling_factor): Remove.
3033 * ada-lang.h (ada_is_gnat_encoded_fixed_point_type)
3034 (gnat_encoded_fixed_point_delta)
3035 (gnat_encoded_fixed_point_scaling_factor): Don't declare.
3036 * ada-typeprint.c (print_gnat_encoded_fixed_point_type): Remove.
3037 (ada_print_type): Update.
3038 * ada-valprint.c (ada_value_print_num): Update.
3039 * dwarf2/read.c (ada_get_gnat_encoded_number)
3040 (ada_get_gnat_encoded_ratio): New functions.
3041 (finish_fixed_point_type): Use them. Add parameters.
3042 (GNAT_FIXED_POINT_SUFFIX): New define.
3043 (gnat_encoded_fixed_point_type_info): New function.
3044 (read_base_type): Handle gnat encodings.
3046 2021-03-02 Tom Tromey <tromey@adacore.com>
3048 * ada-lang.c (ada_fold_name, ada_variant_discrim_name)
3049 (ada_enum_name, scan_discrim_bound, to_fixed_range_type): Use
3051 (GROW_VECT): Remove.
3052 (grow_vect): Remove.
3054 2021-03-02 Tom Tromey <tromey@adacore.com>
3056 * ada-lang.h (ada_lookup_symbol_list): Return a vector.
3057 * ada-lang.c (resolve_subexp): Update.
3058 (ada_resolve_function): Accept a vector.
3059 (is_nonfunction, add_defn_to_vec)
3060 (add_symbols_from_enclosing_procs): Likewise.
3061 (num_defns_collected, defns_collected): Remove.
3062 (remove_extra_symbols): Return a vector.
3063 (remove_irrelevant_renamings): Return void.
3064 (ada_add_local_symbols): Accept a vector.
3065 (struct match_data) <obstackp>: Remove.
3066 <resultp>: New member.
3067 (aux_add_nonlocal_symbols): Update.
3068 (ada_add_block_renamings, add_nonlocal_symbols)
3069 (ada_add_all_symbols): Accept a vector.
3070 (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Return a
3072 (ada_lookup_symbol): Update.
3073 (ada_add_block_symbols): Accept a vector.
3074 (get_var_value, iterate_over_symbols): Update.
3075 * ada-exp.y (block_lookup, write_var_or_type, write_name_assoc):
3078 2021-03-02 Tom Tromey <tromey@adacore.com>
3080 * ada-lang.c (resolve_subexp): Use any_of and erase-remove idiom.
3082 2021-03-02 Tom Tromey <tromey@adacore.com>
3084 * ada-lang.c (struct ada_symbol_cache) <cache_space>: Now an
3087 (ada_pspace_data): Remove destructor.
3088 <sym_cache>: Now a unique_ptr.
3089 (ada_init_symbol_cache, ada_free_symbol_cache): Remove.
3090 (ada_get_symbol_cache): Use 'new'.
3091 (ada_clear_symbol_cache): Rewrite.
3093 2021-03-02 Tom Tromey <tromey@adacore.com>
3095 * ada-lang.c (add_nonlocal_symbols): Handle case where objfile->sf
3098 2021-02-27 Lancelot Six <lsix@lancelotsix.com>
3101 * source.c (add_path): Skip empty dirnames.
3103 2021-02-25 Kevin Buettner <kevinb@redhat.com>
3105 * nat/aarch64-sve-linux-ptrace.h: Add comment regarding
3106 include order for <sys/ptrace.h> and <asm/ptrace.h>.
3108 2021-02-25 Simon Marchi <simon.marchi@polymtl.ca>
3111 * target.c (target_mourn_inferior): Only compare pids in
3112 target_mourn_inferior.
3114 2021-02-25 Jan Matyas <jmatyas@codasip.com>
3117 * remote.c (remote_target::start_remote): Ensure the single
3118 thread, automatically added for remote targets without the
3119 concept of threading, is initially in set to the "resumed"
3121 * remote.c (remote_target::add_current_inferior_and_thread):
3122 Add return value - return the main thread.
3124 2021-02-25 Jan Vrany <jan.vrany@labware.com>
3126 * gdb/mi/mi-interp.c (mi_traceframe_changed): Remove trailing \n from output.
3127 (mi_tsv_created): Likewise.
3128 (mi_tsv_deleted): Likewise.
3130 2021-02-25 Tom de Vries <tdevries@suse.de>
3133 * dwarf2/read.c (open_and_init_dwo_file): Use rcuh_kind::COMPILE as
3134 section_kind for &dwo_file->sections.info.
3136 2021-02-25 Andrew Burgess <andrew.burgess@embecosm.com>
3139 * f-lang.c (fortran_argument_convert): Delete declaration.
3140 (fortran_prepare_argument): New function.
3141 (evaluate_subexp_f): Move logic to new function
3142 fortran_prepare_argument.
3144 2021-02-25 Andrew Burgess <andrew.burgess@embecosm.com>
3146 * f-exp.y (f77_keywords): Add 'associated'.
3147 * f-lang.c (fortran_associated): New function.
3148 (evaluate_subexp_f): Handle FORTRAN_ASSOCIATED.
3149 (operator_length_f): Likewise.
3150 (print_unop_or_binop_subexp_f): New function.
3151 (print_subexp_f): Make use of print_unop_or_binop_subexp_f for
3152 FORTRAN_ASSOCIATED, FORTRAN_LBOUND, and FORTRAN_UBOUND.
3153 (dump_subexp_body_f): Handle FORTRAN_ASSOCIATED.
3154 (operator_check_f): Likewise.
3155 * std-operator.def: Add FORTRAN_ASSOCIATED.
3157 2021-02-25 Andrew Burgess <andrew.burgess@embecosm.com>
3159 * f-exp.y (fortran_operators): Add ".xor.".
3161 2021-02-24 Tom de Vries <tdevries@suse.de>
3164 * dwarf2/attribute.c (attribute::form_is_signed): New function
3166 * dwarf2/attribute.h (attribute::as_signed): ... here.
3167 (attribute::is_nonnegative, attribute::as_nonnegative): New function.
3168 (attribute::form_is_signed): Declare.
3169 * dwarf2/read.c (new_symbol): Use is_nonnegative and as_nonnegative
3170 for DW_AT_decl_file.
3172 2021-02-24 Kevin Buettner <kevinb@redhat.com>
3174 * nat/aarch64-linux-hw-point.c: Add comment regarding include
3175 order for <sys/ptrace.h> and <asm/ptrace.h>.
3177 2021-02-24 Kevin Buettner <kevinb@redhat.com>
3179 * nat/aarch64-linux-hw-point.c: Include <asm/ptrace.h> after
3182 2021-02-24 Andrew Burgess <andrew.burgess@embecosm.com>
3184 * exec.c (set_section_command): Move variable declarations into
3185 the function body, and use std::string instead of a fixed size
3188 2021-02-24 Andrew Burgess <andrew.burgess@embecosm.com>
3190 * exec.c (exec_target::get_section_table): Delete member function.
3191 (section_table_read_available_memory): Use current_top_target, not
3192 just the exec_ops target.
3193 * target-delegates.c: Regenerate.
3194 * target.c (default_get_section_table): New function.
3195 * target.h (target_ops::get_section_table): Change default
3196 behaviour to call default_get_section_table.
3197 (default_get_section_table): Declare.
3199 2021-02-24 Andrew Burgess <andrew.burgess@embecosm.com>
3201 * exec.c (exec_target::close): Call new clear_target_sections
3203 (program_space::add_target_sections): Update name of member
3205 (program_space::add_target_sections): Update name of member
3207 (program_space::remove_target_sections): Likewise.
3208 (exec_one_fork): Use new target_sections member function.
3209 (exec_target::get_section_table): Likewise.
3210 (exec_target::files_info): Likewise.
3211 (set_section_command): Likewise.
3212 (exec_set_section_address): Likewise.
3213 (exec_target::has_memory): Use new target_sections member
3215 * progspace.h (program_space::clear_target_sections): New member
3217 (program_space::target_sections): Rename member variable to
3218 m_target_sections, replace with a new member function.
3219 (program_space::m_target_sections): New member variable.
3220 * solib-dsbt.c (scan_dyntag): Use new member function.
3221 * solib-svr4.c (scan_dyntag): Likewise.
3223 2021-02-24 Andrew Burgess <andrew.burgess@embecosm.com>
3225 * gdb/bfd-target.c (class target_bfd) <get_section_table>: Make
3227 * gdb/exec.c (struct exec_target) <get_section_table>: Likewise.
3228 (section_table_read_available_memory): Make local const.
3229 (exec_target::xfer_partial): Make local const.
3230 (print_section_info): Make parameter const.
3231 * gdb/exec.h (print_section_info): Likewise.
3232 * gdb/ppc64-tdep.c (ppc64_convert_from_func_ptr_addr): Make local
3234 * gdb/record-btrace.c (record_btrace_target::xfer_partial):
3236 * gdb/remote.c (remote_target::remote_xfer_live_readonly_partial):
3238 * gdb/s390-tdep.c (s390_load): Likewise.
3239 * gdb/solib-dsbt.c (scan_dyntag): Likewise.
3240 * gdb/solib-svr4.c (scan_dyntag): Likewise.
3241 * gdb/target-debug.h (target_debug_print_target_section_table_p):
3243 (target_debug_print_const_target_section_table_p): ...this.
3244 * gdb/target-delegates.c: Regenerate.
3245 * gdb/target.c (target_get_section_table): Make return type const.
3246 (target_section_by_addr): Likewise. Also make some locals const.
3247 (memory_xfer_partial_1): Make some locals const.
3248 * gdb/target.h (struct target_ops) <get_section_table>: Make
3250 (target_section_by_addr): Likewise.
3251 (target_get_section_table): Likewise.
3253 2021-02-24 Andrew Burgess <andrew.burgess@embecosm.com>
3255 * NEWS: Mention new 'maint info target-sections' command.
3256 * maint.c (maintenance_info_target_sections): New function.
3257 (_initialize_maint_cmds): Register new command.
3259 2021-02-24 Andrew Burgess <andrew.burgess@embecosm.com>
3261 * riscv-tdep.c (riscv_features_from_gdbarch_info): Rename to...
3262 (riscv_features_from_bfd): ...this. Change parameter type to
3263 'bfd*', and update as required.
3264 (riscv_find_default_target_description): Update call to
3265 riscv_features_from_bfd. Select a default xlen based on
3267 (riscv_gdbarch_init): Update call to riscv_features_from_bfd.
3269 2021-02-24 Andrew Burgess <andrew.burgess@embecosm.com>
3271 * eval.c (evaluate_subexp_standard): Call value_ind for points to
3272 dynamic types in UNOP_IND.
3274 2021-02-23 Simon Marchi <simon.marchi@polymtl.ca>
3277 * dwarf2/read.c (dwarf2_queue_guard) <dwarf2_queue_guard>:
3279 (~dwarf2_queue_guard): Clear queue.
3280 (queue_comp_unit): Assert that queue is
3282 (process_queue): Adjust.
3283 * dwarf2/read.h (struct dwarf2_per_bfd) <queue>: Make optional.
3285 2021-02-23 Simon Marchi <simon.marchi@polymtl.ca>
3288 * dwarf2/read.c (maybe_queue_comp_unit): Check if CU is expanded
3289 to decide whether or not to enqueue it for expansion.
3290 (follow_die_offset, follow_die_sig_1): Ensure we load the DIEs
3291 after calling maybe_queue_comp_unit.
3293 2021-02-23 Simon Marchi <simon.marchi@polymtl.ca>
3295 * linux-nat.c (linux_nat_filter_event): Return void.
3297 2021-02-22 Tom Tromey <tromey@adacore.com>
3299 * solib-svr4.c (enable_break): Update.
3300 * bfd-target.c (class target_bfd) <target_bfd>: Change parameter
3302 (target_bfd_reopen): Change parameter type.
3303 * bfd-target.h (target_bfd_reopen): Change parameter type.
3305 2021-02-22 Simon Marchi <simon.marchi@polymtl.ca>
3307 * thread.c (add_thread_silent): Add assert.
3308 (find_thread_ptid): Add assert.
3310 2021-02-22 Simon Marchi <simon.marchi@polymtl.ca>
3313 * inf-ptrace.c (struct target_unpusher): Move to target.h.
3314 (target_unpush_up): Likewise.
3315 * procfs.c (procfs_target::attach): Push target early. Use
3316 target_unpush_up to unpush target in case of error.
3317 * target.h (struct target_unpusher): Move here.
3318 (target_unpush_up): Likewise.
3320 2021-02-19 Kevin Buettner <kevinb@redhat.com>
3322 * nat/amd64-linux-siginfo.c: Include "gdbsupport/common-defs.h"
3323 (which in turn includes <gnulib/config.h>) before include
3326 2021-02-19 Nelson Chu <nelson.chu@sifive.com>
3329 * riscv-tdep.c (decode_ci_type_insn): Updated encoding macros.
3330 (decode_j_type_insn): Likewise.
3331 (decode_cj_type_insn): Likewise.
3332 (decode_b_type_insn): Likewise.
3335 2021-02-18 Tom Tromey <tom@tromey.com>
3337 * expression.h (struct expression) <evaluate>: Declare method.
3338 * eval.c (evaluate_subexp): Simplify.
3339 (expression::evaluate): New method.
3340 (evaluate_expression, evaluate_type): Use expression::evaluate.
3342 2021-02-17 Kevin Buettner <kevinb@redhat.com>
3344 * ada-lang.c (ada_fold_name): Check for non-empty string prior
3346 (ada_lookup_name_info): Likewise.
3348 2021-02-13 Mike Frysinger <vapier@gentoo.org>
3350 * aclocal.m4: Regenerate.
3352 2021-02-12 Tom de Vries <tdevries@suse.de>
3355 * linux-nat.c (lin_thread_get_thread_signals): Remove.
3356 (lin_thread_signals): New static var.
3357 (lin_thread_get_thread_signal_num, lin_thread_get_thread_signal):
3359 * linux-nat.h (lin_thread_get_thread_signals): Remove.
3360 (lin_thread_get_thread_signal_num, lin_thread_get_thread_signal):
3362 * linux-thread-db.c (check_thread_signals): Use
3363 lin_thread_get_thread_signal_num and lin_thread_get_thread_signal.
3365 2021-02-12 Andrew Burgess <andrew.burgess@embecosm.com>
3367 * f-exp.y (f77_keywords): Add allocated.
3368 * f-lang.c (evaluate_subexp_f): Handle UNOP_FORTRAN_ALLOCATED.
3369 (operator_length_f): Likewise.
3370 (print_subexp_f): Likewise.
3371 (dump_subexp_body_f): Likewise.
3372 (operator_check_f): Likewise.
3373 * std-operator.def (UNOP_FORTRAN_ALLOCATED): New operator.
3375 2021-02-11 Tom de Vries <tdevries@suse.de>
3378 * dwarf2/attribute.c (attribute::form_requires_reprocessing):
3379 Return true for DW_FORM_strx.
3381 2021-02-11 Tom Tromey <tromey@adacore.com>
3384 * parse.c (write_exp_symbol_reference): Write sym.block.
3386 2021-02-11 Andrew Burgess <andrew.burgess@embecosm.com>
3388 * NEWS: Mention changes to 'maint info sections'.
3389 * maint.c (match_substring): Return a bool, fix whitespace issue.
3390 (struct single_bfd_flag_info): New struct.
3391 (bfd_flag_info): New static global.
3392 (match_bfd_flags): Return a bool, use bfd_flag_info.
3393 (print_bfd_flags): Use bfd_flag_info.
3394 (maint_print_section_info): Delete trailing whitespace.
3395 (struct maint_info_sections_opts): New struct.
3396 (maint_info_sections_option_defs): New static global.
3397 (maint_info_sections_completer): New function.
3398 (maintenance_info_sections): Use option parsing mechanism.
3399 (_initialize_maint_cmds): Update command help text for 'maint info
3400 sections' and register a command completer.
3402 2021-02-11 Andrew Burgess <andrew.burgess@embecosm.com>
3404 * maint.c (print_bfd_section_info_maybe_relocated): Delete,
3405 functionality merged into...
3406 (maint_print_all_sections): ...this new function.
3407 (maintenance_info_sections): Make use of maint_print_all_sections,
3408 allow all objects to be printed even where there's no executable.
3410 2021-02-11 Andrew Burgess <andrew.burgess@embecosm.com>
3412 * breakpoint.c (resolve_sal_pc): Make use of
3413 bound_minimal_symbol::obj_section.
3414 * maint.c (maintenance_translate_address): Likewise.
3415 * minsyms.c (minimal_symbol_upper_bound): Likewise.
3416 * minsyms.h (struct bound_minimal_symbol) <obj_section>: New
3418 * printcmd.c (info_address_command): Make use of
3419 bound_minimal_symbol::obj_section.
3421 2021-02-11 Alan Modra <amodra@gmail.com>
3423 * arm-symbian-tdep.c: Delete.
3424 * NEWS: Mention arm-symbian removal.
3425 * Makefile.in: Remove arm-symbian-tdep entries.
3426 * configure.tgt: Remove arm*-*-symbianelf*.
3427 * doc/gdb.texinfo: Remove mention of SymbianOS.
3428 * osabi.c (gdb_osabi_names): Remove "Symbian".
3429 * osabi.h (enum gdb_osabi): Remove GDB_OSABI_SYMBIAN.
3430 * testsuite/gdb.base/ending-run.exp: Remove E32Main handling.
3431 * testsuite/gdb.ada/catch_ex_std.exp: Remove arm*-*-symbianelf*
3433 * testsuite/gdb.base/dup-sect.exp: Likewise.
3434 * testsuite/gdb.base/long_long.exp: Likewise.
3435 * testsuite/gdb.base/solib-weak.exp: Likewise.
3436 * testsuite/gdb.guile/scm-section-script.exp: Likewise.
3437 * testsuite/gdb.python/py-section-script.exp: Likewise.
3438 * testsuite/lib/dwarf.exp: Likewise.
3439 * testsuite/lib/gdb.exp: Likewise.
3441 2021-02-10 Andrew Burgess <andrew.burgess@embecosm.com>
3443 * f-exp.y (UNOP_OR_BINOP_INTRINSIC): New token.
3444 (exp): New pattern using UNOP_OR_BINOP_INTRINSIC.
3445 (one_or_two_args): New pattern.
3446 (f77_keywords): Add lbound and ubound.
3447 * f-lang.c (fortran_bounds_all_dims): New function.
3448 (fortran_bounds_for_dimension): New function.
3449 (evaluate_subexp_f): Handle FORTRAN_LBOUND and FORTRAN_UBOUND.
3450 (operator_length_f): Likewise.
3451 (print_subexp_f): Likewise.
3452 (dump_subexp_body_f): Likewise.
3453 (operator_check_f): Likewise.
3454 * std-operator.def (FORTRAN_LBOUND): Define.
3455 (FORTRAN_UBOUND): Define.
3457 2021-02-10 Andrew Burgess <andrew.burgess@embecosm.com>
3459 * coff-pe-read.c (add_pe_forwarded_sym): Make use of section_index
3460 and set_section_index member functions where appropriate.
3461 * coffread.c (coff_symtab_read): Likewise.
3462 (process_coff_symbol): Likewise.
3463 * ctfread.c (set_symbol_address): Likewise.
3464 * dwarf2/read.c (add_partial_symbol): Likewise.
3465 (var_decode_location): Likewise.
3466 * language.c: Likewise.
3467 * minsyms.c (minimal_symbol_reader::record_full): Likewise.
3468 (compact_minimal_symbols): Likewise.
3469 (minimal_symbol_upper_bound): Likewise.
3470 * objfiles.c (relocate_one_symbol): Likewise.
3471 * psympriv.h (partial_symbol::obj_section): Likewise.
3472 (partial_symbol::address): Likewise.
3473 * psymtab.c (partial_symtab::add_psymbol): Likewise.
3474 * stabsread.c (scan_file_globals): Likewise.
3475 * symmisc.c (dump_msymbols): Likewise.
3476 * symtab.c (general_symbol_info::obj_section): Likewise.
3477 (fixup_section): Likewise.
3478 (get_msymbol_address): Likewise.
3479 * symtab.h (general_symbol_info::section): Rename to...
3480 (general_symbol_info::m_section): ...this.
3481 (general_symbol_info::set_section_index): New member function.
3482 (general_symbol_info::section_index): Likewise.
3483 (SYMBOL_SECTION): Delete.
3484 (MSYMBOL_VALUE_ADDRESS): Make use of section_index and
3485 set_section_index member functions where appropriate.
3486 (MSYMBOL_SECTION): Delete.
3487 (symbol::symbol): Update to initialize 'm_section'.
3488 * xcoffread.c (read_xcoff_symtab): Make use of set_section_index.
3489 (process_xcoff_symbol): Likewise.
3491 2021-02-10 Andrew Burgess <andrew.burgess@embecosm.com>
3493 * breakpoint.c (resolve_sal_pc): Replace SYMBOL_OBJ_SECTION and
3494 MSYMBOL_OBJ_SECTION.
3495 * findvar.c (language_defn::read_var_value): Likewise.
3496 * infcmd.c (jump_command): Likewise.
3497 * linespec.c (minsym_found): Likewise.
3498 * maint.c (maintenance_translate_address): Likewise.
3499 * minsyms.c (lookup_minimal_symbol_by_pc_section): Likewise.
3500 (minimal_symbol_upper_bound): Likewise.
3501 * parse.c (find_minsym_type_and_address): Likewise.
3502 (operator_check_standard): Likewise.
3503 * printcmd.c (info_address_command): Likewise.
3504 * symmisc.c (dump_msymbols): Likewise.
3505 (print_symbol): Likewise.
3506 * symtab.c (general_symbol_info::obj_section): Define new
3508 (fixup_symbol_section): Replace SYMBOL_OBJ_SECTION.
3509 (find_pc_sect_compunit_symtab): Likewise.
3510 (find_function_start_sal): Likewise.
3511 (skip_prologue_sal): Replace SYMBOL_OBJ_SECTION and
3512 MSYMBOL_OBJ_SECTION.
3513 * symtab.h (struct general_symbol_info) <obj_section>: Declare new
3515 (SYMBOL_OBJ_SECTION): Delete.
3516 (MSYMBOL_OBJ_SECTION): Delete.
3518 2021-02-09 Tom Tromey <tom@tromey.com>
3520 * stap-probe.c (stap_parse_argument_conditionally): Fix typo.
3522 2021-02-09 Tom de Vries <tdevries@suse.de>
3525 * dwarf2/read.c (read_array_type): Return NULL when not being able to
3526 construct an array type. Add assert to ensure that element_type is
3529 2021-02-09 Andrew Burgess <andrew.burgess@embecosm.com>
3531 * gcore.c (struct gcore_collect_regset_section_cb_data): Delete.
3532 (gcore_collect_regset_section_cb): Delete.
3533 (gcore_collect_thread_registers): Delete.
3534 (gcore_build_thread_register_notes): Delete.
3535 (gcore_find_signalled_thread): Delete.
3536 * gcore.h: Remove 'gdbsupport/gdb_signals.h' include and delete
3537 'gdbarch' and 'thread_info' declarations.
3538 (gcore_build_thread_register_notes): Delete declaration.
3539 (gcore_find_signalled_thread): Likewise.
3540 * fbsd-tdep.c: Remove 'gcore.h' include.
3541 (struct fbsd_collect_regset_section_cb_data): New struct.
3542 (fbsd_collect_regset_section_cb): New function.
3543 (fbsd_collect_thread_registers): New function.
3544 (struct fbsd_corefile_thread_data): New struct.
3545 (fbsd_corefile_thread): New function.
3546 (fbsd_make_corefile_notes): Call FreeBSD specific code.
3547 * linux-tdep.c: Remove 'gcore.h' include.
3548 (struct linux_collect_regset_section_cb_data): New struct.
3549 (linux_collect_regset_section_cb): New function.
3550 (linux_collect_thread_registers): New function.
3551 (linux_corefile_thread): Call Linux specific code.
3552 (find_signalled_thread): New function.
3553 (linux_make_corefile_notes): Call find_signalled_thread.
3555 2021-02-09 Tom Tromey <tromey@adacore.com>
3557 * ada-lang.c (coerce_unspec_val_to_type): Avoid making lazy
3559 * value.c (value_contents_copy_raw): Now static.
3560 * value.h (value_contents_copy_raw): Don't declare.
3562 2021-02-09 Tom Tromey <tromey@adacore.com>
3564 * gdbtypes.c (resolve_dynamic_struct): Handle structure with no
3567 2021-02-08 Shahab Vahedi <shahab@synopsys.com>
3570 * arc-linux-tdep.c (handle_atomic_sequence): New.
3571 (arc_linux_software_single_step): Call handle_atomic_sequence().
3573 2021-02-08 Andrew Burgess <andrew.burgess@embecosm.com>
3575 * python/py-tui.c (gdbpy_tui_window) <is_valid>: New member
3577 (REQUIRE_WINDOW): Call is_valid member function.
3578 (REQUIRE_WINDOW_FOR_SETTER): New define.
3579 (gdbpy_tui_is_valid): Call is_valid member function.
3580 (gdbpy_tui_set_title): Call REQUIRE_WINDOW_FOR_SETTER instead.
3581 * tui/tui-data.h (struct tui_win_info) <is_visible>: Check
3583 * tui/tui-layout.c (tui_apply_current_layout): Add an assert.
3584 * tui/tui.c (tui_enable): Move setting of tui_active earlier in
3587 2021-02-08 Andrew Burgess <andrew.burgess@embecosm.com>
3589 * python/py-tui.c (gdbpy_tui_set_title): Check that the new value
3590 for the title is not nullptr.
3592 2021-02-08 Andrew Burgess <andrew.burgess@embecosm.com>
3594 * tui-layout.c (saved_tui_windows): Delete.
3595 (tui_apply_current_layout): Don't make use of saved_tui_windows,
3596 call new get_windows member function instead.
3597 (tui_get_window_by_name): Check in tui_windows.
3598 (tui_layout_window::apply): Don't add to tui_windows.
3599 * tui-layout.h (tui_layout_base::get_windows): New member function.
3600 (tui_layout_window::get_windows): Likewise.
3601 (tui_layout_split::get_windows): Likewise.
3603 2021-02-08 Andrew Burgess <andrew.burgess@embecosm.com>
3605 * tui/tui-layout.c (tui_apply_current_layout): Restore the delete
3606 of the window objects.
3608 2021-02-08 Andrew Burgess <andrew.burgess@embecosm.com>
3610 * python/python.c (gdbpy_print_stack): Reformat an error message.
3612 2021-02-08 Andrew Burgess <andrew.burgess@embecosm.com>
3614 * tui/tui-interp.c (tui_command_line_handler): New function.
3615 (tui_interp::resume): Register tui_command_line_handler as the
3617 * tui/tui-io.c (tui_inject_newline_into_command_window): New
3619 (tui_getc_1): Delete handling of '\n' and '\r'.
3620 * tui-io.h (tui_inject_newline_into_command_window): Declare.
3622 2021-02-07 Hannes Domani <ssbssa@yahoo.de>
3624 * tui/tui-regs.c (tui_data_window::display_registers_from):
3625 Mark invisible register sub windows.
3626 (tui_data_window::check_register_values): Ignore invisible
3627 register sub windows.
3629 2021-02-07 Hannes Domani <ssbssa@yahoo.de>
3631 * tui/tui-regs.c (tui_data_item_window::rerender): Don't call
3632 n_spaces with a negative value.
3634 2021-02-07 Hannes Domani <ssbssa@yahoo.de>
3636 * tui/tui-regs.c (tui_data_window::display_registers_from):
3637 Add refresh_window call.
3639 2021-02-07 Hannes Domani <ssbssa@yahoo.de>
3641 * python/py-frame.c (frapy_richcompare): Compare frame_id_is_next.
3643 2021-02-05 Simon Marchi <simon.marchi@polymtl.ca>
3645 * symmisc.c (std_in, std_out, std_err): Remove.
3646 (_initialize_symmisc): Don't set std_in, std_out and std_err.
3648 2021-02-05 Tom de Vries <tdevries@suse.de>
3650 PR breakpoints/27330
3651 * breakpoint.c (create_exception_master_breakpoint): Handle case that
3652 glibc object file has debug info.
3654 2021-02-05 Tom de Vries <tdevries@suse.de>
3657 * dwarf2/read.c (process_psymtab_comp_unit): Handle DW_TAG_type_unit.
3659 2021-02-05 Tom de Vries <tdevries@suse.de>
3661 PR breakpoints/27313
3662 * break-catch-syscall.c (catch_syscall_split_args): Reject negative
3665 2021-02-05 Tom Tromey <tom@tromey.com>
3667 * compile/compile-c-support.c (get_compile_context)
3668 (c_get_compile_context, cplus_get_compile_context): Change return
3670 * language.c (language_defn::get_compile_instance): New method.
3671 * language.h (language_defn::get_compile_instance): Change return
3672 type. No longer inline.
3673 * c-lang.c (c_language::get_compile_instance): Change return type.
3674 (cplus_language::get_compile_instance): Change return type.
3675 * c-lang.h (c_get_compile_context, cplus_get_compile_context):
3677 * compile/compile.c (compile_to_object): Update.
3679 2021-02-05 Tom Tromey <tom@tromey.com>
3681 * parser-defs.h (write_exp_symbol_reference): Declare.
3682 * parse.c (write_exp_symbol_reference): New function.
3683 * p-exp.y (variable): Use write_exp_symbol_reference.
3684 * m2-exp.y (variable): Use write_exp_symbol_reference.
3685 * f-exp.y (variable): Use write_exp_symbol_reference.
3686 * d-exp.y (PrimaryExpression): Use write_exp_symbol_reference.
3687 * c-exp.y (variable): Use write_exp_symbol_reference.
3689 2021-02-05 Tom de Vries <tdevries@suse.de>
3692 * valarith.c (complex_binop): Throw an error if complex type can't
3695 2021-02-05 Tom de Vries <tdevries@suse.de>
3698 * dwarf2/read.c (create_cus_from_debug_names_list): Add missing
3701 2021-02-05 Tom de Vries <tdevries@suse.de>
3703 * dwarf2/read.c (create_cus_from_debug_names_list): Fix indentation.
3705 2021-02-04 Mike Frysinger <vapier@gentoo.org>
3707 * configure.tgt (riscv*-*-*): Set gdb_sim.
3709 2021-02-04 Simon Marchi <simon.marchi@polymtl.ca>
3711 * target.c (target_is_non_stop_p): Return bool.
3712 * target.h (target_is_non_stop_p): Return bool.
3714 2021-02-04 Simon Marchi <simon.marchi@efficios.com>
3716 * record-full.c (record_full_async_inferior_event_handler):
3717 Don't clear async event handler.
3718 (record_full_base_target::wait): Clear async event handler at
3721 2021-02-04 Simon Marchi <simon.marchi@efficios.com>
3723 * record-btrace.c (record_btrace_handle_async_inferior_event):
3724 Don't clear async event handler.
3725 (record_btrace_target::wait): Clear async event handler at
3728 2021-02-04 Simon Marchi <simon.marchi@efficios.com>
3730 * remote.c (remote_target::wait): Clear async event handler at
3731 beginning, mark if needed at the end.
3732 (remote_async_inferior_event_handler): Don't set or clear async
3735 2021-02-04 Simon Marchi <simon.marchi@efficios.com>
3737 * async-event.h (async_event_handler_func): Add documentation.
3738 * async-event.c (check_async_event_handlers): Don't clear
3739 async_event_handler ready flag.
3740 * infrun.c (infrun_async_inferior_event_handler): Clear ready
3742 * record-btrace.c (record_btrace_handle_async_inferior_event):
3744 * record-full.c (record_full_async_inferior_event_handler):
3746 * remote-notif.c (remote_async_get_pending_events_handler):
3748 * remote.c (remote_async_inferior_event_handler): Likewise.
3750 2021-02-03 Simon Marchi <simon.marchi@polymtl.ca>
3752 * infrun.c (handle_inferior_event): Move stop_soon variable to
3755 2021-02-03 Pedro Alves <pedro@palves.net>
3757 * infcmd.c (detach_command): Hold strong reference to target, and
3758 if all-stop on entry, restart threads on exit.
3759 * infrun.c (switch_back_to_stepped_thread): Factor out bits to ...
3760 (restart_stepped_thread): ... this new function. Also handle
3762 (restart_after_all_stop_detach): New function.
3763 * infrun.h (restart_after_all_stop_detach): Declare.
3765 2021-02-03 Pedro Alves <pedro@palves.net>
3767 * infrun.c (struct step_over_info): Initialize fields.
3768 (prepare_for_detach): Handle ongoing in-line step over.
3770 2021-02-03 Pedro Alves <pedro@palves.net>
3772 * linux-nat.c (linux_nat_target::detach): Remove breakpoints
3774 * remote.c (remote_target::remote_detach_1): ... and here ...
3775 * target.c (target_detach): ... instead of here.
3776 * target.h (target_ops::detach): Add comment.
3778 2021-02-03 Pedro Alves <pedro@palves.net>
3780 * infrun.c (struct wait_one_event): Move higher up.
3781 (prepare_for_detach): Abort in-progress displaced steps instead of
3782 letting them complete.
3783 (handle_one): If the inferior is detaching, don't add the thread
3784 back to the global step-over chain.
3785 (restart_threads): Don't restart threads if detaching.
3786 (handle_signal_stop): Remove inferior::detaching reference.
3788 2021-02-03 Pedro Alves <pedro@palves.net>
3790 * infrun.c (prepare_for_detach): Don't release scoped_restore
3793 2021-02-03 Pedro Alves <pedro@palves.net>
3795 * infrun.c (handle_one): New function, factored out from ...
3796 (stop_all_threads): ... here.
3798 2021-02-03 Pedro Alves <pedro@palves.net>
3800 * remote.c (remote_notif_stop_ack): Don't error out on
3801 TARGET_WAITKIND_IGNORE; instead, just ignore the notification.
3802 (remote_target::discard_pending_stop_replies): Don't delete
3803 in-flight notification; instead, clear its contents.
3805 2021-02-03 Pedro Alves <pedro@palves.net>
3807 * remote.c (extended_remote_target::attach): Set target async in
3808 the target-non-stop path too.
3810 2021-02-03 Pedro Alves <pedro@palves.net>
3813 * infrun.c (handle_signal_stop): Move main context_switch call
3814 earlier, before STOP_QUIETLY_NO_SIGSTOP.
3816 2021-02-02 Lancelot SIX <lsix@lancelotsix.com>
3818 * NEWS (Changed commands): Add entry for the behavior change of
3819 the inferior command.
3820 * inferior.c (inferior_command): When no argument is given to the
3821 inferior command, display info about the currently selected
3824 2021-02-02 Simon Marchi <simon.marchi@efficios.com>
3826 * dwarf2/read.c (read_loclist_index, read_rnglist_index): Return
3828 (read_attribute_reprocess): Adjust.
3830 2021-02-02 Simon Marchi <simon.marchi@efficios.com>
3832 * dwarf2/die.h (struct die_info) <ranges_base>: Split in...
3833 <gnu_ranges_base>: ... this...
3834 <rnglists_base>: ... and this.
3835 * dwarf2/read.c (struct dwarf2_cu) <ranges_base>: Split in...
3836 <gnu_ranges_base>: ... this...
3837 <rnglists_base>: ... and this.
3838 (read_cutu_die_from_dwo): Adjust
3839 (dwarf2_get_pc_bounds): Adjust
3840 (dwarf2_record_block_ranges): Adjust.
3841 (read_full_die_1): Adjust
3842 (partial_die_info::read): Adjust.
3843 (read_rnglist_index): Adjust.
3845 2021-02-02 Simon Marchi <simon.marchi@efficios.com>
3848 * dwarf2/read.c (read_loclists_rnglists_header): Add
3849 header_offset parameter and use it.
3850 (read_loclist_index): Read header of the current contribution,
3851 not the one at the beginning of the section.
3852 (read_rnglist_index): Likewise.
3854 2021-02-02 Simon Marchi <simon.marchi@efficios.com>
3857 * dwarf2/attribute.h (struct attribute) <set_unsigned>: Clear
3858 requires_reprocessing flag.
3859 * dwarf2/attribute.c (attribute::form_is_unsigned): Handle
3861 (attribute::form_requires_reprocessing): Handle DW_FORM_rnglistx
3862 and DW_FORM_loclistx.
3863 * dwarf2/read.c (read_attribute_reprocess): Use set_unsigned
3864 instead of set_address for DW_FORM_loclistx and
3867 2021-02-02 Simon Marchi <simon.marchi@efficios.com>
3869 * dwarf2/read.c (read_loclist_index): Remove bound check for
3871 (read_rnglist_index): Likewise.
3873 2021-02-02 Simon Marchi <simon.marchi@efficios.com>
3875 * dwarf2/read.c (read_loclist_index): Add bound check for the end
3878 2021-02-02 Simon Marchi <simon.marchi@efficios.com>
3880 * dwarf2/read.c (read_rnglist_index): Fix bound check.
3882 2021-02-02 Simon Marchi <simon.marchi@efficios.com>
3884 * dwarf2/read.c (read_loclist_index): Change complaints into
3887 2021-02-02 Tom de Vries <tdevries@suse.de>
3890 * dwarf2/index-write.c (write_one_signatured_type): Skip if
3893 2021-02-01 Andrew Burgess <andrew.burgess@embecosm.com>
3895 * Makefile.in (HFILES_NO_SRCDIR): Add corefile.h.
3896 * gcore.c (struct gcore_collect_regset_section_cb_data): Moved
3897 here from linux-tdep.c and given a new name. Minor cleanups.
3898 (gcore_collect_regset_section_cb): Likewise.
3899 (gcore_collect_thread_registers): Likewise.
3900 (gcore_build_thread_register_notes): Likewise.
3901 (gcore_find_signalled_thread): Likewise.
3902 * gcore.h (gcore_build_thread_register_notes): Declare.
3903 (gcore_find_signalled_thread): Declare.
3904 * fbsd-tdep.c: Add 'gcore.h' include.
3905 (struct fbsd_collect_regset_section_cb_data): Delete.
3906 (fbsd_collect_regset_section_cb): Delete.
3907 (fbsd_collect_thread_registers): Delete.
3908 (struct fbsd_corefile_thread_data): Delete.
3909 (fbsd_corefile_thread): Delete.
3910 (fbsd_make_corefile_notes): Call
3911 gcore_build_thread_register_notes instead of the now deleted
3913 * linux-tdep.c: Add 'gcore.h' include.
3914 (struct linux_collect_regset_section_cb_data): Delete.
3915 (linux_collect_regset_section_cb): Delete.
3916 (linux_collect_thread_registers): Delete.
3917 (linux_corefile_thread): Call
3918 gcore_build_thread_register_notes.
3919 (find_signalled_thread): Delete.
3920 (linux_make_corefile_notes): Call gcore_find_signalled_thread.
3922 2021-01-29 Tom de Vries <tdevries@suse.de>
3924 PR breakpoints/26063
3925 * infrun.c (process_event_stop_test): Reset
3926 ecs->event_thread->current_line to 0 if is-stmt=n and frame has
3929 2021-01-28 Andrew Burgess <andrew.burgess@embecosm.com>
3931 * thread.c (thr_try_catch_cmd): Replace swith_to_thread with an
3932 assert. Extend the header comment.
3934 2021-01-28 Andrew Burgess <andrew.burgess@embecosm.com>
3936 * Makefile.in (SUBDIR_TUI_SRCS): Add tui/tui-location.c.
3937 (HFILES_NO_SRCDIR): Add tui/tui-location.h.
3938 * tui/tui-data.h (TUI_STATUS_WIN): Define.
3939 (tui_locator_win_info_ptr): Delete declaration.
3940 * tui/tui-disasm.c: Add 'tui/tui-location.h' include.
3941 (tui_disasm_window::set_contents): Fetch state from tui_location
3943 (tui_get_begin_asm_address): Likewise.
3944 * tui/tui-layout.c (tui_apply_current_layout): Remove special case
3946 (get_locator_window): Delete.
3947 (initialize_known_windows): Treat locator window just like all the
3949 * tui/tui-source.c: Add 'tui/tui-location.h' include.
3950 (tui_source_window::set_contents): Fetch state from tui_location
3952 (tui_source_window::showing_source_p): Likewise.
3953 * tui/tui-stack.c: Add 'tui/tui-location.h' include.
3955 (tui_locator_win_info_ptr): Delete.
3956 (tui_locator_window::make_status_line): Fetch state from
3957 tui_location global.
3958 (tui_locator_window::rerender): Remove check of 'handle',
3959 reindent function body.
3960 (tui_locator_window::set_locator_fullname): Delete.
3961 (tui_locator_window::set_locator_info): Delete.
3962 (tui_update_locator_fullname): Delete.
3963 (tui_show_frame_info): Likewise.
3964 (tui_show_locator_content): Access window through TUI_STATUS_WIN.
3965 * tui/tui-stack.h (tui_locator_window::set_locator_info): Moved to
3966 tui/tui-location.h and renamed to
3967 tui_location_tracker::set_location.
3968 (tui_locator_window::set_locator_fullname): Moved to
3969 tui/tui-location.h and renamed to
3970 tui_location_tracker::set_fullname.
3971 (tui_locator_window::full_name): Delete.
3972 (tui_locator_window::proc_name): Delete.
3973 (tui_locator_window::line_no): Delete.
3974 (tui_locator_window::addr): Delete.
3975 (tui_locator_window::gdbarch): Delete.
3976 (tui_update_locator_fullname): Delete declaration.
3977 * tui/tui-wingeneral.c (tui_refresh_all): Removed special handling
3979 * tui/tui-winsource.c: Add 'tui/tui-location.h' include.
3980 (tui_display_main): Call function on tui_location directly.
3981 * tui/tui.h (enum tui_win_type): Add STATUS_WIN.
3982 * tui/tui-location.c: New file.
3983 * tui/tui-location.h: New file.
3985 2021-01-28 Simon Marchi <simon.marchi@polymtl.ca>
3987 * gdbtypes.h (get_type_arch): Rename to...
3988 (struct type) <arch>: ... this, update all users.
3990 2021-01-28 Simon Marchi <simon.marchi@polymtl.ca>
3992 * gdbtypes.h (struct type) <arch>: Rename to...
3993 <arch_owner>: ... this, update all users.
3994 <objfile>: Rename to...
3995 <objfile_owner>: ... this, update all users.
3997 2021-01-28 Andrew Burgess <andrew.burgess@embecosm.com>
3999 * gdbcmd.h (execute_command_to_string): Update comment.
4000 * top.c (execute_command_to_string): Update header comment.
4002 2021-01-28 Tom de Vries <tdevries@suse.de>
4004 PR breakpoints/27205
4005 * breakpoint.c (create_longjmp_master_breakpoint_probe)
4006 (create_longjmp_master_breakpoint_names): New function, factored out
4008 (create_longjmp_master_breakpoint): ... here. Only try to install
4009 longjmp_names breakpoints in libc.so/libc.so.debug if installing probe
4010 breakpoint in libc.so failed.
4012 2021-01-27 Lancelot SIX <lsix@lancelotsix.com>
4015 * cli/cli-interp.c (cli_interp_base::set_logging): Ensure the
4016 unique_ptr is released when the wrapped pointer is kept for later
4019 2021-01-27 Matthew Malcomson <matthew.malcomson@arm.com>
4021 * aarch64-tdep.c (aarch64_displaced_step_others): Account for
4022 BLR and BR instructions.
4023 * arch/aarch64-insn.h (enum aarch64_opcodes): Add BR opcode.
4024 (enum aarch64_masks): New.
4026 2021-01-26 Tom Tromey <tromey@adacore.com>
4028 * windows-nat.c (DEBUG_EXEC, DEBUG_EVENTS, DEBUG_MEM)
4029 (DEBUG_EXCEPT): Use debug_prefixed_printf_cond.
4030 (windows_init_thread_list, windows_nat::handle_load_dll)
4031 (windows_nat::handle_unload_dll, windows_nat_target::resume)
4032 (windows_nat_target::resume)
4033 (windows_nat_target::get_windows_debug_event)
4034 (windows_nat_target::interrupt, windows_xfer_memory)
4035 (windows_nat_target::close): Update.
4036 * nat/windows-nat.c (DEBUG_EVENTS): Use
4037 debug_prefixed_printf_cond.
4038 (matching_pending_stop, fetch_pending_stop)
4039 (continue_last_debug_event): Update.
4041 2020-12-17 Mihails Strasuns <mihails.strasuns@intel.com>
4043 * linux-tdep.c (linux_make_mappings_corefile_notes): Start using
4044 elfcore_write_file_note.
4046 2021-01-26 Shahab Vahedi <shahab@synopsys.com>
4048 * arc-tdep.c (arc_add_reggroups): New function.
4049 (arc_gdbarch_init): Call arc_add_reggroups.
4051 2021-01-26 Anton Kolesov <anton.kolesov@synopsys.com>
4053 * arc-tdep.c (arc_skip_prologue): Log "pc" address.
4055 2021-01-25 Bernd Edlinger <bernd.edlinger@hotmail.de>
4056 Simon Marchi <simon.marchi@polymtl.ca>
4057 Tom de Vries <tdevries@suse.de>
4059 * dwarf2/read.c (partial_die_info::read): Use as_unsigned () for
4062 2021-01-25 Tom Tromey <tromey@adacore.com>
4064 * dwarf2/read.c (get_mpz): New function.
4065 (get_dwarf2_rational_constant): Use it.
4067 2021-01-25 Tom Tromey <tromey@adacore.com>
4069 * ada-lang.c (resolve_subexp): Handle array context.
4071 2021-01-23 Tom Tromey <tom@tromey.com>
4074 * compile/compile-loc2c.c (note_register): New function.
4075 (pushf_register_address, pushf_register): Use it.
4077 2021-01-23 Tom Tromey <tom@tromey.com>
4079 * symtab.h (struct symbol_computed_ops) <generate_c_location>:
4080 Change type of "registers_used".
4081 * dwarf2/loc.h (dwarf2_compile_property_to_c): Update.
4082 * dwarf2/loc.c (dwarf2_compile_property_to_c)
4083 (locexpr_generate_c_location, loclist_generate_c_location): Change
4084 type of "registers_used".
4085 * compile/compile.h (compile_dwarf_expr_to_c)
4086 (compile_dwarf_bounds_to_c): Update.
4087 * compile/compile-loc2c.c (pushf_register_address)
4088 (pushf_register, do_compile_dwarf_expr_to_c)
4089 (compile_dwarf_expr_to_c, compile_dwarf_bounds_to_c): Change type
4090 of "registers_used".
4091 * compile/compile-c.h (generate_c_for_variable_locations):
4093 * compile/compile-c-symbols.c (generate_vla_size)
4094 (generate_c_for_for_one_variable): Change type of
4096 (generate_c_for_variable_locations): Return std::vector.
4097 * compile/compile-c-support.c (generate_register_struct): Change
4098 type of "registers_used".
4101 2021-01-23 Tom Tromey <tom@tromey.com>
4103 * compile/compile-internal.h (class compile_instance)
4104 <set_arguments>: Change return type.
4105 * compile/compile.c (compile_to_object): Remove call to reset.
4106 (compile_instance::set_arguments): Change return type.
4108 2021-01-23 Simon Marchi <simon.marchi@polymtl.ca>
4110 * gdbtypes.c (copy_type_recursive): Use get_type_arch.
4111 * gdbtypes.h (struct type) <set_owner>: Add asserts.
4113 2021-01-23 Lancelot SIX <lsix@lancelotsix.com>
4115 * Makefile.in (SELFTESTS_SRCS): Add
4116 unittests/gdb_tilde_expand-selftests.c.
4117 * unittests/gdb_tilde_expand-selftests.c: New file.
4119 2021-01-22 Andrew Burgess <andrew.burgess@embecosm.com>
4122 * NEWS: Mention new command.
4123 * cli/cli-style.c: Add 'cli/cli-setshow.h' include.
4124 (version_style): Define.
4125 (cli_style_option::cli_style_option): Add intensity parameter, and
4127 (_initialize_cli_style): Register version style set/show commands.
4128 * cli/cli-style.h (cli_style_option): Add intensity parameter.
4129 (version_style): Declare.
4130 * top.c (print_gdb_version): Use version_stype, and styled_string
4131 to print the GDB version string.
4133 2021-01-22 Andrew Burgess <andrew.burgess@embecosm.com>
4135 * utils.c (emit_style_escape): Only emit an escape sequence if the
4136 requested style is different than the current applied style.
4137 (fputs_maybe_filtered): Adjust the juggling of the wrap_style, and
4138 current applied_style.
4139 (fputs_styled): Remove is_default check.
4140 (fputs_styled_unfiltered): Likewise.
4141 (vfprintf_styled_no_gdbfmt): Likewise.
4143 2021-01-22 Simon Marchi <simon.marchi@polymtl.ca>
4145 * remote.h (remote_debug_printf): New.
4146 (remote_debug_printf_nofunc): New.
4147 (REMOTE_SCOPED_DEBUG_ENTER_EXIT): New.
4148 * remote.c: Use above macros throughout file.
4150 2021-01-22 Simon Marchi <simon.marchi@polymtl.ca>
4152 * remote.h (remote_debug): Change to bool.
4153 * remote.c (remote_debug): Change to bool.
4154 (_initialize_remote): Adjust.
4156 2021-01-22 Simon Marchi <simon.marchi@polymtl.ca>
4158 * target.h (remote_debug): Move to...
4159 * remote.h (remote_debug): ... here.
4160 * top.c (remote_debug): Move to...
4161 * remote.c (remote_debug): ... here.
4162 * remote-sim.c: Include remote.h.
4164 2021-01-22 Simon Marchi <simon.marchi@polymtl.ca>
4166 * cli/cli-cmds.c (show_remote_debug): Remove.
4167 (show_remote_timeout): Remove.
4168 (_initialize_cli_cmds): Don't register commands.
4169 * remote.c (show_remote_debug): Move here.
4170 (show_remote_timeout): Move here.
4171 (_initialize_remote): Register commands.
4173 2021-01-22 Simon Marchi <simon.marchi@polymtl.ca>
4175 * gdbtypes.h (TYPE_OBJFILE): Remove, change all users to use the
4176 type::objfile method instead.
4178 2021-01-22 Simon Marchi <simon.marchi@polymtl.ca>
4180 * gdbtypes.h (TYPE_OBJFILE_OWNED): Remove, update all users to
4181 use the type::is_objfile_owned method.
4183 2021-01-22 Simon Marchi <simon.marchi@efficios.com>
4185 * gdbtypes.h (TYPE_OBJFILE_OWNED): Adjust.
4186 (TYPE_OWNER): Remove.
4187 (TYPE_OBJFILE): Adjust.
4188 (struct main_type) <flag_objfile_owned>: Rename to...
4189 <m_flag_objfile_owned>: ... this.
4190 <owner>: Rename to...
4191 <m_owner>: ... this.
4192 (struct type) <is_objfile_owned, set_owner, objfile, arch>: New
4194 (TYPE_ALLOC): Adjust.
4195 * gdbtypes.c (alloc_type): Adjust.
4196 (alloc_type_arch): Adjust.
4197 (alloc_type_copy): Adjust.
4198 (get_type_arch): Adjust.
4199 (smash_type): Adjust.
4200 (lookup_array_range_type): Adjust.
4201 (recursive_dump_type): Adjust.
4202 (copy_type_recursive): Adjust.
4203 * compile/compile-c-types.c (convert_func): Adjust.
4204 (convert_type_basic): Adjust.
4205 * compile/compile-cplus-types.c (compile_cplus_convert_func):
4208 (language_arch_info::type_and_symbol::alloc_type_symbol):
4211 2021-01-21 Luis Machado <luis.machado@linaro.org>
4213 * coffread.c (enter_linenos): Passing string to complaint.
4214 * valops.c (value_assign): Make array view.
4216 2021-01-21 Simon Marchi <simon.marchi@polymtl.ca>
4218 * auto-load.h (debug_auto_load): Move here.
4219 (auto_load_debug_printf): New.
4220 * auto-load.c: Use auto_load_debug_printf.
4221 (debug_auto_load): Move to header.
4222 * linux-thread-db.c (try_thread_db_load): Use
4223 auto_load_debug_printf.
4224 * main.c (captured_main_1): Likewise.
4226 2021-01-21 Simon Marchi <simon.marchi@polymtl.ca>
4228 * f-valprint.c (f77_array_offset_tbl): Remove.
4230 2021-01-21 Simon Marchi <simon.marchi@polymtl.ca>
4232 * gdb_bfd.c (bfd_cache_debug_printf): New, use throughout file.
4234 2021-01-21 Simon Marchi <simon.marchi@polymtl.ca>
4236 * ser-tcp.c (wait_for_connect): Use interruptible_select instead
4239 2021-01-21 Hannes Domani <ssbssa@yahoo.de>
4242 * python/py-breakpoint.c (bppy_get_location): Handle
4243 bp_hardware_breakpoint.
4244 (bppy_init): Likewise.
4245 (gdbpy_breakpoint_created): Likewise.
4247 2021-01-21 Simon Marchi <simon.marchi@polymtl.ca>
4249 * arm-tdep.c (arm_debug_printf): Add and use throughout file.
4251 2021-01-20 Simon Marchi <simon.marchi@polymtl.ca>
4253 * gdb_bfd.c (debug_bfd_cache): Change type to bool.
4254 (_initialize_gdb_bfd): Adjust.
4256 2021-01-20 Simon Marchi <simon.marchi@polymtl.ca>
4259 * dwarf2/read.c (maybe_queue_comp_unit): Add assertion.
4261 2021-01-20 Simon Marchi <simon.marchi@polymtl.ca>
4263 * dwarf2/read.c (follow_die_offset): Add logging.
4264 (dwarf2_per_objfile::age_comp_units): Add logging.
4266 2021-01-20 Simon Marchi <simon.marchi@polymtl.ca>
4268 * aarch64-linux-tdep.c (aarch64_linux_record_tdep): Make static.
4269 * aarch64-tdep.c (tdesc_aarch64_list, aarch64_prologue_unwind,
4270 aarch64_stub_unwind, aarch64_normal_base, ): Make static.
4271 * arm-linux-tdep.c (arm_prologue_unwind): Make static.
4272 * arm-tdep.c (struct frame_unwind): Make static.
4273 * auto-load.c (auto_load_safe_path_vec): Make static.
4274 * csky-tdep.c (csky_stub_unwind): Make static.
4275 * gdbarch.c (gdbarch_data_registry): Make static.
4276 * gnu-v2-abi.c (gnu_v2_abi_ops): Make static.
4277 * i386-netbsd-tdep.c (i386nbsd_mc_reg_offset): Make static.
4278 * i386-tdep.c (i386_frame_setup_skip_insns,
4279 i386_tramp_chain_in_reg_insns, i386_tramp_chain_on_stack_insns):
4281 * infrun.c (observer_mode): Make static.
4282 * linux-nat.c (sigchld_action): Make static.
4283 * linux-thread-db.c (thread_db_list): Make static.
4284 * maint-test-options.c (maintenance_test_options_list):
4285 * mep-tdep.c (mep_csr_registers): Make static.
4286 * mi/mi-cmds.c (struct mi_cmd_stats): Remove struct type name.
4287 (stats): Make static.
4288 * nat/linux-osdata.c (struct osdata_type): Make static.
4289 * ppc-netbsd-tdep.c (ppcnbsd_reg_offsets): Make static.
4290 * progspace.c (last_program_space_num): Make static.
4291 * python/py-param.c (struct parm_constant): Remove struct type
4293 (parm_constants): Make static.
4294 * python/py-record-btrace.c (btpy_list_methods): Make static.
4295 * python/py-record.c (recpy_gap_type): Make static.
4296 * record.c (record_goto_cmdlist): Make static.
4297 * regcache.c (regcache_descr_handle): Make static.
4298 * registry.h (DEFINE_REGISTRY): Make definition static.
4299 * symmisc.c (std_in, std_out, std_err): Make static.
4300 * top.c (previous_saved_command_line): Make static.
4301 * tracepoint.c (trace_user, trace_notes, trace_stop_notes): Make
4303 * unittests/command-def-selftests.c (nr_duplicates,
4304 nr_invalid_prefixcmd, lists): Make static.
4305 * unittests/observable-selftests.c (test_notification): Make
4307 * unittests/optional/assignment/1.cc (counter): Make static.
4308 * unittests/optional/assignment/2.cc (counter): Make static.
4309 * unittests/optional/assignment/3.cc (counter): Make static.
4310 * unittests/optional/assignment/4.cc (counter): Make static.
4311 * unittests/optional/assignment/5.cc (counter): Make static.
4312 * unittests/optional/assignment/6.cc (counter): Make static.
4314 2021-01-20 Joel Sherrill <joel@rtems.org>
4317 * remote.c (struct remote_thread_info) <resume_state>: Rename
4319 <get_resume_state>: ... this.
4320 (remote_target::resume): Adjust.
4321 (remote_target::commit_resume): Adjust.
4322 (remote_target::select_thread_for_ambiguous_stop_reply): Adjust.
4324 2021-01-20 Sergio Durigan Junior <sergiodj@sergiodj.net>
4325 Tom Tromey <tom@tromey.com>
4327 * stap-probe.c (stap_parse_single_operand): Handle '!'
4329 (stap_parse_argument_conditionally): Likewise.
4330 Skip spaces after processing open-parenthesis sub-expression.
4331 (stap_parse_argument_1): Skip spaces after call to
4332 stap_parse_argument_conditionally.
4333 Handle case when right-side expression is a parenthesized
4335 Skip spaces after call to stap_parse_argument_1.
4337 2021-01-19 Lancelot SIX <lsix@lancelotsix.com>
4339 * top.h (switch_thru_all_uis): Use DISABLE_COPY_AND_ASSIGN.
4341 2021-01-19 Luis Machado <luis.machado@linaro.org>
4343 * trad-frame.h (trad_frame_saved_reg) <set_value_bytes>: Allocate
4344 memory and save data.
4345 (trad_frame_set_value, trad_frame_set_realreg, trad_frame_set_addr)
4346 (trad_frame_set_unknown, trad_frame_set_value_bytes)
4347 (trad_frame_value_p, trad_frame_addr_p, trad_frame_realreg_p)
4348 (trad_frame_value_bytes_p): Remove.
4349 (trad_frame_reset_saved_regs): Adjust documentation.
4350 * trad-frame.c (trad_frame_alloc_saved_regs): Initialize via a
4351 constructor and reset the state of the registers.
4352 (trad_frame_value_p, trad_frame_addr_p, trad_frame_realreg_p)
4353 (trad_frame_value_bytes_p, trad_frame_set_value)
4354 (trad_frame_set_realreg, trad_frame_set_addr)
4355 (trad_frame_set_unknown, trad_frame_set_value_bytes): Remove.
4356 (trad_frame_set_reg_realreg): Update to call member function.
4357 (trad_frame_set_reg_addr, trad_frame_set_reg_value_bytes): Likewise.
4358 (trad_frame_get_prev_register): Likewise.
4360 * aarch64-tdep.c (aarch64_analyze_prologue)
4361 (aarch64_analyze_prologue_test, aarch64_make_prologue_cache_1)
4362 (aarch64_prologue_prev_register): Update to use member functions.
4363 * alpha-mdebug-tdep.c (alpha_mdebug_frame_unwind_cache): Likewise.
4364 * alpha-tdep.c (alpha_heuristic_frame_unwind_cache): Likewise.
4365 * arc-tdep.c (arc_print_frame_cache, arc_make_frame_cache): Likewise.
4366 * arm-tdep.c (arm_make_prologue_cache, arm_exidx_fill_cache)
4367 (arm_make_epilogue_frame_cache): Likewise.
4368 * avr-tdep.c (avr_frame_unwind_cache)
4369 (avr_frame_prev_register): Likewise.
4370 * cris-tdep.c (cris_scan_prologue): Likewise.
4371 * csky-tdep.c (csky_frame_unwind_cache): Likewise.
4372 * frv-tdep.c (frv_analyze_prologue): Likewise.
4373 * hppa-tdep.c (hppa_frame_cache, hppa_fallback_frame_cache): Likewise.
4374 * lm32-tdep.c (lm32_frame_cache): Likewise.
4375 * m32r-tdep.c (m32r_frame_unwind_cache): Likewise.
4376 * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
4377 * mips-tdep.c (set_reg_offset, mips_insn16_frame_cache)
4378 (mips_micro_frame_cache, mips_insn32_frame_cache): Likewise.
4379 (reset_saved_regs): Adjust to set realreg.
4380 * riscv-tdep.c (riscv_scan_prologue, riscv_frame_cache): Adjust to
4381 call member functions.
4382 * rs6000-tdep.c (rs6000_frame_cache, rs6000_epilogue_frame_cache)
4383 * s390-tdep.c (s390_prologue_frame_unwind_cache)
4384 (s390_backchain_frame_unwind_cache): Likewise.
4385 * score-tdep.c (score7_analyze_prologue)
4386 (score3_analyze_prologue, score_make_prologue_cache): Likewise.
4387 * sparc-netbsd-tdep.c (sparc32nbsd_sigcontext_saved_regs): Likewise.
4388 * sparc-sol2-tdep.c (sparc32_sol2_sigtramp_frame_cache): Likewise.
4389 * sparc64-netbsd-tdep.c (sparc64nbsd_sigcontext_saved_regs): Likewise.
4390 * sparc64-sol2-tdep.c (sparc64_sol2_sigtramp_frame_cache): Likewise.
4391 * tilegx-tdep.c (tilegx_analyze_prologue)
4392 (tilegx_frame_cache): Likewise.
4393 * v850-tdep.c (v850_frame_cache): Likewise.
4394 * vax-tdep.c (vax_frame_cache): Likewise.
4396 2021-01-19 Luis Machado <luis.machado@linaro.org>
4398 * frame.h (get_frame_register_bytes): Pass a gdb::array_view instead
4400 (put_frame_register_bytes): Likewise.
4401 Adjust documentation.
4402 (get_frame_memory): Pass a gdb::array_view instead of buffer + length.
4403 (safe_frame_unwind_memory): Likewise.
4404 * frame.c (get_frame_register_bytes, put_frame_register_bytes)
4405 (get_frame_memory, safe_frame_unwind_memory): Adjust to use
4407 * amd64-fbsd-tdep.c (amd64fbsd_sigtramp_p): Likewise.
4408 * amd64-linux-tdep.c (amd64_linux_sigtramp_start): Likewise.
4409 * amd64-obsd-tdep.c (amd64obsd_sigtramp_p): Likewise.
4410 * arc-linux-tdep.c (arc_linux_is_sigtramp): Likewise.
4411 * cris-tdep.c (cris_sigtramp_start, cris_rt_sigtramp_start): Likewise.
4412 * dwarf2/loc.c (rw_pieced_value): Likewise.
4413 * hppa-tdep.c (hppa_frame_cache): Likewise.
4414 * i386-fbsd-tdep.c (i386fbsd_sigtramp_p): Likewise.
4415 * i386-gnu-tdep.c (i386_gnu_sigtramp_start): Likewise.
4416 * i386-linux-tdep.c (i386_linux_sigtramp_start)
4417 (i386_linux_rt_sigtramp_start): Likewise.
4418 * i386-obsd-tdep.c (i386obsd_sigtramp_p): Likewise.
4419 * i386-tdep.c (i386_register_to_value): Likewise.
4420 * i387-tdep.c (i387_register_to_value): Likewise.
4421 * ia64-tdep.c (ia64_register_to_value): Likewise.
4422 * m32r-linux-tdep.c (m32r_linux_sigtramp_start)
4423 (m32r_linux_rt_sigtramp_start): Likewise.
4424 * m68k-linux-tdep.c (m68k_linux_pc_in_sigtramp): Likewise.
4425 * m68k-tdep.c (m68k_register_to_value): Likewise.
4426 * mips-tdep.c (mips_register_to_value)
4427 (mips_value_to_register): Likewise.
4428 * ppc-fbsd-tdep.c (ppcfbsd_sigtramp_frame_sniffer)
4429 (ppcfbsd_sigtramp_frame_cache): Likewise.
4430 * ppc-obsd-tdep.c (ppcobsd_sigtramp_frame_sniffer)
4431 (ppcobsd_sigtramp_frame_cache): Likewise.
4432 * rs6000-tdep.c (rs6000_in_function_epilogue_frame_p)
4433 (rs6000_register_to_value): Likewise.
4434 * tilegx-tdep.c (tilegx_analyze_prologue): Likewise.
4435 * tramp-frame.c (tramp_frame_start): Likewise.
4436 * valops.c (value_assign): Likewise.
4438 2021-01-19 Luis Machado <luis.machado@linaro.org>
4440 * aarch64-linux-tdep.c (aarch64_linux_restore_vreg): Pass in an
4442 * trad-frame.c (trad_frame_set_value_bytes): Use gdb::array_view
4443 instead of buffer and size.
4444 (trad_frame_set_reg_value_bytes): Likewise.
4445 * trad-frame.h (trad_frame_set_reg_value_bytes): Likewise.
4446 (trad_frame_set_value_bytes): Likewise.
4448 2021-01-18 Mike Frysinger <vapier@gentoo.org>
4450 * copyright.py (NOT_FSF_LIST): Delete sim/testsuite/sim/bfin/s21.s.
4452 2021-01-18 Andrew Burgess <andrew.burgess@embecosm.com>
4454 * riscv-fbsd-tdep.c (riscv_fbsd_supply_gregset): Delete.
4455 (riscv_fbsd_gregset): Use riscv_supply_regset.
4456 (riscv_fbsd_fpregset): Likewise.
4457 * riscv-linux-tdep.c (riscv_linux_gregset): Likewise.
4458 (riscv_linux_fregset): Likewise.
4459 * riscv-tdep.c (riscv_supply_regset): Define new function.
4460 * riscv-tdep.h (riscv_supply_regset): Declare new function.
4462 2021-01-18 Tom de Vries <tdevries@suse.de>
4465 * nat/amd64-linux-siginfo.c (cpt_si_lower, cpt_si_upper, SEGV_BNDERR):
4467 (compat_siginfo_from_siginfo): Copy cpt_si_lower and cpt_si_upper
4470 2021-01-18 Simon Marchi <simon.marchi@polymtl.ca>
4472 * remote.c (class remote_target) <remote_hostio_send_command,
4473 remote_hostio_parse_result>: Constify parameter.
4474 (remote_hostio_parse_result): Likewise.
4475 (remote_target::remote_hostio_send_command): Adjust.
4476 (remote_target::remote_hostio_pread_vFile): Adjust.
4477 (remote_target::fileio_readlink): Adjust.
4478 (remote_target::fileio_fstat): Adjust.
4480 2021-01-18 Simon Marchi <simon.marchi@polymtl.ca>
4482 * remote.c (remote_target::start_remote): Move wait_status to
4485 2021-01-18 Simon Marchi <simon.marchi@polymtl.ca>
4487 * remote.c (class remote_target):
4488 <add_current_inferior_and_thread>: Constify parameter.
4489 (stop_reply_extract_thread): Likewise.
4490 (remote_target::get_current_thread): Likewise.
4491 (remote_target::add_current_inferior_and_thread): Likewise.
4493 2021-01-18 Simon Marchi <simon.marchi@polymtl.ca>
4495 * remote.c (class remote_target)
4496 <remote_unpack_thread_info_response,
4497 parse_threadlist_response>: Constify parameter and/or return
4498 value and or local variable.
4499 (stub_unpack_int): Likewise.
4500 (unpack_nibble): Likewise.
4501 (unpack_byte): Likewise.
4502 (unpack_int): Likewise.
4503 (unpack_string): Likewise.
4504 (unpack_threadid): Likewise.
4505 (remote_target::remote_unpack_thread_info_response): Likewise.
4506 (remote_target::parse_threadlist_response): Likewise.
4508 2021-01-15 Andrew Burgess <andrew.burgess@embecosm.com>
4510 * tui/tui.c (tui_is_window_visible): Compare to nullptr, not 0.
4512 2021-01-14 Lancelot Six <lsix@lancelotsix.com>
4514 * MAINTAINERS (Write After Approval): Add myself.
4516 2021-01-14 Bernd Edlinger <bernd.edlinger@hotmail.de>
4518 * trad-frame.c (trad_frame_alloc_saved_regs): Avoid compile-error
4519 because is_trivially_default_constructible was first implemented with
4522 2021-01-14 Tom de Vries <tdevries@suse.de>
4524 PR breakpoints/27151
4525 * objfiles.h (in_plt_section): Handle .plt.sec.
4527 2021-01-13 Andrew Burgess <andrew.burgess@embecosm.com>
4531 (remote_target::select_thread_for_ambiguous_stop_reply): New
4533 (remote_target::process_stop_reply): Call
4534 select_thread_for_ambiguous_stop_reply.
4536 2021-01-13 Simon Marchi <simon.marchi@efficios.com>
4538 * record-btrace.c (class record_btrace_target): Remove.
4539 (record_btrace_target::commit_resume): Remove.
4540 * record-full.c (class record_full_target): Remove.
4541 (record_full_target::commit_resume): Remove.
4543 2021-01-13 Simon Marchi <simon.marchi@efficios.com>
4545 * remote.c (enum class resume_state): New.
4546 (struct resumed_pending_vcont_info): New.
4547 (struct remote_thread_info) <resume_state, set_not_resumed,
4548 set_resumed_pending_vcont, resumed_pending_vcont_info,
4549 set_resumed, m_resume_state, m_resumed_pending_vcont_info>:
4551 <last_resume_step, last_resume_sig, vcont_resumed>: Remove.
4552 (remote_target::remote_add_thread): Adjust.
4553 (remote_target::process_initial_stop_replies): Adjust.
4554 (remote_target::resume): Adjust.
4555 (remote_target::commit_resume): Rely on state in
4556 remote_thread_info and not on tp->executing.
4557 (remote_target::process_stop_reply): Adjust.
4559 2021-01-13 Simon Marchi <simon.marchi@polymtl.ca>
4561 * arc-tdep.h (arc_debug_printf): New.
4562 * arc-tdep.c: Use arc_debug_printf.
4563 * arc-linux-nat.c (arc_linux_nat_debug_printf): Add and use.
4564 * arc-linux-tdep.c (arc_linux_debug_printf): Add and use.
4565 * arc-newlib-tdep.c (arc_newlib_debug_printf): Add and use.
4567 2021-01-13 Simon Marchi <simon.marchi@polymtl.ca>
4569 * arc-tdep.h (arc_debug): Change type to bool.
4570 * arc-tdep.c (arc_debug): Change type to bool.
4571 (arc_analyze_prologue): Adjust.
4572 (_initialize_arc_tdep): Use add_setshow_boolean_cmd.
4573 * arc-linux-nat.c (ps_get_thread_area): Adjust.
4575 2021-01-13 Simon Marchi <simon.marchi@polymtl.ca>
4577 * auto-load.c (auto_load_objfile_script_1): Use bool.
4578 (execute_script_contents): Use bool.
4580 2021-01-13 Simon Marchi <simon.marchi@polymtl.ca>
4582 * auto-load.h (auto_load_gdb_scripts_enabled): Return bool, move
4584 * auto-load.c (auto_load_gdb_scripts_enabled): Return bool, move
4586 * extension-priv.h (struct extension_language_script_ops)
4587 <auto_load_enabled>: Return bool.
4588 * extension.h (ext_lang_auto_load_enabled): Return bool, move
4590 * extension.c (ext_lang_auto_load_enabled): Return bool, move
4592 * guile/guile-header.h (gdbscm_auto_load_enabled): Return bool,
4594 * guile/scm-auto-load.c (gdbscm_auto_load_enabled): Return bool,
4595 move comment to header.
4596 * python/python-header.h (gdbpy_auto_load_enabled): Return bool,
4598 * python/py-auto-load.c (gdbpy_auto_load_enabled): Return bool,
4599 move comment to header.
4601 2021-01-13 Simon Marchi <simon.marchi@polymtl.ca>
4603 * auto-load.h (file_is_auto_load_safe): Change return type to
4604 bool, move comment here.
4605 * auto-load.c (file_is_auto_load_safe): Change return type and
4606 advice_printed to bool. Move comment to header.
4608 2021-01-13 Simon Marchi <simon.marchi@polymtl.ca>
4610 * jit.c (jit_debug_printf): New, use throughout file.
4612 2021-01-12 Simon Marchi <simon.marchi@polymtl.ca>
4614 * infrun.c (normal_stop): Fix indentation.
4616 2021-01-12 Simon Marchi <simon.marchi@polymtl.ca>
4618 * top.h (readnow_symbol_files, readnever_symbol_files): Move
4620 * symfile.h: ... here.
4621 * symfile.c: Update doc.
4623 2021-01-12 Simon Marchi <simon.marchi@polymtl.ca>
4625 * target.h (baud_rate, serial_parity): Move declarations...
4626 * serial.h: ... here.
4627 * main.c: Include serial.h.
4628 * serial.c (baud_rate, serial_parity): Update doc.
4630 2021-01-12 Simon Marchi <simon.marchi@polymtl.ca>
4632 * top.c (pre_init_ui_hook): Remove.
4634 2021-01-12 Srinath Parvathaneni <srinath.parvathaneni@arm.com>
4636 * aarch64-tdep.c (aarch64_vnh_type): Add "bf" field in h registers.
4637 (aarch64_vnv_type): Add "bf" type in h field of v registers.
4638 * features/aarch64-fpu.c (create_feature_aarch64_fpu): Regenerated.
4639 * features/aarch64-fpu.xml: Add bfloat16 type.
4641 2021-01-12 Andrew Burgess <andrew.burgess@embecosm.com>
4643 * expprint.c (dump_subexp_body_standard): Handle OP_BOOL.
4645 2021-01-12 Andrew Burgess <andrew.burgess@embecosm.com>
4647 * f-exp.y (dot_ops): Rename to...
4648 (fortran_operators): ...this. Add a header comment. Add symbol
4650 (yylex): Update to use fortran_operators not dot_ops. Remove
4651 special handling for '**', this is now included in
4654 2021-01-11 Simon Marchi <simon.marchi@polymtl.ca>
4656 * arch/aarch64-insn.h (aarch64_debug_printf): New.
4657 * arch/aarch64-insn.c: Use aarch64_debug_printf.
4658 * aarch64-tdep.c: Use aarch64_debug_printf.
4660 2021-01-11 Simon Marchi <simon.marchi@polymtl.ca>
4662 * solib-aix.c (solib_aix_debug_printf): New, use throughout
4665 2021-01-11 Simon Marchi <simon.marchi@polymtl.ca>
4667 * jit.c (jit_debug): Change type to bool.
4668 (_initialize_jit): Adjust.
4670 2021-01-09 Tom Tromey <tom@tromey.com>
4673 * compile/compile.c (compile_to_object): Avoid crash when
4674 osabi_triplet_regexp returns NULL.
4676 2021-01-09 Tom Tromey <tom@tromey.com>
4678 * tracepoint.h (class collection_list) <append_exp>: Take a
4680 * tracepoint.c (collection_list::append_exp): Take a std::string.
4681 (encode_actions_1): Update.
4683 2021-01-08 Tom Tromey <tromey@adacore.com>
4685 * parse.c (parse_expression): Add void_context_p parameter. Use
4686 parse_exp_in_context.
4687 * printcmd.c (print_command_1): Change voidprint to bool. Pass to
4689 (print_command, call_command): Update.
4690 * expression.h (parse_expression): Add void_context_p parameter.
4692 2021-01-08 Andrew Burgess <andrew.burgess@embecosm.com>
4694 * value.c (set_value_component_location): Adjust the VALUE_LVAL
4695 for internalvar components that have a dynamic location.
4697 2021-01-08 Tom de Vries <tdevries@suse.de>
4700 * breakpoint.c (create_exception_master_breakpoint_probe)
4701 (create_exception_master_breakpoint_hook): Factor out
4703 (create_exception_master_breakpoint): ... here. Only try to install
4704 the master exception breakpoint in objfile.debug using the
4705 _Unwind_DebugHook method, if the install using probes in objfile
4708 2021-01-08 Andrew Burgess <andrew.burgess@embecosm.com>
4710 * f-lang.c (fortran_value_subarray): Call value_from_component.
4712 2021-01-07 Mike Frysinger <vapier@gentoo.org>
4714 * remote-sim.c: Include memory-map.h.
4715 (gdbsim_target): Define memory_map override.
4716 (gdbsim_target::memory_map): Define.
4718 2021-01-07 Tom Tromey <tromey@adacore.com>
4720 * ada-lang.c (do_full_match): Conditionally skip "_ada_" prefix.
4722 2021-01-07 Tom Tromey <tromey@adacore.com>
4724 * ada-lang.c (add_component_interval): Start loop using vector's
4727 2021-01-06 Tom Tromey <tromey@adacore.com>
4729 * ada-lang.c (ada_evaluate_subexp) <BINOP_ADD, BINOP_SUB>:
4731 * valarith.c (fixed_point_binop): Handle multiplication
4732 and division specially.
4733 * valops.c (value_to_gdb_mpq): New function.
4734 (value_cast_to_fixed_point): Use it.
4736 2021-01-05 Hannes Domani <ssbssa@yahoo.de>
4738 * tui/tui-winsource.c (tui_source_window_base::refresh_window):
4739 Call wnoutrefresh instead of tui_win_info::refresh_window.
4741 2021-01-05 Hannes Domani <ssbssa@yahoo.de>
4743 * tui/tui-source.c (tui_source_window::show_line_number):
4744 Redraw second space after line number.
4746 2021-01-05 Hannes Domani <ssbssa@yahoo.de>
4749 * tui/tui-winsource.c (tui_source_window_base::refresh_window):
4750 Fix source pad size in prefresh.
4751 (tui_source_window_base::show_source_content): Grow source pad
4754 2021-01-04 Mike Frysinger <vapier@gentoo.org>
4756 * bfin-tdep.c (bfin_push_dummy_call): Use align_up.
4757 (bfin_frame_align): Use align_down.
4759 2021-01-04 Tom de Vries <tdevries@suse.de>
4761 * buildsym.c (buildsym_compunit::record_line): Filter out end-of-seq
4762 terminators that do not terminate anything.
4764 2021-01-04 Simon Marchi <simon.marchi@efficios.com>
4766 * debug.c (debug_print_depth): New.
4767 * infrun.h (INFRUN_SCOPED_DEBUG_START_END): New.
4768 (INFRUN_SCOPED_DEBUG_ENTER_EXIT): New.
4769 * infrun.c (start_step_over): Use
4770 INFRUN_SCOPED_DEBUG_ENTER_EXIT.
4771 (proceed): Use INFRUN_SCOPED_DEBUG_ENTER_EXIT and
4772 INFRUN_SCOPED_DEBUG_START_END.
4773 (fetch_inferior_event): Use INFRUN_SCOPED_DEBUG_ENTER_EXIT.
4775 2021-01-04 Simon Marchi <simon.marchi@efficios.com>
4777 * infrun.c (print_target_wait_results): Use infrun_debug_printf.
4779 2021-01-04 Simon Marchi <simon.marchi@efficios.com>
4781 * utils.c (vfprintf_unfiltered): Print timestamp only when
4782 previous debug output ended with a newline.
4784 2021-01-04 Luis Machado <luis.machado@linaro.org>
4786 Update all users of trad_frame_saved_reg to use the new member
4789 Remote all struct keywords from declarations of trad_frame_saved_reg
4790 types, except on forward declarations.
4792 * aarch64-tdep.c: Update.
4793 * alpha-mdebug-tdep.c: Update.
4794 * alpha-tdep.c: Update.
4795 * arc-tdep.c: Update.
4796 * arm-tdep.c: Update.
4797 * avr-tdep.c: Update.
4798 * cris-tdep.c: Update.
4799 * csky-tdep.c: Update.
4800 * frv-tdep.c: Update.
4801 * hppa-linux-tdep.c: Update.
4802 * hppa-tdep.c: Update.
4803 * hppa-tdep.h: Update.
4804 * lm32-tdep.c: Update.
4805 * m32r-linux-tdep.c: Update.
4806 * m32r-tdep.c: Update.
4807 * m68hc11-tdep.c: Update.
4808 * mips-tdep.c: Update.
4809 * moxie-tdep.c: Update.
4810 * riscv-tdep.c: Update.
4811 * rs6000-tdep.c: Update.
4812 * s390-linux-tdep.c: Update.
4813 * s390-tdep.c: Update.
4814 * score-tdep.c: Update.
4815 * sparc-netbsd-tdep.c: Update.
4816 * sparc-sol2-tdep.c: Update.
4817 * sparc64-fbsd-tdep.c: Update.
4818 * sparc64-netbsd-tdep.c: Update.
4819 * sparc64-obsd-tdep.c: Update.
4820 * sparc64-sol2-tdep.c: Update.
4821 * tilegx-tdep.c: Update.
4822 * v850-tdep.c: Update.
4823 * vax-tdep.c: Update.
4825 * frame-unwind.c (frame_unwind_got_bytes): Make parameter const.
4826 * frame-unwind.h (frame_unwind_got_bytes): Likewise.
4828 * trad-frame.c: Update.
4829 Remove TF_REG_* enum.
4830 (trad_frame_alloc_saved_regs): Add a static assertion to check for
4831 a trivially-constructible struct.
4832 (trad_frame_reset_saved_regs): Adjust to use member function.
4833 (trad_frame_value_p): Likewise.
4834 (trad_frame_addr_p): Likewise.
4835 (trad_frame_realreg_p): Likewise.
4836 (trad_frame_value_bytes_p): Likewise.
4837 (trad_frame_set_value): Likewise.
4838 (trad_frame_set_realreg): Likewise.
4839 (trad_frame_set_addr): Likewise.
4840 (trad_frame_set_unknown): Likewise.
4841 (trad_frame_set_value_bytes): Likewise.
4842 (trad_frame_get_prev_register): Likewise.
4843 * trad-frame.h: Update.
4844 (trad_frame_saved_reg_kind): New enum.
4845 (struct trad_frame_saved_reg) <addr, realreg, data>: Remove.
4846 <m_kind, m_reg>: New member fields.
4847 <set_value, set_realreg, set_addr, set_unknown, set_value_bytes>
4848 <kind, value, realreg, addr, value_bytes, is_value, is_realreg>
4849 <is_addr, is_unknown, is_value_bytes>: New member functions.
4851 2021-01-02 Simon Marchi <simon.marchi@polymtl.ca>
4853 * target-float.c: Fix typos.
4855 2021-01-02 Hannes Domani <ssbssa@yahoo.de>
4857 * gdb-gdb.py.in: Fix main_type.flds_bnds.bounds pretty printer.
4859 2021-01-01 Joel Brobecker <brobecker@adacore.com>
4861 * gdbarch.sh: Update copyright year range.
4863 2021-01-01 Joel Brobecker <brobecker@adacore.com>
4865 Update copyright year range in copyright header of all GDB files.
4867 2021-01-01 Joel Brobecker <brobecker@adacore.com>
4869 * copyright.py (get_update_list): Add "gdbserver" and "gdbsupport"
4870 to the list of directories to update.
4872 2021-01-01 Joel Brobecker <brobecker@adacore.com>
4874 * top.c (print_gdb_version): Update copyright year.
4876 2021-01-01 Joel Brobecker <brobecker@adacore.com>
4878 * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2020.
4880 For older changes see ChangeLog-2020.
4886 version-control: never