1 2021-04-02 Simon Marchi <simon.marchi@polymtl.ca>
3 * objfiles.c (get_objfile_bfd_data): Remove objfile parameter,
6 2021-04-02 Simon Marchi <simon.marchi@polymtl.ca>
8 * psympriv.h (struct partial_symtab) <partial_symtab>: Change
9 objfile parameter for objfile_per_bfd_storage, adjust callers.
10 (struct standard_psymtab) <standard_psymtab>: Likewise.
11 (struct legacy_psymtab) <legacy_psymtab>: Likewise.
12 * psymtab.c (partial_symtab::partial_symtab): Likewise.
13 * ctfread.c (struct ctf_psymtab): Likewise.
14 * dwarf2/read.h (struct dwarf2_psymtab): Likewise.
15 * dwarf2/read.c (struct dwarf2_include_psymtab): Likewise.
16 (dwarf2_create_include_psymtab): Likewise.
17 * objfiles.h (struct objfile_per_bfd_storage)
18 <objfile_per_bfd_storage>: Add bfd parameter, adjust callers.
19 <get_bfd>: New method.
21 * objfiles.c (get_objfile_bfd_data): Adjust.
23 2021-04-02 Simon Marchi <simon.marchi@polymtl.ca>
25 * psymtab.c (partial_symtab::partial_symtab): Change
26 last_objfile_name to be an std::string.
27 * symfile.c (allocate_symtab): Likewise.
29 2021-04-02 Simon Marchi <simon.marchi@polymtl.ca>
31 * objfiles.h (struct objfile_per_bfd_storage) <intern>: New
33 (struct objfile) <intern>: Use
34 objfile::objfile_per_bfd_storage::intern.
36 2021-04-01 Simon Marchi <simon.marchi@efficios.com>
38 * gdbtypes.h (TYPE_FLAG_ENUM): Remove, replace all uses
39 with type::is_flag_enum.
41 2021-04-01 Simon Marchi <simon.marchi@efficios.com>
43 * gdbtypes.h (struct type) <is_flag_enum,
44 set_is_flag_enum>: New methods.
45 (TYPE_FLAG_ENUM): Use type::is_flag_enum, change all
46 write call sites to use type::set_is_flag_enum.
48 2021-04-01 Simon Marchi <simon.marchi@efficios.com>
50 * gdbtypes.h (TYPE_DECLARED_CLASS): Remove, replace all uses
51 with type::is_declared_class.
53 2021-04-01 Simon Marchi <simon.marchi@efficios.com>
55 * gdbtypes.h (struct type) <is_declared_class,
56 set_is_declared_class>: New methods.
57 (TYPE_DECLARED_CLASS): Use type::is_declared_class, change all
58 write call sites to use type::set_is_declared_class.
60 2021-02-28 Boris Staletic <boris.staletic@gmail.com>
62 * gdb/python/lib/gdb/__init__.py: Use importlib on python 3.4+
63 to avoid deprecation warnings.
65 2021-04-01 Martin Liska <mliska@suse.cz>
67 * cp-name-parser.y: Use startswith instead of strncmp.
69 * macroexp.c (substitute_args): Likewise.
70 * mi/mi-main.c (command_notifies_uscc_observer): Likewise.
71 * rust-exp.y: Likewise.
73 2021-03-31 Tom Tromey <tom@tromey.com>
75 * dwarf2/read.c (dwarf2_gdb_index::map_matching_symbols): Merge
76 with dw2_map_matching_symbols.
77 (dwarf2_gdb_index::expand_symtabs_matching): Merge with
78 dw2_expand_symtabs_matching.
80 2021-03-31 Tom Tromey <tromey@adacore.com>
82 * dwarf2/stringify.h: Fix typo.
84 2021-03-30 Simon Marchi <simon.marchi@polymtl.ca>
87 * dwarf2/read.c (dwarf2_has_info): Don't share dwarf2_per_bfd
88 with objfiles using READNOW.
90 2021-03-29 Tom Tromey <tromey@adacore.com>
92 * top.c (check_frame_language_change): Update.
93 * language.c (language_info): Remove parameter.
94 * language.h (language_info): Remove parameter.
96 2021-03-29 Luis Machado <luis.machado@linaro.org>
98 * compile/compile.c (get_args): Don't add empty argv entries.
100 2021-03-29 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
103 * procfs.c (procfs_target::attach): Define inf.
105 (procfs_target::create_inferior): Likewise.
107 2021-03-28 Tom Tromey <tom@tromey.com>
109 * elfread.c (can_lazily_read_symbols): Move to dwarf2/read.c.
110 (elf_symfile_read): Simplify.
111 * dwarf2/read.c (struct lazy_dwarf_reader): Move from elfread.c.
112 (make_lazy_dwarf_reader): New function.
113 (make_dwarf_gdb_index, make_dwarf_debug_names): Now static.
114 (dwarf2_initialize_objfile): Return void. Remove index_kind
115 parameter. Push on 'qf' list.
116 * dwarf2/public.h (dwarf2_initialize_objfile): Change return
117 type. Remove 'index_kind' parameter.
118 (make_dwarf_gdb_index, make_dwarf_debug_names): Don't declare.
120 2021-03-27 Tom Tromey <tom@tromey.com>
122 * elfread.c (elf_sym_fns_lazy_psyms): Don't declare.
124 2021-03-27 Tom Tromey <tom@tromey.com>
126 * elfread.c (elf_symfile_read): Don't clear 'qf'.
128 2021-03-26 Lancelot Six <lsix@lancelotsix.com>
130 * contrib/gdb-add-index.sh: Avoid variable shadowing and get
133 2021-03-26 Tom Tromey <tom@tromey.com>
135 * symtab.c (struct output_source_filename_data): Add 'output'
136 method and operator().
137 (output_source_filename_data::output): Rename from
138 output_source_filename.
139 (output_partial_symbol_filename): Remove.
140 (info_sources_command): Update.
141 (struct add_partial_filename_data): Add operator().
142 (add_partial_filename_data::operator()): Rename from
143 maybe_add_partial_symtab_filename.
144 (make_source_files_completion_list): Update.
145 * symfile.c (quick_symbol_functions): Update.
146 * symfile-debug.c (objfile::map_symbol_filenames): Update.
147 * quick-symbol.h (symbol_filename_ftype): Change type of 'fun' and
148 'need_fullname'. Remove 'data' parameter.
149 (struct quick_symbol_functions) <map_symbol_filenames>: Likewise.
150 * psymtab.c (psymbol_functions::map_symbol_filenames): Update.
151 * psympriv.h (struct psymbol_functions) <map_symbol_filenames>:
152 Change type of 'fun' and 'need_fullname'. Remove 'data'
154 * objfiles.h (struct objfile) <map_symbol_filenames>: Change type
155 of 'fun' and 'need_fullname'. Remove 'data' parameter.
156 * mi/mi-cmd-file.c (print_partial_file_name): Remove 'ignore'
158 (mi_cmd_file_list_exec_source_files): Update.
160 (dwarf2_base_index_functions::map_symbol_filenames): Update.
162 2021-03-26 Tom Tromey <tom@tromey.com>
164 * ada-lang.c (struct match_data): Add operator().
165 (match_data::operator()): Rename from aux_add_nonlocal_symbols.
166 (callback): Remove 'callback'.
168 2021-03-26 Tom Tromey <tom@tromey.com>
170 * psymtab.c (psymbol_functions::expand_symtabs_matching): Only
171 call make_ignore_params once.
173 2021-03-26 Tom Tromey <tom@tromey.com>
175 * psymtab.c (psymbol_functions::expand_symtabs_matching): Remove
178 2021-03-26 Simon Marchi <simon.marchi@efficios.com>
179 Pedro Alves <pedro@palves.net>
181 * async-event.c: Include "infrun.h".
182 (async_event_handler_marked): New.
183 * async-event.h (async_event_handler_marked): Declare.
184 * infrun.c (maybe_set_commit_resumed_all_targets): Switch to
185 inferior before calling target method. Don't commit-resumed if
186 target_has_pending_events is true.
187 * remote.c (remote_target::has_pending_events): New.
188 * target-delegates.c: Regenerate.
189 * target.c (target_has_pending_events): New.
190 * target.h (target_ops::has_pending_events): New target method.
191 (target_has_pending_events): New.
193 2021-03-26 Simon Marchi <simon.marchi@efficios.com>
194 Pedro Alves <pedro@palves.net>
196 * infcmd.c (run_command_1, attach_command, detach_command)
197 (interrupt_target_1): Use scoped_disable_commit_resumed.
198 * infrun.c (do_target_resume): Remove
199 target_commit_resume call.
200 (commit_resume_all_targets): Remove.
201 (maybe_set_commit_resumed_all_targets): New.
202 (maybe_call_commit_resumed_all_targets): New.
203 (enable_commit_resumed): New.
204 (scoped_disable_commit_resumed::scoped_disable_commit_resumed)
205 (scoped_disable_commit_resumed::~scoped_disable_commit_resumed)
206 (scoped_disable_commit_resumed::reset)
207 (scoped_disable_commit_resumed::reset_and_commit)
208 (scoped_enable_commit_resumed::scoped_enable_commit_resumed)
209 (scoped_enable_commit_resumed::~scoped_enable_commit_resumed):
211 (proceed): Use scoped_disable_commit_resumed and
212 maybe_call_commit_resumed_all_targets.
213 (fetch_inferior_event): Use scoped_disable_commit_resumed.
214 * infrun.h (struct scoped_disable_commit_resumed): New.
215 (maybe_call_commit_resumed_all_process_targets): New.
216 (struct scoped_enable_commit_resumed): New.
217 * mi/mi-main.c (exec_continue): Use scoped_disable_commit_resumed.
218 * process-stratum-target.h (class process_stratum_target):
219 <commit_resumed_state>: New.
220 * record-full.c (record_full_wait_1): Change commit_resumed_state
221 around calling commit_resumed.
222 * remote.c (class remote_target) <commit_resume>: Rename to...
223 <commit_resumed>: ... this.
224 (struct stop_reply): Move up.
225 (remote_target::commit_resume): Rename to...
226 (remote_target::commit_resumed): ... this. Check if there is any
227 thread pending vCont resume.
228 (remote_target::remote_stop_ns): Generate stop replies for resumed
229 but pending vCont threads.
230 (remote_target::wait_ns): Add gdb_assert.
231 * target-delegates.c: Regenerate.
232 * target.c (target_wait, target_resume): Assert that the current
233 process_stratum target isn't in commit-resumed state.
234 (defer_target_commit_resume): Remove.
235 (target_commit_resume): Remove.
236 (target_commit_resumed): New.
237 (make_scoped_defer_target_commit_resume): Remove.
238 (target_stop): Assert that the current process_stratum target
239 isn't in commit-resumed state.
240 * target.h (struct target_ops) <commit_resume>: Rename to ...
241 <commit_resumed>: ... this.
242 (target_commit_resume): Remove.
243 (target_commit_resumed): New.
244 (make_scoped_defer_target_commit_resume): Remove.
245 * top.c (wait_sync_command_done): Use
246 scoped_enable_commit_resumed.
248 2021-03-26 Pedro Alves <pedro@palves.net>
250 * target.c (target_always_non_stop_p): Also check whether the
253 2021-03-26 Tom Tromey <tom@tromey.com>
255 * dwarf2/read.c (dwarf2_read_debug_names)
256 (dwarf2_build_psymtabs_hard, create_addrmap_from_aranges)
257 (dw2_debug_names_iterator::next, create_type_unit_group):
260 2021-03-25 Pedro Alves <pedro@palves.net>
262 * gdb.server/bkpt-other-inferior.exp: Only enable remote output
263 around setting the breakpoint.
265 2021-03-25 Pedro Alves <pedro@palves.net>
268 (remote_target::check_pending_events_prevent_wildcard_vcont):
269 Check whether the event's ptid is not null_ptid before looking up
270 the corresponding inferior.
272 2021-03-24 Changbin Du <changbin.du@gmail.com>
274 * riscv-tdep.c (riscv_breakpoint_kind_from_pc): Remove call to
277 2021-03-24 Simon Marchi <simon.marchi@polymtl.ca>
279 * target.h (current_top_target): Remove, make callers use the
280 current inferior instead.
281 * target.c (current_top_target): Remove.
283 2021-03-24 Simon Marchi <simon.marchi@polymtl.ca>
285 * target.h (target_shortname): Change to function declaration.
286 (target_longname): Likewise.
287 (target_attach_no_wait): Likewise.
288 (target_post_attach): Likewise.
289 (target_prepare_to_store): Likewise.
290 (target_supports_enable_disable_tracepoint): Likewise.
291 (target_supports_string_tracing): Likewise.
292 (target_supports_evaluation_of_breakpoint_conditions): Likewise.
293 (target_supports_dumpcore): Likewise.
294 (target_dumpcore): Likewise.
295 (target_can_run_breakpoint_commands): Likewise.
296 (target_files_info): Likewise.
297 (target_post_startup_inferior): Likewise.
298 (target_insert_fork_catchpoint): Likewise.
299 (target_remove_fork_catchpoint): Likewise.
300 (target_insert_vfork_catchpoint): Likewise.
301 (target_remove_vfork_catchpoint): Likewise.
302 (target_insert_exec_catchpoint): Likewise.
303 (target_remove_exec_catchpoint): Likewise.
304 (target_set_syscall_catchpoint): Likewise.
305 (target_rcmd): Likewise.
306 (target_can_lock_scheduler): Likewise.
307 (target_can_async_p): Likewise.
308 (target_is_async_p): Likewise.
309 (target_execution_direction): Likewise.
310 (target_extra_thread_info): Likewise.
311 (target_pid_to_exec_file): Likewise.
312 (target_thread_architecture): Likewise.
313 (target_find_memory_regions): Likewise.
314 (target_make_corefile_notes): Likewise.
315 (target_get_bookmark): Likewise.
316 (target_goto_bookmark): Likewise.
317 (target_stopped_by_watchpoint): Likewise.
318 (target_stopped_by_sw_breakpoint): Likewise.
319 (target_supports_stopped_by_sw_breakpoint): Likewise.
320 (target_stopped_by_hw_breakpoint): Likewise.
321 (target_supports_stopped_by_hw_breakpoint): Likewise.
322 (target_have_steppable_watchpoint): Likewise.
323 (target_can_use_hardware_watchpoint): Likewise.
324 (target_region_ok_for_hw_watchpoint): Likewise.
325 (target_can_do_single_step): Likewise.
326 (target_insert_watchpoint): Likewise.
327 (target_remove_watchpoint): Likewise.
328 (target_insert_hw_breakpoint): Likewise.
329 (target_remove_hw_breakpoint): Likewise.
330 (target_can_accel_watchpoint_condition): Likewise.
331 (target_can_execute_reverse): Likewise.
332 (target_get_ada_task_ptid): Likewise.
333 (target_filesystem_is_local): Likewise.
334 (target_trace_init): Likewise.
335 (target_download_tracepoint): Likewise.
336 (target_can_download_tracepoint): Likewise.
337 (target_download_trace_state_variable): Likewise.
338 (target_enable_tracepoint): Likewise.
339 (target_disable_tracepoint): Likewise.
340 (target_trace_start): Likewise.
341 (target_trace_set_readonly_regions): Likewise.
342 (target_get_trace_status): Likewise.
343 (target_get_tracepoint_status): Likewise.
344 (target_trace_stop): Likewise.
345 (target_trace_find): Likewise.
346 (target_get_trace_state_variable_value): Likewise.
347 (target_save_trace_data): Likewise.
348 (target_upload_tracepoints): Likewise.
349 (target_upload_trace_state_variables): Likewise.
350 (target_get_raw_trace_data): Likewise.
351 (target_get_min_fast_tracepoint_insn_len): Likewise.
352 (target_set_disconnected_tracing): Likewise.
353 (target_set_circular_trace_buffer): Likewise.
354 (target_set_trace_buffer_size): Likewise.
355 (target_set_trace_notes): Likewise.
356 (target_get_tib_address): Likewise.
357 (target_set_permissions): Likewise.
358 (target_static_tracepoint_marker_at): Likewise.
359 (target_static_tracepoint_markers_by_strid): Likewise.
360 (target_traceframe_info): Likewise.
361 (target_use_agent): Likewise.
362 (target_can_use_agent): Likewise.
363 (target_augmented_libraries_svr4_read): Likewise.
364 (target_log_command): Likewise.
365 * target.c (target_shortname): New.
366 (target_longname): New.
367 (target_attach_no_wait): New.
368 (target_post_attach): New.
369 (target_prepare_to_store): New.
370 (target_supports_enable_disable_tracepoint): New.
371 (target_supports_string_tracing): New.
372 (target_supports_evaluation_of_breakpoint_conditions): New.
373 (target_supports_dumpcore): New.
374 (target_dumpcore): New.
375 (target_can_run_breakpoint_commands): New.
376 (target_files_info): New.
377 (target_post_startup_inferior): New.
378 (target_insert_fork_catchpoint): New.
379 (target_remove_fork_catchpoint): New.
380 (target_insert_vfork_catchpoint): New.
381 (target_remove_vfork_catchpoint): New.
382 (target_insert_exec_catchpoint): New.
383 (target_remove_exec_catchpoint): New.
384 (target_set_syscall_catchpoint): New.
386 (target_can_lock_scheduler): New.
387 (target_can_async_p): New.
388 (target_is_async_p): New.
389 (target_execution_direction): New.
390 (target_extra_thread_info): New.
391 (target_pid_to_exec_file): New.
392 (target_thread_architecture): New.
393 (target_find_memory_regions): New.
394 (target_make_corefile_notes): New.
395 (target_get_bookmark): New.
396 (target_goto_bookmark): New.
397 (target_stopped_by_watchpoint): New.
398 (target_stopped_by_sw_breakpoint): New.
399 (target_supports_stopped_by_sw_breakpoint): New.
400 (target_stopped_by_hw_breakpoint): New.
401 (target_supports_stopped_by_hw_breakpoint): New.
402 (target_have_steppable_watchpoint): New.
403 (target_can_use_hardware_watchpoint): New.
404 (target_region_ok_for_hw_watchpoint): New.
405 (target_can_do_single_step): New.
406 (target_insert_watchpoint): New.
407 (target_remove_watchpoint): New.
408 (target_insert_hw_breakpoint): New.
409 (target_remove_hw_breakpoint): New.
410 (target_can_accel_watchpoint_condition): New.
411 (target_can_execute_reverse): New.
412 (target_get_ada_task_ptid): New.
413 (target_filesystem_is_local): New.
414 (target_trace_init): New.
415 (target_download_tracepoint): New.
416 (target_can_download_tracepoint): New.
417 (target_download_trace_state_variable): New.
418 (target_enable_tracepoint): New.
419 (target_disable_tracepoint): New.
420 (target_trace_start): New.
421 (target_trace_set_readonly_regions): New.
422 (target_get_trace_status): New.
423 (target_get_tracepoint_status): New.
424 (target_trace_stop): New.
425 (target_trace_find): New.
426 (target_get_trace_state_variable_value): New.
427 (target_save_trace_data): New.
428 (target_upload_tracepoints): New.
429 (target_upload_trace_state_variables): New.
430 (target_get_raw_trace_data): New.
431 (target_get_min_fast_tracepoint_insn_len): New.
432 (target_set_disconnected_tracing): New.
433 (target_set_circular_trace_buffer): New.
434 (target_set_trace_buffer_size): New.
435 (target_set_trace_notes): New.
436 (target_get_tib_address): New.
437 (target_set_permissions): New.
438 (target_static_tracepoint_marker_at): New.
439 (target_static_tracepoint_markers_by_strid): New.
440 (target_traceframe_info): New.
441 (target_use_agent): New.
442 (target_can_use_agent): New.
443 (target_augmented_libraries_svr4_read): New.
444 (target_log_command): New.
445 * bfin-tdep.c (bfin_sw_breakpoint_from_kind): Adjust.
446 * infrun.c (set_schedlock_func): Adjust.
447 * mi/mi-main.c (exec_reverse_continue): Adjust.
448 * reverse.c (exec_reverse_once): Adjust.
449 * sh-tdep.c (sh_sw_breakpoint_from_kind): Adjust.
450 * tui/tui-stack.c (tui_locator_window::make_status_line): Adjust.
451 * remote-sim.c (gdbsim_target::detach): Adjust.
452 (gdbsim_target::files_info): Adjust.
454 2021-03-24 Tom Tromey <tom@tromey.com>
456 * dwarf2/read.c (dw2_map_matching_symbols): Update.
457 (dw2_expand_symtabs_matching_symbol): Remove 'kind' parameter.
458 (check_match, dw2_expand_symtabs_matching)
459 (dwarf2_debug_names_index::map_matching_symbols)
460 (dwarf2_debug_names_index::expand_symtabs_matching): Update.
462 2021-03-24 Keith Seitz <keiths@redhat.com>
464 * compile/compile-cplus-types.c
465 (compile_cplus_convert_struct_or_union): Fix TYPE_DECLARED_CLASS
468 2021-03-24 Simon Marchi <simon.marchi@polymtl.ca>
470 * gdbarch.sh (gdbarch_data_registry): Make static.
471 * gdbarch.c: Re-generate.
473 2021-03-24 Luis Machado <luis.machado@linaro.org>
475 * NEWS: Mention memory tagging changes.
477 2021-03-24 Luis Machado <luis.machado@linaro.org>
479 * printcmd.c (decode_format): Handle the 'm' modifier.
480 (do_examine): Display allocation tags when required/supported.
481 (should_validate_memtags): New function.
482 (print_command_1): Display memory tag mismatches.
483 * valprint.c (show_memory_tag_violations): New function.
484 (value_print_option_defs): Add new option "memory-tag-violations".
485 (user_print_options) <memory_tag_violations>: Initialize to 1.
486 * valprint.h (struct format_data) <print_tags>: New field.
487 (value_print_options) <memory_tag_violations>: New field.
489 2021-03-24 Luis Machado <luis.machado@linaro.org>
491 * printcmd.c: Include gdbsupport/rsp-low.h.
492 (memory_tag_list): New static global.
493 (process_print_command_args): Factored out of
495 (print_command_1): Use process_print_command_args.
496 (show_addr_not_tagged, show_memory_tagging_unsupported)
497 (memory_tag_command, memory_tag_print_tag_command)
498 (memory_tag_print_logical_tag_command)
499 (memory_tag_print_allocation_tag_command, parse_with_logical_tag_input)
500 (memory_tag_with_logical_tag_command, parse_set_allocation_tag_input)
501 (memory_tag_set_allocation_tag_command, memory_tag_check_command): New
503 (_initialize_printcmd): Add "memory-tag" prefix and subcommands.
505 2021-03-24 Luis Machado <luis.machado@linaro.org>
507 * aarch64-linux-tdep.c
508 (aarch64_linux_iterate_over_regset_sections): Handle MTE register set.
509 * aarch64-linux-tdep.h (AARCH64_LINUX_SIZEOF_MTE_REGSET): Define.
511 2021-03-24 Luis Machado <luis.machado@linaro.org>
513 * aarch64-linux-tdep.c
514 (aarch64_linux_report_signal_info): New function.
515 (aarch64_linux_init_abi): Register
516 aarch64_linux_report_signal_info as the report_signal_info hook.
517 * arch/aarch64-linux.h (SEGV_MTEAERR): Define.
518 (SEGV_MTESERR): Define.
520 2021-03-24 Luis Machado <luis.machado@linaro.org>
522 * aarch64-linux-tdep.c: Include gdbsupport/selftest.h.
523 (aarch64_linux_ltag_tests): New function.
524 (_initialize_aarch64_linux_tdep): Register aarch64_linux_ltag_tests.
526 2021-03-24 Luis Machado <luis.machado@linaro.org>
528 * aarch64-linux-tdep.c: Include target.h, arch-utils.h, value.h.
529 (aarch64_mte_get_atag, aarch64_linux_tagged_address_p)
530 (aarch64_linux_memtag_mismatch_p, aarch64_linux_set_memtags)
531 (aarch64_linux_get_memtag, aarch64_linux_memtag_to_string): New
533 (aarch64_linux_init_abi): Initialize MTE-related gdbarch hooks.
534 * arch/aarch64-mte-linux.c (aarch64_mte_make_ltag_bits)
535 (aarch64_mte_make_ltag, aarch64_linux_set_ltag)
536 (aarch64_linux_get_ltag): New functions.
537 * arch/aarch64-mte-linux.h (AARCH64_MTE_LOGICAL_TAG_START_BIT)
538 (AARCH64_MTE_LOGICAL_MAX_VALUE): Define.
539 (aarch64_mte_make_ltag_bits, aarch64_mte_make_ltag)
540 (aarch64_mte_set_ltag, aarch64_mte_get_ltag): New prototypes.
542 2021-03-24 Luis Machado <luis.machado@linaro.org>
544 * linux-tdep.c (struct smaps_vmflags) <memory_tagging>: New flag
546 (struct smaps_data): New struct.
547 (decode_vmflags): Handle the 'mt' flag.
548 (parse_smaps_data): New function, refactored from
549 linux_find_memory_regions_full.
550 (linux_address_in_memtag_page): New function.
551 (linux_find_memory_regions_full): Refactor into parse_smaps_data.
552 * linux-tdep.h (linux_address_in_memtag_page): New prototype.
554 2021-03-24 Luis Machado <luis.machado@linaro.org>
556 * linux-tdep.c (linux_find_memory_regions_full): Use std::string
557 instead of char arrays.
559 2021-03-24 Luis Machado <luis.machado@linaro.org>
561 * Makefile.in (ALL_64_TARGET_OBS): Add arch/aarch64-mte-linux.o.
562 (HFILES_NO_SRCDIR): Add arch/aarch64-mte-linux.h and
563 nat/aarch64-mte-linux-ptrace.h.
564 * aarch64-linux-nat.c: Include nat/aarch64-mte-linux-ptrace.h.
565 (aarch64_linux_nat_target) <supports_memory_tagging>: New method
567 <fetch_memtags>: New method override.
568 <store_memtags>: New method override.
569 (aarch64_linux_nat_target::supports_memory_tagging): New method.
570 (aarch64_linux_nat_target::fetch_memtags): New method.
571 (aarch64_linux_nat_target::store_memtags): New method.
572 * arch/aarch64-mte-linux.c: New file.
573 * arch/aarch64-mte-linux.h: Include gdbsupport/common-defs.h.
574 (AARCH64_MTE_GRANULE_SIZE): Define.
575 (aarch64_memtag_type): New enum.
576 (aarch64_mte_get_tag_granules): New prototype.
577 * configure.nat (NATDEPFILES): Add nat/aarch64-mte-linux-ptrace.o.
578 * configure.tgt (aarch64*-*-linux*): Add arch/aarch64-mte-linux.o.
579 * nat/aarch64-mte-linux-ptrace.c: New file.
580 * nat/aarch64-mte-linux-ptrace.h: New file.
582 2021-03-24 Luis Machado <luis.machado@linaro.org>
584 * Makefile.in (HFILES_NO_SRCDIR): Add nat/aarch64-mte-linux-ptrace.h.
585 * nat/aarch64-mte-linux-ptrace.h: New file.
587 2021-03-24 Luis Machado <luis.machado@linaro.org>
589 * aarch64-linux-nat.c (fetch_mteregs_from_thread): New function.
590 (store_mteregs_to_thread): New function.
591 (aarch64_linux_nat_target::fetch_registers): Update to call
592 fetch_mteregs_from_thread.
593 (aarch64_linux_nat_target::store_registers): Update to call
594 store_mteregs_to_thread.
595 * aarch64-tdep.c (aarch64_mte_register_names): New struct.
596 (aarch64_cannot_store_register): Handle MTE registers.
597 (aarch64_gdbarch_init): Initialize and setup MTE registers.
598 * aarch64-tdep.h (gdbarch_tdep) <mte_reg_base>: New field.
599 <has_mte>: New method.
600 * arch/aarch64-linux.h (AARCH64_LINUX_SIZEOF_MTE): Define.
602 2021-03-24 Luis Machado <luis.machado@linaro.org>
604 * aarch64-linux-nat.c
605 (aarch64_linux_nat_target::read_description): Take MTE flag into
607 Slight refactor to hwcap flag checking.
608 * aarch64-linux-tdep.c
609 (aarch64_linux_core_read_description): Likewise.
610 * aarch64-tdep.c (tdesc_aarch64_list): Add one more dimension for
612 (aarch64_read_description): Add mte_p parameter and update to use it.
613 Update the documentation.
614 (aarch64_gdbarch_init): Update call to aarch64_read_description.
615 * aarch64-tdep.h (aarch64_read_description): Add mte_p parameter.
616 * arch/aarch64.c: Include ../features/aarch64-mte.c.
617 (aarch64_create_target_description): Add mte_p parameter and update
619 * arch/aarch64.h (aarch64_create_target_description): Add mte_p
621 * features/Makefile (FEATURE_XMLFILES): Add aarch64-mte.xml.
622 * features/aarch64-mte.c: New file, generated.
623 * features/aarch64-mte.xml: New file.
625 2021-03-24 Luis Machado <luis.machado@linaro.org>
627 * Makefile.in (HFILES_NO_SRCDIR): Add arch/aarch64-mte-linux.h.
628 * aarch64-linux-nat.c: Include arch/aarch64-mte-linux.h.
629 * aarch64-linux-tdep.c: Likewise
630 * arch/aarch64-mte-linux.h: New file.
632 2021-03-24 Luis Machado <luis.machado@linaro.org>
634 * remote: Include gdbsupport/selftest.h.
635 (test_memory_tagging_functions): New function.
636 (_initialize_remote): Register test_memory_tagging_functions.
638 2021-03-24 Luis Machado <luis.machado@linaro.org>
640 * remote.c (PACKET_memory_tagging_feature): New enum.
641 (remote_memory_tagging_p): New function.
642 (remote_protocol_features): New "memory-tagging" entry.
643 (remote_target::remote_query_supported): Handle memory tagging
645 (remote_target::supports_memory_tagging): Implement.
646 (create_fetch_memtags_request, parse_fetch_memtags_reply)
647 (create_store_memtags_request): New functions.
648 (remote_target::fetch_memtags): Implement.
649 (remote_target::store_memtags): Implement.
650 (_initialize_remote): Add new "memory-tagging-feature"
653 2021-03-24 Luis Machado <luis.machado@linaro.org>
655 * arch-utils.c (default_memtag_to_string, default_tagged_address_p)
656 (default_memtag_matches_p, default_set_memtags)
657 (default_get_memtag): New functions.
658 * arch-utils.h (default_memtag_to_string, default_tagged_address_p)
659 (default_memtag_matches_p, default_set_memtags)
660 (default_get_memtag): New prototypes.
661 * gdbarch.c: Regenerate.
662 * gdbarch.h: Regenerate.
663 * gdbarch.sh (memtag_to_string, tagged_address_p, memtag_matches_p)
664 (set_memtags, get_memtag, memtag_granule_size): New gdbarch hooks.
665 (enum memtag_type): New enum.
667 2021-03-24 Luis Machado <luis.machado@linaro.org>
669 * remote.c (remote_target) <supports_memory_tagging>: New method
671 <fetch_memtags>: New method override.
672 <store_memtags>: New method override.
673 (remote_target::supports_memory_tagging): New method.
674 (remote_target::fetch_memtags): New method.
675 (remote_target::store_memtags): New method.
676 * target-delegates.c: Regenerate.
677 * target.h (struct target_ops) <supports_memory_tagging>: New virtual
679 <fetch_memtags>: New virtual method.
680 <store_memtags>: New virtual method.
681 (target_supports_memory_tagging): Define.
682 (target_fetch_memtags): Define.
683 (target_store_memtags): Define.
684 * target-debug.h (target_debug_print_size_t)
685 (target_debug_print_const_gdb_byte_vector_r)
686 (target_debug_print_gdb_byte_vector_r): New functions.
688 2021-03-23 Simon Marchi <simon.marchi@polymtl.ca>
690 * target.h (target_longname): Remove.
692 2021-03-23 Simon Marchi <simon.marchi@polymtl.ca>
694 * target.h (target_is_pushed): Remove, update callers to use
695 inferior::target_is_pushed instead.
696 * target.c (target_is_pushed): Remove.
698 2021-03-23 Simon Marchi <simon.marchi@polymtl.ca>
700 * target.h (push_target): Remove, update callers to use
701 inferior::push_target.
702 * target.c (push_target): Remove.
703 * inferior.h (class inferior) <push_target>: New overload.
705 2021-03-23 Simon Marchi <simon.marchi@polymtl.ca>
707 * target.h (unpush_target): Remove, update all callers
708 to use `inferior::unpush_target` instead.
709 (struct target_unpusher) <operator()>: Just declare.
710 * target.c (unpush_target): Remove.
711 (target_unpusher::operator()): New.
713 2021-03-22 Andrew Burgess <andrew.burgess@embecosm.com>
715 * dwarf2/read.c (process_psymtab_comp_unit): Replace abort with an
717 (process_full_comp_unit): Validate the top-level tag before
718 processing the first DIE.
719 (read_func_scope): Ensure we have a valid builder.
721 2021-03-22 Andrew Burgess <andrew.burgess@embecosm.com>
723 * objc-lang.c (objc_demangle): Renamed to
724 objc_language::demangle_symbol, and moved later in the file.
725 (objc_language::sniff_from_mangled_name): Call demangle_symbol
727 (objc_language::demangle_symbol): Defined outside of class
728 declaration. The definition is the old objc_demangle with NULL
729 changed to nullptr, and if conditions relating to nullptr pointers
730 or null character checks made explicit.
731 * objc-lang.h (objc_demangle): Delete declaration.
733 2021-03-22 Martin Liska <mliska@suse.cz>
735 * arm-tdep.c (show_disassembly_style_sfunc): Replace usage of CONST_STRNEQ with startswith.
736 (_initialize_arm_tdep): Likewise.
738 2021-03-20 Tom Tromey <tom@tromey.com>
740 * xcoffread.c (xcoff_initial_scan): Create partial symtabs.
741 * symfile.c (syms_from_objfile_1, reread_symbols): Update.
742 * psymtab.h (make_psymbol_functions): Don't declare.
743 * psymtab.c (make_psymbol_functions): Remove.
744 (maintenance_print_psymbols): Update.
745 * psympriv.h (struct psymbol_functions): Add no-argument
747 * objfiles.h (struct objfile) <reset_psymtabs>: Remove.
748 <partial_symtabs>: Remove.
749 * mdebugread.c (mdebug_build_psymtabs): Create partial symtabs.
750 * elfread.c (read_partial_symbols): Update.
751 (elf_symfile_read): Remove check for existing partial symbols.
753 * dwarf2/read.c (dwarf2_has_info): Remove check for existing
755 (dwarf2_build_psymtabs): Add psymbol_functions parameter. Create
757 * dwarf2/public.h (dwarf2_build_psymtabs): Add psymbol_functions
759 * dbxread.c (dbx_symfile_read): Create partial symtabs.
760 * ctfread.c (elfctf_build_psymtabs): Create partial symtabs.
762 2021-03-20 Tom Tromey <tom@tromey.com>
764 * dwarf2/read.c (dwarf2_build_psymtabs): Update.
765 * symfile.c (syms_from_objfile_1, reread_symbols): Update.
766 * symfile-debug.c (objfile::has_partial_symbols)
767 (objfile::find_last_source_symtab)
768 (objfile::forget_cached_source_info)
769 (objfile::map_symtabs_matching_filename, objfile::lookup_symbol)
770 (objfile::print_stats, objfile::dump)
771 (objfile::expand_symtabs_for_function)
772 (objfile::expand_all_symtabs)
773 (objfile::expand_symtabs_with_fullname)
774 (objfile::map_matching_symbols)
775 (objfile::expand_symtabs_matching)
776 (objfile::find_pc_sect_compunit_symtab)
777 (objfile::map_symbol_filenames)
778 (objfile::find_compunit_symtab_by_address)
779 (objfile::lookup_global_symbol_language)
780 (objfile::require_partial_symbols): Update.
781 * psymtab.c (maintenance_print_psymbols)
782 (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
783 * objfiles.h (struct objfile) <qf>: Now a forward_list.
784 * objfiles.c (objfile_relocate1): Update.
785 * elfread.c (elf_symfile_read): Update.
787 2021-03-20 Tom Tromey <tom@tromey.com>
789 * objfiles.h (struct objfile) <psymtabs>: Remove method.
791 2021-03-20 Tom Tromey <tom@tromey.com>
793 * psymtab.c (psymbol_functions::count_psyms): Rename.
794 (psymbol_functions::print_stats): Update.
795 * psympriv.h (struct psymbol_functions) <count_psyms>: Declare
798 2021-03-20 Tom Tromey <tom@tromey.com>
800 * psymtab.c (psymbol_functions::require_partial_symbols): Rename.
801 (psymbol_functions::find_pc_sect_psymtab): Rename.
802 (psymbol_functions::find_pc_sect_compunit_symtab)
803 (maintenance_print_psymbols, maintenance_check_psymtabs): Update.
804 * psympriv.h (struct psymbol_functions) <require_partial_symbols>:
806 <get_partial_symtabs, find_pc_sect_psymtab>: Likewise.
808 2021-03-20 Tom Tromey <tom@tromey.com>
810 * xcoffread.c (xcoff_start_psymtab): Add partial_symtabs parameter.
811 (xcoff_end_psymtab, scan_xcoff_symtab): Update.
812 * psymtab.c (partial_symtab::partial_symtab): Add partial_symtabs
814 (add_psymbol_to_bcache): Remove.
815 (partial_symtab::add_psymbol): Add partial_symtabs parameter.
816 (partial_symtab::add_psymbol, partial_symtab::partial_symtab):
818 * psympriv.h (partial_symtab): Add partial_symtabs parameter.
819 <add_psymbol>: Likewise.
820 (standard_psymtab, legacy_psymtab): Likewise.
821 * mdebugread.c (parse_partial_symbols): Update.
822 (handle_psymbol_enumerators): Add partial_symtabs parameter.
823 (handle_psymbol_enumerators): Update.
824 (new_psymtab): Add partial_symtabs parameter.
825 * dwarf2/read.h (dwarf2_psymtab): Add partial_symtabs parameter.
826 * dwarf2/read.c (dwarf2_include_psymtab): Add partial_symtabs
828 (dwarf2_create_include_psymtab): Add partial_symtabs parameter.
829 (create_partial_symtab, add_partial_symbol, dwarf_decode_lines):
831 * dbxread.c (read_dbx_symtab): Update.
832 (start_psymtab): Add partial_symtabs parameter.
833 (dbx_end_psymtab): Update.
834 * ctfread.c (struct ctf_context) <partial_symtabs>: New member.
835 (ctf_psymtab): Add partial_symtabs parameter.
836 (create_partial_symtab, ctf_psymtab_type_cb, ctf_psymtab_var_cb):
838 (scan_partial_symbols): Add partial_symtabs parameter.
839 (scan_partial_symbols, elfctf_build_psymtabs)
840 (ctf_psymtab_add_enums): Update.
842 2021-03-20 Tom Tromey <tom@tromey.com>
844 * symfile.c (read_symbols): Use objfile method.
845 * symfile-debug.c (objfile::require_partial_symbols): New method.
846 * psymtab.h (require_partial_symbols): Don't declare.
847 * psymtab.c (require_partial_symbols): Use objfile method. Now
849 (psymbol_functions::map_symtabs_matching_filename, OBJFILE)
850 (psymbol_functions::lookup_symbol)
851 (psymbol_functions::lookup_global_symbol_language)
852 (psymbol_functions::find_last_source_symtab)
853 (psymbol_functions::forget_cached_source_info)
854 (psymbol_functions::print_stats)
855 (psymbol_functions::expand_symtabs_for_function)
856 (psymbol_functions::expand_all_symtabs)
857 (psymbol_functions::expand_symtabs_with_fullname)
858 (psymbol_functions::map_symbol_filenames)
859 (psymbol_functions::map_matching_symbols)
860 (psymbol_functions::expand_symtabs_matching)
861 (psymbol_functions::find_compunit_symtab_by_address)
862 (maintenance_print_psymbols, maintenance_info_psymtabs)
863 (maintenance_check_psymtabs): Update.
864 * objfiles.h (struct objfile) <require_partial_symbols>: Declare
867 2021-03-20 Tom Tromey <tom@tromey.com>
869 * xcoffread.c (xcoff_sym_fns): Update.
870 * symfile.h (struct sym_fns) <sym_read_psymbols>: Remove.
871 * symfile-debug.c (objfile::has_partial_symbols): Use
872 can_lazily_read_symbols.
873 (debug_sym_read_psymbols): Remove.
874 (debug_sym_fns, install_symfile_debug_logging): Update.
875 * quick-symbol.h (struct quick_symbol_functions)
876 <can_lazily_read_symbols, read_partial_symbols>: New methods.
877 * psymtab.c (require_partial_symbols): Use new 'qf' methods.
878 * mipsread.c (ecoff_sym_fns): Update.
879 * machoread.c (macho_sym_fns): Update.
880 * elfread.c (struct lazy_dwarf_reader): New.
881 (elf_symfile_read): Update.
882 (read_psyms): Now a method of lazy_dwarf_reader.
883 (elf_sym_fns): Update.
884 (elf_sym_fns_lazy_psyms): Remove.
885 * dbxread.c (aout_sym_fns): Update.
886 * coffread.c (coff_sym_fns): Update.
888 2021-03-20 Tom Tromey <tom@tromey.com>
890 * symfile.c (syms_from_objfile_1): Call reset_psymtabs.
891 (reread_symbols): Move reset_psymtabs call later.
892 * objfiles.c (objfile::objfile): Don't initialize
895 2021-03-20 Tom Tromey <tom@tromey.com>
897 * dwarf2/read.c (dwarf2_build_psymtabs): Call
899 * symfile.c (syms_from_objfile_1, reread_symbols): Update.
900 * psymtab.h (make_psymbol_functions): Add partial_symtabs
902 * psymtab.c (find_pc_sect_psymtab): Add partial_symtabs
904 (psymbol_functions::find_pc_sect_compunit_symtab)
905 (psymbol_functions::print_stats, psymbol_functions::dump)
906 (psymbol_functions::has_symbols): Update.
907 (make_psymbol_functions, dump_psymtab_addrmap): Add
908 partial_symtabs parameter.
909 (maintenance_print_psymbols): Update.
910 (psymbol_functions::expand_symtabs_matching): Update.
911 * psympriv.h (struct psymbol_functions): Add constructor.
912 <m_partial_symtabs>: New member.
913 <set_partial_symtabs>: New method.
915 2021-03-20 Tom Tromey <tom@tromey.com>
917 * dwarf2/read.c (dwarf2_create_include_psymtab): Add per_bfd
919 (process_psymtab_comp_unit_reader)
920 (build_type_psymtab_dependencies, dwarf2_build_psymtabs_hard)
921 (add_partial_subprogram, dwarf2_ranges_read, dwarf_decode_lines):
922 Reference psymtabs via per_bfd.
924 2021-03-20 Tom Tromey <tom@tromey.com>
926 * dwarf2/index-write.c (struct addrmap_index_data) <objfile>:
928 (add_address_entry): Remove objfile parameter.
929 (add_address_entry_worker): Update.
930 (write_address_map): Replace objfile parameter with per_bfd.
931 (write_gdbindex, write_psymtabs_to_index): Update.
933 2021-03-20 Tom Tromey <tom@tromey.com>
935 * dwarf2/read.c (dwarf2_base_index_functions::print_stats): Add
936 print_bcache parameter.
937 * symfile-debug.c (objfile::print_stats): Add print_bcache
939 * quick-symbol.h (struct quick_symbol_functions)
940 <print_stats>: Add print_bcache parameter.
941 * symmisc.c (print_symbol_bcache_statistics, count_psyms): Move
943 (print_objfile_statistics): Move psymtab code to psymtab.c.
944 * psymtab.c (count_psyms): Move from symmisc.c.
945 (psymbol_functions::print_stats): Print partial symbol and bcache
946 statistics. Add print_bcache parameter.
947 * objfiles.h (print_symbol_bcache_statistics): Don't declare.
948 (struct objfile) <print_stats>: Add print_bcache parameter.
949 * maint.c (maintenance_print_statistics): Update.
951 2021-03-20 Tom Tromey <tom@tromey.com>
953 * dwarf2/read.h (struct dwarf2_per_bfd) <psymtabs_addrmap>: New
955 * dwarf2/read.c (create_addrmap_from_index)
956 (create_addrmap_from_aranges): Set per_bfd addrmap.
957 (dwarf2_read_gdb_index): Don't set partial_symtabs.
958 (dwarf2_base_index_functions::find_pc_sect_compunit_symtab): Use
960 (dwarf2_read_debug_names): Don't set partial_symtabs.
961 (dwarf2_initialize_objfile): Likewise.
963 2021-03-20 Tom Tromey <tom@tromey.com>
965 * dwarf2/read.c (dwarf2_build_psymtabs): Set partial_symtabs
968 2021-03-20 Tom Tromey <tom@tromey.com>
970 * psympriv.h (psymtab_discarder): Take psymtab_storage parameter.
971 (~psymtab_discarder, keep): Update.
973 <m_partial_symtabs>: New member.
974 * dwarf2/read.c (dwarf2_build_psymtabs): Update.
976 2021-03-20 Tom Tromey <tom@tromey.com>
978 * xcoffread.c (xcoff_end_psymtab): Add partial_symtabs parameter.
979 (xcoff_end_psymtab): Update.
980 (scan_xcoff_symtab): Add partial_symtabs parameter.
981 (xcoff_initial_scan): Update.
982 * stabsread.h (dbx_end_psymtab): Add partial_symtabs parameter.
983 * mdebugread.c (mdebug_build_psymtabs): Update.
984 (parse_partial_symbols): Add partial_symtabs parameter.
985 * dbxread.c (dbx_symfile_read): Update.
986 (read_dbx_symtab): Add partial_symtabs parameter.
987 (read_dbx_symtab): Update.
988 (dbx_end_psymtab): Add partial_symtabs parameter.
990 2021-03-20 Tom Tromey <tom@tromey.com>
992 * quick-symbol.h (struct quick_symbol_functions)
993 <relocated>: New method.
994 * psymtab.h (struct psymbol_functions) <relocated>: New
996 <fill_psymbol_map>: Declare method.
997 <m_psymbol_map>: New member.
998 * psymtab.c (psymbol_functions::fill_psymbol_map): Rename.
999 (psymbol_functions::find_compunit_symtab_by_address): Update.
1000 * objfiles.h (reset_psymtabs): Don't clear psymbol_map.
1001 (struct objfile) <psymbol_map>: Remove.
1002 * objfiles.c (objfile_relocate1): Update.
1004 2021-03-20 Tom Tromey <tom@tromey.com>
1006 * psympriv.h (struct psymbol_functions): New.
1007 * symfile.c (syms_from_objfile_1, reread_symbols): Update.
1008 * symfile-debug.c (objfile::find_compunit_symtab_by_address)
1009 (objfile::lookup_global_symbol_language): Update.
1010 * quick-symbol.h (struct quick_symbol_functions): Convert function
1011 pointers to methods. Add virtual destructor.
1012 (quick_symbol_functions_up): New typedef.
1013 * psymtab.h (psym_functions, dwarf2_gdb_index_functions)
1014 (dwarf2_debug_names_functions): Don't declare.
1015 (make_psymbol_functions): Declare.
1016 * psymtab.c (psymbol_functions::map_symtabs_matching_filename)
1017 (psymbol_functions::find_pc_sect_compunit_symtab)
1018 (psymbol_functions::lookup_symbol)
1019 (psymbol_functions::lookup_global_symbol_language)
1020 (psymbol_functions::find_last_source_symtab)
1021 (psymbol_functions::forget_cached_source_info)
1022 (psymbol_functions::print_stats, psymbol_functions::dump)
1023 (psymbol_functions::expand_symtabs_for_function)
1024 (psymbol_functions::expand_all_symtabs)
1025 (psymbol_functions::expand_symtabs_with_fullname)
1026 (psymbol_functions::map_symbol_filenames)
1027 (psymbol_functions::map_matching_symbols)
1028 (psymbol_functions::expand_symtabs_matching)
1029 (psymbol_functions::has_symbols)
1030 (psymbol_functions::find_compunit_symtab_by_address): Rename.
1031 (psym_functions): Remove.
1032 (make_psymbol_functions): New function.
1033 * objfiles.h (struct objfile) <qf>: Change type.
1034 * elfread.c (elf_symfile_read): Update.
1035 * dwarf2/read.c (struct dwarf2_base_index_functions)
1036 (struct dwarf2_gdb_index, struct dwarf2_debug_names_index): New.
1037 (make_dwarf_gdb_index, make_dwarf_debug_names): New functions.
1038 (dwarf2_base_index_functions::find_last_source_symtab)
1039 (dwarf2_base_index_functions::forget_cached_source_info)
1040 (dwarf2_base_index_functions::map_symtabs_matching_filename)
1041 (dwarf2_gdb_index::lookup_symbol)
1042 (dwarf2_base_index_functions::print_stats)
1043 (dwarf2_gdb_index::dump)
1044 (dwarf2_gdb_index::expand_symtabs_for_function)
1045 (dwarf2_base_index_functions::expand_all_symtabs)
1046 (dwarf2_base_index_functions::expand_symtabs_with_fullname):
1048 (dwarf2_gdb_index::map_matching_symbols): New method.
1049 (dwarf2_gdb_index::expand_symtabs_matching): New method.
1050 (dwarf2_base_index_functions::find_pc_sect_compunit_symtab)
1051 (dwarf2_base_index_functions::map_symbol_filenames)
1052 (dwarf2_base_index_functions::has_symbols): Rename.
1053 (dwarf2_gdb_index_functions): Remove.
1054 (dwarf2_debug_names_index::lookup_symbol)
1055 (dwarf2_debug_names_index::dump)
1056 (dwarf2_debug_names_index::expand_symtabs_for_function)
1057 (dwarf2_debug_names_index::map_matching_symbols)
1058 (dwarf2_debug_names_index::expand_symtabs_matching): Rename.
1059 (dwarf2_debug_names_functions): Remove.
1060 * dwarf2/public.h (make_dwarf_gdb_index, make_dwarf_debug_names):
1063 2021-03-20 Tom Tromey <tom@tromey.com>
1065 * psymtab.c (require_partial_symbols): Check that 'sf' is not
1067 * xcoffread.c (xcoff_sym_fns): Update.
1068 * symfile.h (struct sym_fns) <qf>: Remove.
1069 * symfile.c (syms_from_objfile_1, reread_symbols): Update.
1070 * symfile-debug.c (objfile::has_partial_symbols)
1071 (objfile::find_last_source_symtab)
1072 (objfile::forget_cached_source_info)
1073 (objfile::map_symtabs_matching_filename, objfile::lookup_symbol)
1074 (objfile::print_stats, objfile::dump)
1075 (objfile::expand_symtabs_for_function)
1076 (objfile::expand_all_symtabs)
1077 (objfile::expand_symtabs_with_fullname)
1078 (objfile::map_matching_symbols)
1079 (objfile::expand_symtabs_matching)
1080 (objfile::find_pc_sect_compunit_symtab)
1081 (objfile::map_symbol_filenames)
1082 (objfile::find_compunit_symtab_by_address)
1083 (objfile::lookup_global_symbol_language, debug_sym_fns)
1084 (install_symfile_debug_logging): Update.
1085 * objfiles.h (struct objfile) <qf>: New member.
1086 * mipsread.c (ecoff_sym_fns): Update.
1087 * machoread.c (macho_sym_fns): Update.
1088 * elfread.c (elf_sym_fns_gdb_index, elf_sym_fns_debug_names):
1090 (elf_symfile_read, elf_sym_fns, elf_sym_fns_lazy_psyms): Update.
1091 * dbxread.c (aout_sym_fns): Update.
1092 * coffread.c (coff_sym_fns): Update.
1094 2021-03-20 Tom Tromey <tom@tromey.com>
1096 * symfile.h (symbol_compare_ftype, symbol_filename_ftype)
1097 (expand_symtabs_file_matcher_ftype)
1098 (expand_symtabs_symbol_matcher_ftype)
1099 (expand_symtabs_exp_notify_ftype, struct quick_symbol_functions):
1100 Move to quick-symbol.h.
1101 * quick-symbol.h: New file.
1103 2021-03-20 Tom Tromey <tom@tromey.com>
1105 * symtab.c (iterate_over_symtabs, expand_symtab_containing_pc)
1106 (lookup_symbol_via_quick_fns, find_quick_global_symbol_language)
1107 (basic_lookup_transparent_type_quick)
1108 (find_pc_sect_compunit_symtab, find_symbol_at_address)
1109 (find_line_symtab, global_symbol_searcher::expand_symtabs):
1111 * symmisc.c (print_objfile_statistics, dump_objfile)
1112 (maintenance_expand_symtabs): Update.
1113 * symfile.c (symbol_file_add_with_addrs)
1114 (expand_symtabs_matching, map_symbol_filenames): Update.
1115 * symfile-debug.c (objfile::has_partial_symbols)
1116 (objfile::find_last_source_symtab)
1117 (objfile::forget_cached_source_info)
1118 (objfile::map_symtabs_matching_filename, objfile::lookup_symbol)
1119 (objfile::print_stats, objfile::dump)
1120 (objfile::expand_symtabs_for_function)
1121 (objfile::expand_all_symtabs)
1122 (objfile::expand_symtabs_with_fullname)
1123 (objfile::map_matching_symbols)
1124 (objfile::expand_symtabs_matching)
1125 (objfile::find_pc_sect_compunit_symtab)
1126 (objfile::map_symbol_filenames)
1127 (objfile::find_compunit_symtab_by_address)
1128 (objfile::lookup_global_symbol_language): New methods.
1129 (debug_sym_quick_functions): Remove.
1130 (debug_sym_fns, install_symfile_debug_logging): Update.
1131 * source.c (forget_cached_source_info_for_objfile)
1132 (select_source_symtab): Update.
1133 * objfiles.h (struct objfile): Add methods corresponding to
1134 quick_symbol_functions.
1135 * objfiles.c (objfile::has_partial_symbols): Move to
1137 * linespec.c (iterate_over_all_matching_symtabs): Update.
1138 * cp-support.c (add_symbol_overload_list_qualified): Update.
1139 * ada-lang.c (add_nonlocal_symbols): Update.
1141 2021-03-20 Tom Tromey <tom@tromey.com>
1143 * objfiles.h (struct objfile) <has_partial_symbols>: Return bool.
1144 * symfile.h (struct quick_symbol_functions) <has_symbols>: Return
1146 * symfile-debug.c (debug_qf_has_symbols): Return bool.
1147 * psymtab.c (psym_has_symbols): Return bool.
1148 * objfiles.c (objfile::has_partial_symbols): Return bool.
1149 * dwarf2/read.c (dw2_has_symbols): Return bool.
1151 2021-03-20 Tom Tromey <tom@tromey.com>
1153 * symfile.c (read_symbols): Update.
1154 * objfiles.h (struct objfile) <has_partial_symbols>: New method.
1155 (objfile_has_partial_symbols): Don't declare.
1156 * objfiles.c (objfile::has_partial_symbols): Rename from
1157 objfile_has_partial_symbols.
1158 (objfile_has_symbols, have_partial_symbols): Update.
1159 * elfread.c (elf_symfile_read): Update.
1160 * dwarf2/read.c (dwarf2_has_info): Update.
1161 * coffread.c (coff_symfile_read): Update.
1163 2021-03-20 Tom Tromey <tom@tromey.com>
1165 * coffread.c: Include dwarf2/public.h.
1166 * dwarf2/frame.c: Include dwarf2/public.h.
1167 * dwarf2/index-write.h: Include dwarf2/public.h, not symfile.h.
1168 * dwarf2/public.h: New file.
1169 * dwarf2/read.c: Include dwarf2/public.h.
1170 * elfread.c: Include dwarf2/public.h.
1171 * machoread.c: Include dwarf2/public.h.
1172 * symfile.h (dwarf2_has_info, enum dw_index_kind)
1173 (dwarf2_initialize_objfile, dwarf2_build_psymtabs)
1174 (dwarf2_build_frame_info): Move to dwarf2/public.h.
1175 * xcoffread.c: Include dwarf2/public.h.
1177 2021-03-20 Tom Tromey <tom@tromey.com>
1179 * symfile.h (enum dwarf2_section_enum)
1180 (dwarf2_get_section_info): Move to dwarf2/read.h.
1181 * dwarf2/read.h (enum dwarf2_section_enum)
1182 (dwarf2_get_section_info): Move from symfile.h.
1184 2021-03-19 Pedro Alves <pedro@palves.net>
1186 * thread.c (any_thread_of_inferior): Check if there's a selected
1187 thread before calling inferior_thread().
1189 2021-03-18 Tom Tromey <tromey@adacore.com>
1191 * dwarf2/stringify.c (dwarf_unit_type_name): New function. Use
1193 * dwarf2/stringify.h (dwarf_unit_type_name): Declare.
1194 * dwarf2/comp-unit.c (dwarf_unit_type_name): Remove.
1196 2021-03-18 Andrew Burgess <andrew.burgess@embecosm.com>
1198 * python/py-param.c (get_set_value): Update header comment.
1200 2021-03-17 Simon Marchi <simon.marchi@polymtl.ca>
1202 * infrun.c (check_multi_target_resumption): Remove argument to
1203 all_non_exited_inferiors.
1205 2021-03-16 Christian Biesinger <cbiesinger@google.com>
1207 * windows-nat.c (windows_init_thread_list): Add message to
1210 2021-03-16 Andrew Burgess <andrew.burgess@embecosm.com>
1212 * python/py-framefilter.c (py_print_frame): Use PyInt_Check as
1213 well as PyLong_Check for Python 2.
1215 2021-03-15 Tom Tromey <tromey@adacore.com>
1218 * rust-exp.y (maker_map): Use gdb::hash_enum.
1219 * stap-probe.c (stap_maker_map): Use gdb::hash_enum.
1221 2021-03-15 Simon Marchi <simon.marchi@polymtl.ca>
1223 * dwarf2/read.c (create_debug_type_hash_table): Remove colon at
1226 2021-03-15 Simon Marchi <simon.marchi@polymtl.ca>
1228 * dwarf2/read.c (dw2_get_file_names_reader): Remove info_ptr
1229 parameter, adjust caller.
1231 2021-03-15 Tom Tromey <tromey@adacore.com>
1233 * ada-exp.y (simple_exp): Always push a result for unary '+'.
1235 2021-03-15 Tom Tromey <tromey@adacore.com>
1237 * ada-lang.c (ada_unop_ind_operation::evaluate): Call
1238 ada_ensure_varsize_limit.
1240 2021-03-15 Tom Tromey <tromey@adacore.com>
1242 * ada-lang.c (numeric_type_p, integer_type_p): Return true for
1244 * ada-exp.y (maybe_overload): New function.
1245 (ada_wrap_overload): New function.
1246 (ada_un_wrap2, ada_wrap2, ada_wrap_op): Use maybe_overload.
1247 (exp1, simple_exp, relation, and_exp, and_then_exp, or_exp)
1248 (or_else_exp, xor_exp, primary): Update.
1250 2021-03-15 Tom Tromey <tromey@adacore.com>
1253 * ada-lang.c (ada_var_value_operation::evaluate): Use recursive
1254 call for tagged type.
1256 2021-03-15 Tom Tromey <tromey@adacore.com>
1258 * ada-exp.y (exp1): Handle resolution of the right hand side of an
1261 2021-03-15 Tom Tromey <tromey@adacore.com>
1263 * ada-lang.c (ada_aggregate_operation::assign_aggregate): Return
1265 (ada_assign_operation::evaluate): Update.
1266 * ada-exp.h (class ada_aggregate_operation) <assign_aggregate>:
1269 2021-03-15 Felix Willgerodt <felix.willgerodt@intel.com>
1271 * i386-tdep.c (i386_floatformat_for_type): Add COMPLEX*32 and REAL*16.
1273 2021-03-15 Andrew Burgess <andrew.burgess@embecosm.com>
1275 * python/python.c (gdbpy_source_objfile_script): Use
1276 make_scoped_restore to restore gdbpy_current_objfile.
1277 (gdbpy_execute_objfile_script): Likewise.
1279 2021-03-14 Tom Tromey <tom@tromey.com>
1281 * dwarf2/read.c (read_attribute_value): Use cu_header
1284 2021-03-14 Tom Tromey <tom@tromey.com>
1286 * dwarf2/read.c (struct die_reader_specs) <abfd>: Fix formatting.
1287 (peek_die_abbrev): Use reader.abfd.
1289 2021-03-14 Tom Tromey <tom@tromey.com>
1291 * dwarf2/read.c (dwarf2_per_cu_data::get_header): Set
1294 2021-03-13 Tom Tromey <tom@tromey.com>
1296 * dwarf2/read.c (struct partial_die_info): Update.
1297 (peek_die_abbrev, skip_children, skip_one_die, read_full_die_1)
1298 (load_partial_dies, partial_die_info::partial_die_info): Update.
1299 * dwarf2/abbrev.h (lookup_abbrev): Constify.
1301 2021-03-13 Tom Tromey <tom@tromey.com>
1303 * dwarf2/abbrev.c (abbrev_table::read): Remove Irix 6 workaround.
1305 2021-03-12 Christian Biesinger <cbiesinger@google.com>
1308 * cp-support.c: Use scoped_segv_handler_restore.
1309 * event-top.c (thread_local_segv_handler): Made static.
1310 (scoped_segv_handler_restore::scoped_segv_handler_restore):
1312 (scoped_segv_handler_restore::~scoped_segv_handler_restore): New
1314 * event-top.h (class scoped_segv_handler_restore): New class.
1315 (thread_local_segv_handler): Removed.
1317 2021-03-10 Tom Tromey <tromey@adacore.com>
1319 * parser-defs.h (parser_state): Change completion to bool.
1320 <parse_completion>: Likewise.
1321 * ada-lang.h (ada_find_operator_symbol, ada_resolve_funcall)
1322 (ada_resolve_variable, ada_resolve_function): Update.
1323 * ada-lang.c (ada_find_operator_symbol): Change
1324 parse_completion to bool.
1325 (ada_resolve_funcall, ada_resolve_variable)
1326 (ada_resolve_function): Likewise.
1328 2021-03-09 Tom Tromey <tromey@adacore.com>
1330 * eval.c (operation::evaluate_funcall): Use function formal
1331 parameter types when evaluating.
1333 2021-03-09 Andrew Burgess <andrew.burgess@embecosm.com>
1335 * gdb-gdb.py.in (StructMainTypePrettyPrinter) <owner_to_string>:
1336 Updated fields names flag_objfile_owned to m_flag_objfile_owned,
1337 and owner to m_owner.
1339 2021-03-09 Felix Willgerodt <felix.willgerodt@intel.com>
1341 * f-exp.h (eval_op_f_loc): Declare.
1342 (expr::fortran_loc_operation): New typedef.
1343 * f-exp.y (exp): Handle UNOP_FORTRAN_LOC after parsing an
1345 (f77_keywords): Add LOC keyword.
1346 * f-lang.c (eval_op_f_loc): New function.
1347 * std-operator.def (UNOP_FORTRAN_LOC): New operator.
1349 2021-03-09 Andrew Burgess <andrew.burgess@embecosm.com>
1351 * f-exp.h (eval_op_f_array_shape): Declare.
1352 (fortran_array_shape_operation): New type.
1353 * f-exp.y (exp): Handle UNOP_FORTRAN_SHAPE after parsing
1355 (f77_keywords): Add "shape" keyword.
1356 * f-lang.c (fortran_array_shape): New function.
1357 (eval_op_f_array_shape): New function.
1358 * std-operator.def (UNOP_FORTRAN_SHAPE): New operator.
1360 2021-03-09 Andrew Burgess <andrew.burgess@embecosm.com>
1362 * f-exp.y (eval_op_f_array_size): Declare 1 and 2 argument forms
1364 (expr::fortran_array_size_1arg): New type.
1365 (expr::fortran_array_size_2arg): Likewise.
1366 * f-exp.y (exp): Handle FORTRAN_ARRAY_SIZE after parsing
1367 UNOP_OR_BINOP_INTRINSIC.
1368 (f77_keywords): Add "size" keyword.
1369 * f-lang.c (fortran_array_size): New function.
1370 (eval_op_f_array_size): New function, has a 1 arg and 2 arg form.
1371 * std-operator.def (FORTRAN_ARRAY_SIZE): New operator.
1373 2021-03-09 Andrew Burgess <andrew.burgess@embecosm.com>
1375 * f-exp.h (eval_op_f_rank): Declare.
1376 (expr::fortran_rank_operation): New typedef.
1377 * f-exp.y (exp): Handle UNOP_FORTRAN_RANK after parsing an
1379 (f77_keywords): Add "rank" keyword.
1380 * f-lang.c (eval_op_f_rank): New function.
1381 * std-operator.def (UNOP_FORTRAN_RANK): New operator.
1383 2021-03-08 Tom Tromey <tom@tromey.com>
1385 * printcmd.c (set_command): Remove null check.
1386 * value.c (init_if_undefined_command): Remove null check.
1388 2021-03-08 Tom Tromey <tom@tromey.com>
1390 * parse.c (parser_state::push_symbol, parser_state::push_dollar):
1392 * p-exp.y (variable): Update.
1393 * go-exp.y (variable): Update.
1394 * expprint.c (dump_for_expression): Use bound_minimal_symbol.
1395 Remove overload for objfile.
1396 * expop.h (eval_op_var_msym_value): Use bound_minimal_symbol
1398 (check_objfile): Likewise.
1399 (dump_for_expression): Likewise. Remove overload for objfile.
1400 (class var_msym_value_operation): Use bound_minimal_symbol.
1401 * eval.c (eval_op_var_msym_value): Use bound_minimal_symbol
1403 (var_msym_value_operation::evaluate_for_address)
1404 (var_msym_value_operation::evaluate_for_sizeof)
1405 (var_msym_value_operation::evaluate_for_cast): Update.
1406 * d-exp.y (PrimaryExpression): Update.
1407 * c-exp.y (variable): Update.
1408 * ax-gdb.c (var_msym_value_operation::do_generate_ax): Update.
1409 * ada-lang.c (ada_var_msym_value_operation::evaluate_for_cast):
1411 * ada-exp.y (write_var_or_type): Update.
1413 2021-03-08 Tom Tromey <tom@tromey.com>
1415 * parser-defs.h (exp_uses_objfile): Return bool.
1416 * parse.c (exp_uses_objfile): Return bool.
1418 2021-03-08 Tom Tromey <tom@tromey.com>
1420 * value.h (eval_skip_value): Don't declare.
1421 * opencl-lang.c (eval_opencl_assign): Update.
1422 * m2-lang.c (eval_op_m2_high, eval_op_m2_subscript): Update.
1423 * f-lang.c (eval_op_f_abs, eval_op_f_mod, eval_op_f_ceil)
1424 (eval_op_f_floor, eval_op_f_modulo, eval_op_f_cmplx): Remove.
1425 * expression.h (enum noside) <EVAL_SKIP>: Remove.
1426 * expop.h (typeof_operation::evaluate)
1427 (decltype_operation::evaluate, unop_addr_operation::evaluate)
1428 (unop_sizeof_operation::evaluate, assign_operation::evaluate)
1429 (cxx_cast_operation::evaluate): Update.
1430 * eval.c (eval_skip_value): Remove.
1431 (eval_op_scope, eval_op_var_entry_value)
1432 (eval_op_func_static_var, eval_op_string, eval_op_objc_selector)
1433 (eval_op_concat, eval_op_ternop, eval_op_structop_struct)
1434 (eval_op_structop_ptr, eval_op_member, eval_op_add, eval_op_sub)
1435 (eval_op_binary, eval_op_subscript, eval_op_equal)
1436 (eval_op_notequal, eval_op_less, eval_op_gtr, eval_op_geq)
1437 (eval_op_leq, eval_op_repeat, eval_op_plus, eval_op_neg)
1438 (eval_op_complement, eval_op_lognot, eval_op_ind)
1439 (eval_op_memval, eval_op_preinc, eval_op_predec)
1440 (eval_op_postinc, eval_op_postdec, eval_op_type)
1441 (eval_binop_assign_modify, eval_op_objc_msgcall)
1442 (eval_multi_subscript, logical_and_operation::evaluate)
1443 (logical_or_operation::evaluate, array_operation::evaluate)
1444 (operation::evaluate_for_cast)
1445 (var_msym_value_operation::evaluate_for_cast)
1446 (var_value_operation::evaluate_for_cast): Update.
1447 * c-lang.c (c_string_operation::evaluate): Update.
1448 * c-exp.h (objc_nsstring_operation::evaluate)
1449 (objc_selector_operation::evaluate): Update.
1450 * ada-lang.c (ada_assign_operation::evaluate)
1451 (eval_ternop_in_range, ada_unop_neg, ada_unop_in_range)
1452 (ada_atr_size): Update.
1454 2021-03-08 Tom Tromey <tom@tromey.com>
1456 * eval.c: Merge "namespace" scopes.
1458 2021-03-08 Tom Tromey <tom@tromey.com>
1460 * parser-defs.h (struct expr_builder) <expr_builder>: Inline.
1462 * parse.c (expr_builder::expr_builder, expr_builder::release):
1465 2021-03-08 Tom Tromey <tom@tromey.com>
1467 * parse.c (expression::expression, expression::~expression):
1469 * expression.h (struct expression): Inline constructor. Remove
1472 2021-03-08 Tom Tromey <tom@tromey.com>
1474 * std-operator.def (BINOP_END): Remove.
1475 * p-exp.y (tokentab3, tokentab2): Use OP_NULL, not BINOP_END.
1476 * go-exp.y (tokentab2): Use OP_NULL, not BINOP_END.
1477 * f-exp.y (dot_ops, f77_keywords): Use OP_NULL, not BINOP_END.
1478 * d-exp.y (tokentab2, ident_tokens): Use OP_NULL, not BINOP_END.
1479 * c-exp.y (tokentab3, tokentab2, ident_tokens): Use OP_NULL, not
1482 2021-03-08 Tom Tromey <tom@tromey.com>
1484 * expression.h (enum exp_opcode) <OP_UNUSED_LAST>: Remove.
1486 2021-03-08 Tom Tromey <tom@tromey.com>
1488 * std-operator.def (OP_EXTENDED0): Remove.
1490 2021-03-08 Tom Tromey <tom@tromey.com>
1492 * std-operator.def (OP_NAME, OP_ATR_IMAGE, OP_ATR_MODULUS)
1493 (OP_OTHERS, OP_CHOICES, OP_POSITIONAL, OP_DISCRETE_RANGE):
1496 2021-03-08 Tom Tromey <tom@tromey.com>
1498 * std-operator.def (UNOP_CAP, UNOP_CHR, UNOP_ORD, UNOP_FLOAT)
1499 (UNOP_MAX, UNOP_MIN, UNOP_ODD, UNOP_TRUNC, OP_M2_STRING): Remove.
1501 2021-03-08 Tom Tromey <tom@tromey.com>
1503 * std-operator.def (OP_ATR_MIN, OP_ATR_MAX): Remove.
1504 * ada-lang.c (ada_binop_minmax): Update.
1505 * ada-exp.h (ada_binop_min_operation, ada_binop_max_operation):
1506 Use BINOP_MIN and BINOP_MAX.
1508 2021-03-08 Tom Tromey <tom@tromey.com>
1510 * value.h (evaluate_subexp_with_coercion): Don't declare.
1511 * parse.c (exp_descriptor_standard): Remove.
1512 (expr_builder::expr_builder, expr_builder::release): Update.
1513 (expression::expression): Remove size_t parameter.
1514 (expression::~expression): Simplify.
1515 (expression::resize): Remove.
1516 (write_exp_elt, write_exp_elt_opcode, write_exp_elt_sym)
1517 (write_exp_elt_msym, write_exp_elt_block, write_exp_elt_objfile)
1518 (write_exp_elt_longcst, write_exp_elt_floatcst)
1519 (write_exp_elt_type, write_exp_elt_intern, write_exp_string)
1520 (write_exp_string_vector, write_exp_bitstring): Remove.
1521 * p-lang.h (class pascal_language) <opcode_print_table,
1522 op_print_tab>: Remove.
1523 * p-lang.c (pascal_language::op_print_tab): Remove.
1524 * opencl-lang.c (class opencl_language) <opcode_print_table>:
1526 * objc-lang.c (objc_op_print_tab): Remove.
1527 (class objc_language) <opcode_print_table>: Remove.
1528 * m2-lang.h (class m2_language) <opcode_print_table,
1529 op_print_tab>: Remove.
1530 * m2-lang.c (m2_language::op_print_tab): Remove.
1531 * language.h (struct language_defn) <post_parser, expression_ops,
1532 opcode_print_table>: Remove.
1533 * language.c (language_defn::expression_ops)
1534 (auto_or_unknown_language::opcode_print_table): Remove.
1535 * go-lang.h (class go_language) <opcode_print_table,
1536 op_print_tab>: Remove.
1537 * go-lang.c (go_language::op_print_tab): Remove.
1538 * f-lang.h (class f_language) <opcode_print_table>: Remove
1539 <op_print_tab>: Remove.
1540 * f-lang.c (f_language::op_print_tab): Remove.
1541 * expression.h (union exp_element): Remove.
1542 (struct expression): Remove size_t parameter from constructor.
1544 <first_opcode>: Update.
1545 <nelts, elts>: Remove.
1546 (EXP_ELEM_TO_BYTES, BYTES_TO_EXP_ELEM): Remove.
1547 (evaluate_subexp_standard, print_expression, op_string)
1548 (dump_raw_expression): Don't declare.
1549 * expprint.c (print_expression, print_subexp)
1550 (print_subexp_funcall, print_subexp_standard, op_string)
1551 (dump_raw_expression, dump_subexp, dump_subexp_body)
1552 (dump_subexp_body_funcall, dump_subexp_body_standard): Remove.
1553 (dump_prefix_expression): Update.
1554 * eval.c (evaluate_subexp): Remove.
1555 (evaluate_expression, evaluate_type): Update.
1556 (evaluate_subexpression_type): Remove.
1557 (fetch_subexp_value): Remove "pc" parameter. Update.
1558 (extract_field_op, evaluate_struct_tuple, evaluate_funcall)
1559 (evaluate_subexp_standard, evaluate_subexp_for_address)
1560 (evaluate_subexp_with_coercion, evaluate_subexp_for_sizeof)
1561 (evaluate_subexp_for_cast): Remove.
1562 (parse_and_eval_type): Update.
1563 * dtrace-probe.c (dtrace_probe::compile_to_ax): Update.
1564 * d-lang.c (d_op_print_tab): Remove.
1565 (class d_language) <opcode_print_table>: Remove.
1566 * c-lang.h (c_op_print_tab): Don't declare.
1567 * c-lang.c (c_op_print_tab): Remove.
1568 (class c_language, class cplus_language, class asm_language, class
1569 minimal_language) <opcode_print_table>: Remove.
1570 * breakpoint.c (update_watchpoint, watchpoint_check)
1571 (watchpoint_exp_is_const, watch_command_1): Update.
1572 * ax-gdb.h (union exp_element): Don't declare.
1573 * ax-gdb.c (const_var_ref, const_expr, maybe_const_expr)
1574 (gen_repeat, gen_sizeof, gen_expr_for_cast, gen_expr)
1575 (gen_expr_binop_rest): Remove.
1576 (gen_trace_for_expr, gen_eval_for_expr, gen_printf): Update.
1577 * ada-lang.c (ada_op_print_tab): Remove.
1578 (class ada_language) <post_parser, opcode_print_table>: Remove.
1580 2021-03-08 Tom Tromey <tom@tromey.com>
1582 * go-lang.c (go_language::expression_ops): Don't declare.
1583 * go-lang.h (class go_language) <expression_ops>: Remove.
1584 * opencl-lang.c (evaluate_subexp_opencl, exp_descriptor_opencl):
1586 (class opencl_language) <expression_ops>: Remove.
1587 * d-lang.c (class d_language) <expression_ops>: Remove.
1588 * c-lang.h (evaluate_subexp_c, exp_descriptor_c): Don't declare.
1589 * c-lang.c (evaluate_subexp_c, exp_descriptor_c): Remove.
1590 (class c_language, class cplus_language, class asm_language)
1591 (class minimal_language) <expression_ops>: Remove.
1593 2021-03-08 Tom Tromey <tom@tromey.com>
1595 * ada-lang.c (resolve_subexp, replace_operator_with_call)
1596 (evaluate_subexp_type, assign_aggregate)
1597 (aggregate_assign_positional, aggregate_assign_from_choices)
1598 (aggregate_assign_others, ada_evaluate_subexp_for_cast)
1599 (ada_evaluate_subexp, ADA_OPERATORS, ada_operator_length)
1600 (ada_operator_check, ada_forward_operator_length)
1601 (ada_dump_subexp_body, ada_print_subexp, ada_exp_descriptor):
1603 (post_parser): Update.
1604 (class ada_language) <expresssion_ops>: Remove.
1606 2021-03-08 Tom Tromey <tom@tromey.com>
1608 * m2-lang.h (class m2_language) <expresssion_ops,
1609 exp_descriptor_modula2>: Remove.
1610 * m2-lang.c (evaluate_subexp_modula2)
1611 (m2_language::exp_descriptor_modula2): Remove.
1613 2021-03-08 Tom Tromey <tom@tromey.com>
1615 * f-lang.h (class f_language) <expresssion_ops>: Remove.
1616 <exp_descriptor_tab>: Remove.
1617 * f-lang.c (fortran_value_subarray, evaluate_subexp_f)
1618 (operator_length_f, print_unop_subexp_f, print_binop_subexp_f)
1619 (print_subexp_f, dump_subexp_body_f, operator_check_f)
1620 (f_language::exp_descriptor_tab, fortran_prepare_argument):
1623 2021-03-08 Tom Tromey <tom@tromey.com>
1625 * rust-lang.h (class rust_language) <expression_ops,
1626 exp_descriptor_tab>: Remove.
1627 * rust-lang.c (rust_evaluate_funcall): Remove.
1628 (rust_range, rust_subscript, eval_op_rust_complement): Don't use
1630 (rust_evaluate_subexp): Remove.
1631 (rust_aggregate_operation::evaluate): Don't use EVAL_SKIP.
1632 (rust_operator_length, rust_dump_subexp_body, rust_print_subexp)
1633 (rust_operator_check, rust_language::exp_descriptor_tab): Remove.
1635 2021-03-08 Tom Tromey <tom@tromey.com>
1637 * ada-exp.y: Create operations.
1638 (empty_stoken): Remove.
1639 (ada_pop, ada_wrap, ada_addrof, ada_un_wrap2, ada_wrap2)
1640 (ada_wrap_op, ada_wrap3, ada_funcall): New functions.
1641 (components): New global.
1642 (push_component, choice_component, pop_component, pop_components):
1644 (associations): New global
1645 (push_association, pop_association, pop_associations): New
1647 (ada_parse): Update.
1648 (write_var_from_sym, write_int): Create operations.
1649 (write_exp_op_with_string): Remove.
1650 (write_object_renaming, write_selectors, write_ambiguous_var)
1651 (write_var_or_type, write_name_assoc): Create operations.
1652 * ada-lang.h (ada_index_type): Declare.
1653 * ada-lang.c (ada_index_type): No longer static.
1655 2021-03-08 Tom Tromey <tom@tromey.com>
1657 * f-exp.y: Create operations.
1658 (f_language::parser): Update.
1660 2021-03-08 Tom Tromey <tom@tromey.com>
1662 * m2-exp.y: Create operations.
1663 (m2_language::parser): Update.
1665 2021-03-08 Tom Tromey <tom@tromey.com>
1667 * p-exp.y: Create operations.
1668 (pascal_language::parser): Update.
1670 2021-03-08 Tom Tromey <tom@tromey.com>
1672 * d-exp.y: Create operations.
1675 2021-03-08 Tom Tromey <tom@tromey.com>
1677 * go-exp.y: Create operations.
1678 (go_language::parser): Update.
1680 2021-03-08 Tom Tromey <tom@tromey.com>
1682 * objc-lang.c (end_msglist): Create operations.
1683 * c-exp.y: Change parser to create operations.
1684 (write_destructor_name): Remove.
1687 2021-03-08 Tom Tromey <tom@tromey.com>
1689 * rust-exp.y: Create operations.
1690 (rust_parser::convert_params_to_expression): Change return type.
1691 (binop_maker_ftype): New typedef.
1692 (maker_map): New global.
1693 (rust_parser::convert_ast_to_expression): Change return type.
1694 (rust_language::parser): Update.
1695 (_initialize_rust_exp): Initialize maker_map.
1697 2021-03-08 Tom Tromey <tom@tromey.com>
1699 * stap-probe.c (binop_maker_ftype): New typedef.
1700 (stap_maker_map): New global.
1701 (stap_make_binop): New function.
1702 (stap_parse_register_operand): Return operation_up.
1703 (stap_parse_single_operand, stap_parse_argument_conditionally)
1704 (stap_parse_argument_1): Likewise.
1705 (stap_parse_argument): Create operations.
1706 (stap_probe::parse_arguments): Update.
1707 (_initialize_stap_probe): Initialize stap_maker_map.
1708 * ppc-linux-tdep.c (ppc_stap_parse_special_token): Change return
1710 * i386-tdep.h (i386_stap_parse_special_token): Change return
1712 * i386-tdep.c (i386_stap_parse_special_token_triplet)
1713 (i386_stap_parse_special_token_three_arg_disp)
1714 (i386_stap_parse_special_token): Change return type.
1715 * gdbarch.sh (stap_parse_special_token): Change return type.
1716 * gdbarch.c: Rebuild.
1717 * gdbarch.h: Rebuild.
1718 * arm-linux-tdep.c (arm_stap_parse_special_token): Change return
1720 * aarch64-linux-tdep.c (aarch64_stap_parse_special_token): Change
1723 2021-03-08 Tom Tromey <tom@tromey.com>
1725 * gdbarch.sh (dtrace_parse_probe_argument): Change return type.
1726 * gdbarch.h: Rebuild.
1727 * gdbarch.c: Rebuild.
1728 * dtrace-probe.c (dtrace_probe::build_arg_exprs): Update.
1729 * amd64-linux-tdep.c (amd64_dtrace_parse_probe_argument): Change
1731 (amd64_dtrace_parse_probe_argument): Update.
1733 2021-03-08 Tom Tromey <tom@tromey.com>
1735 * parser-defs.h (struct parser_state) <push, push_new,
1736 push_c_string, push_symbol, push_dollar, pop, pop_vector, wrap,
1737 wrap2>: New methods.
1738 <m_operations>: New member.
1739 * parse.c (parser_state::push_c_string)
1740 (parser_state::push_symbol, parser_state::push_dollar): New
1743 2021-03-08 Tom Tromey <tom@tromey.com>
1745 * parser-defs.h (struct expr_completion_state) <expout_last_op>:
1747 (struct parser_state) <mark_struct_expression>: New method.
1748 * parse.c (parser_state::mark_struct_expression): Update assert.
1749 (parser_state::mark_struct_expression): New method.
1750 (parser_state::mark_completion_tag): Update assert.
1751 (parse_expression_for_completion): Handle expout_last_op.
1753 2021-03-08 Tom Tromey <tom@tromey.com>
1755 * ada-exp.h (class ada_var_value_operation) <get_symbol>: Remove;
1757 * value.h (fetch_subexp_value): Add "op" parameter.
1758 * value.c (init_if_undefined_command): Update.
1759 * tracepoint.c (validate_actionline, encode_actions_1): Update.
1760 * stap-probe.c (stap_probe::compile_to_ax): Update.
1761 * printcmd.c (set_command): Update.
1762 * ppc-linux-nat.c (ppc_linux_nat_target::check_condition):
1764 * parser-defs.h (struct expr_builder) <set_operation>: New
1766 * parse.c (parse_exp_in_context, exp_uses_objfile): Update.
1767 * expression.h (struct expression) <first_opcode>: Update.
1769 * expprint.c (dump_raw_expression, dump_prefix_expression):
1771 * expop.h (class var_value_operation) <get_symbol>: New method.
1772 (class register_operation) <get_name>: New method.
1773 (class equal_operation): No longer a typedef, now a subclass.
1774 (class unop_memval_operation) <get_type>: New method.
1775 (class assign_operation) <get_lhs>: New method.
1776 (class unop_cast_operation) <get_type>: New method.
1777 * eval.c (evaluate_expression, evaluate_type)
1778 (evaluate_subexpression_type): Update.
1779 (fetch_subexp_value): Add "op" parameter.
1780 (parse_and_eval_type): Update.
1781 * dtrace-probe.c (dtrace_probe::compile_to_ax): Update.
1782 * breakpoint.c (update_watchpoint, watchpoint_check)
1783 (watchpoint_exp_is_const, watch_command_1): Update.
1784 * ax-gdb.c (gen_trace_for_expr, gen_eval_for_expr, gen_printf):
1787 2021-03-08 Tom Tromey <tom@tromey.com>
1789 * ada-lang.c (ada_value_binop): Do not use op_string.
1791 2021-03-08 Tom Tromey <tom@tromey.com>
1793 * expprint.c (dump_for_expression): New overload.
1794 * expop.h (check_objfile, dump_for_expression): Declare new
1796 * ada-lang.c (check_objfile): New overload.
1797 (assign_component, ada_aggregate_component::uses_objfile)
1798 (ada_aggregate_component::dump, ada_aggregate_component::assign)
1799 (ada_aggregate_component::assign_aggregate)
1800 (ada_positional_component::uses_objfile)
1801 (ada_positional_component::dump, ada_positional_component::assign)
1802 (ada_discrete_range_association::uses_objfile)
1803 (ada_discrete_range_association::dump)
1804 (ada_discrete_range_association::assign)
1805 (ada_name_association::uses_objfile, ada_name_association::dump)
1806 (ada_name_association::assign)
1807 (ada_choices_component::uses_objfile, ada_choices_component::dump)
1808 (ada_choices_component::assign)
1809 (ada_others_component::uses_objfile, ada_others_component::dump)
1810 (ada_others_component::assign, ada_assign_operation::evaluate):
1812 * ada-exp.h (ada_string_operation) <get_name>: New method.
1813 (class ada_assign_operation): New.
1814 (class ada_component): New.
1815 (ada_component_up): New typedef.
1816 (class ada_aggregate_operation, class ada_aggregate_component)
1817 (class ada_positional_component, class ada_others_component)
1818 (class ada_association): New.
1819 (ada_association_up): New typedef.
1820 (class ada_choices_component)
1821 (class ada_discrete_range_association)
1822 (class ada_name_association): New.
1824 2021-03-08 Tom Tromey <tom@tromey.com>
1826 * ada-lang.c (ada_var_value_operation::resolve)
1827 (ada_funcall_operation::resolve)
1828 (ada_ternop_slice_operation::resolve): New methods.
1829 * ada-exp.h (struct ada_resolvable): New.
1830 (class ada_var_value_operation): Derive from ada_resolvable.
1831 <get_block, resolve>: New methods.
1832 (class ada_funcall_operation): Derive from ada_resolvable.
1833 <resolve>: New method.
1834 (class ada_ternop_slice_operation): Derive from ada_resolvable.
1835 <resolve>: New method.
1837 2021-03-08 Tom Tromey <tom@tromey.com>
1839 * ada-lang.c (ada_funcall_operation::evaluate): New method.
1840 * ada-exp.h (class ada_var_msym_value_operation) <get_symbol>: New
1842 (class ada_funcall_operation): New.
1844 2021-03-08 Tom Tromey <tom@tromey.com>
1846 * ada-lang.c (ada_structop_operation::evaluate): New method.
1847 * ada-exp.h (class ada_structop_operation): New.
1849 2021-03-08 Tom Tromey <tom@tromey.com>
1851 * ada-lang.c (ada_unop_ind_operation::evaluate): New method.
1852 * ada-exp.h (class ada_unop_ind_operation): New.
1854 2021-03-08 Tom Tromey <tom@tromey.com>
1856 * ada-lang.c (ada_binop_exp): No longer static.
1857 * ada-exp.h (ada_binop_exp_operation): New typedef.
1859 2021-03-08 Tom Tromey <tom@tromey.com>
1861 * ada-lang.c (ada_val_atr): No longer static.
1862 (ada_atr_val_operation::evaluate): New method.
1863 * ada-exp.h (class ada_atr_val_operation): New.
1865 2021-03-08 Tom Tromey <tom@tromey.com>
1867 * ada-lang.c (ada_pos_atr): No longer static.
1868 * ada-exp.h (ada_pos_operation): New typedef.
1870 2021-03-08 Tom Tromey <tom@tromey.com>
1872 * ada-lang.c (ada_pos_atr): Rename from value_pos_atr. Change
1874 (ada_evaluate_subexp): Use it.
1876 2021-03-08 Tom Tromey <tom@tromey.com>
1878 * ada-lang.c (ada_binop_minmax): No longer static.
1879 * ada-exp.h (ada_binop_min_operation, ada_binop_max_operation):
1882 2021-03-08 Tom Tromey <tom@tromey.com>
1884 * ada-lang.c (ada_var_msym_value_operation::evaluate_for_cast):
1886 * ada-exp.h (class ada_var_msym_value_operation): New.
1888 2021-03-08 Tom Tromey <tom@tromey.com>
1890 * ada-lang.c (ada_var_value_operation::evaluate_for_cast)
1891 (ada_var_value_operation::evaluate): New methods.
1892 * ada-exp.h (class ada_var_value_operation): New.
1894 2021-03-08 Tom Tromey <tom@tromey.com>
1896 * ada-lang.c (ada_unop_atr_operation::evaluate): New method.
1897 * ada-exp.h (class ada_unop_atr_operation): New.
1899 2021-03-08 Tom Tromey <tom@tromey.com>
1901 * ada-lang.c (ada_binop_in_bounds): No longer static.
1902 * ada-exp.h (class ada_binop_in_bounds_operation): New.
1904 2021-03-08 Tom Tromey <tom@tromey.com>
1906 * ada-lang.c (ada_ternop_slice): No longer static.
1907 * ada-exp.h (class ada_ternop_slice_operation): New.
1909 2021-03-08 Tom Tromey <tom@tromey.com>
1911 * ada-exp.h (ada_bitwise_operation): New template class.
1912 (ada_bitwise_and_operation, ada_bitwise_ior_operation)
1913 (ada_bitwise_xor_operation): New typedefs.
1915 2021-03-08 Tom Tromey <tom@tromey.com>
1917 * ada-lang.c (ada_equal_binop): No longer static.
1918 * ada-exp.h (class ada_binop_equal_operation): New.
1920 2021-03-08 Tom Tromey <tom@tromey.com>
1922 * ada-lang.c (ada_mult_binop): No longer static.
1923 * ada-exp.h (ada_binop_mul_operation ada_binop_div_operation)
1924 (ada_binop_rem_operation, ada_binop_mod_operation): New typedefs.
1926 2021-03-08 Tom Tromey <tom@tromey.com>
1928 * ada-lang.c (ada_binop_addsub_operation::evaluate): New method.
1929 * ada-exp.h (class ada_binop_addsub_operation): New.
1931 2021-03-08 Tom Tromey <tom@tromey.com>
1933 * ada-lang.h (ada_find_operator_symbol, ada_resolve_funcall)
1934 (ada_resolve_variable): Declare.
1935 * ada-lang.c (ada_find_operator_symbol, ada_resolve_funcall)
1936 (ada_resolve_variable): New functions.
1937 (resolve_subexp): Update.
1939 2021-03-08 Tom Tromey <tom@tromey.com>
1941 * opencl-lang.c (opencl_ternop_cond_operation::evaluate): New
1943 * c-exp.h (class opencl_ternop_cond_operation): New.
1945 2021-03-08 Tom Tromey <tom@tromey.com>
1947 * opencl-lang.c (opencl_logical_binop_operation::evaluate): New
1949 * c-exp.h (class opencl_logical_binop_operation): New.
1951 2021-03-08 Tom Tromey <tom@tromey.com>
1953 * opencl-lang.c (opencl_structop_operation::evaluate): New
1955 * c-exp.h (class opencl_structop_operation): New.
1957 2021-03-08 Tom Tromey <tom@tromey.com>
1959 * opencl-lang.c (opencl_logical_not): No longer static. Change
1961 (evaluate_subexp_opencl): Update.
1962 * c-exp.h (opencl_notequal_operation): New typedef.
1964 2021-03-08 Tom Tromey <tom@tromey.com>
1966 * opencl-lang.c (opencl_relop, eval_opencl_assign): No longer
1967 static. Change parameters.
1968 (eval_opencl_assign): No longer static. Add "op" parameter.
1969 (evaluate_subexp_opencl): Update.
1970 * c-exp.h (opencl_binop_operation): New template class.
1971 (opencl_assign_operation, opencl_equal_operation)
1972 (opencl_notequal_operation, opencl_less_operation)
1973 (opencl_gtr_operation, opencl_geq_operation)
1974 (opencl_leq_operation): New typedefs.
1976 2021-03-08 Tom Tromey <tom@tromey.com>
1978 * opencl-lang.c (opencl_value_cast): No longer static.
1979 * c-exp.h (opencl_cast_type_operation): New typedef.
1981 2021-03-08 Tom Tromey <tom@tromey.com>
1983 * f-exp.h (eval_op_f_allocated): Declare.
1984 (fortran_allocated_operation): New typedef.
1985 * f-lang.c (eval_op_f_allocated): No longer static.
1987 2021-03-08 Tom Tromey <tom@tromey.com>
1989 * f-lang.c (eval_op_f_associated): New functions.
1990 * f-exp.h (fortran_associated_1arg, fortran_associated_2arg): New
1993 2021-03-08 Tom Tromey <tom@tromey.com>
1995 * f-lang.c (fortran_bound_1arg::evaluate)
1996 (fortran_bound_2arg::evaluate): New methods.
1997 * f-exp.h (class fortran_bound_1arg, class fortran_bound_2arg):
2000 2021-03-08 Tom Tromey <tom@tromey.com>
2002 * expop.h (class unop_addr_operation) <get_expression>: New
2004 * f-lang.c (fortran_undetermined::value_subarray)
2005 (fortran_undetermined::evaluate): New methods.
2006 (fortran_prepare_argument): New overload.
2007 * f-exp.h (class fortran_range_operation)
2008 (class fortran_undetermined): New classes.
2010 2021-03-08 Tom Tromey <tom@tromey.com>
2012 * rust-lang.c (rust_structop::evaluate_funcall): New method.
2013 * rust-exp.h (class rust_structop) <evaluate_funcall>: Declare
2016 2021-03-08 Tom Tromey <tom@tromey.com>
2018 * expression.h (class operation) <evaluate_funcall>: New methods.
2019 * expop.h (class scope_operation) <evaluate_funcall>: New method.
2020 (class var_value_operation) <evaluate_funcall>: New method.
2021 (class structop_base_operation) <evaluate_funcall>: New method.
2022 (class var_msym_value_operation) <evaluate_funcall>: New method.
2023 (class structop_member_base): New class.
2024 (class structop_member_operation): Derive from
2025 structop_member_base.
2026 (class structop_mptr_operation): Derive from
2027 structop_member_base.
2028 (class funcall_operation): New class.
2029 * eval.c (operation::evaluate_funcall)
2030 (var_value_operation::evaluate_funcall)
2031 (scope_operation::evaluate_funcall)
2032 (structop_member_base::evaluate_funcall)
2033 (structop_base_operation::evaluate_funcall): New methods.
2035 2021-03-08 Tom Tromey <tom@tromey.com>
2037 * expop.h (class array_operation): New.
2038 * eval.c (array_operation::evaluate_struct_tuple)
2039 (array_operation::evaluate): New methods.
2041 2021-03-08 Tom Tromey <tom@tromey.com>
2043 * expop.h (class adl_func_operation): New.
2044 * eval.c (adl_func_operation::evaluate): New method.
2046 2021-03-08 Tom Tromey <tom@tromey.com>
2048 * ada-lang.c (ada_unop_in_range): No longer static.
2049 * ada-exp.h (class ada_unop_range_operation): New.
2051 2021-03-08 Tom Tromey <tom@tromey.com>
2053 * ada-lang.c (ada_unop_neg, ada_atr_tag, ada_atr_size, ada_abs):
2055 * ada-exp.h (ada_neg_operation, ada_atr_tag_operation)
2056 (ada_atr_size_operation, ada_abs_operation): New typedefs.
2058 2021-03-08 Tom Tromey <tom@tromey.com>
2060 * expop.h (class logical_and_operation)
2061 (class logical_or_operation): New.
2062 * eval.c (logical_and_operation::evaluate)
2063 (logical_or_operation::evaluate): New methods.
2064 * ax-gdb.c (logical_and_operation::do_generate_ax)
2065 (logical_or_operation::do_generate_ax): New methods.
2067 2021-03-08 Tom Tromey <tom@tromey.com>
2069 * m2-lang.c (eval_op_m2_high, eval_op_m2_subscript): No longer
2071 * m2-exp.h: New file.
2073 2021-03-08 Tom Tromey <tom@tromey.com>
2075 * rust-lang.c (rust_aggregate_operation::evaluate): New method.
2076 * rust-exp.h (class rust_aggregate_operation): New.
2078 2021-03-08 Tom Tromey <tom@tromey.com>
2080 * rust-lang.c (eval_op_rust_struct_anon, eval_op_rust_structop):
2082 * rust-exp.h (class rust_struct_anon): New.
2083 (class rust_structop): New.
2085 2021-03-08 Tom Tromey <tom@tromey.com>
2087 * rust-lang.c (rust_range): No longer static.
2088 * rust-exp.h (class rust_range_operation): New.
2090 2021-03-08 Tom Tromey <tom@tromey.com>
2092 * rust-lang.c (rust_subscript): No longer static.
2093 * rust-exp.h (class rust_subscript_operation): New.
2095 2021-03-08 Tom Tromey <tom@tromey.com>
2097 * rust-lang.c (eval_op_rust_ind): No longer static. Add "opcode"
2099 (rust_evaluate_subexp): Update.
2100 * rust-exp.h (class rust_unop_ind_operation): New.
2102 2021-03-08 Tom Tromey <tom@tromey.com>
2104 * rust-lang.c (eval_op_rust_complement, eval_op_rust_array): No
2105 longer static. Add "opcode" parameter.
2106 (rust_evaluate_subexp): Update.
2107 * rust-exp.h: New file.
2109 2021-03-08 Tom Tromey <tom@tromey.com>
2111 * f-lang.c (eval_op_f_abs, eval_op_f_mod, eval_op_f_ceil)
2112 (eval_op_f_floor, eval_op_f_modulo, eval_op_f_cmplx)
2113 (eval_op_f_kind): No longer static. Add "opcode" parameter.
2114 (evaluate_subexp_f): Update.
2115 * f-exp.h: New file.
2117 2021-03-08 Tom Tromey <tom@tromey.com>
2119 * ada-lang.c (ada_ternop_range_operation::evaluate): New method.
2120 * ada-exp.h (class ada_ternop_range_operation): New.
2122 2021-03-08 Tom Tromey <tom@tromey.com>
2124 * ada-lang.c (ada_qual_operation::evaluate): New method.
2125 * ada-exp.h (class ada_qual_operation): New.
2127 2021-03-08 Tom Tromey <tom@tromey.com>
2129 * ada-lang.c (ada_string_operation::evaluate): New method.
2130 * ada-exp.h (class ada_string_operation): New.
2132 2021-03-08 Tom Tromey <tom@tromey.com>
2134 * ada-lang.c (ada_wrapped_operation::evaluate): New method.
2135 * ada-exp.h: New file.
2137 2021-03-08 Tom Tromey <tom@tromey.com>
2139 * expop.h (class multi_subscript_operation): New.
2140 * eval.c (multi_subscript_operation::evaluate): New method.
2142 2021-03-08 Tom Tromey <tom@tromey.com>
2144 * eval.c (objc_msgcall_operation::evaluate): New method.
2145 * c-exp.h (class objc_msgcall_operation): New.
2147 2021-03-08 Tom Tromey <tom@tromey.com>
2149 * expop.h (class var_value_operation): New.
2150 * eval.c (var_value_operation::evaluate)
2151 (var_value_operation::evaluate_for_address)
2152 (var_value_operation::evaluate_with_coercion)
2153 (var_value_operation::evaluate_for_sizeof)
2154 (var_value_operation::evaluate_for_cast): New methods.
2155 * ax-gdb.c (var_value_operation::do_generate_ax): New method.
2157 2021-03-08 Tom Tromey <tom@tromey.com>
2159 * expop.h (cxx_cast_ftype): New typedef.
2160 (cxx_cast_operation): New template.
2161 (dynamic_cast_operation, reinterpret_cast_operation): New
2164 2021-03-08 Tom Tromey <tom@tromey.com>
2166 * expop.h (class unop_cast_type_operation): New.
2167 * ax-gdb.c (unop_cast_type_operation::do_generate_ax): New
2170 2021-03-08 Tom Tromey <tom@tromey.com>
2172 * expop.h (class unop_cast_operation): New.
2173 * ax-gdb.c (unop_cast_operation::do_generate_ax): New method.
2175 2021-03-08 Tom Tromey <tom@tromey.com>
2177 * expop.h (class assign_modify_operation): New.
2178 * eval.c (eval_binop_assign_modify): No longer static.
2179 * ax-gdb.c (assign_modify_operation::do_generate_ax): New method.
2181 2021-03-08 Tom Tromey <tom@tromey.com>
2183 * expop.h (class assign_operation): New.
2184 * ax-gdb.c (assign_operation::do_generate_ax): New method.
2186 2021-03-08 Tom Tromey <tom@tromey.com>
2188 * expop.h (class type_instance_operation): New.
2189 * eval.c (type_instance_operation::evaluate): New method.
2191 2021-03-08 Tom Tromey <tom@tromey.com>
2193 * expop.h (class op_this_operation): New.
2194 * ax-gdb.c (op_this_operation::do_generate_ax): New method.
2196 2021-03-08 Tom Tromey <tom@tromey.com>
2198 * expop.h (class unop_memval_operation)
2199 (class unop_memval_type_operation): New.
2200 * eval.c (eval_op_memval): No longer static.
2201 (unop_memval_operation::evaluate_for_address)
2202 (unop_memval_type_operation::evaluate_for_address)
2203 (unop_memval_operation::evaluate_for_sizeof)
2204 (unop_memval_type_operation::evaluate_for_sizeof): New methods.
2205 * ax-gdb.c (unop_memval_operation::do_generate_ax)
2206 (unop_memval_type_operation::do_generate_ax): New methods.
2208 2021-03-08 Tom Tromey <tom@tromey.com>
2210 * expop.h (class unop_alignof_operation): New.
2211 * eval.c (eval_op_alignof): No longer static.
2213 2021-03-08 Tom Tromey <tom@tromey.com>
2215 * expop.h (class unop_sizeof_operation): New.
2216 * ax-gdb.c (unop_sizeof_operation::do_generate_ax): New method.
2218 2021-03-08 Tom Tromey <tom@tromey.com>
2220 * expop.h (class unop_addr_operation): New.
2221 * ax-gdb.c (gen_expr_unop) <case UNOP_ADDR>: New.
2223 2021-03-08 Tom Tromey <tom@tromey.com>
2225 * expop.h (class typeid_operation): New.
2227 2021-03-08 Tom Tromey <tom@tromey.com>
2229 * expop.h (class decltype_operation): New.
2231 2021-03-08 Tom Tromey <tom@tromey.com>
2233 * expop.h (class typeof_operation): New.
2235 2021-03-08 Tom Tromey <tom@tromey.com>
2237 * expop.h (class type_operation): New.
2238 * eval.c (eval_op_type): No longer static.
2240 2021-03-08 Tom Tromey <tom@tromey.com>
2242 * expop.h (class unop_ind_base_operation)
2243 (class unop_ind_operation): New.
2244 * eval.c (eval_op_ind): No longer static. Remove "op" parameter.
2245 (unop_ind_base_operation::evaluate_for_address)
2246 (unop_ind_base_operation::evaluate_for_sizeof): New method.
2247 * ax-gdb.c (gen_expr_unop) <case UNOP_IND>: New.
2249 2021-03-08 Tom Tromey <tom@tromey.com>
2251 * expop.h (unop_incr_operation): New template.
2252 (preinc_operation, predec_operation, postinc_operation)
2253 (postdec_operation): New typedefs.
2254 * eval.c (eval_op_preinc, eval_op_predec, eval_op_postinc)
2255 (eval_op_postdec): No longer static.
2257 2021-03-08 Tom Tromey <tom@tromey.com>
2259 * expop.h (unary_ftype): New typedef.
2260 (unop_operation, usual_ax_binop_operation): New templates.
2261 (unary_plus_operation, unary_neg_operation)
2262 (unary_complement_operation, unary_logical_not_operation): New
2264 * eval.c (eval_op_plus, eval_op_neg, eval_op_complement)
2265 (eval_op_lognot): No longer static.
2266 * ax-gdb.c (gen_expr_unop): New function.
2268 2021-03-08 Tom Tromey <tom@tromey.com>
2270 * ax-gdb.c (comma_operation::do_generate_ax): New method.
2272 2021-03-08 Tom Tromey <tom@tromey.com>
2274 * expop.h (class repeat_operation): New.
2275 * eval.c (eval_op_repeat): No longer static. Remove "op"
2277 (evaluate_subexp_standard): Update.
2278 * ax-gdb.c (repeat_operation::do_generate_ax): New method.
2280 2021-03-08 Tom Tromey <tom@tromey.com>
2282 * expop.h (class comparison_operation): New.
2283 (equal_operation, notequal_operation, less_operation)
2284 (gtr_operation, geq_operation, leq_operation): New typedefs.
2285 * eval.c (eval_op_equal, eval_op_notequal, eval_op_less)
2286 (eval_op_gtr, eval_op_geq, eval_op_leq): No longer static.
2288 2021-03-08 Tom Tromey <tom@tromey.com>
2290 * expop.h (class subscript_operation): New.
2291 * eval.c (eval_op_subscript): No longer static.
2293 2021-03-08 Tom Tromey <tom@tromey.com>
2295 * expop.h (class binop_operation, class usual_ax_binop_operation):
2297 (exp_operation, intdiv_operation, mod_operation, mul_operation)
2298 (div_operation, rem_operation, lsh_operation, rsh_operation)
2299 (bitwise_and_operation, bitwise_ior_operation)
2300 (bitwise_xor_operation): New typedefs.
2301 * eval.c (eval_op_binary): No longer static.
2303 2021-03-08 Tom Tromey <tom@tromey.com>
2305 * expop.h (class sub_operation): New.
2306 * eval.c (eval_op_sub): No longer static. Remove "op" parameter.
2307 (evaluate_subexp_standard): Update.
2309 2021-03-08 Tom Tromey <tom@tromey.com>
2311 * expop.h (class add_operation): New.
2312 * eval.c (eval_op_add): No longer static. Remove "op" parameter.
2313 (evaluate_subexp_standard): Update.
2315 2021-03-08 Tom Tromey <tom@tromey.com>
2317 * expop.h (class concat_operation): New.
2318 * eval.c (eval_op_concat): No longer static. Remove "op"
2320 (evaluate_subexp_standard): Update.
2322 2021-03-08 Tom Tromey <tom@tromey.com>
2324 * expop.h (class structop_member_operation)
2325 (class structop_mptr_operation): New.
2326 * eval.c (eval_op_member): No longer static.
2328 2021-03-08 Tom Tromey <tom@tromey.com>
2330 * expop.h (class structop_ptr_operation): New.
2331 * eval.c (eval_op_structop_ptr): No longer static. Remove "op"
2334 2021-03-08 Tom Tromey <tom@tromey.com>
2336 * expop.h (class structop_base_operation)
2337 (class structop_operation): New.
2338 * eval.c (eval_op_structop_struct): No longer static.
2340 2021-03-08 Tom Tromey <tom@tromey.com>
2342 * expop.h (class complex_operation): New.
2344 2021-03-08 Tom Tromey <tom@tromey.com>
2346 * eval.c (eval_op_objc_selector): No longer static.
2347 * c-exp.h (class objc_selector_operation): New.
2349 2021-03-08 Tom Tromey <tom@tromey.com>
2351 * eval.c: Include c-exp.h.
2352 * c-exp.h (class objc_nsstring_operation): New.
2354 2021-03-08 Tom Tromey <tom@tromey.com>
2356 * c-lang.c (c_string_operation::evaluate): New method.
2357 * c-exp.h: New file.
2359 2021-03-08 Tom Tromey <tom@tromey.com>
2361 * expop.h (class ternop_cond_operation): New.
2362 * ax-gdb.c (ternop_cond_operation::do_generate_ax): New method.
2364 2021-03-08 Tom Tromey <tom@tromey.com>
2366 * expop.h (class ternop_slice_operation): New.
2367 * eval.c (eval_op_ternop): No longer static.
2369 2021-03-08 Tom Tromey <tom@tromey.com>
2371 * expop.h (class string_operation): New.
2372 * eval.c (eval_op_string): No longer static.
2374 2021-03-08 Tom Tromey <tom@tromey.com>
2376 * expop.h (class internalvar_operation): New.
2377 * ax-gdb.c (internalvar_operation::do_generate_ax): New method.
2379 2021-03-08 Tom Tromey <tom@tromey.com>
2381 * expop.h (class bool_operation): New.
2383 2021-03-08 Tom Tromey <tom@tromey.com>
2385 * expop.h (class register_operation): New.
2386 * eval.c (eval_op_register): No longer static.
2387 * ax-gdb.c (register_operation::do_generate_ax): New method.
2389 2021-03-08 Tom Tromey <tom@tromey.com>
2391 * expop.h (class last_operation): New.
2393 2021-03-08 Tom Tromey <tom@tromey.com>
2395 * expop.h (class func_static_var_operation): New.
2396 * eval.c (eval_op_func_static_var): No longer static.
2398 2021-03-08 Tom Tromey <tom@tromey.com>
2400 * expop.h (class var_entry_value_operation): New.
2401 * eval.c (eval_op_var_entry_value): No longer static.
2403 2021-03-08 Tom Tromey <tom@tromey.com>
2405 * expression.h (class operation) <set_outermost>: New method.
2406 * expop.h (class var_msym_value_operation): New.
2407 * eval.c (eval_op_var_msym_value): No longer static.
2408 (var_msym_value_operation::evaluate_for_address)
2409 (var_msym_value_operation::evaluate_for_sizeof)
2410 (var_msym_value_operation::evaluate_for_cast): New methods.
2411 * ax-gdb.c (var_msym_value_operation::do_generate_ax): New
2414 2021-03-08 Tom Tromey <tom@tromey.com>
2416 * expop.h (class long_const_operation): New.
2417 * ax-gdb.c (long_const_operation::do_generate_ax): New method.
2419 2021-03-08 Tom Tromey <tom@tromey.com>
2421 * expop.h (class scope_operation): New.
2422 * eval.c (eval_op_scope): No longer static.
2423 (scope_operation::evaluate_for_address): New method.
2424 * ax-gdb.c (scope_operation::do_generate_ax): New method.
2426 2021-03-08 Tom Tromey <tom@tromey.com>
2428 * expprint.c (float_const_operation::dump): New method.
2429 * expop.h (float_data): New typedef.
2430 (class float_const_operation): New.
2432 2021-03-08 Tom Tromey <tom@tromey.com>
2434 * expop.h (gen_expr_binop, gen_expr_structop): Declare.
2435 * ax-gdb.c (gen_expr_binop): New function.
2436 (gen_expr_structop): Likewise.
2438 2021-03-08 Tom Tromey <tom@tromey.com>
2440 * expprint.c (expr::dump_for_expression): New functions.
2441 * expop.h (dump_for_expression): New overloads.
2442 (tuple_holding_operation::dump, tuple_holding_operation::do_dump):
2445 2021-03-08 Tom Tromey <tom@tromey.com>
2447 * expression.h (expr::operation): New class.
2448 (expr::make_operation): New function.
2449 (expr::operation_up): New typedef.
2450 * expop.h: New file.
2451 * eval.c (operation::evaluate_for_cast)
2452 (operation::evaluate_for_address, operation::evaluate_for_sizeof):
2454 * ax-gdb.c (operation::generate_ax): New method.
2456 2021-03-08 Tom Tromey <tom@tromey.com>
2458 * ax-gdb.c (gen_expr_binop_rest): Remove "pc" parameter.
2459 (gen_expr_binop_rest): New overload.
2461 2021-03-08 Tom Tromey <tom@tromey.com>
2463 * eval.c (eval_multi_subscript): New function.
2464 (evaluate_subexp_standard): Use it.
2466 2021-03-08 Tom Tromey <tom@tromey.com>
2468 * ada-lang.c (ada_binop_exp): New function.
2469 (ada_evaluate_subexp): Use it.
2471 2021-03-08 Tom Tromey <tom@tromey.com>
2473 * ada-lang.c (ada_val_atr): Rename from value_val_atr. Change
2475 (ada_evaluate_subexp): Use it.
2477 2021-03-08 Tom Tromey <tom@tromey.com>
2479 * ada-lang.c (ada_binop_minmax): New function.
2480 (ada_evaluate_subexp): Use it.
2482 2021-03-08 Tom Tromey <tom@tromey.com>
2484 * ada-lang.c (ada_unop_atr): New function.
2485 (ada_evaluate_subexp): Use it.
2487 2021-03-08 Tom Tromey <tom@tromey.com>
2489 * ada-lang.c (ada_binop_in_bounds): New function.
2490 (ada_evaluate_subexp): Use it.
2492 2021-03-08 Tom Tromey <tom@tromey.com>
2494 * ada-lang.c (ada_ternop_slice): New function.
2495 (ada_evaluate_subexp): Use it.
2497 2021-03-08 Tom Tromey <tom@tromey.com>
2499 * ada-lang.c (ada_equal_binop): New function.
2500 (ada_evaluate_subexp): Use it.
2502 2021-03-08 Tom Tromey <tom@tromey.com>
2504 * ada-lang.c (ada_mult_binop): New function.
2505 (ada_evaluate_subexp): Use it.
2507 2021-03-08 Tom Tromey <tom@tromey.com>
2509 * ada-lang.c (ada_abs): New function.
2510 (ada_evaluate_subexp): Use it.
2512 2021-03-08 Tom Tromey <tom@tromey.com>
2514 * ada-lang.c (ada_atr_size): New function.
2515 (ada_evaluate_subexp): Use it.
2517 2021-03-08 Tom Tromey <tom@tromey.com>
2519 * ada-lang.c (ada_atr_tag): New function.
2520 (ada_evaluate_subexp): Use it.
2522 2021-03-08 Tom Tromey <tom@tromey.com>
2524 * ada-lang.c (ada_unop_in_range): New function.
2525 (ada_evaluate_subexp): Use it.
2527 2021-03-08 Tom Tromey <tom@tromey.com>
2529 * ada-lang.c (ada_unop_neg): New function.
2530 (ada_evaluate_subexp): Use it.
2532 2021-03-08 Tom Tromey <tom@tromey.com>
2534 * ada-lang.c (eval_ternop_in_range): New function.
2535 (ada_evaluate_subexp): Use it.
2537 2021-03-08 Tom Tromey <tom@tromey.com>
2539 * opencl-lang.c (eval_opencl_assign): New function.
2540 (evaluate_subexp_opencl): Use it.
2542 2021-03-08 Tom Tromey <tom@tromey.com>
2544 * eval.c (eval_op_objc_msgcall): New function.
2545 (evaluate_subexp_standard): Use it.
2547 2021-03-08 Tom Tromey <tom@tromey.com>
2549 * eval.c (eval_binop_assign_modify): New function.
2550 (evaluate_subexp_standard): Use it.
2552 2021-03-08 Tom Tromey <tom@tromey.com>
2554 * m2-lang.c (eval_op_m2_subscript): New function.
2555 (evaluate_subexp_modula2): Use it.
2557 2021-03-08 Tom Tromey <tom@tromey.com>
2559 * m2-lang.c (eval_op_m2_high): New function.
2560 (evaluate_subexp_modula2): Use it.
2562 2021-03-08 Tom Tromey <tom@tromey.com>
2564 * eval.c (evaluate_subexp_for_address_base): New function.
2565 (evaluate_subexp_for_address): Use it.
2566 (evaluate_subexp_for_sizeof_base): New function.
2567 (evaluate_subexp_for_sizeof): Use it.
2569 2021-03-08 Tom Tromey <tom@tromey.com>
2571 * rust-lang.c (eval_op_rust_structop): New function.
2572 (rust_evaluate_subexp): Use it.
2574 2021-03-08 Tom Tromey <tom@tromey.com>
2576 * rust-lang.c (eval_op_rust_struct_anon): New function.
2577 (rust_evaluate_subexp): Use it.
2579 2021-03-08 Tom Tromey <tom@tromey.com>
2581 * rust-lang.c (eval_op_rust_array): New function.
2582 (rust_evaluate_subexp): Use it.
2584 2021-03-08 Tom Tromey <tom@tromey.com>
2586 * rust-lang.c (eval_op_rust_complement): New function.
2587 (rust_evaluate_subexp): Use it.
2589 2021-03-08 Tom Tromey <tom@tromey.com>
2591 * rust-lang.c (eval_op_rust_ind): New function.
2592 (rust_evaluate_subexp): Use it.
2594 2021-03-08 Tom Tromey <tom@tromey.com>
2596 * rust-lang.c (rust_subscript): Change parameters.
2597 (rust_evaluate_subexp): Update.
2599 2021-03-08 Tom Tromey <tom@tromey.com>
2601 * rust-lang.c (rust_range): Change parameters.
2602 (rust_evaluate_subexp): Update.
2604 2021-03-08 Tom Tromey <tom@tromey.com>
2606 * f-lang.c (eval_op_f_allocated): New function.
2607 (evaluate_subexp_f): Use it.
2609 2021-03-08 Tom Tromey <tom@tromey.com>
2611 * f-lang.c (fortran_require_array): New function.
2612 (evaluate_subexp_f): Use it.
2614 2021-03-08 Tom Tromey <tom@tromey.com>
2616 * f-lang.c (eval_op_f_kind): New function.
2617 (evaluate_subexp_f): Use it.
2619 2021-03-08 Tom Tromey <tom@tromey.com>
2621 * f-lang.c (eval_op_f_cmplx): New function.
2622 (evaluate_subexp_f): Use it.
2624 2021-03-08 Tom Tromey <tom@tromey.com>
2626 * f-lang.c (eval_op_f_modulo): New function.
2627 (evaluate_subexp_f): Use it.
2629 2021-03-08 Tom Tromey <tom@tromey.com>
2631 * f-lang.c (eval_op_f_floor): New function.
2632 (evaluate_subexp_f): Use it.
2634 2021-03-08 Tom Tromey <tom@tromey.com>
2636 * f-lang.c (eval_op_f_ceil): New function.
2637 (evaluate_subexp_f): Use it.
2639 2021-03-08 Tom Tromey <tom@tromey.com>
2641 * f-lang.c (eval_op_f_mod): New function.
2642 (evaluate_subexp_f): Use it.
2644 2021-03-08 Tom Tromey <tom@tromey.com>
2646 * f-lang.c (eval_op_f_abs): New function.
2647 (evaluate_subexp_f): Use it.
2649 2021-03-08 Tom Tromey <tom@tromey.com>
2651 * eval.c (eval_op_type): New function.
2652 (evaluate_subexp_standard): Use it.
2654 2021-03-08 Tom Tromey <tom@tromey.com>
2656 * eval.c (eval_op_postdec): New function.
2657 (evaluate_subexp_standard): Use it.
2659 2021-03-08 Tom Tromey <tom@tromey.com>
2661 * eval.c (eval_op_postinc): New function.
2662 (evaluate_subexp_standard): Use it.
2664 2021-03-08 Tom Tromey <tom@tromey.com>
2666 * eval.c (eval_op_predec): New file.
2667 (evaluate_subexp_standard): Use it.
2669 2021-03-08 Tom Tromey <tom@tromey.com>
2671 * eval.c (eval_op_preinc): New function.
2672 (evaluate_subexp_standard): Use it.
2674 2021-03-08 Tom Tromey <tom@tromey.com>
2676 * eval.c (eval_op_memval): New function.
2677 (evaluate_subexp_standard): Use it.
2679 2021-03-08 Tom Tromey <tom@tromey.com>
2681 * eval.c (eval_op_alignof): New function.
2682 (evaluate_subexp_standard): Use it.
2684 2021-03-08 Tom Tromey <tom@tromey.com>
2686 * eval.c (eval_op_ind): New function.
2687 (evaluate_subexp_standard): Use it.
2689 2021-03-08 Tom Tromey <tom@tromey.com>
2691 * eval.c (eval_op_lognot): New function.
2692 (evaluate_subexp_standard): Use it.
2694 2021-03-08 Tom Tromey <tom@tromey.com>
2696 * eval.c (eval_op_complement): New function.
2697 (evaluate_subexp_standard): Use it.
2699 2021-03-08 Tom Tromey <tom@tromey.com>
2701 * eval.c (eval_op_neg): New function.
2702 (evaluate_subexp_standard): Use it.
2704 2021-03-08 Tom Tromey <tom@tromey.com>
2706 * eval.c (eval_op_plus): New function.
2707 (evaluate_subexp_standard): Use it.
2709 2021-03-08 Tom Tromey <tom@tromey.com>
2711 * eval.c (eval_op_repeat): New function.
2712 (evaluate_subexp_standard): Use it.
2714 2021-03-08 Tom Tromey <tom@tromey.com>
2716 * eval.c (eval_op_leq): New function.
2717 (evaluate_subexp_standard): Use it.
2719 2021-03-08 Tom Tromey <tom@tromey.com>
2721 * eval.c (eval_op_geq): New function.
2722 (evaluate_subexp_standard): Use it.
2724 2021-03-08 Tom Tromey <tom@tromey.com>
2726 * eval.c (eval_op_gtr): New function.
2727 (evaluate_subexp_standard): Use it.
2729 2021-03-08 Tom Tromey <tom@tromey.com>
2731 * eval.c (eval_op_less): New function.
2732 (evaluate_subexp_standard): Use it.
2734 2021-03-08 Tom Tromey <tom@tromey.com>
2736 * eval.c (eval_op_notequal): New function.
2737 (evaluate_subexp_standard): Use it.
2739 2021-03-08 Tom Tromey <tom@tromey.com>
2741 * eval.c (eval_op_equal): New function.
2742 (evaluate_subexp_standard): Use it.
2744 2021-03-08 Tom Tromey <tom@tromey.com>
2746 * eval.c (eval_op_subscript): New function.
2747 (evaluate_subexp_standard): Use it.
2749 2021-03-08 Tom Tromey <tom@tromey.com>
2751 * eval.c (eval_op_binary): New function.
2752 (evaluate_subexp_standard): Use it.
2754 2021-03-08 Tom Tromey <tom@tromey.com>
2756 * eval.c (eval_op_sub): New function.
2757 (evaluate_subexp_standard): Use it.
2759 2021-03-08 Tom Tromey <tom@tromey.com>
2761 * eval.c (eval_op_add): New function.
2762 (evaluate_subexp_standard): Use it.
2764 2021-03-08 Tom Tromey <tom@tromey.com>
2766 * eval.c (eval_op_member): New function.
2767 (evaluate_subexp_standard): Use it.
2769 2021-03-08 Tom Tromey <tom@tromey.com>
2771 * eval.c (eval_op_structop_ptr): New function.
2772 (evaluate_subexp_standard): Use it.
2774 2021-03-08 Tom Tromey <tom@tromey.com>
2776 * eval.c (eval_op_structop_struct): New function.
2777 (evaluate_subexp_standard): Use it.
2779 2021-03-08 Tom Tromey <tom@tromey.com>
2781 * eval.c (eval_op_ternop): New function.
2782 (evaluate_subexp_standard): Use it.
2784 2021-03-08 Tom Tromey <tom@tromey.com>
2786 * eval.c (eval_op_concat): New function.
2787 (evaluate_subexp_standard): Use it.
2789 2021-03-08 Tom Tromey <tom@tromey.com>
2791 * eval.c (eval_op_objc_selector): New function.
2792 (evaluate_subexp_standard): Use it.
2794 2021-03-08 Tom Tromey <tom@tromey.com>
2796 * eval.c (eval_op_string): New function.
2797 (evaluate_subexp_standard): Use it.
2799 2021-03-08 Tom Tromey <tom@tromey.com>
2801 * eval.c (eval_op_register): New function.
2802 (evaluate_subexp_standard): Use it.
2804 2021-03-08 Tom Tromey <tom@tromey.com>
2806 * eval.c (eval_op_func_static_var): New function.
2807 (evaluate_subexp_standard): Use it.
2809 2021-03-08 Tom Tromey <tom@tromey.com>
2811 * eval.c (eval_op_var_msym_value): New function.
2812 (evaluate_subexp_standard): Use it.
2814 2021-03-08 Tom Tromey <tom@tromey.com>
2816 * eval.c (eval_op_var_entry_value): New function.
2817 (evaluate_subexp_standard): Use it.
2819 2021-03-08 Tom Tromey <tom@tromey.com>
2821 * eval.c (eval_op_scope): New function.
2822 (evaluate_subexp_standard): Use it.
2824 2021-03-06 Chernov Sergey <klen_s@mail.ru>
2827 * ada-lang.c (ada_fold_name): Use gdb::to_string.
2829 2021-03-06 Tom Tromey <tom@tromey.com>
2831 * dwarf2/sect-names.h (dwarf2_elf_names): Declare.
2832 * dwarf2/read.h (dwarf2_get_dwz_file): Move to dwz.h.
2833 * dwarf2/read.c (dwarf2_elf_names): No longer static.
2834 (locate_dwz_sections, dwz_search_other_debugdirs)
2835 (dwarf2_get_dwz_file): Move to dwz.c.
2836 * dwarf2/dwz.h (dwarf2_get_dwz_file): Move declaration from
2838 * dwarf2/dwz.c (locate_dwz_sections, dwz_search_other_debugdirs)
2839 (dwarf2_get_dwz_file): Move from read.c.
2841 2021-03-06 Tom Tromey <tom@tromey.com>
2843 * debuginfod-support.h: Include scoped_fd.h.
2845 2021-03-06 Tom Tromey <tom@tromey.com>
2847 * dwarf2/read.h (dwarf2_get_dwz_file): Add 'require' parameter.
2848 * dwarf2/read.c (dwarf2_get_dwz_file): Add 'require' parameter.
2849 (get_abbrev_section_for_cu, read_attribute_value)
2850 (get_debug_line_section): Update.
2851 * dwarf2/macro.c (dwarf_decode_macro_bytes): Update.
2853 2021-03-06 Tom Tromey <tom@tromey.com>
2855 * dwarf2/sect-names.h (struct dwarf2_section_names) <matches>: New
2857 * dwarf2/read.c (section_is_p): Remove.
2858 (dwarf2_per_bfd::locate_sections)
2859 (dwarf2_per_bfd::locate_sections, locate_dwz_sections)
2860 (locate_v1_virtual_dwo_sections, dwarf2_locate_dwo_sections)
2861 (dwarf2_locate_common_dwp_sections)
2862 (dwarf2_locate_v2_dwp_sections, dwarf2_locate_v5_dwp_sections):
2865 2021-03-06 Tom Tromey <tom@tromey.com>
2867 * xcoffread.c: Include sect-names.h.
2868 * symfile.h (struct dwarf2_section_names, struct
2869 dwarf2_debug_sections): Move to dwarf2/sect-names.h.
2870 * dwarf2/sect-names.h: New file, from symfile.h.
2871 * dwarf2/read.c: Include sect-names.h.
2873 2021-03-06 Tom Tromey <tom@tromey.com>
2875 * dwarf2/read.c (read_attribute): Make 'abbrev' const.
2876 * dwarf2/abbrev.c (abbrev_table::alloc_abbrev): Remove.
2877 (abbrev_table::read): Update.
2878 * dwarf2/abbrev.h (struct attr_abbrev): Move earlier.
2879 (struct abbrev_info): Reformat.
2880 <attrs>: Now an array.
2881 (struct abbrev_table) <alloc_abbrev>: Remove.
2883 2021-03-06 Weimin Pan <weimin.pan@oracle.com>
2885 * ctfread.c (ctf_psymtab_add_enums): New function.
2886 (ctf_psymtab_type_cb): call ctf_psymtab_add_enums.
2888 2021-03-06 Weimin Pan <weimin.pan@oracle.com>
2890 * ctfread.c (read_func_kind_type): Set up function arguments.
2892 2021-03-05 Craig Blackmore <craig.blackmore@embecosm.com>
2893 Andrew Burgess <andrew.burgess@embecosm.com>
2895 * riscv-none-tdep.c: Add 'user-regs.h' and 'target-description.h'
2897 (riscv_csrset): New static global.
2898 (riscv_update_csrmap): New function.
2899 (riscv_iterate_over_regset_sections): Process CSRs.
2901 2021-03-05 Andrew Burgess <andrew.burgess@embecosm.com>
2903 * riscv-tdep.c (riscv_feature_name_csr): Define.
2904 (riscv_feature_name_cpu): Define.
2905 (riscv_feature_name_fpu): Define.
2906 (riscv_feature_name_virtual): Define.
2907 (riscv_xreg_feature): Use riscv_feature_name_cpu.
2908 (riscv_freg_feature): Use riscv_feature_name_fpu.
2909 (riscv_virtual_feature): Use riscv_feature_name_virtual.
2910 (riscv_csr_feature): Use riscv_feature_name_csr.
2911 * riscv-tdep.h (riscv_feature_name_csr): Declare.
2913 2021-03-05 Andrew Burgess <andrew.burgess@embecosm.com>
2914 Craig Blackmore <craig.blackmore@embecosm.com>
2916 * Makefile.in (ALL_TARGET_OBS): Add riscv-none-tdep.o.
2917 (ALLDEPFILES): Add riscv-none-tdep.c.
2918 * configure: Regenerate.
2919 * configure.ac (CONFIG_OBS): Add elf-none-tdep.o when BFD has ELF
2921 * configure.tgt (riscv*-*-*): Include riscv-none-tdep.c.
2922 * elf-none-tdep.c: New file.
2923 * elf-none-tdep.h: New file.
2924 * riscv-none-tdep.c: New file.
2926 2021-03-05 Craig Blackmore <craig.blackmore@embecosm.com>
2927 Andrew Burgess <andrew.burgess@embecosm.com>
2929 * corelow.c: Add 'xml-tdesc.h' include.
2930 (core_target::read_description): Load the target description from
2931 the core file when possible.
2932 * fbsd-tdep.c (fbsd_make_corefile_notes): Add target description
2934 * gcore-elf.c: Add 'gdbsupport/tdesc.h' include.
2935 (gcore_elf_make_tdesc_note): New function.
2936 * gcore-elf.h (gcore_elf_make_tdesc_note): Declare.
2937 * linux-tdep.c (linux_make_corefile_notes): Add target description
2940 2021-03-05 Andrew Burgess <andrew.burgess@embecosm.com>
2942 * Makefile.in (SFILES): Add gcore-elf.c.
2943 (HFILES_NO_SRCDIR): Add gcore-elf.h
2944 * configure: Regenerate.
2945 * configure.ac: Add gcore-elf.o to CONFIG_OBS if we have ELF
2947 * fbsd-tdep.c: Add 'gcore-elf.h' include.
2948 (struct fbsd_collect_regset_section_cb_data): Delete.
2949 (fbsd_collect_regset_section_cb): Delete.
2950 (fbsd_collect_thread_registers): Delete.
2951 (struct fbsd_corefile_thread_data): Delete.
2952 (fbsd_corefile_thread): Delete.
2953 (fbsd_make_corefile_notes): Call
2954 gcore_elf_build_thread_register_notes instead of the now deleted
2956 * gcore-elf.c: New file, the content was moved here from
2957 linux-tdep.c, functions were renamed and given minor cleanup.
2958 * gcore-elf.h: New file.
2959 * gcore.c (gcore_find_signalled_thread): Moved here from
2960 linux-tdep.c and given a new name. Minor cleanups.
2961 * gcore.h (gcore_find_signalled_thread): Declare.
2962 * linux-tdep.c: Add 'gcore.h' and 'gcore-elf.h' includes.
2963 (struct linux_collect_regset_section_cb_data): Delete.
2964 (linux_collect_regset_section_cb): Delete.
2965 (linux_collect_thread_registers): Delete.
2966 (linux_corefile_thread): Call
2967 gcore_elf_build_thread_register_notes.
2968 (find_signalled_thread): Delete.
2969 (linux_make_corefile_notes): Call gcore_find_signalled_thread.
2971 2021-03-04 Simon Marchi <simon.marchi@polymtl.ca>
2974 * sparc-nat.h (sparc_fetch_inferior_registers): Add
2975 process_stratum_target parameter,
2976 sparc_store_inferior_registers): update callers.
2977 * sparc-nat.c (sparc_fetch_inferior_registers,
2978 sparc_store_inferior_registers): Add process_stratum_target
2979 parameter. Switch current thread before calling
2980 sparc_supply_gregset / sparc_collect_rwindow.
2981 (sparc_store_inferior_registers): Likewise.
2982 * sparc-obsd-tdep.c (sparc32obsd_supply_uthread): Add assertion.
2983 (sparc32obsd_collect_uthread): Likewise.
2984 * sparc-tdep.c (sparc_supply_rwindow, sparc_collect_rwindow):
2986 * sparc64-obsd-tdep.c (sparc64obsd_collect_uthread,
2987 sparc64obsd_supply_uthread): Add assertion.
2989 2021-03-04 Tom Tromey <tromey@adacore.com>
2991 * ada-lang.c (struct match_data) <found_sym>: Now bool.
2992 (aux_add_nonlocal_symbols): Update.
2993 (ada_add_block_symbols): Change "found_sym" to bool.
2995 2021-03-03 Tom Tromey <tromey@adacore.com>
2997 * ada-lang.c (ada_resolve_function): Update comment.
2998 (is_nonfunction, add_symbols_from_enclosing_procs)
2999 (remove_extra_symbols): Likewise.
3000 (struct match_data): Add constructor, initializers.
3001 (add_nonlocal_symbols): Remove memset.
3002 (aux_add_nonlocal_symbols): Update comment.
3003 (ada_add_block_renamings, add_nonlocal_symbols)
3004 (ada_add_all_symbols): Likewise.
3005 * ada-exp.y (write_var_or_type): Clean up trailing whitespace.
3007 2021-03-02 Tom Tromey <tromey@adacore.com>
3009 * ada-lang.c (cast_from_gnat_encoded_fixed_point_type)
3010 (cast_to_gnat_encoded_fixed_point_type): Remove.
3011 (ada_value_cast, ada_evaluate_subexp): Update.
3012 (gnat_encoded_fixed_point_type_info)
3013 (ada_is_gnat_encoded_fixed_point_type)
3014 (gnat_encoded_fixed_point_delta)
3015 (gnat_encoded_fixed_point_scaling_factor): Remove.
3016 * ada-lang.h (ada_is_gnat_encoded_fixed_point_type)
3017 (gnat_encoded_fixed_point_delta)
3018 (gnat_encoded_fixed_point_scaling_factor): Don't declare.
3019 * ada-typeprint.c (print_gnat_encoded_fixed_point_type): Remove.
3020 (ada_print_type): Update.
3021 * ada-valprint.c (ada_value_print_num): Update.
3022 * dwarf2/read.c (ada_get_gnat_encoded_number)
3023 (ada_get_gnat_encoded_ratio): New functions.
3024 (finish_fixed_point_type): Use them. Add parameters.
3025 (GNAT_FIXED_POINT_SUFFIX): New define.
3026 (gnat_encoded_fixed_point_type_info): New function.
3027 (read_base_type): Handle gnat encodings.
3029 2021-03-02 Tom Tromey <tromey@adacore.com>
3031 * ada-lang.c (ada_fold_name, ada_variant_discrim_name)
3032 (ada_enum_name, scan_discrim_bound, to_fixed_range_type): Use
3034 (GROW_VECT): Remove.
3035 (grow_vect): Remove.
3037 2021-03-02 Tom Tromey <tromey@adacore.com>
3039 * ada-lang.h (ada_lookup_symbol_list): Return a vector.
3040 * ada-lang.c (resolve_subexp): Update.
3041 (ada_resolve_function): Accept a vector.
3042 (is_nonfunction, add_defn_to_vec)
3043 (add_symbols_from_enclosing_procs): Likewise.
3044 (num_defns_collected, defns_collected): Remove.
3045 (remove_extra_symbols): Return a vector.
3046 (remove_irrelevant_renamings): Return void.
3047 (ada_add_local_symbols): Accept a vector.
3048 (struct match_data) <obstackp>: Remove.
3049 <resultp>: New member.
3050 (aux_add_nonlocal_symbols): Update.
3051 (ada_add_block_renamings, add_nonlocal_symbols)
3052 (ada_add_all_symbols): Accept a vector.
3053 (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Return a
3055 (ada_lookup_symbol): Update.
3056 (ada_add_block_symbols): Accept a vector.
3057 (get_var_value, iterate_over_symbols): Update.
3058 * ada-exp.y (block_lookup, write_var_or_type, write_name_assoc):
3061 2021-03-02 Tom Tromey <tromey@adacore.com>
3063 * ada-lang.c (resolve_subexp): Use any_of and erase-remove idiom.
3065 2021-03-02 Tom Tromey <tromey@adacore.com>
3067 * ada-lang.c (struct ada_symbol_cache) <cache_space>: Now an
3070 (ada_pspace_data): Remove destructor.
3071 <sym_cache>: Now a unique_ptr.
3072 (ada_init_symbol_cache, ada_free_symbol_cache): Remove.
3073 (ada_get_symbol_cache): Use 'new'.
3074 (ada_clear_symbol_cache): Rewrite.
3076 2021-03-02 Tom Tromey <tromey@adacore.com>
3078 * ada-lang.c (add_nonlocal_symbols): Handle case where objfile->sf
3081 2021-02-27 Lancelot Six <lsix@lancelotsix.com>
3084 * source.c (add_path): Skip empty dirnames.
3086 2021-02-25 Kevin Buettner <kevinb@redhat.com>
3088 * nat/aarch64-sve-linux-ptrace.h: Add comment regarding
3089 include order for <sys/ptrace.h> and <asm/ptrace.h>.
3091 2021-02-25 Simon Marchi <simon.marchi@polymtl.ca>
3094 * target.c (target_mourn_inferior): Only compare pids in
3095 target_mourn_inferior.
3097 2021-02-25 Jan Matyas <jmatyas@codasip.com>
3100 * remote.c (remote_target::start_remote): Ensure the single
3101 thread, automatically added for remote targets without the
3102 concept of threading, is initially in set to the "resumed"
3104 * remote.c (remote_target::add_current_inferior_and_thread):
3105 Add return value - return the main thread.
3107 2021-02-25 Jan Vrany <jan.vrany@labware.com>
3109 * gdb/mi/mi-interp.c (mi_traceframe_changed): Remove trailing \n from output.
3110 (mi_tsv_created): Likewise.
3111 (mi_tsv_deleted): Likewise.
3113 2021-02-25 Tom de Vries <tdevries@suse.de>
3116 * dwarf2/read.c (open_and_init_dwo_file): Use rcuh_kind::COMPILE as
3117 section_kind for &dwo_file->sections.info.
3119 2021-02-25 Andrew Burgess <andrew.burgess@embecosm.com>
3122 * f-lang.c (fortran_argument_convert): Delete declaration.
3123 (fortran_prepare_argument): New function.
3124 (evaluate_subexp_f): Move logic to new function
3125 fortran_prepare_argument.
3127 2021-02-25 Andrew Burgess <andrew.burgess@embecosm.com>
3129 * f-exp.y (f77_keywords): Add 'associated'.
3130 * f-lang.c (fortran_associated): New function.
3131 (evaluate_subexp_f): Handle FORTRAN_ASSOCIATED.
3132 (operator_length_f): Likewise.
3133 (print_unop_or_binop_subexp_f): New function.
3134 (print_subexp_f): Make use of print_unop_or_binop_subexp_f for
3135 FORTRAN_ASSOCIATED, FORTRAN_LBOUND, and FORTRAN_UBOUND.
3136 (dump_subexp_body_f): Handle FORTRAN_ASSOCIATED.
3137 (operator_check_f): Likewise.
3138 * std-operator.def: Add FORTRAN_ASSOCIATED.
3140 2021-02-25 Andrew Burgess <andrew.burgess@embecosm.com>
3142 * f-exp.y (fortran_operators): Add ".xor.".
3144 2021-02-24 Tom de Vries <tdevries@suse.de>
3147 * dwarf2/attribute.c (attribute::form_is_signed): New function
3149 * dwarf2/attribute.h (attribute::as_signed): ... here.
3150 (attribute::is_nonnegative, attribute::as_nonnegative): New function.
3151 (attribute::form_is_signed): Declare.
3152 * dwarf2/read.c (new_symbol): Use is_nonnegative and as_nonnegative
3153 for DW_AT_decl_file.
3155 2021-02-24 Kevin Buettner <kevinb@redhat.com>
3157 * nat/aarch64-linux-hw-point.c: Add comment regarding include
3158 order for <sys/ptrace.h> and <asm/ptrace.h>.
3160 2021-02-24 Kevin Buettner <kevinb@redhat.com>
3162 * nat/aarch64-linux-hw-point.c: Include <asm/ptrace.h> after
3165 2021-02-24 Andrew Burgess <andrew.burgess@embecosm.com>
3167 * exec.c (set_section_command): Move variable declarations into
3168 the function body, and use std::string instead of a fixed size
3171 2021-02-24 Andrew Burgess <andrew.burgess@embecosm.com>
3173 * exec.c (exec_target::get_section_table): Delete member function.
3174 (section_table_read_available_memory): Use current_top_target, not
3175 just the exec_ops target.
3176 * target-delegates.c: Regenerate.
3177 * target.c (default_get_section_table): New function.
3178 * target.h (target_ops::get_section_table): Change default
3179 behaviour to call default_get_section_table.
3180 (default_get_section_table): Declare.
3182 2021-02-24 Andrew Burgess <andrew.burgess@embecosm.com>
3184 * exec.c (exec_target::close): Call new clear_target_sections
3186 (program_space::add_target_sections): Update name of member
3188 (program_space::add_target_sections): Update name of member
3190 (program_space::remove_target_sections): Likewise.
3191 (exec_one_fork): Use new target_sections member function.
3192 (exec_target::get_section_table): Likewise.
3193 (exec_target::files_info): Likewise.
3194 (set_section_command): Likewise.
3195 (exec_set_section_address): Likewise.
3196 (exec_target::has_memory): Use new target_sections member
3198 * progspace.h (program_space::clear_target_sections): New member
3200 (program_space::target_sections): Rename member variable to
3201 m_target_sections, replace with a new member function.
3202 (program_space::m_target_sections): New member variable.
3203 * solib-dsbt.c (scan_dyntag): Use new member function.
3204 * solib-svr4.c (scan_dyntag): Likewise.
3206 2021-02-24 Andrew Burgess <andrew.burgess@embecosm.com>
3208 * gdb/bfd-target.c (class target_bfd) <get_section_table>: Make
3210 * gdb/exec.c (struct exec_target) <get_section_table>: Likewise.
3211 (section_table_read_available_memory): Make local const.
3212 (exec_target::xfer_partial): Make local const.
3213 (print_section_info): Make parameter const.
3214 * gdb/exec.h (print_section_info): Likewise.
3215 * gdb/ppc64-tdep.c (ppc64_convert_from_func_ptr_addr): Make local
3217 * gdb/record-btrace.c (record_btrace_target::xfer_partial):
3219 * gdb/remote.c (remote_target::remote_xfer_live_readonly_partial):
3221 * gdb/s390-tdep.c (s390_load): Likewise.
3222 * gdb/solib-dsbt.c (scan_dyntag): Likewise.
3223 * gdb/solib-svr4.c (scan_dyntag): Likewise.
3224 * gdb/target-debug.h (target_debug_print_target_section_table_p):
3226 (target_debug_print_const_target_section_table_p): ...this.
3227 * gdb/target-delegates.c: Regenerate.
3228 * gdb/target.c (target_get_section_table): Make return type const.
3229 (target_section_by_addr): Likewise. Also make some locals const.
3230 (memory_xfer_partial_1): Make some locals const.
3231 * gdb/target.h (struct target_ops) <get_section_table>: Make
3233 (target_section_by_addr): Likewise.
3234 (target_get_section_table): Likewise.
3236 2021-02-24 Andrew Burgess <andrew.burgess@embecosm.com>
3238 * NEWS: Mention new 'maint info target-sections' command.
3239 * maint.c (maintenance_info_target_sections): New function.
3240 (_initialize_maint_cmds): Register new command.
3242 2021-02-24 Andrew Burgess <andrew.burgess@embecosm.com>
3244 * riscv-tdep.c (riscv_features_from_gdbarch_info): Rename to...
3245 (riscv_features_from_bfd): ...this. Change parameter type to
3246 'bfd*', and update as required.
3247 (riscv_find_default_target_description): Update call to
3248 riscv_features_from_bfd. Select a default xlen based on
3250 (riscv_gdbarch_init): Update call to riscv_features_from_bfd.
3252 2021-02-24 Andrew Burgess <andrew.burgess@embecosm.com>
3254 * eval.c (evaluate_subexp_standard): Call value_ind for points to
3255 dynamic types in UNOP_IND.
3257 2021-02-23 Simon Marchi <simon.marchi@polymtl.ca>
3260 * dwarf2/read.c (dwarf2_queue_guard) <dwarf2_queue_guard>:
3262 (~dwarf2_queue_guard): Clear queue.
3263 (queue_comp_unit): Assert that queue is
3265 (process_queue): Adjust.
3266 * dwarf2/read.h (struct dwarf2_per_bfd) <queue>: Make optional.
3268 2021-02-23 Simon Marchi <simon.marchi@polymtl.ca>
3271 * dwarf2/read.c (maybe_queue_comp_unit): Check if CU is expanded
3272 to decide whether or not to enqueue it for expansion.
3273 (follow_die_offset, follow_die_sig_1): Ensure we load the DIEs
3274 after calling maybe_queue_comp_unit.
3276 2021-02-23 Simon Marchi <simon.marchi@polymtl.ca>
3278 * linux-nat.c (linux_nat_filter_event): Return void.
3280 2021-02-22 Tom Tromey <tromey@adacore.com>
3282 * solib-svr4.c (enable_break): Update.
3283 * bfd-target.c (class target_bfd) <target_bfd>: Change parameter
3285 (target_bfd_reopen): Change parameter type.
3286 * bfd-target.h (target_bfd_reopen): Change parameter type.
3288 2021-02-22 Simon Marchi <simon.marchi@polymtl.ca>
3290 * thread.c (add_thread_silent): Add assert.
3291 (find_thread_ptid): Add assert.
3293 2021-02-22 Simon Marchi <simon.marchi@polymtl.ca>
3296 * inf-ptrace.c (struct target_unpusher): Move to target.h.
3297 (target_unpush_up): Likewise.
3298 * procfs.c (procfs_target::attach): Push target early. Use
3299 target_unpush_up to unpush target in case of error.
3300 * target.h (struct target_unpusher): Move here.
3301 (target_unpush_up): Likewise.
3303 2021-02-19 Kevin Buettner <kevinb@redhat.com>
3305 * nat/amd64-linux-siginfo.c: Include "gdbsupport/common-defs.h"
3306 (which in turn includes <gnulib/config.h>) before include
3309 2021-02-19 Nelson Chu <nelson.chu@sifive.com>
3312 * riscv-tdep.c (decode_ci_type_insn): Updated encoding macros.
3313 (decode_j_type_insn): Likewise.
3314 (decode_cj_type_insn): Likewise.
3315 (decode_b_type_insn): Likewise.
3318 2021-02-18 Tom Tromey <tom@tromey.com>
3320 * expression.h (struct expression) <evaluate>: Declare method.
3321 * eval.c (evaluate_subexp): Simplify.
3322 (expression::evaluate): New method.
3323 (evaluate_expression, evaluate_type): Use expression::evaluate.
3325 2021-02-17 Kevin Buettner <kevinb@redhat.com>
3327 * ada-lang.c (ada_fold_name): Check for non-empty string prior
3329 (ada_lookup_name_info): Likewise.
3331 2021-02-13 Mike Frysinger <vapier@gentoo.org>
3333 * aclocal.m4: Regenerate.
3335 2021-02-12 Tom de Vries <tdevries@suse.de>
3338 * linux-nat.c (lin_thread_get_thread_signals): Remove.
3339 (lin_thread_signals): New static var.
3340 (lin_thread_get_thread_signal_num, lin_thread_get_thread_signal):
3342 * linux-nat.h (lin_thread_get_thread_signals): Remove.
3343 (lin_thread_get_thread_signal_num, lin_thread_get_thread_signal):
3345 * linux-thread-db.c (check_thread_signals): Use
3346 lin_thread_get_thread_signal_num and lin_thread_get_thread_signal.
3348 2021-02-12 Andrew Burgess <andrew.burgess@embecosm.com>
3350 * f-exp.y (f77_keywords): Add allocated.
3351 * f-lang.c (evaluate_subexp_f): Handle UNOP_FORTRAN_ALLOCATED.
3352 (operator_length_f): Likewise.
3353 (print_subexp_f): Likewise.
3354 (dump_subexp_body_f): Likewise.
3355 (operator_check_f): Likewise.
3356 * std-operator.def (UNOP_FORTRAN_ALLOCATED): New operator.
3358 2021-02-11 Tom de Vries <tdevries@suse.de>
3361 * dwarf2/attribute.c (attribute::form_requires_reprocessing):
3362 Return true for DW_FORM_strx.
3364 2021-02-11 Tom Tromey <tromey@adacore.com>
3367 * parse.c (write_exp_symbol_reference): Write sym.block.
3369 2021-02-11 Andrew Burgess <andrew.burgess@embecosm.com>
3371 * NEWS: Mention changes to 'maint info sections'.
3372 * maint.c (match_substring): Return a bool, fix whitespace issue.
3373 (struct single_bfd_flag_info): New struct.
3374 (bfd_flag_info): New static global.
3375 (match_bfd_flags): Return a bool, use bfd_flag_info.
3376 (print_bfd_flags): Use bfd_flag_info.
3377 (maint_print_section_info): Delete trailing whitespace.
3378 (struct maint_info_sections_opts): New struct.
3379 (maint_info_sections_option_defs): New static global.
3380 (maint_info_sections_completer): New function.
3381 (maintenance_info_sections): Use option parsing mechanism.
3382 (_initialize_maint_cmds): Update command help text for 'maint info
3383 sections' and register a command completer.
3385 2021-02-11 Andrew Burgess <andrew.burgess@embecosm.com>
3387 * maint.c (print_bfd_section_info_maybe_relocated): Delete,
3388 functionality merged into...
3389 (maint_print_all_sections): ...this new function.
3390 (maintenance_info_sections): Make use of maint_print_all_sections,
3391 allow all objects to be printed even where there's no executable.
3393 2021-02-11 Andrew Burgess <andrew.burgess@embecosm.com>
3395 * breakpoint.c (resolve_sal_pc): Make use of
3396 bound_minimal_symbol::obj_section.
3397 * maint.c (maintenance_translate_address): Likewise.
3398 * minsyms.c (minimal_symbol_upper_bound): Likewise.
3399 * minsyms.h (struct bound_minimal_symbol) <obj_section>: New
3401 * printcmd.c (info_address_command): Make use of
3402 bound_minimal_symbol::obj_section.
3404 2021-02-11 Alan Modra <amodra@gmail.com>
3406 * arm-symbian-tdep.c: Delete.
3407 * NEWS: Mention arm-symbian removal.
3408 * Makefile.in: Remove arm-symbian-tdep entries.
3409 * configure.tgt: Remove arm*-*-symbianelf*.
3410 * doc/gdb.texinfo: Remove mention of SymbianOS.
3411 * osabi.c (gdb_osabi_names): Remove "Symbian".
3412 * osabi.h (enum gdb_osabi): Remove GDB_OSABI_SYMBIAN.
3413 * testsuite/gdb.base/ending-run.exp: Remove E32Main handling.
3414 * testsuite/gdb.ada/catch_ex_std.exp: Remove arm*-*-symbianelf*
3416 * testsuite/gdb.base/dup-sect.exp: Likewise.
3417 * testsuite/gdb.base/long_long.exp: Likewise.
3418 * testsuite/gdb.base/solib-weak.exp: Likewise.
3419 * testsuite/gdb.guile/scm-section-script.exp: Likewise.
3420 * testsuite/gdb.python/py-section-script.exp: Likewise.
3421 * testsuite/lib/dwarf.exp: Likewise.
3422 * testsuite/lib/gdb.exp: Likewise.
3424 2021-02-10 Andrew Burgess <andrew.burgess@embecosm.com>
3426 * f-exp.y (UNOP_OR_BINOP_INTRINSIC): New token.
3427 (exp): New pattern using UNOP_OR_BINOP_INTRINSIC.
3428 (one_or_two_args): New pattern.
3429 (f77_keywords): Add lbound and ubound.
3430 * f-lang.c (fortran_bounds_all_dims): New function.
3431 (fortran_bounds_for_dimension): New function.
3432 (evaluate_subexp_f): Handle FORTRAN_LBOUND and FORTRAN_UBOUND.
3433 (operator_length_f): Likewise.
3434 (print_subexp_f): Likewise.
3435 (dump_subexp_body_f): Likewise.
3436 (operator_check_f): Likewise.
3437 * std-operator.def (FORTRAN_LBOUND): Define.
3438 (FORTRAN_UBOUND): Define.
3440 2021-02-10 Andrew Burgess <andrew.burgess@embecosm.com>
3442 * coff-pe-read.c (add_pe_forwarded_sym): Make use of section_index
3443 and set_section_index member functions where appropriate.
3444 * coffread.c (coff_symtab_read): Likewise.
3445 (process_coff_symbol): Likewise.
3446 * ctfread.c (set_symbol_address): Likewise.
3447 * dwarf2/read.c (add_partial_symbol): Likewise.
3448 (var_decode_location): Likewise.
3449 * language.c: Likewise.
3450 * minsyms.c (minimal_symbol_reader::record_full): Likewise.
3451 (compact_minimal_symbols): Likewise.
3452 (minimal_symbol_upper_bound): Likewise.
3453 * objfiles.c (relocate_one_symbol): Likewise.
3454 * psympriv.h (partial_symbol::obj_section): Likewise.
3455 (partial_symbol::address): Likewise.
3456 * psymtab.c (partial_symtab::add_psymbol): Likewise.
3457 * stabsread.c (scan_file_globals): Likewise.
3458 * symmisc.c (dump_msymbols): Likewise.
3459 * symtab.c (general_symbol_info::obj_section): Likewise.
3460 (fixup_section): Likewise.
3461 (get_msymbol_address): Likewise.
3462 * symtab.h (general_symbol_info::section): Rename to...
3463 (general_symbol_info::m_section): ...this.
3464 (general_symbol_info::set_section_index): New member function.
3465 (general_symbol_info::section_index): Likewise.
3466 (SYMBOL_SECTION): Delete.
3467 (MSYMBOL_VALUE_ADDRESS): Make use of section_index and
3468 set_section_index member functions where appropriate.
3469 (MSYMBOL_SECTION): Delete.
3470 (symbol::symbol): Update to initialize 'm_section'.
3471 * xcoffread.c (read_xcoff_symtab): Make use of set_section_index.
3472 (process_xcoff_symbol): Likewise.
3474 2021-02-10 Andrew Burgess <andrew.burgess@embecosm.com>
3476 * breakpoint.c (resolve_sal_pc): Replace SYMBOL_OBJ_SECTION and
3477 MSYMBOL_OBJ_SECTION.
3478 * findvar.c (language_defn::read_var_value): Likewise.
3479 * infcmd.c (jump_command): Likewise.
3480 * linespec.c (minsym_found): Likewise.
3481 * maint.c (maintenance_translate_address): Likewise.
3482 * minsyms.c (lookup_minimal_symbol_by_pc_section): Likewise.
3483 (minimal_symbol_upper_bound): Likewise.
3484 * parse.c (find_minsym_type_and_address): Likewise.
3485 (operator_check_standard): Likewise.
3486 * printcmd.c (info_address_command): Likewise.
3487 * symmisc.c (dump_msymbols): Likewise.
3488 (print_symbol): Likewise.
3489 * symtab.c (general_symbol_info::obj_section): Define new
3491 (fixup_symbol_section): Replace SYMBOL_OBJ_SECTION.
3492 (find_pc_sect_compunit_symtab): Likewise.
3493 (find_function_start_sal): Likewise.
3494 (skip_prologue_sal): Replace SYMBOL_OBJ_SECTION and
3495 MSYMBOL_OBJ_SECTION.
3496 * symtab.h (struct general_symbol_info) <obj_section>: Declare new
3498 (SYMBOL_OBJ_SECTION): Delete.
3499 (MSYMBOL_OBJ_SECTION): Delete.
3501 2021-02-09 Tom Tromey <tom@tromey.com>
3503 * stap-probe.c (stap_parse_argument_conditionally): Fix typo.
3505 2021-02-09 Tom de Vries <tdevries@suse.de>
3508 * dwarf2/read.c (read_array_type): Return NULL when not being able to
3509 construct an array type. Add assert to ensure that element_type is
3512 2021-02-09 Andrew Burgess <andrew.burgess@embecosm.com>
3514 * gcore.c (struct gcore_collect_regset_section_cb_data): Delete.
3515 (gcore_collect_regset_section_cb): Delete.
3516 (gcore_collect_thread_registers): Delete.
3517 (gcore_build_thread_register_notes): Delete.
3518 (gcore_find_signalled_thread): Delete.
3519 * gcore.h: Remove 'gdbsupport/gdb_signals.h' include and delete
3520 'gdbarch' and 'thread_info' declarations.
3521 (gcore_build_thread_register_notes): Delete declaration.
3522 (gcore_find_signalled_thread): Likewise.
3523 * fbsd-tdep.c: Remove 'gcore.h' include.
3524 (struct fbsd_collect_regset_section_cb_data): New struct.
3525 (fbsd_collect_regset_section_cb): New function.
3526 (fbsd_collect_thread_registers): New function.
3527 (struct fbsd_corefile_thread_data): New struct.
3528 (fbsd_corefile_thread): New function.
3529 (fbsd_make_corefile_notes): Call FreeBSD specific code.
3530 * linux-tdep.c: Remove 'gcore.h' include.
3531 (struct linux_collect_regset_section_cb_data): New struct.
3532 (linux_collect_regset_section_cb): New function.
3533 (linux_collect_thread_registers): New function.
3534 (linux_corefile_thread): Call Linux specific code.
3535 (find_signalled_thread): New function.
3536 (linux_make_corefile_notes): Call find_signalled_thread.
3538 2021-02-09 Tom Tromey <tromey@adacore.com>
3540 * ada-lang.c (coerce_unspec_val_to_type): Avoid making lazy
3542 * value.c (value_contents_copy_raw): Now static.
3543 * value.h (value_contents_copy_raw): Don't declare.
3545 2021-02-09 Tom Tromey <tromey@adacore.com>
3547 * gdbtypes.c (resolve_dynamic_struct): Handle structure with no
3550 2021-02-08 Shahab Vahedi <shahab@synopsys.com>
3553 * arc-linux-tdep.c (handle_atomic_sequence): New.
3554 (arc_linux_software_single_step): Call handle_atomic_sequence().
3556 2021-02-08 Andrew Burgess <andrew.burgess@embecosm.com>
3558 * python/py-tui.c (gdbpy_tui_window) <is_valid>: New member
3560 (REQUIRE_WINDOW): Call is_valid member function.
3561 (REQUIRE_WINDOW_FOR_SETTER): New define.
3562 (gdbpy_tui_is_valid): Call is_valid member function.
3563 (gdbpy_tui_set_title): Call REQUIRE_WINDOW_FOR_SETTER instead.
3564 * tui/tui-data.h (struct tui_win_info) <is_visible>: Check
3566 * tui/tui-layout.c (tui_apply_current_layout): Add an assert.
3567 * tui/tui.c (tui_enable): Move setting of tui_active earlier in
3570 2021-02-08 Andrew Burgess <andrew.burgess@embecosm.com>
3572 * python/py-tui.c (gdbpy_tui_set_title): Check that the new value
3573 for the title is not nullptr.
3575 2021-02-08 Andrew Burgess <andrew.burgess@embecosm.com>
3577 * tui-layout.c (saved_tui_windows): Delete.
3578 (tui_apply_current_layout): Don't make use of saved_tui_windows,
3579 call new get_windows member function instead.
3580 (tui_get_window_by_name): Check in tui_windows.
3581 (tui_layout_window::apply): Don't add to tui_windows.
3582 * tui-layout.h (tui_layout_base::get_windows): New member function.
3583 (tui_layout_window::get_windows): Likewise.
3584 (tui_layout_split::get_windows): Likewise.
3586 2021-02-08 Andrew Burgess <andrew.burgess@embecosm.com>
3588 * tui/tui-layout.c (tui_apply_current_layout): Restore the delete
3589 of the window objects.
3591 2021-02-08 Andrew Burgess <andrew.burgess@embecosm.com>
3593 * python/python.c (gdbpy_print_stack): Reformat an error message.
3595 2021-02-08 Andrew Burgess <andrew.burgess@embecosm.com>
3597 * tui/tui-interp.c (tui_command_line_handler): New function.
3598 (tui_interp::resume): Register tui_command_line_handler as the
3600 * tui/tui-io.c (tui_inject_newline_into_command_window): New
3602 (tui_getc_1): Delete handling of '\n' and '\r'.
3603 * tui-io.h (tui_inject_newline_into_command_window): Declare.
3605 2021-02-07 Hannes Domani <ssbssa@yahoo.de>
3607 * tui/tui-regs.c (tui_data_window::display_registers_from):
3608 Mark invisible register sub windows.
3609 (tui_data_window::check_register_values): Ignore invisible
3610 register sub windows.
3612 2021-02-07 Hannes Domani <ssbssa@yahoo.de>
3614 * tui/tui-regs.c (tui_data_item_window::rerender): Don't call
3615 n_spaces with a negative value.
3617 2021-02-07 Hannes Domani <ssbssa@yahoo.de>
3619 * tui/tui-regs.c (tui_data_window::display_registers_from):
3620 Add refresh_window call.
3622 2021-02-07 Hannes Domani <ssbssa@yahoo.de>
3624 * python/py-frame.c (frapy_richcompare): Compare frame_id_is_next.
3626 2021-02-05 Simon Marchi <simon.marchi@polymtl.ca>
3628 * symmisc.c (std_in, std_out, std_err): Remove.
3629 (_initialize_symmisc): Don't set std_in, std_out and std_err.
3631 2021-02-05 Tom de Vries <tdevries@suse.de>
3633 PR breakpoints/27330
3634 * breakpoint.c (create_exception_master_breakpoint): Handle case that
3635 glibc object file has debug info.
3637 2021-02-05 Tom de Vries <tdevries@suse.de>
3640 * dwarf2/read.c (process_psymtab_comp_unit): Handle DW_TAG_type_unit.
3642 2021-02-05 Tom de Vries <tdevries@suse.de>
3644 PR breakpoints/27313
3645 * break-catch-syscall.c (catch_syscall_split_args): Reject negative
3648 2021-02-05 Tom Tromey <tom@tromey.com>
3650 * compile/compile-c-support.c (get_compile_context)
3651 (c_get_compile_context, cplus_get_compile_context): Change return
3653 * language.c (language_defn::get_compile_instance): New method.
3654 * language.h (language_defn::get_compile_instance): Change return
3655 type. No longer inline.
3656 * c-lang.c (c_language::get_compile_instance): Change return type.
3657 (cplus_language::get_compile_instance): Change return type.
3658 * c-lang.h (c_get_compile_context, cplus_get_compile_context):
3660 * compile/compile.c (compile_to_object): Update.
3662 2021-02-05 Tom Tromey <tom@tromey.com>
3664 * parser-defs.h (write_exp_symbol_reference): Declare.
3665 * parse.c (write_exp_symbol_reference): New function.
3666 * p-exp.y (variable): Use write_exp_symbol_reference.
3667 * m2-exp.y (variable): Use write_exp_symbol_reference.
3668 * f-exp.y (variable): Use write_exp_symbol_reference.
3669 * d-exp.y (PrimaryExpression): Use write_exp_symbol_reference.
3670 * c-exp.y (variable): Use write_exp_symbol_reference.
3672 2021-02-05 Tom de Vries <tdevries@suse.de>
3675 * valarith.c (complex_binop): Throw an error if complex type can't
3678 2021-02-05 Tom de Vries <tdevries@suse.de>
3681 * dwarf2/read.c (create_cus_from_debug_names_list): Add missing
3684 2021-02-05 Tom de Vries <tdevries@suse.de>
3686 * dwarf2/read.c (create_cus_from_debug_names_list): Fix indentation.
3688 2021-02-04 Mike Frysinger <vapier@gentoo.org>
3690 * configure.tgt (riscv*-*-*): Set gdb_sim.
3692 2021-02-04 Simon Marchi <simon.marchi@polymtl.ca>
3694 * target.c (target_is_non_stop_p): Return bool.
3695 * target.h (target_is_non_stop_p): Return bool.
3697 2021-02-04 Simon Marchi <simon.marchi@efficios.com>
3699 * record-full.c (record_full_async_inferior_event_handler):
3700 Don't clear async event handler.
3701 (record_full_base_target::wait): Clear async event handler at
3704 2021-02-04 Simon Marchi <simon.marchi@efficios.com>
3706 * record-btrace.c (record_btrace_handle_async_inferior_event):
3707 Don't clear async event handler.
3708 (record_btrace_target::wait): Clear async event handler at
3711 2021-02-04 Simon Marchi <simon.marchi@efficios.com>
3713 * remote.c (remote_target::wait): Clear async event handler at
3714 beginning, mark if needed at the end.
3715 (remote_async_inferior_event_handler): Don't set or clear async
3718 2021-02-04 Simon Marchi <simon.marchi@efficios.com>
3720 * async-event.h (async_event_handler_func): Add documentation.
3721 * async-event.c (check_async_event_handlers): Don't clear
3722 async_event_handler ready flag.
3723 * infrun.c (infrun_async_inferior_event_handler): Clear ready
3725 * record-btrace.c (record_btrace_handle_async_inferior_event):
3727 * record-full.c (record_full_async_inferior_event_handler):
3729 * remote-notif.c (remote_async_get_pending_events_handler):
3731 * remote.c (remote_async_inferior_event_handler): Likewise.
3733 2021-02-03 Simon Marchi <simon.marchi@polymtl.ca>
3735 * infrun.c (handle_inferior_event): Move stop_soon variable to
3738 2021-02-03 Pedro Alves <pedro@palves.net>
3740 * infcmd.c (detach_command): Hold strong reference to target, and
3741 if all-stop on entry, restart threads on exit.
3742 * infrun.c (switch_back_to_stepped_thread): Factor out bits to ...
3743 (restart_stepped_thread): ... this new function. Also handle
3745 (restart_after_all_stop_detach): New function.
3746 * infrun.h (restart_after_all_stop_detach): Declare.
3748 2021-02-03 Pedro Alves <pedro@palves.net>
3750 * infrun.c (struct step_over_info): Initialize fields.
3751 (prepare_for_detach): Handle ongoing in-line step over.
3753 2021-02-03 Pedro Alves <pedro@palves.net>
3755 * linux-nat.c (linux_nat_target::detach): Remove breakpoints
3757 * remote.c (remote_target::remote_detach_1): ... and here ...
3758 * target.c (target_detach): ... instead of here.
3759 * target.h (target_ops::detach): Add comment.
3761 2021-02-03 Pedro Alves <pedro@palves.net>
3763 * infrun.c (struct wait_one_event): Move higher up.
3764 (prepare_for_detach): Abort in-progress displaced steps instead of
3765 letting them complete.
3766 (handle_one): If the inferior is detaching, don't add the thread
3767 back to the global step-over chain.
3768 (restart_threads): Don't restart threads if detaching.
3769 (handle_signal_stop): Remove inferior::detaching reference.
3771 2021-02-03 Pedro Alves <pedro@palves.net>
3773 * infrun.c (prepare_for_detach): Don't release scoped_restore
3776 2021-02-03 Pedro Alves <pedro@palves.net>
3778 * infrun.c (handle_one): New function, factored out from ...
3779 (stop_all_threads): ... here.
3781 2021-02-03 Pedro Alves <pedro@palves.net>
3783 * remote.c (remote_notif_stop_ack): Don't error out on
3784 TARGET_WAITKIND_IGNORE; instead, just ignore the notification.
3785 (remote_target::discard_pending_stop_replies): Don't delete
3786 in-flight notification; instead, clear its contents.
3788 2021-02-03 Pedro Alves <pedro@palves.net>
3790 * remote.c (extended_remote_target::attach): Set target async in
3791 the target-non-stop path too.
3793 2021-02-03 Pedro Alves <pedro@palves.net>
3796 * infrun.c (handle_signal_stop): Move main context_switch call
3797 earlier, before STOP_QUIETLY_NO_SIGSTOP.
3799 2021-02-02 Lancelot SIX <lsix@lancelotsix.com>
3801 * NEWS (Changed commands): Add entry for the behavior change of
3802 the inferior command.
3803 * inferior.c (inferior_command): When no argument is given to the
3804 inferior command, display info about the currently selected
3807 2021-02-02 Simon Marchi <simon.marchi@efficios.com>
3809 * dwarf2/read.c (read_loclist_index, read_rnglist_index): Return
3811 (read_attribute_reprocess): Adjust.
3813 2021-02-02 Simon Marchi <simon.marchi@efficios.com>
3815 * dwarf2/die.h (struct die_info) <ranges_base>: Split in...
3816 <gnu_ranges_base>: ... this...
3817 <rnglists_base>: ... and this.
3818 * dwarf2/read.c (struct dwarf2_cu) <ranges_base>: Split in...
3819 <gnu_ranges_base>: ... this...
3820 <rnglists_base>: ... and this.
3821 (read_cutu_die_from_dwo): Adjust
3822 (dwarf2_get_pc_bounds): Adjust
3823 (dwarf2_record_block_ranges): Adjust.
3824 (read_full_die_1): Adjust
3825 (partial_die_info::read): Adjust.
3826 (read_rnglist_index): Adjust.
3828 2021-02-02 Simon Marchi <simon.marchi@efficios.com>
3831 * dwarf2/read.c (read_loclists_rnglists_header): Add
3832 header_offset parameter and use it.
3833 (read_loclist_index): Read header of the current contribution,
3834 not the one at the beginning of the section.
3835 (read_rnglist_index): Likewise.
3837 2021-02-02 Simon Marchi <simon.marchi@efficios.com>
3840 * dwarf2/attribute.h (struct attribute) <set_unsigned>: Clear
3841 requires_reprocessing flag.
3842 * dwarf2/attribute.c (attribute::form_is_unsigned): Handle
3844 (attribute::form_requires_reprocessing): Handle DW_FORM_rnglistx
3845 and DW_FORM_loclistx.
3846 * dwarf2/read.c (read_attribute_reprocess): Use set_unsigned
3847 instead of set_address for DW_FORM_loclistx and
3850 2021-02-02 Simon Marchi <simon.marchi@efficios.com>
3852 * dwarf2/read.c (read_loclist_index): Remove bound check for
3854 (read_rnglist_index): Likewise.
3856 2021-02-02 Simon Marchi <simon.marchi@efficios.com>
3858 * dwarf2/read.c (read_loclist_index): Add bound check for the end
3861 2021-02-02 Simon Marchi <simon.marchi@efficios.com>
3863 * dwarf2/read.c (read_rnglist_index): Fix bound check.
3865 2021-02-02 Simon Marchi <simon.marchi@efficios.com>
3867 * dwarf2/read.c (read_loclist_index): Change complaints into
3870 2021-02-02 Tom de Vries <tdevries@suse.de>
3873 * dwarf2/index-write.c (write_one_signatured_type): Skip if
3876 2021-02-01 Andrew Burgess <andrew.burgess@embecosm.com>
3878 * Makefile.in (HFILES_NO_SRCDIR): Add corefile.h.
3879 * gcore.c (struct gcore_collect_regset_section_cb_data): Moved
3880 here from linux-tdep.c and given a new name. Minor cleanups.
3881 (gcore_collect_regset_section_cb): Likewise.
3882 (gcore_collect_thread_registers): Likewise.
3883 (gcore_build_thread_register_notes): Likewise.
3884 (gcore_find_signalled_thread): Likewise.
3885 * gcore.h (gcore_build_thread_register_notes): Declare.
3886 (gcore_find_signalled_thread): Declare.
3887 * fbsd-tdep.c: Add 'gcore.h' include.
3888 (struct fbsd_collect_regset_section_cb_data): Delete.
3889 (fbsd_collect_regset_section_cb): Delete.
3890 (fbsd_collect_thread_registers): Delete.
3891 (struct fbsd_corefile_thread_data): Delete.
3892 (fbsd_corefile_thread): Delete.
3893 (fbsd_make_corefile_notes): Call
3894 gcore_build_thread_register_notes instead of the now deleted
3896 * linux-tdep.c: Add 'gcore.h' include.
3897 (struct linux_collect_regset_section_cb_data): Delete.
3898 (linux_collect_regset_section_cb): Delete.
3899 (linux_collect_thread_registers): Delete.
3900 (linux_corefile_thread): Call
3901 gcore_build_thread_register_notes.
3902 (find_signalled_thread): Delete.
3903 (linux_make_corefile_notes): Call gcore_find_signalled_thread.
3905 2021-01-29 Tom de Vries <tdevries@suse.de>
3907 PR breakpoints/26063
3908 * infrun.c (process_event_stop_test): Reset
3909 ecs->event_thread->current_line to 0 if is-stmt=n and frame has
3912 2021-01-28 Andrew Burgess <andrew.burgess@embecosm.com>
3914 * thread.c (thr_try_catch_cmd): Replace swith_to_thread with an
3915 assert. Extend the header comment.
3917 2021-01-28 Andrew Burgess <andrew.burgess@embecosm.com>
3919 * Makefile.in (SUBDIR_TUI_SRCS): Add tui/tui-location.c.
3920 (HFILES_NO_SRCDIR): Add tui/tui-location.h.
3921 * tui/tui-data.h (TUI_STATUS_WIN): Define.
3922 (tui_locator_win_info_ptr): Delete declaration.
3923 * tui/tui-disasm.c: Add 'tui/tui-location.h' include.
3924 (tui_disasm_window::set_contents): Fetch state from tui_location
3926 (tui_get_begin_asm_address): Likewise.
3927 * tui/tui-layout.c (tui_apply_current_layout): Remove special case
3929 (get_locator_window): Delete.
3930 (initialize_known_windows): Treat locator window just like all the
3932 * tui/tui-source.c: Add 'tui/tui-location.h' include.
3933 (tui_source_window::set_contents): Fetch state from tui_location
3935 (tui_source_window::showing_source_p): Likewise.
3936 * tui/tui-stack.c: Add 'tui/tui-location.h' include.
3938 (tui_locator_win_info_ptr): Delete.
3939 (tui_locator_window::make_status_line): Fetch state from
3940 tui_location global.
3941 (tui_locator_window::rerender): Remove check of 'handle',
3942 reindent function body.
3943 (tui_locator_window::set_locator_fullname): Delete.
3944 (tui_locator_window::set_locator_info): Delete.
3945 (tui_update_locator_fullname): Delete.
3946 (tui_show_frame_info): Likewise.
3947 (tui_show_locator_content): Access window through TUI_STATUS_WIN.
3948 * tui/tui-stack.h (tui_locator_window::set_locator_info): Moved to
3949 tui/tui-location.h and renamed to
3950 tui_location_tracker::set_location.
3951 (tui_locator_window::set_locator_fullname): Moved to
3952 tui/tui-location.h and renamed to
3953 tui_location_tracker::set_fullname.
3954 (tui_locator_window::full_name): Delete.
3955 (tui_locator_window::proc_name): Delete.
3956 (tui_locator_window::line_no): Delete.
3957 (tui_locator_window::addr): Delete.
3958 (tui_locator_window::gdbarch): Delete.
3959 (tui_update_locator_fullname): Delete declaration.
3960 * tui/tui-wingeneral.c (tui_refresh_all): Removed special handling
3962 * tui/tui-winsource.c: Add 'tui/tui-location.h' include.
3963 (tui_display_main): Call function on tui_location directly.
3964 * tui/tui.h (enum tui_win_type): Add STATUS_WIN.
3965 * tui/tui-location.c: New file.
3966 * tui/tui-location.h: New file.
3968 2021-01-28 Simon Marchi <simon.marchi@polymtl.ca>
3970 * gdbtypes.h (get_type_arch): Rename to...
3971 (struct type) <arch>: ... this, update all users.
3973 2021-01-28 Simon Marchi <simon.marchi@polymtl.ca>
3975 * gdbtypes.h (struct type) <arch>: Rename to...
3976 <arch_owner>: ... this, update all users.
3977 <objfile>: Rename to...
3978 <objfile_owner>: ... this, update all users.
3980 2021-01-28 Andrew Burgess <andrew.burgess@embecosm.com>
3982 * gdbcmd.h (execute_command_to_string): Update comment.
3983 * top.c (execute_command_to_string): Update header comment.
3985 2021-01-28 Tom de Vries <tdevries@suse.de>
3987 PR breakpoints/27205
3988 * breakpoint.c (create_longjmp_master_breakpoint_probe)
3989 (create_longjmp_master_breakpoint_names): New function, factored out
3991 (create_longjmp_master_breakpoint): ... here. Only try to install
3992 longjmp_names breakpoints in libc.so/libc.so.debug if installing probe
3993 breakpoint in libc.so failed.
3995 2021-01-27 Lancelot SIX <lsix@lancelotsix.com>
3998 * cli/cli-interp.c (cli_interp_base::set_logging): Ensure the
3999 unique_ptr is released when the wrapped pointer is kept for later
4002 2021-01-27 Matthew Malcomson <matthew.malcomson@arm.com>
4004 * aarch64-tdep.c (aarch64_displaced_step_others): Account for
4005 BLR and BR instructions.
4006 * arch/aarch64-insn.h (enum aarch64_opcodes): Add BR opcode.
4007 (enum aarch64_masks): New.
4009 2021-01-26 Tom Tromey <tromey@adacore.com>
4011 * windows-nat.c (DEBUG_EXEC, DEBUG_EVENTS, DEBUG_MEM)
4012 (DEBUG_EXCEPT): Use debug_prefixed_printf_cond.
4013 (windows_init_thread_list, windows_nat::handle_load_dll)
4014 (windows_nat::handle_unload_dll, windows_nat_target::resume)
4015 (windows_nat_target::resume)
4016 (windows_nat_target::get_windows_debug_event)
4017 (windows_nat_target::interrupt, windows_xfer_memory)
4018 (windows_nat_target::close): Update.
4019 * nat/windows-nat.c (DEBUG_EVENTS): Use
4020 debug_prefixed_printf_cond.
4021 (matching_pending_stop, fetch_pending_stop)
4022 (continue_last_debug_event): Update.
4024 2020-12-17 Mihails Strasuns <mihails.strasuns@intel.com>
4026 * linux-tdep.c (linux_make_mappings_corefile_notes): Start using
4027 elfcore_write_file_note.
4029 2021-01-26 Shahab Vahedi <shahab@synopsys.com>
4031 * arc-tdep.c (arc_add_reggroups): New function.
4032 (arc_gdbarch_init): Call arc_add_reggroups.
4034 2021-01-26 Anton Kolesov <anton.kolesov@synopsys.com>
4036 * arc-tdep.c (arc_skip_prologue): Log "pc" address.
4038 2021-01-25 Bernd Edlinger <bernd.edlinger@hotmail.de>
4039 Simon Marchi <simon.marchi@polymtl.ca>
4040 Tom de Vries <tdevries@suse.de>
4042 * dwarf2/read.c (partial_die_info::read): Use as_unsigned () for
4045 2021-01-25 Tom Tromey <tromey@adacore.com>
4047 * dwarf2/read.c (get_mpz): New function.
4048 (get_dwarf2_rational_constant): Use it.
4050 2021-01-25 Tom Tromey <tromey@adacore.com>
4052 * ada-lang.c (resolve_subexp): Handle array context.
4054 2021-01-23 Tom Tromey <tom@tromey.com>
4057 * compile/compile-loc2c.c (note_register): New function.
4058 (pushf_register_address, pushf_register): Use it.
4060 2021-01-23 Tom Tromey <tom@tromey.com>
4062 * symtab.h (struct symbol_computed_ops) <generate_c_location>:
4063 Change type of "registers_used".
4064 * dwarf2/loc.h (dwarf2_compile_property_to_c): Update.
4065 * dwarf2/loc.c (dwarf2_compile_property_to_c)
4066 (locexpr_generate_c_location, loclist_generate_c_location): Change
4067 type of "registers_used".
4068 * compile/compile.h (compile_dwarf_expr_to_c)
4069 (compile_dwarf_bounds_to_c): Update.
4070 * compile/compile-loc2c.c (pushf_register_address)
4071 (pushf_register, do_compile_dwarf_expr_to_c)
4072 (compile_dwarf_expr_to_c, compile_dwarf_bounds_to_c): Change type
4073 of "registers_used".
4074 * compile/compile-c.h (generate_c_for_variable_locations):
4076 * compile/compile-c-symbols.c (generate_vla_size)
4077 (generate_c_for_for_one_variable): Change type of
4079 (generate_c_for_variable_locations): Return std::vector.
4080 * compile/compile-c-support.c (generate_register_struct): Change
4081 type of "registers_used".
4084 2021-01-23 Tom Tromey <tom@tromey.com>
4086 * compile/compile-internal.h (class compile_instance)
4087 <set_arguments>: Change return type.
4088 * compile/compile.c (compile_to_object): Remove call to reset.
4089 (compile_instance::set_arguments): Change return type.
4091 2021-01-23 Simon Marchi <simon.marchi@polymtl.ca>
4093 * gdbtypes.c (copy_type_recursive): Use get_type_arch.
4094 * gdbtypes.h (struct type) <set_owner>: Add asserts.
4096 2021-01-23 Lancelot SIX <lsix@lancelotsix.com>
4098 * Makefile.in (SELFTESTS_SRCS): Add
4099 unittests/gdb_tilde_expand-selftests.c.
4100 * unittests/gdb_tilde_expand-selftests.c: New file.
4102 2021-01-22 Andrew Burgess <andrew.burgess@embecosm.com>
4105 * NEWS: Mention new command.
4106 * cli/cli-style.c: Add 'cli/cli-setshow.h' include.
4107 (version_style): Define.
4108 (cli_style_option::cli_style_option): Add intensity parameter, and
4110 (_initialize_cli_style): Register version style set/show commands.
4111 * cli/cli-style.h (cli_style_option): Add intensity parameter.
4112 (version_style): Declare.
4113 * top.c (print_gdb_version): Use version_stype, and styled_string
4114 to print the GDB version string.
4116 2021-01-22 Andrew Burgess <andrew.burgess@embecosm.com>
4118 * utils.c (emit_style_escape): Only emit an escape sequence if the
4119 requested style is different than the current applied style.
4120 (fputs_maybe_filtered): Adjust the juggling of the wrap_style, and
4121 current applied_style.
4122 (fputs_styled): Remove is_default check.
4123 (fputs_styled_unfiltered): Likewise.
4124 (vfprintf_styled_no_gdbfmt): Likewise.
4126 2021-01-22 Simon Marchi <simon.marchi@polymtl.ca>
4128 * remote.h (remote_debug_printf): New.
4129 (remote_debug_printf_nofunc): New.
4130 (REMOTE_SCOPED_DEBUG_ENTER_EXIT): New.
4131 * remote.c: Use above macros throughout file.
4133 2021-01-22 Simon Marchi <simon.marchi@polymtl.ca>
4135 * remote.h (remote_debug): Change to bool.
4136 * remote.c (remote_debug): Change to bool.
4137 (_initialize_remote): Adjust.
4139 2021-01-22 Simon Marchi <simon.marchi@polymtl.ca>
4141 * target.h (remote_debug): Move to...
4142 * remote.h (remote_debug): ... here.
4143 * top.c (remote_debug): Move to...
4144 * remote.c (remote_debug): ... here.
4145 * remote-sim.c: Include remote.h.
4147 2021-01-22 Simon Marchi <simon.marchi@polymtl.ca>
4149 * cli/cli-cmds.c (show_remote_debug): Remove.
4150 (show_remote_timeout): Remove.
4151 (_initialize_cli_cmds): Don't register commands.
4152 * remote.c (show_remote_debug): Move here.
4153 (show_remote_timeout): Move here.
4154 (_initialize_remote): Register commands.
4156 2021-01-22 Simon Marchi <simon.marchi@polymtl.ca>
4158 * gdbtypes.h (TYPE_OBJFILE): Remove, change all users to use the
4159 type::objfile method instead.
4161 2021-01-22 Simon Marchi <simon.marchi@polymtl.ca>
4163 * gdbtypes.h (TYPE_OBJFILE_OWNED): Remove, update all users to
4164 use the type::is_objfile_owned method.
4166 2021-01-22 Simon Marchi <simon.marchi@efficios.com>
4168 * gdbtypes.h (TYPE_OBJFILE_OWNED): Adjust.
4169 (TYPE_OWNER): Remove.
4170 (TYPE_OBJFILE): Adjust.
4171 (struct main_type) <flag_objfile_owned>: Rename to...
4172 <m_flag_objfile_owned>: ... this.
4173 <owner>: Rename to...
4174 <m_owner>: ... this.
4175 (struct type) <is_objfile_owned, set_owner, objfile, arch>: New
4177 (TYPE_ALLOC): Adjust.
4178 * gdbtypes.c (alloc_type): Adjust.
4179 (alloc_type_arch): Adjust.
4180 (alloc_type_copy): Adjust.
4181 (get_type_arch): Adjust.
4182 (smash_type): Adjust.
4183 (lookup_array_range_type): Adjust.
4184 (recursive_dump_type): Adjust.
4185 (copy_type_recursive): Adjust.
4186 * compile/compile-c-types.c (convert_func): Adjust.
4187 (convert_type_basic): Adjust.
4188 * compile/compile-cplus-types.c (compile_cplus_convert_func):
4191 (language_arch_info::type_and_symbol::alloc_type_symbol):
4194 2021-01-21 Luis Machado <luis.machado@linaro.org>
4196 * coffread.c (enter_linenos): Passing string to complaint.
4197 * valops.c (value_assign): Make array view.
4199 2021-01-21 Simon Marchi <simon.marchi@polymtl.ca>
4201 * auto-load.h (debug_auto_load): Move here.
4202 (auto_load_debug_printf): New.
4203 * auto-load.c: Use auto_load_debug_printf.
4204 (debug_auto_load): Move to header.
4205 * linux-thread-db.c (try_thread_db_load): Use
4206 auto_load_debug_printf.
4207 * main.c (captured_main_1): Likewise.
4209 2021-01-21 Simon Marchi <simon.marchi@polymtl.ca>
4211 * f-valprint.c (f77_array_offset_tbl): Remove.
4213 2021-01-21 Simon Marchi <simon.marchi@polymtl.ca>
4215 * gdb_bfd.c (bfd_cache_debug_printf): New, use throughout file.
4217 2021-01-21 Simon Marchi <simon.marchi@polymtl.ca>
4219 * ser-tcp.c (wait_for_connect): Use interruptible_select instead
4222 2021-01-21 Hannes Domani <ssbssa@yahoo.de>
4225 * python/py-breakpoint.c (bppy_get_location): Handle
4226 bp_hardware_breakpoint.
4227 (bppy_init): Likewise.
4228 (gdbpy_breakpoint_created): Likewise.
4230 2021-01-21 Simon Marchi <simon.marchi@polymtl.ca>
4232 * arm-tdep.c (arm_debug_printf): Add and use throughout file.
4234 2021-01-20 Simon Marchi <simon.marchi@polymtl.ca>
4236 * gdb_bfd.c (debug_bfd_cache): Change type to bool.
4237 (_initialize_gdb_bfd): Adjust.
4239 2021-01-20 Simon Marchi <simon.marchi@polymtl.ca>
4242 * dwarf2/read.c (maybe_queue_comp_unit): Add assertion.
4244 2021-01-20 Simon Marchi <simon.marchi@polymtl.ca>
4246 * dwarf2/read.c (follow_die_offset): Add logging.
4247 (dwarf2_per_objfile::age_comp_units): Add logging.
4249 2021-01-20 Simon Marchi <simon.marchi@polymtl.ca>
4251 * aarch64-linux-tdep.c (aarch64_linux_record_tdep): Make static.
4252 * aarch64-tdep.c (tdesc_aarch64_list, aarch64_prologue_unwind,
4253 aarch64_stub_unwind, aarch64_normal_base, ): Make static.
4254 * arm-linux-tdep.c (arm_prologue_unwind): Make static.
4255 * arm-tdep.c (struct frame_unwind): Make static.
4256 * auto-load.c (auto_load_safe_path_vec): Make static.
4257 * csky-tdep.c (csky_stub_unwind): Make static.
4258 * gdbarch.c (gdbarch_data_registry): Make static.
4259 * gnu-v2-abi.c (gnu_v2_abi_ops): Make static.
4260 * i386-netbsd-tdep.c (i386nbsd_mc_reg_offset): Make static.
4261 * i386-tdep.c (i386_frame_setup_skip_insns,
4262 i386_tramp_chain_in_reg_insns, i386_tramp_chain_on_stack_insns):
4264 * infrun.c (observer_mode): Make static.
4265 * linux-nat.c (sigchld_action): Make static.
4266 * linux-thread-db.c (thread_db_list): Make static.
4267 * maint-test-options.c (maintenance_test_options_list):
4268 * mep-tdep.c (mep_csr_registers): Make static.
4269 * mi/mi-cmds.c (struct mi_cmd_stats): Remove struct type name.
4270 (stats): Make static.
4271 * nat/linux-osdata.c (struct osdata_type): Make static.
4272 * ppc-netbsd-tdep.c (ppcnbsd_reg_offsets): Make static.
4273 * progspace.c (last_program_space_num): Make static.
4274 * python/py-param.c (struct parm_constant): Remove struct type
4276 (parm_constants): Make static.
4277 * python/py-record-btrace.c (btpy_list_methods): Make static.
4278 * python/py-record.c (recpy_gap_type): Make static.
4279 * record.c (record_goto_cmdlist): Make static.
4280 * regcache.c (regcache_descr_handle): Make static.
4281 * registry.h (DEFINE_REGISTRY): Make definition static.
4282 * symmisc.c (std_in, std_out, std_err): Make static.
4283 * top.c (previous_saved_command_line): Make static.
4284 * tracepoint.c (trace_user, trace_notes, trace_stop_notes): Make
4286 * unittests/command-def-selftests.c (nr_duplicates,
4287 nr_invalid_prefixcmd, lists): Make static.
4288 * unittests/observable-selftests.c (test_notification): Make
4290 * unittests/optional/assignment/1.cc (counter): Make static.
4291 * unittests/optional/assignment/2.cc (counter): Make static.
4292 * unittests/optional/assignment/3.cc (counter): Make static.
4293 * unittests/optional/assignment/4.cc (counter): Make static.
4294 * unittests/optional/assignment/5.cc (counter): Make static.
4295 * unittests/optional/assignment/6.cc (counter): Make static.
4297 2021-01-20 Joel Sherrill <joel@rtems.org>
4300 * remote.c (struct remote_thread_info) <resume_state>: Rename
4302 <get_resume_state>: ... this.
4303 (remote_target::resume): Adjust.
4304 (remote_target::commit_resume): Adjust.
4305 (remote_target::select_thread_for_ambiguous_stop_reply): Adjust.
4307 2021-01-20 Sergio Durigan Junior <sergiodj@sergiodj.net>
4308 Tom Tromey <tom@tromey.com>
4310 * stap-probe.c (stap_parse_single_operand): Handle '!'
4312 (stap_parse_argument_conditionally): Likewise.
4313 Skip spaces after processing open-parenthesis sub-expression.
4314 (stap_parse_argument_1): Skip spaces after call to
4315 stap_parse_argument_conditionally.
4316 Handle case when right-side expression is a parenthesized
4318 Skip spaces after call to stap_parse_argument_1.
4320 2021-01-19 Lancelot SIX <lsix@lancelotsix.com>
4322 * top.h (switch_thru_all_uis): Use DISABLE_COPY_AND_ASSIGN.
4324 2021-01-19 Luis Machado <luis.machado@linaro.org>
4326 * trad-frame.h (trad_frame_saved_reg) <set_value_bytes>: Allocate
4327 memory and save data.
4328 (trad_frame_set_value, trad_frame_set_realreg, trad_frame_set_addr)
4329 (trad_frame_set_unknown, trad_frame_set_value_bytes)
4330 (trad_frame_value_p, trad_frame_addr_p, trad_frame_realreg_p)
4331 (trad_frame_value_bytes_p): Remove.
4332 (trad_frame_reset_saved_regs): Adjust documentation.
4333 * trad-frame.c (trad_frame_alloc_saved_regs): Initialize via a
4334 constructor and reset the state of the registers.
4335 (trad_frame_value_p, trad_frame_addr_p, trad_frame_realreg_p)
4336 (trad_frame_value_bytes_p, trad_frame_set_value)
4337 (trad_frame_set_realreg, trad_frame_set_addr)
4338 (trad_frame_set_unknown, trad_frame_set_value_bytes): Remove.
4339 (trad_frame_set_reg_realreg): Update to call member function.
4340 (trad_frame_set_reg_addr, trad_frame_set_reg_value_bytes): Likewise.
4341 (trad_frame_get_prev_register): Likewise.
4343 * aarch64-tdep.c (aarch64_analyze_prologue)
4344 (aarch64_analyze_prologue_test, aarch64_make_prologue_cache_1)
4345 (aarch64_prologue_prev_register): Update to use member functions.
4346 * alpha-mdebug-tdep.c (alpha_mdebug_frame_unwind_cache): Likewise.
4347 * alpha-tdep.c (alpha_heuristic_frame_unwind_cache): Likewise.
4348 * arc-tdep.c (arc_print_frame_cache, arc_make_frame_cache): Likewise.
4349 * arm-tdep.c (arm_make_prologue_cache, arm_exidx_fill_cache)
4350 (arm_make_epilogue_frame_cache): Likewise.
4351 * avr-tdep.c (avr_frame_unwind_cache)
4352 (avr_frame_prev_register): Likewise.
4353 * cris-tdep.c (cris_scan_prologue): Likewise.
4354 * csky-tdep.c (csky_frame_unwind_cache): Likewise.
4355 * frv-tdep.c (frv_analyze_prologue): Likewise.
4356 * hppa-tdep.c (hppa_frame_cache, hppa_fallback_frame_cache): Likewise.
4357 * lm32-tdep.c (lm32_frame_cache): Likewise.
4358 * m32r-tdep.c (m32r_frame_unwind_cache): Likewise.
4359 * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
4360 * mips-tdep.c (set_reg_offset, mips_insn16_frame_cache)
4361 (mips_micro_frame_cache, mips_insn32_frame_cache): Likewise.
4362 (reset_saved_regs): Adjust to set realreg.
4363 * riscv-tdep.c (riscv_scan_prologue, riscv_frame_cache): Adjust to
4364 call member functions.
4365 * rs6000-tdep.c (rs6000_frame_cache, rs6000_epilogue_frame_cache)
4366 * s390-tdep.c (s390_prologue_frame_unwind_cache)
4367 (s390_backchain_frame_unwind_cache): Likewise.
4368 * score-tdep.c (score7_analyze_prologue)
4369 (score3_analyze_prologue, score_make_prologue_cache): Likewise.
4370 * sparc-netbsd-tdep.c (sparc32nbsd_sigcontext_saved_regs): Likewise.
4371 * sparc-sol2-tdep.c (sparc32_sol2_sigtramp_frame_cache): Likewise.
4372 * sparc64-netbsd-tdep.c (sparc64nbsd_sigcontext_saved_regs): Likewise.
4373 * sparc64-sol2-tdep.c (sparc64_sol2_sigtramp_frame_cache): Likewise.
4374 * tilegx-tdep.c (tilegx_analyze_prologue)
4375 (tilegx_frame_cache): Likewise.
4376 * v850-tdep.c (v850_frame_cache): Likewise.
4377 * vax-tdep.c (vax_frame_cache): Likewise.
4379 2021-01-19 Luis Machado <luis.machado@linaro.org>
4381 * frame.h (get_frame_register_bytes): Pass a gdb::array_view instead
4383 (put_frame_register_bytes): Likewise.
4384 Adjust documentation.
4385 (get_frame_memory): Pass a gdb::array_view instead of buffer + length.
4386 (safe_frame_unwind_memory): Likewise.
4387 * frame.c (get_frame_register_bytes, put_frame_register_bytes)
4388 (get_frame_memory, safe_frame_unwind_memory): Adjust to use
4390 * amd64-fbsd-tdep.c (amd64fbsd_sigtramp_p): Likewise.
4391 * amd64-linux-tdep.c (amd64_linux_sigtramp_start): Likewise.
4392 * amd64-obsd-tdep.c (amd64obsd_sigtramp_p): Likewise.
4393 * arc-linux-tdep.c (arc_linux_is_sigtramp): Likewise.
4394 * cris-tdep.c (cris_sigtramp_start, cris_rt_sigtramp_start): Likewise.
4395 * dwarf2/loc.c (rw_pieced_value): Likewise.
4396 * hppa-tdep.c (hppa_frame_cache): Likewise.
4397 * i386-fbsd-tdep.c (i386fbsd_sigtramp_p): Likewise.
4398 * i386-gnu-tdep.c (i386_gnu_sigtramp_start): Likewise.
4399 * i386-linux-tdep.c (i386_linux_sigtramp_start)
4400 (i386_linux_rt_sigtramp_start): Likewise.
4401 * i386-obsd-tdep.c (i386obsd_sigtramp_p): Likewise.
4402 * i386-tdep.c (i386_register_to_value): Likewise.
4403 * i387-tdep.c (i387_register_to_value): Likewise.
4404 * ia64-tdep.c (ia64_register_to_value): Likewise.
4405 * m32r-linux-tdep.c (m32r_linux_sigtramp_start)
4406 (m32r_linux_rt_sigtramp_start): Likewise.
4407 * m68k-linux-tdep.c (m68k_linux_pc_in_sigtramp): Likewise.
4408 * m68k-tdep.c (m68k_register_to_value): Likewise.
4409 * mips-tdep.c (mips_register_to_value)
4410 (mips_value_to_register): Likewise.
4411 * ppc-fbsd-tdep.c (ppcfbsd_sigtramp_frame_sniffer)
4412 (ppcfbsd_sigtramp_frame_cache): Likewise.
4413 * ppc-obsd-tdep.c (ppcobsd_sigtramp_frame_sniffer)
4414 (ppcobsd_sigtramp_frame_cache): Likewise.
4415 * rs6000-tdep.c (rs6000_in_function_epilogue_frame_p)
4416 (rs6000_register_to_value): Likewise.
4417 * tilegx-tdep.c (tilegx_analyze_prologue): Likewise.
4418 * tramp-frame.c (tramp_frame_start): Likewise.
4419 * valops.c (value_assign): Likewise.
4421 2021-01-19 Luis Machado <luis.machado@linaro.org>
4423 * aarch64-linux-tdep.c (aarch64_linux_restore_vreg): Pass in an
4425 * trad-frame.c (trad_frame_set_value_bytes): Use gdb::array_view
4426 instead of buffer and size.
4427 (trad_frame_set_reg_value_bytes): Likewise.
4428 * trad-frame.h (trad_frame_set_reg_value_bytes): Likewise.
4429 (trad_frame_set_value_bytes): Likewise.
4431 2021-01-18 Mike Frysinger <vapier@gentoo.org>
4433 * copyright.py (NOT_FSF_LIST): Delete sim/testsuite/sim/bfin/s21.s.
4435 2021-01-18 Andrew Burgess <andrew.burgess@embecosm.com>
4437 * riscv-fbsd-tdep.c (riscv_fbsd_supply_gregset): Delete.
4438 (riscv_fbsd_gregset): Use riscv_supply_regset.
4439 (riscv_fbsd_fpregset): Likewise.
4440 * riscv-linux-tdep.c (riscv_linux_gregset): Likewise.
4441 (riscv_linux_fregset): Likewise.
4442 * riscv-tdep.c (riscv_supply_regset): Define new function.
4443 * riscv-tdep.h (riscv_supply_regset): Declare new function.
4445 2021-01-18 Tom de Vries <tdevries@suse.de>
4448 * nat/amd64-linux-siginfo.c (cpt_si_lower, cpt_si_upper, SEGV_BNDERR):
4450 (compat_siginfo_from_siginfo): Copy cpt_si_lower and cpt_si_upper
4453 2021-01-18 Simon Marchi <simon.marchi@polymtl.ca>
4455 * remote.c (class remote_target) <remote_hostio_send_command,
4456 remote_hostio_parse_result>: Constify parameter.
4457 (remote_hostio_parse_result): Likewise.
4458 (remote_target::remote_hostio_send_command): Adjust.
4459 (remote_target::remote_hostio_pread_vFile): Adjust.
4460 (remote_target::fileio_readlink): Adjust.
4461 (remote_target::fileio_fstat): Adjust.
4463 2021-01-18 Simon Marchi <simon.marchi@polymtl.ca>
4465 * remote.c (remote_target::start_remote): Move wait_status to
4468 2021-01-18 Simon Marchi <simon.marchi@polymtl.ca>
4470 * remote.c (class remote_target):
4471 <add_current_inferior_and_thread>: Constify parameter.
4472 (stop_reply_extract_thread): Likewise.
4473 (remote_target::get_current_thread): Likewise.
4474 (remote_target::add_current_inferior_and_thread): Likewise.
4476 2021-01-18 Simon Marchi <simon.marchi@polymtl.ca>
4478 * remote.c (class remote_target)
4479 <remote_unpack_thread_info_response,
4480 parse_threadlist_response>: Constify parameter and/or return
4481 value and or local variable.
4482 (stub_unpack_int): Likewise.
4483 (unpack_nibble): Likewise.
4484 (unpack_byte): Likewise.
4485 (unpack_int): Likewise.
4486 (unpack_string): Likewise.
4487 (unpack_threadid): Likewise.
4488 (remote_target::remote_unpack_thread_info_response): Likewise.
4489 (remote_target::parse_threadlist_response): Likewise.
4491 2021-01-15 Andrew Burgess <andrew.burgess@embecosm.com>
4493 * tui/tui.c (tui_is_window_visible): Compare to nullptr, not 0.
4495 2021-01-14 Lancelot Six <lsix@lancelotsix.com>
4497 * MAINTAINERS (Write After Approval): Add myself.
4499 2021-01-14 Bernd Edlinger <bernd.edlinger@hotmail.de>
4501 * trad-frame.c (trad_frame_alloc_saved_regs): Avoid compile-error
4502 because is_trivially_default_constructible was first implemented with
4505 2021-01-14 Tom de Vries <tdevries@suse.de>
4507 PR breakpoints/27151
4508 * objfiles.h (in_plt_section): Handle .plt.sec.
4510 2021-01-13 Andrew Burgess <andrew.burgess@embecosm.com>
4514 (remote_target::select_thread_for_ambiguous_stop_reply): New
4516 (remote_target::process_stop_reply): Call
4517 select_thread_for_ambiguous_stop_reply.
4519 2021-01-13 Simon Marchi <simon.marchi@efficios.com>
4521 * record-btrace.c (class record_btrace_target): Remove.
4522 (record_btrace_target::commit_resume): Remove.
4523 * record-full.c (class record_full_target): Remove.
4524 (record_full_target::commit_resume): Remove.
4526 2021-01-13 Simon Marchi <simon.marchi@efficios.com>
4528 * remote.c (enum class resume_state): New.
4529 (struct resumed_pending_vcont_info): New.
4530 (struct remote_thread_info) <resume_state, set_not_resumed,
4531 set_resumed_pending_vcont, resumed_pending_vcont_info,
4532 set_resumed, m_resume_state, m_resumed_pending_vcont_info>:
4534 <last_resume_step, last_resume_sig, vcont_resumed>: Remove.
4535 (remote_target::remote_add_thread): Adjust.
4536 (remote_target::process_initial_stop_replies): Adjust.
4537 (remote_target::resume): Adjust.
4538 (remote_target::commit_resume): Rely on state in
4539 remote_thread_info and not on tp->executing.
4540 (remote_target::process_stop_reply): Adjust.
4542 2021-01-13 Simon Marchi <simon.marchi@polymtl.ca>
4544 * arc-tdep.h (arc_debug_printf): New.
4545 * arc-tdep.c: Use arc_debug_printf.
4546 * arc-linux-nat.c (arc_linux_nat_debug_printf): Add and use.
4547 * arc-linux-tdep.c (arc_linux_debug_printf): Add and use.
4548 * arc-newlib-tdep.c (arc_newlib_debug_printf): Add and use.
4550 2021-01-13 Simon Marchi <simon.marchi@polymtl.ca>
4552 * arc-tdep.h (arc_debug): Change type to bool.
4553 * arc-tdep.c (arc_debug): Change type to bool.
4554 (arc_analyze_prologue): Adjust.
4555 (_initialize_arc_tdep): Use add_setshow_boolean_cmd.
4556 * arc-linux-nat.c (ps_get_thread_area): Adjust.
4558 2021-01-13 Simon Marchi <simon.marchi@polymtl.ca>
4560 * auto-load.c (auto_load_objfile_script_1): Use bool.
4561 (execute_script_contents): Use bool.
4563 2021-01-13 Simon Marchi <simon.marchi@polymtl.ca>
4565 * auto-load.h (auto_load_gdb_scripts_enabled): Return bool, move
4567 * auto-load.c (auto_load_gdb_scripts_enabled): Return bool, move
4569 * extension-priv.h (struct extension_language_script_ops)
4570 <auto_load_enabled>: Return bool.
4571 * extension.h (ext_lang_auto_load_enabled): Return bool, move
4573 * extension.c (ext_lang_auto_load_enabled): Return bool, move
4575 * guile/guile-header.h (gdbscm_auto_load_enabled): Return bool,
4577 * guile/scm-auto-load.c (gdbscm_auto_load_enabled): Return bool,
4578 move comment to header.
4579 * python/python-header.h (gdbpy_auto_load_enabled): Return bool,
4581 * python/py-auto-load.c (gdbpy_auto_load_enabled): Return bool,
4582 move comment to header.
4584 2021-01-13 Simon Marchi <simon.marchi@polymtl.ca>
4586 * auto-load.h (file_is_auto_load_safe): Change return type to
4587 bool, move comment here.
4588 * auto-load.c (file_is_auto_load_safe): Change return type and
4589 advice_printed to bool. Move comment to header.
4591 2021-01-13 Simon Marchi <simon.marchi@polymtl.ca>
4593 * jit.c (jit_debug_printf): New, use throughout file.
4595 2021-01-12 Simon Marchi <simon.marchi@polymtl.ca>
4597 * infrun.c (normal_stop): Fix indentation.
4599 2021-01-12 Simon Marchi <simon.marchi@polymtl.ca>
4601 * top.h (readnow_symbol_files, readnever_symbol_files): Move
4603 * symfile.h: ... here.
4604 * symfile.c: Update doc.
4606 2021-01-12 Simon Marchi <simon.marchi@polymtl.ca>
4608 * target.h (baud_rate, serial_parity): Move declarations...
4609 * serial.h: ... here.
4610 * main.c: Include serial.h.
4611 * serial.c (baud_rate, serial_parity): Update doc.
4613 2021-01-12 Simon Marchi <simon.marchi@polymtl.ca>
4615 * top.c (pre_init_ui_hook): Remove.
4617 2021-01-12 Srinath Parvathaneni <srinath.parvathaneni@arm.com>
4619 * aarch64-tdep.c (aarch64_vnh_type): Add "bf" field in h registers.
4620 (aarch64_vnv_type): Add "bf" type in h field of v registers.
4621 * features/aarch64-fpu.c (create_feature_aarch64_fpu): Regenerated.
4622 * features/aarch64-fpu.xml: Add bfloat16 type.
4624 2021-01-12 Andrew Burgess <andrew.burgess@embecosm.com>
4626 * expprint.c (dump_subexp_body_standard): Handle OP_BOOL.
4628 2021-01-12 Andrew Burgess <andrew.burgess@embecosm.com>
4630 * f-exp.y (dot_ops): Rename to...
4631 (fortran_operators): ...this. Add a header comment. Add symbol
4633 (yylex): Update to use fortran_operators not dot_ops. Remove
4634 special handling for '**', this is now included in
4637 2021-01-11 Simon Marchi <simon.marchi@polymtl.ca>
4639 * arch/aarch64-insn.h (aarch64_debug_printf): New.
4640 * arch/aarch64-insn.c: Use aarch64_debug_printf.
4641 * aarch64-tdep.c: Use aarch64_debug_printf.
4643 2021-01-11 Simon Marchi <simon.marchi@polymtl.ca>
4645 * solib-aix.c (solib_aix_debug_printf): New, use throughout
4648 2021-01-11 Simon Marchi <simon.marchi@polymtl.ca>
4650 * jit.c (jit_debug): Change type to bool.
4651 (_initialize_jit): Adjust.
4653 2021-01-09 Tom Tromey <tom@tromey.com>
4656 * compile/compile.c (compile_to_object): Avoid crash when
4657 osabi_triplet_regexp returns NULL.
4659 2021-01-09 Tom Tromey <tom@tromey.com>
4661 * tracepoint.h (class collection_list) <append_exp>: Take a
4663 * tracepoint.c (collection_list::append_exp): Take a std::string.
4664 (encode_actions_1): Update.
4666 2021-01-08 Tom Tromey <tromey@adacore.com>
4668 * parse.c (parse_expression): Add void_context_p parameter. Use
4669 parse_exp_in_context.
4670 * printcmd.c (print_command_1): Change voidprint to bool. Pass to
4672 (print_command, call_command): Update.
4673 * expression.h (parse_expression): Add void_context_p parameter.
4675 2021-01-08 Andrew Burgess <andrew.burgess@embecosm.com>
4677 * value.c (set_value_component_location): Adjust the VALUE_LVAL
4678 for internalvar components that have a dynamic location.
4680 2021-01-08 Tom de Vries <tdevries@suse.de>
4683 * breakpoint.c (create_exception_master_breakpoint_probe)
4684 (create_exception_master_breakpoint_hook): Factor out
4686 (create_exception_master_breakpoint): ... here. Only try to install
4687 the master exception breakpoint in objfile.debug using the
4688 _Unwind_DebugHook method, if the install using probes in objfile
4691 2021-01-08 Andrew Burgess <andrew.burgess@embecosm.com>
4693 * f-lang.c (fortran_value_subarray): Call value_from_component.
4695 2021-01-07 Mike Frysinger <vapier@gentoo.org>
4697 * remote-sim.c: Include memory-map.h.
4698 (gdbsim_target): Define memory_map override.
4699 (gdbsim_target::memory_map): Define.
4701 2021-01-07 Tom Tromey <tromey@adacore.com>
4703 * ada-lang.c (do_full_match): Conditionally skip "_ada_" prefix.
4705 2021-01-07 Tom Tromey <tromey@adacore.com>
4707 * ada-lang.c (add_component_interval): Start loop using vector's
4710 2021-01-06 Tom Tromey <tromey@adacore.com>
4712 * ada-lang.c (ada_evaluate_subexp) <BINOP_ADD, BINOP_SUB>:
4714 * valarith.c (fixed_point_binop): Handle multiplication
4715 and division specially.
4716 * valops.c (value_to_gdb_mpq): New function.
4717 (value_cast_to_fixed_point): Use it.
4719 2021-01-05 Hannes Domani <ssbssa@yahoo.de>
4721 * tui/tui-winsource.c (tui_source_window_base::refresh_window):
4722 Call wnoutrefresh instead of tui_win_info::refresh_window.
4724 2021-01-05 Hannes Domani <ssbssa@yahoo.de>
4726 * tui/tui-source.c (tui_source_window::show_line_number):
4727 Redraw second space after line number.
4729 2021-01-05 Hannes Domani <ssbssa@yahoo.de>
4732 * tui/tui-winsource.c (tui_source_window_base::refresh_window):
4733 Fix source pad size in prefresh.
4734 (tui_source_window_base::show_source_content): Grow source pad
4737 2021-01-04 Mike Frysinger <vapier@gentoo.org>
4739 * bfin-tdep.c (bfin_push_dummy_call): Use align_up.
4740 (bfin_frame_align): Use align_down.
4742 2021-01-04 Tom de Vries <tdevries@suse.de>
4744 * buildsym.c (buildsym_compunit::record_line): Filter out end-of-seq
4745 terminators that do not terminate anything.
4747 2021-01-04 Simon Marchi <simon.marchi@efficios.com>
4749 * debug.c (debug_print_depth): New.
4750 * infrun.h (INFRUN_SCOPED_DEBUG_START_END): New.
4751 (INFRUN_SCOPED_DEBUG_ENTER_EXIT): New.
4752 * infrun.c (start_step_over): Use
4753 INFRUN_SCOPED_DEBUG_ENTER_EXIT.
4754 (proceed): Use INFRUN_SCOPED_DEBUG_ENTER_EXIT and
4755 INFRUN_SCOPED_DEBUG_START_END.
4756 (fetch_inferior_event): Use INFRUN_SCOPED_DEBUG_ENTER_EXIT.
4758 2021-01-04 Simon Marchi <simon.marchi@efficios.com>
4760 * infrun.c (print_target_wait_results): Use infrun_debug_printf.
4762 2021-01-04 Simon Marchi <simon.marchi@efficios.com>
4764 * utils.c (vfprintf_unfiltered): Print timestamp only when
4765 previous debug output ended with a newline.
4767 2021-01-04 Luis Machado <luis.machado@linaro.org>
4769 Update all users of trad_frame_saved_reg to use the new member
4772 Remote all struct keywords from declarations of trad_frame_saved_reg
4773 types, except on forward declarations.
4775 * aarch64-tdep.c: Update.
4776 * alpha-mdebug-tdep.c: Update.
4777 * alpha-tdep.c: Update.
4778 * arc-tdep.c: Update.
4779 * arm-tdep.c: Update.
4780 * avr-tdep.c: Update.
4781 * cris-tdep.c: Update.
4782 * csky-tdep.c: Update.
4783 * frv-tdep.c: Update.
4784 * hppa-linux-tdep.c: Update.
4785 * hppa-tdep.c: Update.
4786 * hppa-tdep.h: Update.
4787 * lm32-tdep.c: Update.
4788 * m32r-linux-tdep.c: Update.
4789 * m32r-tdep.c: Update.
4790 * m68hc11-tdep.c: Update.
4791 * mips-tdep.c: Update.
4792 * moxie-tdep.c: Update.
4793 * riscv-tdep.c: Update.
4794 * rs6000-tdep.c: Update.
4795 * s390-linux-tdep.c: Update.
4796 * s390-tdep.c: Update.
4797 * score-tdep.c: Update.
4798 * sparc-netbsd-tdep.c: Update.
4799 * sparc-sol2-tdep.c: Update.
4800 * sparc64-fbsd-tdep.c: Update.
4801 * sparc64-netbsd-tdep.c: Update.
4802 * sparc64-obsd-tdep.c: Update.
4803 * sparc64-sol2-tdep.c: Update.
4804 * tilegx-tdep.c: Update.
4805 * v850-tdep.c: Update.
4806 * vax-tdep.c: Update.
4808 * frame-unwind.c (frame_unwind_got_bytes): Make parameter const.
4809 * frame-unwind.h (frame_unwind_got_bytes): Likewise.
4811 * trad-frame.c: Update.
4812 Remove TF_REG_* enum.
4813 (trad_frame_alloc_saved_regs): Add a static assertion to check for
4814 a trivially-constructible struct.
4815 (trad_frame_reset_saved_regs): Adjust to use member function.
4816 (trad_frame_value_p): Likewise.
4817 (trad_frame_addr_p): Likewise.
4818 (trad_frame_realreg_p): Likewise.
4819 (trad_frame_value_bytes_p): Likewise.
4820 (trad_frame_set_value): Likewise.
4821 (trad_frame_set_realreg): Likewise.
4822 (trad_frame_set_addr): Likewise.
4823 (trad_frame_set_unknown): Likewise.
4824 (trad_frame_set_value_bytes): Likewise.
4825 (trad_frame_get_prev_register): Likewise.
4826 * trad-frame.h: Update.
4827 (trad_frame_saved_reg_kind): New enum.
4828 (struct trad_frame_saved_reg) <addr, realreg, data>: Remove.
4829 <m_kind, m_reg>: New member fields.
4830 <set_value, set_realreg, set_addr, set_unknown, set_value_bytes>
4831 <kind, value, realreg, addr, value_bytes, is_value, is_realreg>
4832 <is_addr, is_unknown, is_value_bytes>: New member functions.
4834 2021-01-02 Simon Marchi <simon.marchi@polymtl.ca>
4836 * target-float.c: Fix typos.
4838 2021-01-02 Hannes Domani <ssbssa@yahoo.de>
4840 * gdb-gdb.py.in: Fix main_type.flds_bnds.bounds pretty printer.
4842 2021-01-01 Joel Brobecker <brobecker@adacore.com>
4844 * gdbarch.sh: Update copyright year range.
4846 2021-01-01 Joel Brobecker <brobecker@adacore.com>
4848 Update copyright year range in copyright header of all GDB files.
4850 2021-01-01 Joel Brobecker <brobecker@adacore.com>
4852 * copyright.py (get_update_list): Add "gdbserver" and "gdbsupport"
4853 to the list of directories to update.
4855 2021-01-01 Joel Brobecker <brobecker@adacore.com>
4857 * top.c (print_gdb_version): Update copyright year.
4859 2021-01-01 Joel Brobecker <brobecker@adacore.com>
4861 * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2020.
4863 For older changes see ChangeLog-2020.
4869 version-control: never