1 2021-05-07 Tom Tromey <tom@tromey.com>
3 * breakpoint.c (ambiguous_names_p): Use htab_eq_string.
4 * utils.c (streq_hash): Remove.
5 * utils.h (streq_hash): Don't declare.
6 * completer.c (completion_tracker::discard_completions): Update
8 * ada-lang.c (_initialize_ada_language): Use htab_eq_string.
10 2021-05-07 Simon Marchi <simon.marchi@polymtl.ca>
12 * Re-format all Python files using black.
14 2021-05-07 Tom de Vries <tdevries@suse.de>
17 * dwarf2/read.c (struct dwarf2_cu): Remove ancestor.
18 (dwarf2_cu::get_builder): Remove ancestor-related code.
19 (new_symbol): Remove code supporting pre-4.1 gcc that show arguments
20 of inlined functions as locals.
21 (follow_die_offset, follow_die_sig_1): Remove setting of ancestor.
23 2021-05-07 Andrew Burgess <andrew.burgess@embecosm.com>
25 * guile/guile-internal.h (gdbscm_safe_source_script): Change
27 * guile/guile.c (gdbscm_source_script): Update to handle change in
28 gdbscm_safe_source_script.
29 * guile/scm-objfile.c (gdbscm_source_objfile_script): Likewise.
30 * guile/scm-safe-call.c (gdbscm_safe_source_script): Change return
33 2021-05-06 Simon Marchi <simon.marchi@polymtl.ca>
35 * inferior.h (class inferior) <args>: Change type to
37 * inferior.c (inferior::~inferior): Don't free args.
38 * infcmd.c (get_inferior_args): Adjust.
39 (set_inferior_args): Adjust.
41 2021-05-06 Andrew Burgess <andrew.burgess@embecosm.com>
43 * guile/scm-breakpoint.c (bpscm_print_breakpoint_smob): Only print
44 breakpoint locations when the breakpoint actually has a location.
46 2021-05-06 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
48 * mi/mi-cmd-break.c (mi_cmd_break_condition): New function.
49 * mi/mi-cmds.c: Change the binding of "-break-condition" to
50 mi_cmd_break_condition.
51 * mi/mi-cmds.h (mi_cmd_break_condition): Declare.
52 * breakpoint.h (set_breakpoint_condition): Declare a new
54 * breakpoint.c (set_breakpoint_condition): New overloaded function
55 extracted out from ...
56 (condition_command): ... this.
57 * NEWS: Mention the change.
59 2021-05-06 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
61 * mi/mi-cmd-break.c (mi_cmd_break_insert_1): Recognize the
62 '--force-condition' flag to force the condition in the
63 '-break-insert' and '-dprintf-insert' commands.
64 * NEWS: Mention the change.
66 2021-05-04 Tom de Vries <tdevries@suse.de>
69 * guile/guile.c (gdbscm_initialize): Don't let guile change libgmp
72 2021-04-30 Tom Tromey <tom@tromey.com>
74 * dwarf2/read.c (dwarf2_initialize_objfile): Update.
75 (add_signatured_type_cu_to_table): Remove.
76 (create_debug_type_hash_table): Assume dwo_file is non-null.
77 (create_debug_types_hash_table): Update comment.
78 (create_all_type_units): Remove.
79 (sort_tu_by_abbrev_offset): Update comment.
80 (build_type_psymtabs): Rename from build_type_psymtabs_1.
81 (build_type_psymtabs): Remove.
82 (process_skeletonless_type_unit, dwarf2_build_psymtabs_hard):
84 (read_comp_units_from_section): Add types_htab, section_kind
86 (create_all_comp_units): Read type units.
88 2021-04-30 Tom Tromey <tom@tromey.com>
90 * dwarf2/read.h (struct tu_stats) <nr_tus>: New member.
91 (struct dwarf2_per_bfd) <get_cutu, get_tu>: Remove
93 <all_type_units>: Remove.
94 * dwarf2/read.c (dwarf2_per_bfd::~dwarf2_per_bfd): Update.
95 (dwarf2_per_bfd::get_cutu, dwarf2_per_bfd::get_cu)
96 (dwarf2_per_bfd::get_tu): Remove.
97 (dwarf2_per_bfd::allocate_signatured_type): Update nr_tus.
98 (create_signatured_type_table_from_index)
99 (create_signatured_type_table_from_debug_names)
100 (dw2_symtab_iter_next, dwarf2_base_index_functions::print_stats)
101 (dwarf2_base_index_functions::expand_all_symtabs)
102 (dw2_expand_marked_cus, dw_expand_symtabs_matching_file_matcher)
103 (dwarf2_base_index_functions::map_symbol_filenames)
104 (dw2_debug_names_iterator::next, dwarf2_initialize_objfile)
105 (add_signatured_type_cu_to_table, create_all_type_units)
106 (add_type_unit, build_type_psymtabs_1, print_tu_stats)
107 (create_all_comp_units): Update.
108 * dwarf2/index-write.c (check_dwarf64_offsets, write_gdbindex)
109 (write_debug_names): Update.
111 2021-04-30 Tom Tromey <tom@tromey.com>
113 * dwarf2/read.h (struct dwarf2_per_bfd) <allocate_per_cu,
114 allocate_signatured_type>: Change return type.
115 <all_comp_units, all_type_units>: Hold unique pointers.
116 (struct dwarf2_per_cu_data): Add constructor and initializers.
117 (struct signatured_type): Derive from dwarf2_per_cu_data.
118 * dwarf2/read.c (type_unit_group): Derive from
120 (dwarf2_per_bfd::get_cutu, dwarf2_per_bfd::get_cu)
121 (dwarf2_per_bfd::get_tu)
122 (dwarf2_per_bfd::allocate_signatured_type)
123 (dwarf2_per_bfd::allocate_signatured_type)
124 (create_cu_from_index_list, create_cus_from_index_list)
125 (create_signatured_type_table_from_index)
126 (create_signatured_type_table_from_debug_names)
127 (create_addrmap_from_aranges)
128 (dwarf2_base_index_functions::find_last_source_symtab)
129 (dw_expand_symtabs_matching_file_matcher)
130 (dwarf2_gdb_index::expand_symtabs_matching)
131 (dwarf2_base_index_functions::map_symbol_filenames)
132 (create_cus_from_debug_names_list)
133 (dw2_debug_names_iterator::next)
134 (dwarf2_debug_names_index::expand_symtabs_matching)
135 (create_debug_type_hash_table, add_type_unit)
136 (fill_in_sig_entry_from_dwo_entry, lookup_dwo_signatured_type):
138 (allocate_type_unit_groups_table): Use delete.
139 (create_type_unit_group): Change return type. Use new.
140 (get_type_unit_group, build_type_psymtabs_1)
141 (build_type_psymtab_dependencies)
142 (process_skeletonless_type_unit, set_partial_user)
143 (dwarf2_build_psymtabs_hard, read_comp_units_from_section)
144 (create_cus_hash_table, queue_and_load_dwo_tu, follow_die_sig_1)
145 (read_signatured_type): Update.
146 (dwarf2_find_containing_comp_unit): Change type of
149 (dwarf2_per_bfd::allocate_per_cu)
150 (dwarf2_per_bfd::allocate_signatured_type): Change return type.
152 (add_signatured_type_cu_to_table): Update.
153 * dwarf2/index-write.c (write_one_signatured_type)
154 (check_dwarf64_offsets, psyms_seen_size, write_gdbindex)
155 (write_debug_names): Update.
157 2021-04-30 Tom Tromey <tromey@adacore.com>
159 * nat/windows-nat.h (get_image_name): Don't declare.
160 * nat/windows-nat.c (get_image_name): Now static.
162 2021-04-30 Tom Tromey <tromey@adacore.com>
164 * windows-nat.c (windows_nat::handle_load_dll): Update.
165 (windows_nat_target::get_windows_debug_event): Call
167 (windows_add_all_dlls, windows_add_dll): Move to
169 * nat/windows-nat.h (handle_load_dll): Change parameters.
170 (dll_loaded_event, windows_add_all_dlls): Declare.
171 * nat/windows-nat.c (windows_add_dll, windows_add_all_dlls): Move
173 (dll_loaded_event): New function.
175 2021-04-30 Tom Tromey <tromey@adacore.com>
177 * nat/windows-nat.h (GenerateConsoleCtrlEvent): New define.
178 (GenerateConsoleCtrlEvent_ftype, GenerateConsoleCtrlEvent):
180 * nat/windows-nat.c (GenerateConsoleCtrlEvent): Define.
181 (initialize_loadable): Initialize GenerateConsoleCtrlEvent.
183 2021-04-30 Tom Tromey <tromey@adacore.com>
185 * windows-nat.c: Move code to nat/windows-nat.[ch].
186 (_initialize_windows_nat): Call initialize_loadable.
187 * nat/windows-nat.h (AdjustTokenPrivileges)
188 (DebugActiveProcessStop, DebugBreakProcess)
189 (DebugSetProcessKillOnExit, EnumProcessModules)
190 (EnumProcessModulesEx, GetModuleInformation)
191 (GetModuleFileNameExA, GetModuleFileNameExW)
192 (LookupPrivilegeValueA, OpenProcessToken, GetConsoleFontSize)
193 (GetCurrentConsoleFont, Wow64SuspendThread)
194 (Wow64GetThreadContext, Wow64SetThreadContext)
195 (Wow64GetThreadSelectorEntry): Move from windows-nat.c.
196 (AdjustTokenPrivileges_ftype)
197 (DebugActiveProcessStop_ftype, DebugBreakProcess_ftype)
198 (DebugSetProcessKillOnExit_ftype, EnumProcessModules_ftype)
199 (EnumProcessModulesEx_ftype, GetModuleInformation_ftype)
200 (GetModuleFileNameExA_ftype, GetModuleFileNameExW_ftype)
201 (LookupPrivilegeValueA_ftype, OpenProcessToken_ftype)
202 (GetConsoleFontSize_ftype)
203 (GetCurrentConsoleFont_ftype, Wow64SuspendThread_ftype)
204 (Wow64GetThreadContext_ftype, Wow64SetThreadContext_ftype)
205 (Wow64GetThreadSelectorEntry_ftype): Likewise.
206 (initialize_loadable): Declare.
207 * nat/windows-nat.c (AdjustTokenPrivileges)
208 (DebugActiveProcessStop, DebugBreakProcess)
209 (DebugSetProcessKillOnExit, EnumProcessModules)
210 (EnumProcessModulesEx, GetModuleInformation, GetModuleFileNameExA)
211 (GetModuleFileNameExW, LookupPrivilegeValueA, OpenProcessToken)
212 (GetCurrentConsoleFont, GetConsoleFontSize, Wow64SuspendThread)
213 (Wow64GetThreadContext, Wow64SetThreadContext)
214 (Wow64GetThreadSelectorEntry): Define.
215 (bad, bad_GetCurrentConsoleFont, bad_GetConsoleFontSize): Move
217 (initialize_loadable): Likewise, and rename.
219 2021-04-30 Tom Tromey <tromey@adacore.com>
221 * windows-nat.c (bad_GetModuleFileNameEx): Remove define.
222 (bad_DebugActiveProcessStop, bad_DebugBreakProcess)
223 (bad_DebugSetProcessKillOnExit, bad_EnumProcessModules)
224 (bad_GetModuleFileNameExW, bad_GetModuleFileNameExA)
225 (bad_GetModuleInformation, bad_OpenProcessToken): Remove.
226 (bad): New template functions.
227 (_initialize_loadable): Update.
229 2021-04-30 Tom Tromey <tromey@adacore.com>
231 * ada-lang.c (ada_index_type): Use ada_check_typedef.
233 2021-04-29 Simon Marchi <simon.marchi@efficios.com>
235 * auto-load.h: Split namespace declaration.
237 2021-04-29 Simon Marchi <simon.marchi@polymtl.ca>
239 * infrun.c (save_waitstatus): Move variables to inner scope.
241 2021-04-29 Andrew Burgess <andrew.burgess@embecosm.com>
243 * NEWS: Fix typo and stray full stop.
245 2021-04-28 Tom Tromey <tromey@adacore.com>
247 * ada-exp.y (primary): Use new type for null pointer.
248 * ada-lang.c (ada_type_match): Remove "may_deref"
249 parameter. Handle null pointer.
250 (ada_args_match): Update.
251 * ada-valprint.c (ada_value_print_ptr, ada_value_print):
254 2021-04-28 Andrew Burgess <andrew.burgess@embecosm.com>
256 * NEWS: Mention new commands.
257 * python/python.c (python_ignore_environment): New static global.
258 (show_python_ignore_environment): New function.
259 (set_python_ignore_environment): New function.
260 (python_dont_write_bytecode): New static global.
261 (show_python_dont_write_bytecode): New function.
262 (set_python_dont_write_bytecode): New function.
263 (_initialize_python): Register new commands.
265 2021-04-28 Andrew Burgess <andrew.burgess@embecosm.com>
267 * extension-priv.h (struct extension_language_ops): Rename
268 'finish_initialization' to 'initialize'.
269 * extension.c (finish_ext_lang_initialization): Renamed to...
270 (ext_lang_initialization): ...this, update comment, and updated
271 the calls to reflect the change in struct extension_language_ops.
272 * extension.h (finish_ext_lang_initialization): Renamed to...
273 (ext_lang_initialization): ...this.
274 * guile/guile.c (gdbscm_finish_initialization): Renamed to...
275 (gdbscm_initialize): ...this, update comment at definition.
276 (guile_extension_ops): Update.
277 * main.c (captured_main_1): Update call to
278 finish_ext_lang_initialization.
279 * python/python.c (gdbpy_finish_initialization): Rename to...
280 (gdbpy_initialize): ...this, update comment at definition, and
281 update call to do_finish_initialization.
282 (python_extension_ops): Update.
283 (do_finish_initialization): Rename to...
284 (do_initialize): ...this, and update comment.
286 2021-04-28 Andrew Burgess <andrew.burgess@embecosm.com>
288 * main.c (captured_main_1): Add a call to
289 finish_ext_lang_initialization.
290 * top.c (gdb_init): Remove call to finish_ext_lang_initialization.
292 2021-04-28 Andrew Burgess <andrew.burgess@embecosm.com>
294 * guile/guile.c (gdbscm_set_backtrace): Add declaration.
295 (gdbscm_finish_initialization): Add code moved from
297 (_initialize_guile): Move code to gdbscm_finish_initialization.
298 * guile/scm-arch.c (gdbscm_initialize_arches): Move some code into
299 _initialize_scm_arch.
300 (_initialize_scm_arch): New function.
301 * guile/scm-block.c (gdbscm_initialize_blocks): Move some code
302 into _initialize_scm_block.
303 (_initialize_scm_block): New function.
304 * guile/scm-frame.c (gdbscm_initialize_frames): Move some code
305 into _initialize_scm_frame.
306 (_initialize_scm_frame): New function.
307 * guile/scm-objfile.c (gdbscm_initialize_objfiles): Move some code
308 into _initialize_scm_objfile.
309 (_initialize_scm_objfile): New function.
310 * guile/scm-progspace.c (gdbscm_initialize_pspaces): Move some
311 code into _initialize_scm_progspace.
312 (_initialize_scm_progspace): New function.
313 * guile/scm-symbol.c (gdbscm_initialize_symbols): Move some code
314 into _initialize_scm_symbol.
315 (_initialize_scm_symbol): New function.
316 * guile/scm-symtab.c (gdbscm_initialize_symtabs): Move some code
317 into _initialize_scm_symtab.
318 (_initialize_scm_symtab): New function.
319 * guile/scm-type.c (gdbscm_initialize_types): Move some code into
320 _initialize_scm_type.
321 (_initialize_scm_type): New function.
323 2021-04-28 Andrew Burgess <andrew.burgess@embecosm.com>
325 * python/py-arch.c (_initialize_py_arch): New function.
326 (gdbpy_initialize_arch): Move code to _initialize_py_arch.
327 * python/py-block.c (_initialize_py_block): New function.
328 (gdbpy_initialize_blocks): Move code to _initialize_py_block.
329 * python/py-inferior.c (_initialize_py_inferior): New function.
330 (gdbpy_initialize_inferior): Move code to _initialize_py_inferior.
331 * python/py-objfile.c (_initialize_py_objfile): New function.
332 (gdbpy_initialize_objfile): Move code to _initialize_py_objfile.
333 * python/py-progspace.c (_initialize_py_progspace): New function.
334 (gdbpy_initialize_pspace): Move code to _initialize_py_progspace.
335 * python/py-registers.c (_initialize_py_registers): New function.
336 (gdbpy_initialize_registers): Move code to
337 _initialize_py_registers.
338 * python/py-symbol.c (_initialize_py_symbol): New function.
339 (gdbpy_initialize_symbols): Move code to _initialize_py_symbol.
340 * python/py-symtab.c (_initialize_py_symtab): New function.
341 (gdbpy_initialize_symtabs): Move code to _initialize_py_symtab.
342 * python/py-type.c (_initialize_py_type): New function.
343 (gdbpy_initialize_types): Move code to _initialize_py_type.
344 * python/py-unwind.c (_initialize_py_unwind): New function.
345 (gdbpy_initialize_unwind): Move code to _initialize_py_unwind.
346 * python/python.c (_initialize_python): Move call to
347 do_start_initialization to gdbpy_finish_initialization.
348 (gdbpy_finish_initialization): Add call to
349 do_start_initialization.
351 2021-04-28 Andrew Burgess <andrew.burgess@embecosm.com>
353 * extension.c (struct scoped_default_signal): New struct.
354 (scoped_default_sigint): New typedef.
355 (finish_ext_lang_initialization): Make use of
356 scoped_default_sigint.
358 2021-04-28 Andrew Burgess <andrew.burgess@embecosm.com>
360 * main.c (captured_main_1): Don't pass argument to gdb_init.
361 * top.c (gdb_init): Remove unused argument, and add header
363 * top.h (gdb_init): Remove argument.
365 2021-04-27 Luis Machado <luis.machado@linaro.org>
367 * psymtab.c (psymbol_functions::dump): Output newline.
369 * symmisc.c (dump_objfile): Likewise.
371 2021-04-27 Michael Weghorn <m.weghorn@posteo.de>
372 Simon Marchi <simon.marchi@polymtl.ca>
374 * gdb/auto-load.c (_initialize_auto_load): 'Specify token
375 when attaching the 'auto_load_new_objfile' observer, so
376 other observers can specify it as a dependency.
377 * gdb/auto-load.h (struct token): Declare
378 'auto_load_new_objfile_observer_token' as token to be used
379 for the 'auto_load_new_objfile' observer.
380 * gdb/python/py-inferior.c (gdbpy_initialize_inferior): Make
381 'python_new_objfile' observer depend on 'auto_load_new_objfile'
382 observer, so it gets notified after the latter.
384 2021-04-27 Michael Weghorn <m.weghorn@posteo.de>
385 Simon Marchi <simon.marchi@polymtl.ca>
387 * unittests/observable-selftests.c (dependency_test_counters):
389 (observer_token0, observer_token1, observer_token2,
390 observer_token3, observer_token4, observer_token5): New.
391 (struct dependency_observer_data): New struct.
392 (observer_dependency_test_callback): New function.
393 (test_observers): New.
394 (run_dependency_test): New function.
395 (test_dependency): New.
396 (_initialize_observer_selftest): Register dependency test.
398 2021-04-26 Simon Marchi <simon.marchi@polymtl.ca>
401 * cli/cli-dump.c (dump_binary_file): Check result of
404 2021-04-25 Sergei Trofimovich <siarheit@google.com>
406 * sparc-linux-nat.c (sparc_linux_nat_target): fix sparc build
407 by passing `process_stratum_target*` parameter.
409 2021-04-25 Lancelot Six <lsix@lancelotsix.com>
412 * typeprint.h (struct type_print_options): Add print_in_hex
414 (struct print_offset_data): Add print_in_hex flag, add a
415 constructor accepting a type_print_options* argument.
416 * typeprint.c (type_print_raw_options, default_ptype_flags): Set
417 default value for print_in_hex.
418 (print_offset_data::indentation): Allow more horizontal space.
419 (print_offset_data::print_offset_data): Add ctor.
420 (print_offset_data::maybe_print_hole, print_offset_data::update):
421 Handle the print_in_hex flag.
422 (whatis_exp): Handle 'x' and 'd' flags.
423 (print_offsets_and_sizes_in_hex): Declare.
424 (set_print_offsets_and_sizes_in_hex): Create.
425 (show_print_offsets_and_sizes_in_hex): Create.
426 (_initialize_typeprint): Update help message for the ptype
427 command, register the 'set print type hex' and 'show print type
429 * c-typeprint.c (c_print_type, c_type_print_base_struct_union)
430 (c_type_print_base): Construct the print_offset_data
431 object using the type_print_optons parameter.
432 * rust-lang.c (rust_language::print_type): Construct the
433 print_offset_data object using the type_print_optons parameter.
434 * NEWS: Mention the new flags of the ptype command.
436 2021-04-25 Lancelot Six <lsix@lancelotsix.com>
438 * typeprint.h (struct type_print_options): Move before
441 2021-04-25 Joel Brobecker <brobecker@adacore.com>
445 2021-04-23 Simon Marchi <simon.marchi@polymtl.ca>
447 * observable.c (observer_debug): Change to bool.
449 2021-04-23 Andrew Burgess <andrew.burgess@embecosm.com>
451 * dwarf2/read.c: Add 'unordered_set' include.
452 (dwarf2_base_index_functions::map_symbol_filenames): Replace
453 'visited' hash table with 'qfn_cache' unordered_set. Remove use
454 of per_Bfd->filenames_cache cache, and use function local
455 filenames_cache instead. Reindent.
456 * dwarf2/read.h (struct dwarf2_per_bfd) <filenames_cache>: Delete.
458 2021-04-22 Simon Marchi <simon.marchi@polymtl.ca>
460 * breakpoint.c (iterate_over_bp_locations): Change callback to
461 function view, remove data parameter.
462 * breakpoint.h (iterate_over_bp_locations): Likewise.
463 * record-full.c (record_full_sync_record_breakpoints): Remove
466 2021-04-22 Tom Tromey <tom@tromey.com>
468 * c-typeprint.c (c_type_print_base_struct_union): Use
469 print_spaces_filtered_with_print_options.
471 2021-04-22 Simon Marchi <simon.marchi@polymtl.ca>
474 * python/py-type.c (typy_range): Check that bounds are constant
475 before accessing them as such.
476 * guile/scm-type.c (gdbscm_type_range): Likewise.
478 2021-04-22 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
480 * Makefile.in (COMMON_SFILES): Remove continuations.c.
481 * inferior.c (inferior::add_continuation): New method, adapted
482 from 'add_inferior_continuation'.
483 (inferior::do_all_continuations): New method, adapted from
484 'do_all_inferior_continuations'.
485 (inferior::~inferior): Clear the list of continuations directly.
486 * inferior.h (class inferior) <continuations>: Rename into...
487 <m_continuations>: ...this and make private.
488 * continuations.c: Remove.
489 * continuations.h: Remove.
490 * event-top.c: Don't include "continuations.h".
492 Update the users below.
493 * inf-loop.c (inferior_event_handler)
494 * infcmd.c (attach_command)
495 (notice_new_inferior): Update.
497 2021-04-22 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
499 * inferior.h (class inferior) <continuations>: Change the type
500 to be an std::list of std::function's.
501 Update the references and uses below.
502 * continuations.c (struct continuation): Delete.
503 (make_continuation): Delete.
504 (do_my_continuations_1): Delete.
505 (do_my_continuations): Delete.
506 (discard_my_continuations_1): Delete.
507 (discard_my_continuations): Delete.
508 (add_inferior_continuation): Update.
509 (do_all_inferior_continuations): Update.
510 (discard_all_inferior_continuations): Update.
511 * continuations.h (add_inferior_continuation): Update to take
512 an std::function as the parameter.
513 * infcmd.c (struct attach_command_continuation_args): Delete.
514 (attach_command_continuation): Delete.
515 (attach_command_continuation_free_args): Delete.
516 (attach_command): Update.
517 (notice_new_inferior): Update.
519 2021-04-22 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
521 * continuations.h: Update the general comment.
522 * inferior.h (class inferior) <continuations>: Update the comment.
523 * interps.c: Do not include "continuations.h".
525 2021-04-22 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
527 * continuations.h (do_all_inferior_continuations): Remove the 'err'
528 parameter. Update the references below.
529 * continuations.c (do_my_continuations_1)
530 (do_my_continuations)
531 (do_all_inferior_continuations): Update.
532 * inf-loop.c (inferior_event_handler): Update.
533 * infcmd.c (attach_command_continuation): Update.
535 2021-04-22 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
537 * infcmd.c (attach_post_wait): Update the function comment.
539 2021-04-22 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
541 * infcmd.c (attach_post_wait): Remove the unused parameter 'args'.
542 Update the references below.
543 (struct attach_command_continuation_args)
544 (attach_command_continuation)
545 (attach_command_continuation_free_args)
547 (notice_new_inferior): Update to remove the reference to 'args'.
549 2021-04-22 Simon Marchi <simon.marchi@polymtl.ca>
550 Tom de Vries <tdevries@suse.de>
553 * remote.c (remote_target_is_non_stop_p): New function.
554 * remote.h (remote_target_is_non_stop_p): Declare.
555 * remote-notif.c (remote_async_get_pending_events_handler): Fix assert
556 to check non-stopness using notif_state->remote rather current target.
558 2021-04-22 Tom Tromey <tom@tromey.com>
560 * rust-parse.c (rust_parser::parse_sizeof): Remove KW_MUT code.
561 (struct typed_val_int) <val>: Now ULONGEST.
562 (rust_parser::parse_array_type): Remove negative check.
563 (rust_lex_int_test): Change 'value' to ULONGEST.
565 2021-04-22 Andrew Burgess <andrew.burgess@embecosm.com>
567 * arch-utils.c (default_addressable_memory_unit_size): Return a
568 value based on bfd's bits per byte.
570 2021-04-21 Tom Tromey <tom@tromey.com>
572 * dwarf2/read.h (struct dwarf2_per_cu_data) <dwarf_version>: Now
574 (struct dwarf2_per_cu_data): Rearrange.
575 * dwarf2/comp-unit.h (struct comp_unit_head) <version>: Now
577 (struct comp_unit_head): Rearrange.
578 * dwarf2/comp-unit.c (read_comp_unit_head): Update.
580 2021-04-21 Tom de Vries <tdevries@suse.de>
583 * configure.ac: Remove --without-included-regex/--with-included-regex.
584 * config.in: Regenerate.
585 * configure: Regenerate.
586 * gdb_regex.h: Assume USE_INCLUDED_REGEX is defined.
588 2021-04-21 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
590 * breakpoint.h (create_breakpoint): Add a new parameter,
592 * breakpoint.c (create_breakpoint): Use the 'force_condition'
593 argument when 'parse_extra' is false to check if the condition
594 is invalid at all of the breakpoint locations.
595 Update the users below.
601 (create_tracepoint_from_upload): Update.
602 * guile/scm-breakpoint.c (gdbscm_register_breakpoint_x): Update.
603 * mi/mi-cmd-break.c (mi_cmd_break_insert_1): Update.
604 * python/py-breakpoint.c (bppy_init): Update.
605 * python/py-finishbreakpoint.c (bpfinishpy_init): Update.
607 2021-04-21 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
609 * breakpoint.c (print_one_breakpoint_location): Display "N" for
610 disabled-by-condition locations on MI-like output.
611 (breakpoint_1): Do not display the disabled-by-condition footnote
612 if the output is MI-like.
614 2021-04-21 Frederic Cambus <fred@statdns.com>
616 * syscalls/update-netbsd.sh: Fix script name display in usage, and
617 update year range in generated copyright notices.
619 2021-04-20 Felix Willgerodt <felix.willgerodt@intel.com>
621 * c-exp.y (qualifier_seq_noopt): Replace qualifier_seq with
624 2021-04-20 Felix Willgerodt <felix.willgerodt@intel.com>
626 * c-exp.y (single_qualifier): Handle UNKNOWN_CPP_NAME.
628 2021-04-19 Andrew Burgess <andrew.burgess@embecosm.com>
630 * producer.c: Replace 'regex' include with 'gdb_regex.h'.
631 (producer_is_icc): Replace use of std::regex with gdb's
634 2021-04-17 Tom Tromey <tom@tromey.com>
637 * dwarf2/read.c (class offset_view): New.
638 (struct symbol_table_slot): Remove.
639 (struct mapped_index) <symbol_table, constant_pool>: Change type.
640 <symbol_name_index, symbol_vec_index>: New methods.
641 <symbol_name_slot_invalid, symbol_name_at, symbol_name_count>:
643 (read_gdb_index_from_buffer): Update.
644 (struct dw2_symtab_iterator) <vec>: Change type.
645 (dw2_symtab_iter_init_common, dw2_symtab_iter_init)
646 (dw2_symtab_iter_next, dw2_expand_marked_cus): Update.
647 * dwarf2/index-write.c (class data_buf) <append_data>: Remove.
648 <append_array, append_offset>: New methods.
649 (write_hash_table, add_address_entry, write_gdbindex_1)
650 (write_debug_names): Update.
651 * dwarf2/index-common.h (byte_swap, MAYBE_SWAP): Remove.
653 2021-04-17 Tom Tromey <tom@tromey.com>
655 * dwarf2/index-write.c (write_psymtabs_to_index): Check
658 2021-04-17 Tom Tromey <tom@tromey.com>
660 * psymtab.c (psymbol_functions::expand_matching_symbols): Rename
661 from map_matching_symbols. Change parameters.
662 * psympriv.h (struct psymbol_functions) <expand_matching_symbols>:
663 Rename from map_matching_symbols. Change parameters.
664 * dwarf2/read.c (struct dwarf2_gdb_index)
665 <expand_matching_symbols>: Rename from map_matching_symbols.
667 (struct dwarf2_debug_names_index) <expand_matching_symbols>:
668 Rename from map_matching_symbols. Change parameters.
669 (dwarf2_gdb_index::expand_matching_symbols): Rename from
670 dw2_map_matching_symbols. Change parameters.
671 (dwarf2_gdb_index::expand_matching_symbols): Remove old
673 (dwarf2_debug_names_index::expand_matching_symbols): Rename from
674 map_matching_symbols. Change parameters.
675 * objfiles.h (struct objfile) <expand_matching_symbols>: Rename
676 from map_matching_symbols. Change parameters.
677 * symfile-debug.c (objfile::expand_matching_symbols): Rename from
678 map_matching_symbols. Change parameters.
679 * ada-lang.c (map_matching_symbols): New function.
680 (add_nonlocal_symbols): Update.
682 2021-04-17 Tom Tromey <tom@tromey.com>
684 * quick-symbol.h (struct quick_symbol_functions)
685 <expand_symtabs_with_fullname>: Remove.
686 * psymtab.c (psymbol_functions::expand_symtabs_with_fullname):
688 * psympriv.h (struct psymbol_functions)
689 <expand_symtabs_with_fullname>: Remove.
690 * dwarf2/read.c (struct dwarf2_base_index_functions)
691 <expand_symtabs_with_fullname>: Remove.
692 (dwarf2_base_index_functions::expand_symtabs_with_fullname):
694 * objfiles.h (struct objfile) <expand_symtabs_with_fullname>:
696 * symfile-debug.c (objfile::expand_symtabs_with_fullname):
699 2021-04-17 Tom Tromey <tom@tromey.com>
701 * symfile-debug.c (objfile::expand_symtabs_for_function):
703 * quick-symbol.h (struct quick_symbol_functions)
704 <expand_symtabs_for_function>: Remove.
705 * psymtab.c (psymbol_functions::expand_symtabs_for_function):
707 * psympriv.h (struct psymbol_functions)
708 <expand_symtabs_for_function>: Remove.
709 * objfiles.h (struct objfile) <expand_symtabs_for_function>:
711 * dwarf2/read.c (struct dwarf2_gdb_index)
712 <expand_symtabs_for_function>: Remove.
713 (struct dwarf2_debug_names_index) <expand_symtabs_for_function>:
715 (find_slot_in_mapped_hash): Remove.
716 (dw2_symtab_iter_init_common): Merge with dw2_symtab_iter_init.
717 (dw2_symtab_iter_init): Remove one overload.
718 (dwarf2_gdb_index::expand_symtabs_for_function)
719 (dwarf2_debug_names_index::expand_symtabs_for_function): Remove.
721 2021-04-17 Tom Tromey <tom@tromey.com>
723 * symfile-debug.c (objfile::map_symtabs_matching_filename):
725 * quick-symbol.h (struct quick_symbol_functions)
726 <map_symtabs_matching_filename>: Remove.
727 * psymtab.c (partial_map_expand_apply)
728 (psymbol_functions::map_symtabs_matching_filename): Remove.
729 * psympriv.h (struct psymbol_functions)
730 <map_symtabs_matching_filename>: Remove.
731 * objfiles.h (struct objfile) <map_symtabs_matching_filename>:
733 * dwarf2/read.c (struct dwarf2_base_index_functions)
734 <map_symtabs_matching_filename>: Remove.
735 (dw2_map_expand_apply)
736 (dwarf2_base_index_functions::map_symtabs_matching_filename):
739 2021-04-17 Tom Tromey <tom@tromey.com>
741 * symfile-debug.c (objfile::lookup_symbol): Rewrite.
742 * quick-symbol.h (struct quick_symbol_functions) <lookup_symbol>:
744 * psymtab.c (psymbol_functions::lookup_symbol): Remove.
745 * psympriv.h (struct psymbol_functions) <lookup_symbol>: Remove.
746 * objfiles.h (struct objfile) <lookup_symbol>: Add comment.
747 * dwarf2/read.c (struct dwarf2_gdb_index) <lookup_symbol>:
749 (struct dwarf2_debug_names_index) <lookup_symbol>: Remove.
750 (dwarf2_gdb_index::lookup_symbol)
751 (dwarf2_debug_names_index::lookup_symbol): Remove.
753 2021-04-17 Tom Tromey <tom@tromey.com>
755 * symtab.c (global_symbol_searcher::expand_symtabs): Update.
756 * symmisc.c (maintenance_expand_symtabs): Update.
757 * symfile.c (expand_symtabs_matching): Update.
758 * symfile-debug.c (objfile::expand_symtabs_matching): Add 'domain'
760 * quick-symbol.h (struct quick_symbol_functions)
761 <expand_symtabs_matching>: Add 'domain' parameter.
762 * psymtab.c (recursively_search_psymtabs)
763 (psymbol_functions::expand_symtabs_matching): Add 'domain'
765 * psympriv.h (struct psymbol_functions) <expand_symtabs_matching>:
766 Add 'domain' parameter.
767 * objfiles.h (struct objfile) <expand_symtabs_matching>: Add
769 * linespec.c (iterate_over_all_matching_symtabs): Update.
770 * dwarf2/read.c (struct dwarf2_gdb_index)
771 <expand_symtabs_matching>: Add 'domain' parameter.
772 (struct dwarf2_debug_names_index) <expand_symtabs_matching>: Add
774 (dw2_expand_symtabs_matching)
775 (dwarf2_gdb_index::expand_symtabs_matching)
776 (dw2_debug_names_iterator)
777 (dwarf2_debug_names_index::expand_symtabs_matching): Add 'domain'
780 2021-04-17 Tom Tromey <tom@tromey.com>
782 * symtab.c (global_symbol_searcher::expand_symtabs)
783 (default_collect_symbol_completion_matches_break_on): Update.
784 * symmisc.c (maintenance_expand_symtabs): Update.
785 * symfile.h (expand_symtabs_matching): Add search_flags
787 * symfile.c (expand_symtabs_matching): Add search_flags
789 * symfile-debug.c (objfile::expand_symtabs_matching): Add
790 search_flags parameter.
791 * quick-symbol.h (struct quick_symbol_functions)
792 <expand_symtabs_matching>: Add search_flags parameter.
793 * python/py-symbol.c (gdbpy_lookup_static_symbols): Update.
794 * psymtab.c (recursively_search_psymtabs)
795 (psymbol_functions::expand_symtabs_matching): Add search_flags
797 * psympriv.h (struct psymbol_functions) <expand_symtabs_matching>:
798 Add search_flags parameter.
799 * objfiles.h (struct objfile) <expand_symtabs_matching>: Add
800 search_flags parameter.
801 * linespec.c (iterate_over_all_matching_symtabs): Update.
802 * dwarf2/read.c (struct dwarf2_gdb_index)
803 <expand_symtabs_matching>: Add search_flags parameter.
804 (struct dwarf2_debug_names_index) <expand_symtabs_matching>: Add
805 search_flags parameter.
806 (dw2_map_matching_symbols): Update.
807 (dw2_expand_marked_cus, dw2_expand_symtabs_matching)
808 (dwarf2_gdb_index::expand_symtabs_matching): Add search_flags
810 (dw2_debug_names_iterator): Change block_index to search flags.
811 <m_block_index>: Likewise.
812 (dw2_debug_names_iterator::next)
813 (dwarf2_debug_names_index::lookup_symbol)
814 (dwarf2_debug_names_index::expand_symtabs_for_function)
815 (dwarf2_debug_names_index::map_matching_symbols)
816 (dwarf2_debug_names_index::map_matching_symbols): Update.
817 (dwarf2_debug_names_index::expand_symtabs_matching): Add
818 search_flags parameter.
819 * ada-lang.c (ada_add_global_exceptions)
820 (collect_symbol_completion_matches): Update.
822 2021-04-17 Tom Tromey <tom@tromey.com>
824 * symtab.c (default_collect_symbol_completion_matches_break_on):
826 * symfile.h (expand_symtabs_matching): Return bool.
827 * symfile.c (expand_symtabs_matching): Return bool.
828 * symfile-debug.c (objfile::expand_symtabs_matching): Return
830 * quick-symbol.h (expand_symtabs_exp_notify_ftype): Return bool.
831 (struct quick_symbol_functions) <expand_symtabs_matching>: Return
833 * psymtab.c (psymbol_functions::expand_symtabs_matching): Return
835 * psympriv.h (struct psymbol_functions)
836 <expand_symtabs_matching>: Return bool.
837 * objfiles.h (struct objfile) <expand_symtabs_matching>: Return
839 * dwarf2/read.c (struct dwarf2_gdb_index)
840 <expand_symtabs_matching>: Return bool.
841 (struct dwarf2_debug_names_index) <expand_symtabs_matching>:
843 (dw2_expand_symtabs_matching_symbol): Return bool.
844 (dw2_expand_symtabs_matching_one, dw2_expand_marked_cus)
845 (dw2_expand_symtabs_matching)
846 (dwarf2_gdb_index::expand_symtabs_matching)
847 (dwarf2_debug_names_index::expand_symtabs_matching)
848 (dwarf2_debug_names_index::expand_symtabs_matching): Return bool.
850 2021-04-17 Tom Tromey <tom@tromey.com>
852 * quick-symbol.h (enum block_search_flag_values): New.
853 (block_search_flags): New enum flags type.
855 2021-04-16 Tom Tromey <tom@tromey.com>
857 * rust-parse.c: New file.
858 * rust-exp.y: Remove.
859 * Makefile.in (COMMON_SFILES): Add rust-parse.c.
860 (SFILES): Remove rust-exp.y.
861 (YYFILES, local-maintainer-clean): Remove rust-exp.c.
863 2021-04-16 Luis Machado <luis.machado@linaro.org>
865 * arch-utils.c (default_floatformat_for_type): Handle bfloat16.
867 2021-04-15 John Baldwin <jhb@FreeBSD.org>
869 * fbsd-nat.c (fbsd_lwp_debug_printf, fbsd_nat_debug_printf): New,
872 2021-04-15 Tom Tromey <tromey@adacore.com>
874 * ada-valprint.c (ada_value_print_array): Handle optimized-out
877 2021-04-15 Tom Tromey <tromey@adacore.com>
879 * printcmd.c (print_variable_and_value): Use
880 common_val_print_checked.
882 2021-04-15 Tom Tromey <tromey@adacore.com>
884 * rust-exp.y (rust_parser::convert_ast_to_expression): Update.
885 * parse.c (parser_state::push_symbol, parser_state::push_dollar):
887 * p-exp.y (variable): Update.
888 * m2-exp.y (variable): Update.
889 * go-exp.y (variable): Update.
890 * expprint.c (dump_for_expression): New overload.
891 * expop.h (check_objfile): New overload.
892 (check_constant): New overload.
893 (class var_value_operation): Use block_symbol.
894 <get_symbol>: Rewrite.
895 * eval.c (var_value_operation::evaluate)
896 (var_value_operation::evaluate_funcall)
897 (var_value_operation::evaluate_for_address)
898 (var_value_operation::evaluate_for_address)
899 (var_value_operation::evaluate_with_coercion)
900 (var_value_operation::evaluate_for_sizeof)
901 (var_value_operation::evaluate_for_cast): Update.
902 * d-exp.y (PrimaryExpression): Update.
903 * c-exp.y (variable): Update.
904 * ax-gdb.c (var_value_operation::do_generate_ax): Update.
905 * ada-lang.c (ada_var_value_operation::evaluate_for_cast)
906 (ada_var_value_operation::evaluate)
907 (ada_var_value_operation::resolve)
908 (ada_funcall_operation::resolve): Update.
909 * ada-exp.y (write_var_from_sym, write_object_renaming)
910 (write_ambiguous_var, write_var_or_type, write_name_assoc)
911 (maybe_overload): Update.
912 * ada-exp.h (class ada_var_value_operation) <get_block>: Rewrite.
914 2021-04-15 Tom Tromey <tom@tromey.com>
915 Andrew Burgess <andrew.burgess@embecosm.com>
918 * main.c (captured_main_1): Call check_quiet_mode.
919 * top.c (startup_quiet): New global.
920 (check_quiet_mode): New function.
921 (show_startup_quiet): New function.
922 (init_main): Register new command.
923 * top.h (check_quiet_mode): Declare.
925 2021-04-15 Andrew Burgess <andrew.burgess@embecosm.com>
928 * NEWS: Mention new early init files and command line options.
929 * config.in: Regenerate.
930 * configure: Regenerate.
931 * configure.ac: Define GDBEARLYINIT.
932 * main.c (get_earlyinit_files): New function.
933 (enum cmdarg_kind): Add CMDARG_EARLYINIT_FILE and
934 CMDARG_EARLYINIT_COMMAND.
935 (captured_main_1): Add support for new command line flags, and for
936 processing startup files.
937 (print_gdb_help): Include startup files in the output.
939 2021-04-15 Andrew Burgess <andrew.burgess@embecosm.com>
941 * main.c (relocate_gdbinit_path_maybe_in_datadir): Rename to...
942 (relocate_file_path_maybe_in_datadir): ...this.
943 (class gdb_initfile_finder): New class.
944 (get_init_files): Now uses gdb_initfile_finder.
945 (print_gdb_help): Print 'None found' when there are no init files.
947 2021-04-14 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
949 * dwarf2/read.c (inherit_abstract_dies): Keep a reference to the
950 corresponding child of the abstract DIE when iterating the
951 children of the concrete DIE.
953 2021-04-13 Tom de Vries <tdevries@suse.de>
955 * ui-style.c (read_semi_number, extended_color): Change idx parameter
958 2021-04-13 Luis Machado <luis.machado@linaro.org>
960 * rs6000-tdep.c (ppc_displaced_step_fixup): Use %s to print
963 2021-04-12 Will Schmidt <will_schmidt@vnet.ibm.com>
965 * rs6000-tdep.c: Add support for single-stepping of
966 prefixed instructions.
968 2021-04-12 Will Schmidt <will_schmidt@vnet.ibm.com>
971 * gdb/rs6000-tdep.c (ppc_displaced_step_fixup): Update to
972 handle the addpcis/lnia instruction.
974 2021-04-05 Will Schmidt <will_schmidt@vnet.ibm.com>
976 * MAINTAINERS (Write After Approval): Add myself.
978 2021-4-12 Carl Love <cel@us.ibm.com>
980 * rs6000-tdep.c (rs6000_builtin_type_vec128): Add t_float128 variable.
981 (rs6000_builtin_type_vec128): Add append_composite_type_field for
984 2021-04-12 Simon Marchi <simon.marchi@polymtl.ca>
986 * nat/windows-nat.c: Remove all code guarded by _WIN32_WCE.
987 * nat/windows-nat.h: Likewise.
989 2021-04-10 Eli Zaretskii <eliz@gnu.org>
991 * windows-nat.c (windows_nat::handle_load_dll): Call
992 windows_add_dll if get_image_name failed to glean the name of the
993 DLL by using the lpImageName pointer.
994 (windows_add_all_dlls): Now a thin wrapper around windows_add_dll.
995 (windows_add_dll): Now does what windows_add_all_dlls did before,
996 but also accepts an argument LOAD_ADDR, which, if non-NULL,
997 specifies the address where the DLL was loaded into the inferior,
998 and looks for the single DLL loaded at that address.
1000 2021-04-09 Luis Machado <luis.machado@linaro.org>
1002 * nat/aarch64-mte-linux-ptrace.c: Update include file order.
1004 2021-04-08 Dominique Quatravaux <dominique.quatravaux@epfl.ch>
1006 * darwin-nat.c (darwin_nat_target::resume): Remove status
1009 2021-04-08 Felix Willgerodt <felix.willgerodt@intel.com>
1011 * i386-tdep.c (i386_skip_prologue): Use symbol table to find the
1012 prologue end for Intel compilers.
1013 * amd64-tdep.c (amd64_skip_prologue): Likewise.
1014 * producer.c (producer_is_icc_ge_19): New function.
1015 * producer.h (producer_is_icc_ge_19): New declaration.
1017 2021-04-08 Felix Willgerodt <felix.willgerodt@intel.com>
1019 * producer.c: (producer_is_icc): Update for new version scheme.
1020 (producer_parsing_tests): Update names and expected results.
1021 * producer.h: (producer_is_icc): Update comment accordingly.
1023 2021-04-07 Simon Marchi <simon.marchi@polymtl.ca>
1025 * target.h (struct target_ops) <follow_fork>: Return void.
1026 (target_follow_fork): Likewise.
1027 * target.c (default_follow_fork): Likewise.
1028 (target_follow_fork): Likewise.
1029 * infrun.c (follow_fork_inferior): Adjust.
1030 * fbsd-nat.h (class fbsd_nat_target) <follow_fork>: Return void.
1031 * fbsd-nat.c (fbsd_nat_target:::follow_fork): Likewise.
1032 * linux-nat.h (class linux_nat_target) <follow_fork>: Likewise.
1033 * linux-nat.c (linux_nat_target::follow_fork): Return void.
1034 * obsd-nat.h (class obsd_nat_target) <follow_fork>: Return void.
1035 * obsd-nat.c (obsd_nat_target::follow_fork): Likewise.
1036 * remote.c (class remote_target) <follow_fork>: Likewise.
1037 (remote_target::follow_fork): Likewise.
1038 * target-delegates.c: Re-generate.
1040 2021-04-07 Weimin Pan <weimin.pan@oracle.com>
1042 * ctfread.c (fetch_tid_type): New function, use throughout file.
1043 (read_forward_type): New function.
1044 (read_type_record): Call read_forward_type.
1046 2021-04-07 Andrew Burgess <andrew.burgess@embecosm.com>
1048 * f-exp.h (class fortran_structop_operation): New class.
1049 * f-exp.y (exp): Create fortran_structop_operation instead of the
1050 generic structop_operation.
1051 * f-lang.c (fortran_undetermined::evaluate): Re-evaluate
1052 expression as EVAL_NORMAL if the result type was dynamic so we can
1053 extract the actual array bounds.
1054 (fortran_structop_operation::evaluate): New function.
1056 2021-04-07 Andrew Burgess <andrew.burgess@embecosm.com>
1058 * eval.c (evaluate_subexp_standard): Remove
1059 EVAL_AVOID_SIDE_EFFECTS handling from STRUCTOP_STRUCT and
1062 2021-04-07 Andrew Burgess <andrew.burgess@embecosm.com>
1064 * valops.c (value_cast): Call value_deeply_equal before performing
1067 2021-04-07 Andrew Burgess <andrew.burgess@embecosm.com>
1069 * gdbtypes.c (types_equal): Move pointer equality check earlier in
1072 2021-04-07 Caroline Tice <cmtice@google.com>
1074 * dwarf2/read.c (try_open_dwop_file): Add path for the binary to
1075 the search paths used resolve relative location of .dwo file.
1077 2021-04-07 Andrew Burgess <andrew.burgess@embecosm.com>
1079 * dwarf2/section.c (dwarf2_section_info::get_bfd_owner): Add an
1081 (dwarf2_section_info::get_file_name): Add an assert.
1082 (dwarf2_section_info::read_string): Display a minimal, sane error
1083 when the dwarf2_section_info is not associated with a bfd section.
1085 2021-04-07 Andrew Burgess <andrew.burgess@embecosm.com>
1087 * top.c (staged_gdb_datadir): Update comment.
1088 (set_gdb_datadir): Copy the value of gdb_datadir back into
1090 (init_main): Initialise staged_gdb_datadir.
1092 2021-04-06 Tom de Vries <tdevries@suse.de>
1094 PR breakpoints/25884
1095 * infcmd.c (prepare_one_step): Using inline frame info to narrow
1098 2021-04-06 Tom de Vries <tdevries@suse.de>
1101 * tui/tui-disasm.c (len_without_escapes): Pass ptr pointing at escape
1104 2021-04-04 Simon Marchi <simon.marchi@polymtl.ca>
1106 * avr-tdep.c (avr_frame_unwind_cache): Use
1107 trad_frame_saved_reg::is_addr.
1109 2021-04-02 Simon Marchi <simon.marchi@polymtl.ca>
1111 * objfiles.c (get_objfile_bfd_data): Remove objfile parameter,
1114 2021-04-02 Simon Marchi <simon.marchi@polymtl.ca>
1116 * psympriv.h (struct partial_symtab) <partial_symtab>: Change
1117 objfile parameter for objfile_per_bfd_storage, adjust callers.
1118 (struct standard_psymtab) <standard_psymtab>: Likewise.
1119 (struct legacy_psymtab) <legacy_psymtab>: Likewise.
1120 * psymtab.c (partial_symtab::partial_symtab): Likewise.
1121 * ctfread.c (struct ctf_psymtab): Likewise.
1122 * dwarf2/read.h (struct dwarf2_psymtab): Likewise.
1123 * dwarf2/read.c (struct dwarf2_include_psymtab): Likewise.
1124 (dwarf2_create_include_psymtab): Likewise.
1125 * objfiles.h (struct objfile_per_bfd_storage)
1126 <objfile_per_bfd_storage>: Add bfd parameter, adjust callers.
1127 <get_bfd>: New method.
1129 * objfiles.c (get_objfile_bfd_data): Adjust.
1131 2021-04-02 Simon Marchi <simon.marchi@polymtl.ca>
1133 * psymtab.c (partial_symtab::partial_symtab): Change
1134 last_objfile_name to be an std::string.
1135 * symfile.c (allocate_symtab): Likewise.
1137 2021-04-02 Simon Marchi <simon.marchi@polymtl.ca>
1139 * objfiles.h (struct objfile_per_bfd_storage) <intern>: New
1141 (struct objfile) <intern>: Use
1142 objfile::objfile_per_bfd_storage::intern.
1144 2021-04-01 Simon Marchi <simon.marchi@efficios.com>
1146 * gdbtypes.h (TYPE_FLAG_ENUM): Remove, replace all uses
1147 with type::is_flag_enum.
1149 2021-04-01 Simon Marchi <simon.marchi@efficios.com>
1151 * gdbtypes.h (struct type) <is_flag_enum,
1152 set_is_flag_enum>: New methods.
1153 (TYPE_FLAG_ENUM): Use type::is_flag_enum, change all
1154 write call sites to use type::set_is_flag_enum.
1156 2021-04-01 Simon Marchi <simon.marchi@efficios.com>
1158 * gdbtypes.h (TYPE_DECLARED_CLASS): Remove, replace all uses
1159 with type::is_declared_class.
1161 2021-04-01 Simon Marchi <simon.marchi@efficios.com>
1163 * gdbtypes.h (struct type) <is_declared_class,
1164 set_is_declared_class>: New methods.
1165 (TYPE_DECLARED_CLASS): Use type::is_declared_class, change all
1166 write call sites to use type::set_is_declared_class.
1168 2021-02-28 Boris Staletic <boris.staletic@gmail.com>
1170 * gdb/python/lib/gdb/__init__.py: Use importlib on python 3.4+
1171 to avoid deprecation warnings.
1173 2021-04-01 Martin Liska <mliska@suse.cz>
1175 * cp-name-parser.y: Use startswith instead of strncmp.
1176 * m2-exp.y: Likewise.
1177 * macroexp.c (substitute_args): Likewise.
1178 * mi/mi-main.c (command_notifies_uscc_observer): Likewise.
1179 * rust-exp.y: Likewise.
1181 2021-03-31 Tom Tromey <tom@tromey.com>
1183 * dwarf2/read.c (dwarf2_gdb_index::map_matching_symbols): Merge
1184 with dw2_map_matching_symbols.
1185 (dwarf2_gdb_index::expand_symtabs_matching): Merge with
1186 dw2_expand_symtabs_matching.
1188 2021-03-31 Tom Tromey <tromey@adacore.com>
1190 * dwarf2/stringify.h: Fix typo.
1192 2021-03-30 Simon Marchi <simon.marchi@polymtl.ca>
1195 * dwarf2/read.c (dwarf2_has_info): Don't share dwarf2_per_bfd
1196 with objfiles using READNOW.
1198 2021-03-29 Tom Tromey <tromey@adacore.com>
1200 * top.c (check_frame_language_change): Update.
1201 * language.c (language_info): Remove parameter.
1202 * language.h (language_info): Remove parameter.
1204 2021-03-29 Luis Machado <luis.machado@linaro.org>
1206 * compile/compile.c (get_args): Don't add empty argv entries.
1208 2021-03-29 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1211 * procfs.c (procfs_target::attach): Define inf.
1213 (procfs_target::create_inferior): Likewise.
1215 2021-03-28 Tom Tromey <tom@tromey.com>
1217 * elfread.c (can_lazily_read_symbols): Move to dwarf2/read.c.
1218 (elf_symfile_read): Simplify.
1219 * dwarf2/read.c (struct lazy_dwarf_reader): Move from elfread.c.
1220 (make_lazy_dwarf_reader): New function.
1221 (make_dwarf_gdb_index, make_dwarf_debug_names): Now static.
1222 (dwarf2_initialize_objfile): Return void. Remove index_kind
1223 parameter. Push on 'qf' list.
1224 * dwarf2/public.h (dwarf2_initialize_objfile): Change return
1225 type. Remove 'index_kind' parameter.
1226 (make_dwarf_gdb_index, make_dwarf_debug_names): Don't declare.
1228 2021-03-27 Tom Tromey <tom@tromey.com>
1230 * elfread.c (elf_sym_fns_lazy_psyms): Don't declare.
1232 2021-03-27 Tom Tromey <tom@tromey.com>
1234 * elfread.c (elf_symfile_read): Don't clear 'qf'.
1236 2021-03-26 Lancelot Six <lsix@lancelotsix.com>
1238 * contrib/gdb-add-index.sh: Avoid variable shadowing and get
1241 2021-03-26 Tom Tromey <tom@tromey.com>
1243 * symtab.c (struct output_source_filename_data): Add 'output'
1244 method and operator().
1245 (output_source_filename_data::output): Rename from
1246 output_source_filename.
1247 (output_partial_symbol_filename): Remove.
1248 (info_sources_command): Update.
1249 (struct add_partial_filename_data): Add operator().
1250 (add_partial_filename_data::operator()): Rename from
1251 maybe_add_partial_symtab_filename.
1252 (make_source_files_completion_list): Update.
1253 * symfile.c (quick_symbol_functions): Update.
1254 * symfile-debug.c (objfile::map_symbol_filenames): Update.
1255 * quick-symbol.h (symbol_filename_ftype): Change type of 'fun' and
1256 'need_fullname'. Remove 'data' parameter.
1257 (struct quick_symbol_functions) <map_symbol_filenames>: Likewise.
1258 * psymtab.c (psymbol_functions::map_symbol_filenames): Update.
1259 * psympriv.h (struct psymbol_functions) <map_symbol_filenames>:
1260 Change type of 'fun' and 'need_fullname'. Remove 'data'
1262 * objfiles.h (struct objfile) <map_symbol_filenames>: Change type
1263 of 'fun' and 'need_fullname'. Remove 'data' parameter.
1264 * mi/mi-cmd-file.c (print_partial_file_name): Remove 'ignore'
1266 (mi_cmd_file_list_exec_source_files): Update.
1268 (dwarf2_base_index_functions::map_symbol_filenames): Update.
1270 2021-03-26 Tom Tromey <tom@tromey.com>
1272 * ada-lang.c (struct match_data): Add operator().
1273 (match_data::operator()): Rename from aux_add_nonlocal_symbols.
1274 (callback): Remove 'callback'.
1276 2021-03-26 Tom Tromey <tom@tromey.com>
1278 * psymtab.c (psymbol_functions::expand_symtabs_matching): Only
1279 call make_ignore_params once.
1281 2021-03-26 Tom Tromey <tom@tromey.com>
1283 * psymtab.c (psymbol_functions::expand_symtabs_matching): Remove
1286 2021-03-26 Simon Marchi <simon.marchi@efficios.com>
1287 Pedro Alves <pedro@palves.net>
1289 * async-event.c: Include "infrun.h".
1290 (async_event_handler_marked): New.
1291 * async-event.h (async_event_handler_marked): Declare.
1292 * infrun.c (maybe_set_commit_resumed_all_targets): Switch to
1293 inferior before calling target method. Don't commit-resumed if
1294 target_has_pending_events is true.
1295 * remote.c (remote_target::has_pending_events): New.
1296 * target-delegates.c: Regenerate.
1297 * target.c (target_has_pending_events): New.
1298 * target.h (target_ops::has_pending_events): New target method.
1299 (target_has_pending_events): New.
1301 2021-03-26 Simon Marchi <simon.marchi@efficios.com>
1302 Pedro Alves <pedro@palves.net>
1304 * infcmd.c (run_command_1, attach_command, detach_command)
1305 (interrupt_target_1): Use scoped_disable_commit_resumed.
1306 * infrun.c (do_target_resume): Remove
1307 target_commit_resume call.
1308 (commit_resume_all_targets): Remove.
1309 (maybe_set_commit_resumed_all_targets): New.
1310 (maybe_call_commit_resumed_all_targets): New.
1311 (enable_commit_resumed): New.
1312 (scoped_disable_commit_resumed::scoped_disable_commit_resumed)
1313 (scoped_disable_commit_resumed::~scoped_disable_commit_resumed)
1314 (scoped_disable_commit_resumed::reset)
1315 (scoped_disable_commit_resumed::reset_and_commit)
1316 (scoped_enable_commit_resumed::scoped_enable_commit_resumed)
1317 (scoped_enable_commit_resumed::~scoped_enable_commit_resumed):
1319 (proceed): Use scoped_disable_commit_resumed and
1320 maybe_call_commit_resumed_all_targets.
1321 (fetch_inferior_event): Use scoped_disable_commit_resumed.
1322 * infrun.h (struct scoped_disable_commit_resumed): New.
1323 (maybe_call_commit_resumed_all_process_targets): New.
1324 (struct scoped_enable_commit_resumed): New.
1325 * mi/mi-main.c (exec_continue): Use scoped_disable_commit_resumed.
1326 * process-stratum-target.h (class process_stratum_target):
1327 <commit_resumed_state>: New.
1328 * record-full.c (record_full_wait_1): Change commit_resumed_state
1329 around calling commit_resumed.
1330 * remote.c (class remote_target) <commit_resume>: Rename to...
1331 <commit_resumed>: ... this.
1332 (struct stop_reply): Move up.
1333 (remote_target::commit_resume): Rename to...
1334 (remote_target::commit_resumed): ... this. Check if there is any
1335 thread pending vCont resume.
1336 (remote_target::remote_stop_ns): Generate stop replies for resumed
1337 but pending vCont threads.
1338 (remote_target::wait_ns): Add gdb_assert.
1339 * target-delegates.c: Regenerate.
1340 * target.c (target_wait, target_resume): Assert that the current
1341 process_stratum target isn't in commit-resumed state.
1342 (defer_target_commit_resume): Remove.
1343 (target_commit_resume): Remove.
1344 (target_commit_resumed): New.
1345 (make_scoped_defer_target_commit_resume): Remove.
1346 (target_stop): Assert that the current process_stratum target
1347 isn't in commit-resumed state.
1348 * target.h (struct target_ops) <commit_resume>: Rename to ...
1349 <commit_resumed>: ... this.
1350 (target_commit_resume): Remove.
1351 (target_commit_resumed): New.
1352 (make_scoped_defer_target_commit_resume): Remove.
1353 * top.c (wait_sync_command_done): Use
1354 scoped_enable_commit_resumed.
1356 2021-03-26 Pedro Alves <pedro@palves.net>
1358 * target.c (target_always_non_stop_p): Also check whether the
1361 2021-03-26 Tom Tromey <tom@tromey.com>
1363 * dwarf2/read.c (dwarf2_read_debug_names)
1364 (dwarf2_build_psymtabs_hard, create_addrmap_from_aranges)
1365 (dw2_debug_names_iterator::next, create_type_unit_group):
1368 2021-03-25 Pedro Alves <pedro@palves.net>
1370 * gdb.server/bkpt-other-inferior.exp: Only enable remote output
1371 around setting the breakpoint.
1373 2021-03-25 Pedro Alves <pedro@palves.net>
1376 (remote_target::check_pending_events_prevent_wildcard_vcont):
1377 Check whether the event's ptid is not null_ptid before looking up
1378 the corresponding inferior.
1380 2021-03-24 Changbin Du <changbin.du@gmail.com>
1382 * riscv-tdep.c (riscv_breakpoint_kind_from_pc): Remove call to
1385 2021-03-24 Simon Marchi <simon.marchi@polymtl.ca>
1387 * target.h (current_top_target): Remove, make callers use the
1388 current inferior instead.
1389 * target.c (current_top_target): Remove.
1391 2021-03-24 Simon Marchi <simon.marchi@polymtl.ca>
1393 * target.h (target_shortname): Change to function declaration.
1394 (target_longname): Likewise.
1395 (target_attach_no_wait): Likewise.
1396 (target_post_attach): Likewise.
1397 (target_prepare_to_store): Likewise.
1398 (target_supports_enable_disable_tracepoint): Likewise.
1399 (target_supports_string_tracing): Likewise.
1400 (target_supports_evaluation_of_breakpoint_conditions): Likewise.
1401 (target_supports_dumpcore): Likewise.
1402 (target_dumpcore): Likewise.
1403 (target_can_run_breakpoint_commands): Likewise.
1404 (target_files_info): Likewise.
1405 (target_post_startup_inferior): Likewise.
1406 (target_insert_fork_catchpoint): Likewise.
1407 (target_remove_fork_catchpoint): Likewise.
1408 (target_insert_vfork_catchpoint): Likewise.
1409 (target_remove_vfork_catchpoint): Likewise.
1410 (target_insert_exec_catchpoint): Likewise.
1411 (target_remove_exec_catchpoint): Likewise.
1412 (target_set_syscall_catchpoint): Likewise.
1413 (target_rcmd): Likewise.
1414 (target_can_lock_scheduler): Likewise.
1415 (target_can_async_p): Likewise.
1416 (target_is_async_p): Likewise.
1417 (target_execution_direction): Likewise.
1418 (target_extra_thread_info): Likewise.
1419 (target_pid_to_exec_file): Likewise.
1420 (target_thread_architecture): Likewise.
1421 (target_find_memory_regions): Likewise.
1422 (target_make_corefile_notes): Likewise.
1423 (target_get_bookmark): Likewise.
1424 (target_goto_bookmark): Likewise.
1425 (target_stopped_by_watchpoint): Likewise.
1426 (target_stopped_by_sw_breakpoint): Likewise.
1427 (target_supports_stopped_by_sw_breakpoint): Likewise.
1428 (target_stopped_by_hw_breakpoint): Likewise.
1429 (target_supports_stopped_by_hw_breakpoint): Likewise.
1430 (target_have_steppable_watchpoint): Likewise.
1431 (target_can_use_hardware_watchpoint): Likewise.
1432 (target_region_ok_for_hw_watchpoint): Likewise.
1433 (target_can_do_single_step): Likewise.
1434 (target_insert_watchpoint): Likewise.
1435 (target_remove_watchpoint): Likewise.
1436 (target_insert_hw_breakpoint): Likewise.
1437 (target_remove_hw_breakpoint): Likewise.
1438 (target_can_accel_watchpoint_condition): Likewise.
1439 (target_can_execute_reverse): Likewise.
1440 (target_get_ada_task_ptid): Likewise.
1441 (target_filesystem_is_local): Likewise.
1442 (target_trace_init): Likewise.
1443 (target_download_tracepoint): Likewise.
1444 (target_can_download_tracepoint): Likewise.
1445 (target_download_trace_state_variable): Likewise.
1446 (target_enable_tracepoint): Likewise.
1447 (target_disable_tracepoint): Likewise.
1448 (target_trace_start): Likewise.
1449 (target_trace_set_readonly_regions): Likewise.
1450 (target_get_trace_status): Likewise.
1451 (target_get_tracepoint_status): Likewise.
1452 (target_trace_stop): Likewise.
1453 (target_trace_find): Likewise.
1454 (target_get_trace_state_variable_value): Likewise.
1455 (target_save_trace_data): Likewise.
1456 (target_upload_tracepoints): Likewise.
1457 (target_upload_trace_state_variables): Likewise.
1458 (target_get_raw_trace_data): Likewise.
1459 (target_get_min_fast_tracepoint_insn_len): Likewise.
1460 (target_set_disconnected_tracing): Likewise.
1461 (target_set_circular_trace_buffer): Likewise.
1462 (target_set_trace_buffer_size): Likewise.
1463 (target_set_trace_notes): Likewise.
1464 (target_get_tib_address): Likewise.
1465 (target_set_permissions): Likewise.
1466 (target_static_tracepoint_marker_at): Likewise.
1467 (target_static_tracepoint_markers_by_strid): Likewise.
1468 (target_traceframe_info): Likewise.
1469 (target_use_agent): Likewise.
1470 (target_can_use_agent): Likewise.
1471 (target_augmented_libraries_svr4_read): Likewise.
1472 (target_log_command): Likewise.
1473 * target.c (target_shortname): New.
1474 (target_longname): New.
1475 (target_attach_no_wait): New.
1476 (target_post_attach): New.
1477 (target_prepare_to_store): New.
1478 (target_supports_enable_disable_tracepoint): New.
1479 (target_supports_string_tracing): New.
1480 (target_supports_evaluation_of_breakpoint_conditions): New.
1481 (target_supports_dumpcore): New.
1482 (target_dumpcore): New.
1483 (target_can_run_breakpoint_commands): New.
1484 (target_files_info): New.
1485 (target_post_startup_inferior): New.
1486 (target_insert_fork_catchpoint): New.
1487 (target_remove_fork_catchpoint): New.
1488 (target_insert_vfork_catchpoint): New.
1489 (target_remove_vfork_catchpoint): New.
1490 (target_insert_exec_catchpoint): New.
1491 (target_remove_exec_catchpoint): New.
1492 (target_set_syscall_catchpoint): New.
1494 (target_can_lock_scheduler): New.
1495 (target_can_async_p): New.
1496 (target_is_async_p): New.
1497 (target_execution_direction): New.
1498 (target_extra_thread_info): New.
1499 (target_pid_to_exec_file): New.
1500 (target_thread_architecture): New.
1501 (target_find_memory_regions): New.
1502 (target_make_corefile_notes): New.
1503 (target_get_bookmark): New.
1504 (target_goto_bookmark): New.
1505 (target_stopped_by_watchpoint): New.
1506 (target_stopped_by_sw_breakpoint): New.
1507 (target_supports_stopped_by_sw_breakpoint): New.
1508 (target_stopped_by_hw_breakpoint): New.
1509 (target_supports_stopped_by_hw_breakpoint): New.
1510 (target_have_steppable_watchpoint): New.
1511 (target_can_use_hardware_watchpoint): New.
1512 (target_region_ok_for_hw_watchpoint): New.
1513 (target_can_do_single_step): New.
1514 (target_insert_watchpoint): New.
1515 (target_remove_watchpoint): New.
1516 (target_insert_hw_breakpoint): New.
1517 (target_remove_hw_breakpoint): New.
1518 (target_can_accel_watchpoint_condition): New.
1519 (target_can_execute_reverse): New.
1520 (target_get_ada_task_ptid): New.
1521 (target_filesystem_is_local): New.
1522 (target_trace_init): New.
1523 (target_download_tracepoint): New.
1524 (target_can_download_tracepoint): New.
1525 (target_download_trace_state_variable): New.
1526 (target_enable_tracepoint): New.
1527 (target_disable_tracepoint): New.
1528 (target_trace_start): New.
1529 (target_trace_set_readonly_regions): New.
1530 (target_get_trace_status): New.
1531 (target_get_tracepoint_status): New.
1532 (target_trace_stop): New.
1533 (target_trace_find): New.
1534 (target_get_trace_state_variable_value): New.
1535 (target_save_trace_data): New.
1536 (target_upload_tracepoints): New.
1537 (target_upload_trace_state_variables): New.
1538 (target_get_raw_trace_data): New.
1539 (target_get_min_fast_tracepoint_insn_len): New.
1540 (target_set_disconnected_tracing): New.
1541 (target_set_circular_trace_buffer): New.
1542 (target_set_trace_buffer_size): New.
1543 (target_set_trace_notes): New.
1544 (target_get_tib_address): New.
1545 (target_set_permissions): New.
1546 (target_static_tracepoint_marker_at): New.
1547 (target_static_tracepoint_markers_by_strid): New.
1548 (target_traceframe_info): New.
1549 (target_use_agent): New.
1550 (target_can_use_agent): New.
1551 (target_augmented_libraries_svr4_read): New.
1552 (target_log_command): New.
1553 * bfin-tdep.c (bfin_sw_breakpoint_from_kind): Adjust.
1554 * infrun.c (set_schedlock_func): Adjust.
1555 * mi/mi-main.c (exec_reverse_continue): Adjust.
1556 * reverse.c (exec_reverse_once): Adjust.
1557 * sh-tdep.c (sh_sw_breakpoint_from_kind): Adjust.
1558 * tui/tui-stack.c (tui_locator_window::make_status_line): Adjust.
1559 * remote-sim.c (gdbsim_target::detach): Adjust.
1560 (gdbsim_target::files_info): Adjust.
1562 2021-03-24 Tom Tromey <tom@tromey.com>
1564 * dwarf2/read.c (dw2_map_matching_symbols): Update.
1565 (dw2_expand_symtabs_matching_symbol): Remove 'kind' parameter.
1566 (check_match, dw2_expand_symtabs_matching)
1567 (dwarf2_debug_names_index::map_matching_symbols)
1568 (dwarf2_debug_names_index::expand_symtabs_matching): Update.
1570 2021-03-24 Keith Seitz <keiths@redhat.com>
1572 * compile/compile-cplus-types.c
1573 (compile_cplus_convert_struct_or_union): Fix TYPE_DECLARED_CLASS
1576 2021-03-24 Simon Marchi <simon.marchi@polymtl.ca>
1578 * gdbarch.sh (gdbarch_data_registry): Make static.
1579 * gdbarch.c: Re-generate.
1581 2021-03-24 Luis Machado <luis.machado@linaro.org>
1583 * NEWS: Mention memory tagging changes.
1585 2021-03-24 Luis Machado <luis.machado@linaro.org>
1587 * printcmd.c (decode_format): Handle the 'm' modifier.
1588 (do_examine): Display allocation tags when required/supported.
1589 (should_validate_memtags): New function.
1590 (print_command_1): Display memory tag mismatches.
1591 * valprint.c (show_memory_tag_violations): New function.
1592 (value_print_option_defs): Add new option "memory-tag-violations".
1593 (user_print_options) <memory_tag_violations>: Initialize to 1.
1594 * valprint.h (struct format_data) <print_tags>: New field.
1595 (value_print_options) <memory_tag_violations>: New field.
1597 2021-03-24 Luis Machado <luis.machado@linaro.org>
1599 * printcmd.c: Include gdbsupport/rsp-low.h.
1600 (memory_tag_list): New static global.
1601 (process_print_command_args): Factored out of
1603 (print_command_1): Use process_print_command_args.
1604 (show_addr_not_tagged, show_memory_tagging_unsupported)
1605 (memory_tag_command, memory_tag_print_tag_command)
1606 (memory_tag_print_logical_tag_command)
1607 (memory_tag_print_allocation_tag_command, parse_with_logical_tag_input)
1608 (memory_tag_with_logical_tag_command, parse_set_allocation_tag_input)
1609 (memory_tag_set_allocation_tag_command, memory_tag_check_command): New
1611 (_initialize_printcmd): Add "memory-tag" prefix and subcommands.
1613 2021-03-24 Luis Machado <luis.machado@linaro.org>
1615 * aarch64-linux-tdep.c
1616 (aarch64_linux_iterate_over_regset_sections): Handle MTE register set.
1617 * aarch64-linux-tdep.h (AARCH64_LINUX_SIZEOF_MTE_REGSET): Define.
1619 2021-03-24 Luis Machado <luis.machado@linaro.org>
1621 * aarch64-linux-tdep.c
1622 (aarch64_linux_report_signal_info): New function.
1623 (aarch64_linux_init_abi): Register
1624 aarch64_linux_report_signal_info as the report_signal_info hook.
1625 * arch/aarch64-linux.h (SEGV_MTEAERR): Define.
1626 (SEGV_MTESERR): Define.
1628 2021-03-24 Luis Machado <luis.machado@linaro.org>
1630 * aarch64-linux-tdep.c: Include gdbsupport/selftest.h.
1631 (aarch64_linux_ltag_tests): New function.
1632 (_initialize_aarch64_linux_tdep): Register aarch64_linux_ltag_tests.
1634 2021-03-24 Luis Machado <luis.machado@linaro.org>
1636 * aarch64-linux-tdep.c: Include target.h, arch-utils.h, value.h.
1637 (aarch64_mte_get_atag, aarch64_linux_tagged_address_p)
1638 (aarch64_linux_memtag_mismatch_p, aarch64_linux_set_memtags)
1639 (aarch64_linux_get_memtag, aarch64_linux_memtag_to_string): New
1641 (aarch64_linux_init_abi): Initialize MTE-related gdbarch hooks.
1642 * arch/aarch64-mte-linux.c (aarch64_mte_make_ltag_bits)
1643 (aarch64_mte_make_ltag, aarch64_linux_set_ltag)
1644 (aarch64_linux_get_ltag): New functions.
1645 * arch/aarch64-mte-linux.h (AARCH64_MTE_LOGICAL_TAG_START_BIT)
1646 (AARCH64_MTE_LOGICAL_MAX_VALUE): Define.
1647 (aarch64_mte_make_ltag_bits, aarch64_mte_make_ltag)
1648 (aarch64_mte_set_ltag, aarch64_mte_get_ltag): New prototypes.
1650 2021-03-24 Luis Machado <luis.machado@linaro.org>
1652 * linux-tdep.c (struct smaps_vmflags) <memory_tagging>: New flag
1654 (struct smaps_data): New struct.
1655 (decode_vmflags): Handle the 'mt' flag.
1656 (parse_smaps_data): New function, refactored from
1657 linux_find_memory_regions_full.
1658 (linux_address_in_memtag_page): New function.
1659 (linux_find_memory_regions_full): Refactor into parse_smaps_data.
1660 * linux-tdep.h (linux_address_in_memtag_page): New prototype.
1662 2021-03-24 Luis Machado <luis.machado@linaro.org>
1664 * linux-tdep.c (linux_find_memory_regions_full): Use std::string
1665 instead of char arrays.
1667 2021-03-24 Luis Machado <luis.machado@linaro.org>
1669 * Makefile.in (ALL_64_TARGET_OBS): Add arch/aarch64-mte-linux.o.
1670 (HFILES_NO_SRCDIR): Add arch/aarch64-mte-linux.h and
1671 nat/aarch64-mte-linux-ptrace.h.
1672 * aarch64-linux-nat.c: Include nat/aarch64-mte-linux-ptrace.h.
1673 (aarch64_linux_nat_target) <supports_memory_tagging>: New method
1675 <fetch_memtags>: New method override.
1676 <store_memtags>: New method override.
1677 (aarch64_linux_nat_target::supports_memory_tagging): New method.
1678 (aarch64_linux_nat_target::fetch_memtags): New method.
1679 (aarch64_linux_nat_target::store_memtags): New method.
1680 * arch/aarch64-mte-linux.c: New file.
1681 * arch/aarch64-mte-linux.h: Include gdbsupport/common-defs.h.
1682 (AARCH64_MTE_GRANULE_SIZE): Define.
1683 (aarch64_memtag_type): New enum.
1684 (aarch64_mte_get_tag_granules): New prototype.
1685 * configure.nat (NATDEPFILES): Add nat/aarch64-mte-linux-ptrace.o.
1686 * configure.tgt (aarch64*-*-linux*): Add arch/aarch64-mte-linux.o.
1687 * nat/aarch64-mte-linux-ptrace.c: New file.
1688 * nat/aarch64-mte-linux-ptrace.h: New file.
1690 2021-03-24 Luis Machado <luis.machado@linaro.org>
1692 * Makefile.in (HFILES_NO_SRCDIR): Add nat/aarch64-mte-linux-ptrace.h.
1693 * nat/aarch64-mte-linux-ptrace.h: New file.
1695 2021-03-24 Luis Machado <luis.machado@linaro.org>
1697 * aarch64-linux-nat.c (fetch_mteregs_from_thread): New function.
1698 (store_mteregs_to_thread): New function.
1699 (aarch64_linux_nat_target::fetch_registers): Update to call
1700 fetch_mteregs_from_thread.
1701 (aarch64_linux_nat_target::store_registers): Update to call
1702 store_mteregs_to_thread.
1703 * aarch64-tdep.c (aarch64_mte_register_names): New struct.
1704 (aarch64_cannot_store_register): Handle MTE registers.
1705 (aarch64_gdbarch_init): Initialize and setup MTE registers.
1706 * aarch64-tdep.h (gdbarch_tdep) <mte_reg_base>: New field.
1707 <has_mte>: New method.
1708 * arch/aarch64-linux.h (AARCH64_LINUX_SIZEOF_MTE): Define.
1710 2021-03-24 Luis Machado <luis.machado@linaro.org>
1712 * aarch64-linux-nat.c
1713 (aarch64_linux_nat_target::read_description): Take MTE flag into
1715 Slight refactor to hwcap flag checking.
1716 * aarch64-linux-tdep.c
1717 (aarch64_linux_core_read_description): Likewise.
1718 * aarch64-tdep.c (tdesc_aarch64_list): Add one more dimension for
1720 (aarch64_read_description): Add mte_p parameter and update to use it.
1721 Update the documentation.
1722 (aarch64_gdbarch_init): Update call to aarch64_read_description.
1723 * aarch64-tdep.h (aarch64_read_description): Add mte_p parameter.
1724 * arch/aarch64.c: Include ../features/aarch64-mte.c.
1725 (aarch64_create_target_description): Add mte_p parameter and update
1727 * arch/aarch64.h (aarch64_create_target_description): Add mte_p
1729 * features/Makefile (FEATURE_XMLFILES): Add aarch64-mte.xml.
1730 * features/aarch64-mte.c: New file, generated.
1731 * features/aarch64-mte.xml: New file.
1733 2021-03-24 Luis Machado <luis.machado@linaro.org>
1735 * Makefile.in (HFILES_NO_SRCDIR): Add arch/aarch64-mte-linux.h.
1736 * aarch64-linux-nat.c: Include arch/aarch64-mte-linux.h.
1737 * aarch64-linux-tdep.c: Likewise
1738 * arch/aarch64-mte-linux.h: New file.
1740 2021-03-24 Luis Machado <luis.machado@linaro.org>
1742 * remote: Include gdbsupport/selftest.h.
1743 (test_memory_tagging_functions): New function.
1744 (_initialize_remote): Register test_memory_tagging_functions.
1746 2021-03-24 Luis Machado <luis.machado@linaro.org>
1748 * remote.c (PACKET_memory_tagging_feature): New enum.
1749 (remote_memory_tagging_p): New function.
1750 (remote_protocol_features): New "memory-tagging" entry.
1751 (remote_target::remote_query_supported): Handle memory tagging
1753 (remote_target::supports_memory_tagging): Implement.
1754 (create_fetch_memtags_request, parse_fetch_memtags_reply)
1755 (create_store_memtags_request): New functions.
1756 (remote_target::fetch_memtags): Implement.
1757 (remote_target::store_memtags): Implement.
1758 (_initialize_remote): Add new "memory-tagging-feature"
1761 2021-03-24 Luis Machado <luis.machado@linaro.org>
1763 * arch-utils.c (default_memtag_to_string, default_tagged_address_p)
1764 (default_memtag_matches_p, default_set_memtags)
1765 (default_get_memtag): New functions.
1766 * arch-utils.h (default_memtag_to_string, default_tagged_address_p)
1767 (default_memtag_matches_p, default_set_memtags)
1768 (default_get_memtag): New prototypes.
1769 * gdbarch.c: Regenerate.
1770 * gdbarch.h: Regenerate.
1771 * gdbarch.sh (memtag_to_string, tagged_address_p, memtag_matches_p)
1772 (set_memtags, get_memtag, memtag_granule_size): New gdbarch hooks.
1773 (enum memtag_type): New enum.
1775 2021-03-24 Luis Machado <luis.machado@linaro.org>
1777 * remote.c (remote_target) <supports_memory_tagging>: New method
1779 <fetch_memtags>: New method override.
1780 <store_memtags>: New method override.
1781 (remote_target::supports_memory_tagging): New method.
1782 (remote_target::fetch_memtags): New method.
1783 (remote_target::store_memtags): New method.
1784 * target-delegates.c: Regenerate.
1785 * target.h (struct target_ops) <supports_memory_tagging>: New virtual
1787 <fetch_memtags>: New virtual method.
1788 <store_memtags>: New virtual method.
1789 (target_supports_memory_tagging): Define.
1790 (target_fetch_memtags): Define.
1791 (target_store_memtags): Define.
1792 * target-debug.h (target_debug_print_size_t)
1793 (target_debug_print_const_gdb_byte_vector_r)
1794 (target_debug_print_gdb_byte_vector_r): New functions.
1796 2021-03-23 Simon Marchi <simon.marchi@polymtl.ca>
1798 * target.h (target_longname): Remove.
1800 2021-03-23 Simon Marchi <simon.marchi@polymtl.ca>
1802 * target.h (target_is_pushed): Remove, update callers to use
1803 inferior::target_is_pushed instead.
1804 * target.c (target_is_pushed): Remove.
1806 2021-03-23 Simon Marchi <simon.marchi@polymtl.ca>
1808 * target.h (push_target): Remove, update callers to use
1809 inferior::push_target.
1810 * target.c (push_target): Remove.
1811 * inferior.h (class inferior) <push_target>: New overload.
1813 2021-03-23 Simon Marchi <simon.marchi@polymtl.ca>
1815 * target.h (unpush_target): Remove, update all callers
1816 to use `inferior::unpush_target` instead.
1817 (struct target_unpusher) <operator()>: Just declare.
1818 * target.c (unpush_target): Remove.
1819 (target_unpusher::operator()): New.
1821 2021-03-22 Andrew Burgess <andrew.burgess@embecosm.com>
1823 * dwarf2/read.c (process_psymtab_comp_unit): Replace abort with an
1825 (process_full_comp_unit): Validate the top-level tag before
1826 processing the first DIE.
1827 (read_func_scope): Ensure we have a valid builder.
1829 2021-03-22 Andrew Burgess <andrew.burgess@embecosm.com>
1831 * objc-lang.c (objc_demangle): Renamed to
1832 objc_language::demangle_symbol, and moved later in the file.
1833 (objc_language::sniff_from_mangled_name): Call demangle_symbol
1835 (objc_language::demangle_symbol): Defined outside of class
1836 declaration. The definition is the old objc_demangle with NULL
1837 changed to nullptr, and if conditions relating to nullptr pointers
1838 or null character checks made explicit.
1839 * objc-lang.h (objc_demangle): Delete declaration.
1841 2021-03-22 Martin Liska <mliska@suse.cz>
1843 * arm-tdep.c (show_disassembly_style_sfunc): Replace usage of CONST_STRNEQ with startswith.
1844 (_initialize_arm_tdep): Likewise.
1846 2021-03-20 Tom Tromey <tom@tromey.com>
1848 * xcoffread.c (xcoff_initial_scan): Create partial symtabs.
1849 * symfile.c (syms_from_objfile_1, reread_symbols): Update.
1850 * psymtab.h (make_psymbol_functions): Don't declare.
1851 * psymtab.c (make_psymbol_functions): Remove.
1852 (maintenance_print_psymbols): Update.
1853 * psympriv.h (struct psymbol_functions): Add no-argument
1855 * objfiles.h (struct objfile) <reset_psymtabs>: Remove.
1856 <partial_symtabs>: Remove.
1857 * mdebugread.c (mdebug_build_psymtabs): Create partial symtabs.
1858 * elfread.c (read_partial_symbols): Update.
1859 (elf_symfile_read): Remove check for existing partial symbols.
1861 * dwarf2/read.c (dwarf2_has_info): Remove check for existing
1863 (dwarf2_build_psymtabs): Add psymbol_functions parameter. Create
1865 * dwarf2/public.h (dwarf2_build_psymtabs): Add psymbol_functions
1867 * dbxread.c (dbx_symfile_read): Create partial symtabs.
1868 * ctfread.c (elfctf_build_psymtabs): Create partial symtabs.
1870 2021-03-20 Tom Tromey <tom@tromey.com>
1872 * dwarf2/read.c (dwarf2_build_psymtabs): Update.
1873 * symfile.c (syms_from_objfile_1, reread_symbols): Update.
1874 * symfile-debug.c (objfile::has_partial_symbols)
1875 (objfile::find_last_source_symtab)
1876 (objfile::forget_cached_source_info)
1877 (objfile::map_symtabs_matching_filename, objfile::lookup_symbol)
1878 (objfile::print_stats, objfile::dump)
1879 (objfile::expand_symtabs_for_function)
1880 (objfile::expand_all_symtabs)
1881 (objfile::expand_symtabs_with_fullname)
1882 (objfile::map_matching_symbols)
1883 (objfile::expand_symtabs_matching)
1884 (objfile::find_pc_sect_compunit_symtab)
1885 (objfile::map_symbol_filenames)
1886 (objfile::find_compunit_symtab_by_address)
1887 (objfile::lookup_global_symbol_language)
1888 (objfile::require_partial_symbols): Update.
1889 * psymtab.c (maintenance_print_psymbols)
1890 (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
1891 * objfiles.h (struct objfile) <qf>: Now a forward_list.
1892 * objfiles.c (objfile_relocate1): Update.
1893 * elfread.c (elf_symfile_read): Update.
1895 2021-03-20 Tom Tromey <tom@tromey.com>
1897 * objfiles.h (struct objfile) <psymtabs>: Remove method.
1899 2021-03-20 Tom Tromey <tom@tromey.com>
1901 * psymtab.c (psymbol_functions::count_psyms): Rename.
1902 (psymbol_functions::print_stats): Update.
1903 * psympriv.h (struct psymbol_functions) <count_psyms>: Declare
1906 2021-03-20 Tom Tromey <tom@tromey.com>
1908 * psymtab.c (psymbol_functions::require_partial_symbols): Rename.
1909 (psymbol_functions::find_pc_sect_psymtab): Rename.
1910 (psymbol_functions::find_pc_sect_compunit_symtab)
1911 (maintenance_print_psymbols, maintenance_check_psymtabs): Update.
1912 * psympriv.h (struct psymbol_functions) <require_partial_symbols>:
1914 <get_partial_symtabs, find_pc_sect_psymtab>: Likewise.
1916 2021-03-20 Tom Tromey <tom@tromey.com>
1918 * xcoffread.c (xcoff_start_psymtab): Add partial_symtabs parameter.
1919 (xcoff_end_psymtab, scan_xcoff_symtab): Update.
1920 * psymtab.c (partial_symtab::partial_symtab): Add partial_symtabs
1922 (add_psymbol_to_bcache): Remove.
1923 (partial_symtab::add_psymbol): Add partial_symtabs parameter.
1924 (partial_symtab::add_psymbol, partial_symtab::partial_symtab):
1926 * psympriv.h (partial_symtab): Add partial_symtabs parameter.
1927 <add_psymbol>: Likewise.
1928 (standard_psymtab, legacy_psymtab): Likewise.
1929 * mdebugread.c (parse_partial_symbols): Update.
1930 (handle_psymbol_enumerators): Add partial_symtabs parameter.
1931 (handle_psymbol_enumerators): Update.
1932 (new_psymtab): Add partial_symtabs parameter.
1933 * dwarf2/read.h (dwarf2_psymtab): Add partial_symtabs parameter.
1934 * dwarf2/read.c (dwarf2_include_psymtab): Add partial_symtabs
1936 (dwarf2_create_include_psymtab): Add partial_symtabs parameter.
1937 (create_partial_symtab, add_partial_symbol, dwarf_decode_lines):
1939 * dbxread.c (read_dbx_symtab): Update.
1940 (start_psymtab): Add partial_symtabs parameter.
1941 (dbx_end_psymtab): Update.
1942 * ctfread.c (struct ctf_context) <partial_symtabs>: New member.
1943 (ctf_psymtab): Add partial_symtabs parameter.
1944 (create_partial_symtab, ctf_psymtab_type_cb, ctf_psymtab_var_cb):
1946 (scan_partial_symbols): Add partial_symtabs parameter.
1947 (scan_partial_symbols, elfctf_build_psymtabs)
1948 (ctf_psymtab_add_enums): Update.
1950 2021-03-20 Tom Tromey <tom@tromey.com>
1952 * symfile.c (read_symbols): Use objfile method.
1953 * symfile-debug.c (objfile::require_partial_symbols): New method.
1954 * psymtab.h (require_partial_symbols): Don't declare.
1955 * psymtab.c (require_partial_symbols): Use objfile method. Now
1957 (psymbol_functions::map_symtabs_matching_filename, OBJFILE)
1958 (psymbol_functions::lookup_symbol)
1959 (psymbol_functions::lookup_global_symbol_language)
1960 (psymbol_functions::find_last_source_symtab)
1961 (psymbol_functions::forget_cached_source_info)
1962 (psymbol_functions::print_stats)
1963 (psymbol_functions::expand_symtabs_for_function)
1964 (psymbol_functions::expand_all_symtabs)
1965 (psymbol_functions::expand_symtabs_with_fullname)
1966 (psymbol_functions::map_symbol_filenames)
1967 (psymbol_functions::map_matching_symbols)
1968 (psymbol_functions::expand_symtabs_matching)
1969 (psymbol_functions::find_compunit_symtab_by_address)
1970 (maintenance_print_psymbols, maintenance_info_psymtabs)
1971 (maintenance_check_psymtabs): Update.
1972 * objfiles.h (struct objfile) <require_partial_symbols>: Declare
1975 2021-03-20 Tom Tromey <tom@tromey.com>
1977 * xcoffread.c (xcoff_sym_fns): Update.
1978 * symfile.h (struct sym_fns) <sym_read_psymbols>: Remove.
1979 * symfile-debug.c (objfile::has_partial_symbols): Use
1980 can_lazily_read_symbols.
1981 (debug_sym_read_psymbols): Remove.
1982 (debug_sym_fns, install_symfile_debug_logging): Update.
1983 * quick-symbol.h (struct quick_symbol_functions)
1984 <can_lazily_read_symbols, read_partial_symbols>: New methods.
1985 * psymtab.c (require_partial_symbols): Use new 'qf' methods.
1986 * mipsread.c (ecoff_sym_fns): Update.
1987 * machoread.c (macho_sym_fns): Update.
1988 * elfread.c (struct lazy_dwarf_reader): New.
1989 (elf_symfile_read): Update.
1990 (read_psyms): Now a method of lazy_dwarf_reader.
1991 (elf_sym_fns): Update.
1992 (elf_sym_fns_lazy_psyms): Remove.
1993 * dbxread.c (aout_sym_fns): Update.
1994 * coffread.c (coff_sym_fns): Update.
1996 2021-03-20 Tom Tromey <tom@tromey.com>
1998 * symfile.c (syms_from_objfile_1): Call reset_psymtabs.
1999 (reread_symbols): Move reset_psymtabs call later.
2000 * objfiles.c (objfile::objfile): Don't initialize
2003 2021-03-20 Tom Tromey <tom@tromey.com>
2005 * dwarf2/read.c (dwarf2_build_psymtabs): Call
2006 set_partial_symtabs.
2007 * symfile.c (syms_from_objfile_1, reread_symbols): Update.
2008 * psymtab.h (make_psymbol_functions): Add partial_symtabs
2010 * psymtab.c (find_pc_sect_psymtab): Add partial_symtabs
2012 (psymbol_functions::find_pc_sect_compunit_symtab)
2013 (psymbol_functions::print_stats, psymbol_functions::dump)
2014 (psymbol_functions::has_symbols): Update.
2015 (make_psymbol_functions, dump_psymtab_addrmap): Add
2016 partial_symtabs parameter.
2017 (maintenance_print_psymbols): Update.
2018 (psymbol_functions::expand_symtabs_matching): Update.
2019 * psympriv.h (struct psymbol_functions): Add constructor.
2020 <m_partial_symtabs>: New member.
2021 <set_partial_symtabs>: New method.
2023 2021-03-20 Tom Tromey <tom@tromey.com>
2025 * dwarf2/read.c (dwarf2_create_include_psymtab): Add per_bfd
2027 (process_psymtab_comp_unit_reader)
2028 (build_type_psymtab_dependencies, dwarf2_build_psymtabs_hard)
2029 (add_partial_subprogram, dwarf2_ranges_read, dwarf_decode_lines):
2030 Reference psymtabs via per_bfd.
2032 2021-03-20 Tom Tromey <tom@tromey.com>
2034 * dwarf2/index-write.c (struct addrmap_index_data) <objfile>:
2036 (add_address_entry): Remove objfile parameter.
2037 (add_address_entry_worker): Update.
2038 (write_address_map): Replace objfile parameter with per_bfd.
2039 (write_gdbindex, write_psymtabs_to_index): Update.
2041 2021-03-20 Tom Tromey <tom@tromey.com>
2043 * dwarf2/read.c (dwarf2_base_index_functions::print_stats): Add
2044 print_bcache parameter.
2045 * symfile-debug.c (objfile::print_stats): Add print_bcache
2047 * quick-symbol.h (struct quick_symbol_functions)
2048 <print_stats>: Add print_bcache parameter.
2049 * symmisc.c (print_symbol_bcache_statistics, count_psyms): Move
2051 (print_objfile_statistics): Move psymtab code to psymtab.c.
2052 * psymtab.c (count_psyms): Move from symmisc.c.
2053 (psymbol_functions::print_stats): Print partial symbol and bcache
2054 statistics. Add print_bcache parameter.
2055 * objfiles.h (print_symbol_bcache_statistics): Don't declare.
2056 (struct objfile) <print_stats>: Add print_bcache parameter.
2057 * maint.c (maintenance_print_statistics): Update.
2059 2021-03-20 Tom Tromey <tom@tromey.com>
2061 * dwarf2/read.h (struct dwarf2_per_bfd) <psymtabs_addrmap>: New
2063 * dwarf2/read.c (create_addrmap_from_index)
2064 (create_addrmap_from_aranges): Set per_bfd addrmap.
2065 (dwarf2_read_gdb_index): Don't set partial_symtabs.
2066 (dwarf2_base_index_functions::find_pc_sect_compunit_symtab): Use
2068 (dwarf2_read_debug_names): Don't set partial_symtabs.
2069 (dwarf2_initialize_objfile): Likewise.
2071 2021-03-20 Tom Tromey <tom@tromey.com>
2073 * dwarf2/read.c (dwarf2_build_psymtabs): Set partial_symtabs
2076 2021-03-20 Tom Tromey <tom@tromey.com>
2078 * psympriv.h (psymtab_discarder): Take psymtab_storage parameter.
2079 (~psymtab_discarder, keep): Update.
2080 <m_objfile>: Remove.
2081 <m_partial_symtabs>: New member.
2082 * dwarf2/read.c (dwarf2_build_psymtabs): Update.
2084 2021-03-20 Tom Tromey <tom@tromey.com>
2086 * xcoffread.c (xcoff_end_psymtab): Add partial_symtabs parameter.
2087 (xcoff_end_psymtab): Update.
2088 (scan_xcoff_symtab): Add partial_symtabs parameter.
2089 (xcoff_initial_scan): Update.
2090 * stabsread.h (dbx_end_psymtab): Add partial_symtabs parameter.
2091 * mdebugread.c (mdebug_build_psymtabs): Update.
2092 (parse_partial_symbols): Add partial_symtabs parameter.
2093 * dbxread.c (dbx_symfile_read): Update.
2094 (read_dbx_symtab): Add partial_symtabs parameter.
2095 (read_dbx_symtab): Update.
2096 (dbx_end_psymtab): Add partial_symtabs parameter.
2098 2021-03-20 Tom Tromey <tom@tromey.com>
2100 * quick-symbol.h (struct quick_symbol_functions)
2101 <relocated>: New method.
2102 * psymtab.h (struct psymbol_functions) <relocated>: New
2104 <fill_psymbol_map>: Declare method.
2105 <m_psymbol_map>: New member.
2106 * psymtab.c (psymbol_functions::fill_psymbol_map): Rename.
2107 (psymbol_functions::find_compunit_symtab_by_address): Update.
2108 * objfiles.h (reset_psymtabs): Don't clear psymbol_map.
2109 (struct objfile) <psymbol_map>: Remove.
2110 * objfiles.c (objfile_relocate1): Update.
2112 2021-03-20 Tom Tromey <tom@tromey.com>
2114 * psympriv.h (struct psymbol_functions): New.
2115 * symfile.c (syms_from_objfile_1, reread_symbols): Update.
2116 * symfile-debug.c (objfile::find_compunit_symtab_by_address)
2117 (objfile::lookup_global_symbol_language): Update.
2118 * quick-symbol.h (struct quick_symbol_functions): Convert function
2119 pointers to methods. Add virtual destructor.
2120 (quick_symbol_functions_up): New typedef.
2121 * psymtab.h (psym_functions, dwarf2_gdb_index_functions)
2122 (dwarf2_debug_names_functions): Don't declare.
2123 (make_psymbol_functions): Declare.
2124 * psymtab.c (psymbol_functions::map_symtabs_matching_filename)
2125 (psymbol_functions::find_pc_sect_compunit_symtab)
2126 (psymbol_functions::lookup_symbol)
2127 (psymbol_functions::lookup_global_symbol_language)
2128 (psymbol_functions::find_last_source_symtab)
2129 (psymbol_functions::forget_cached_source_info)
2130 (psymbol_functions::print_stats, psymbol_functions::dump)
2131 (psymbol_functions::expand_symtabs_for_function)
2132 (psymbol_functions::expand_all_symtabs)
2133 (psymbol_functions::expand_symtabs_with_fullname)
2134 (psymbol_functions::map_symbol_filenames)
2135 (psymbol_functions::map_matching_symbols)
2136 (psymbol_functions::expand_symtabs_matching)
2137 (psymbol_functions::has_symbols)
2138 (psymbol_functions::find_compunit_symtab_by_address): Rename.
2139 (psym_functions): Remove.
2140 (make_psymbol_functions): New function.
2141 * objfiles.h (struct objfile) <qf>: Change type.
2142 * elfread.c (elf_symfile_read): Update.
2143 * dwarf2/read.c (struct dwarf2_base_index_functions)
2144 (struct dwarf2_gdb_index, struct dwarf2_debug_names_index): New.
2145 (make_dwarf_gdb_index, make_dwarf_debug_names): New functions.
2146 (dwarf2_base_index_functions::find_last_source_symtab)
2147 (dwarf2_base_index_functions::forget_cached_source_info)
2148 (dwarf2_base_index_functions::map_symtabs_matching_filename)
2149 (dwarf2_gdb_index::lookup_symbol)
2150 (dwarf2_base_index_functions::print_stats)
2151 (dwarf2_gdb_index::dump)
2152 (dwarf2_gdb_index::expand_symtabs_for_function)
2153 (dwarf2_base_index_functions::expand_all_symtabs)
2154 (dwarf2_base_index_functions::expand_symtabs_with_fullname):
2156 (dwarf2_gdb_index::map_matching_symbols): New method.
2157 (dwarf2_gdb_index::expand_symtabs_matching): New method.
2158 (dwarf2_base_index_functions::find_pc_sect_compunit_symtab)
2159 (dwarf2_base_index_functions::map_symbol_filenames)
2160 (dwarf2_base_index_functions::has_symbols): Rename.
2161 (dwarf2_gdb_index_functions): Remove.
2162 (dwarf2_debug_names_index::lookup_symbol)
2163 (dwarf2_debug_names_index::dump)
2164 (dwarf2_debug_names_index::expand_symtabs_for_function)
2165 (dwarf2_debug_names_index::map_matching_symbols)
2166 (dwarf2_debug_names_index::expand_symtabs_matching): Rename.
2167 (dwarf2_debug_names_functions): Remove.
2168 * dwarf2/public.h (make_dwarf_gdb_index, make_dwarf_debug_names):
2171 2021-03-20 Tom Tromey <tom@tromey.com>
2173 * psymtab.c (require_partial_symbols): Check that 'sf' is not
2175 * xcoffread.c (xcoff_sym_fns): Update.
2176 * symfile.h (struct sym_fns) <qf>: Remove.
2177 * symfile.c (syms_from_objfile_1, reread_symbols): Update.
2178 * symfile-debug.c (objfile::has_partial_symbols)
2179 (objfile::find_last_source_symtab)
2180 (objfile::forget_cached_source_info)
2181 (objfile::map_symtabs_matching_filename, objfile::lookup_symbol)
2182 (objfile::print_stats, objfile::dump)
2183 (objfile::expand_symtabs_for_function)
2184 (objfile::expand_all_symtabs)
2185 (objfile::expand_symtabs_with_fullname)
2186 (objfile::map_matching_symbols)
2187 (objfile::expand_symtabs_matching)
2188 (objfile::find_pc_sect_compunit_symtab)
2189 (objfile::map_symbol_filenames)
2190 (objfile::find_compunit_symtab_by_address)
2191 (objfile::lookup_global_symbol_language, debug_sym_fns)
2192 (install_symfile_debug_logging): Update.
2193 * objfiles.h (struct objfile) <qf>: New member.
2194 * mipsread.c (ecoff_sym_fns): Update.
2195 * machoread.c (macho_sym_fns): Update.
2196 * elfread.c (elf_sym_fns_gdb_index, elf_sym_fns_debug_names):
2198 (elf_symfile_read, elf_sym_fns, elf_sym_fns_lazy_psyms): Update.
2199 * dbxread.c (aout_sym_fns): Update.
2200 * coffread.c (coff_sym_fns): Update.
2202 2021-03-20 Tom Tromey <tom@tromey.com>
2204 * symfile.h (symbol_compare_ftype, symbol_filename_ftype)
2205 (expand_symtabs_file_matcher_ftype)
2206 (expand_symtabs_symbol_matcher_ftype)
2207 (expand_symtabs_exp_notify_ftype, struct quick_symbol_functions):
2208 Move to quick-symbol.h.
2209 * quick-symbol.h: New file.
2211 2021-03-20 Tom Tromey <tom@tromey.com>
2213 * symtab.c (iterate_over_symtabs, expand_symtab_containing_pc)
2214 (lookup_symbol_via_quick_fns, find_quick_global_symbol_language)
2215 (basic_lookup_transparent_type_quick)
2216 (find_pc_sect_compunit_symtab, find_symbol_at_address)
2217 (find_line_symtab, global_symbol_searcher::expand_symtabs):
2219 * symmisc.c (print_objfile_statistics, dump_objfile)
2220 (maintenance_expand_symtabs): Update.
2221 * symfile.c (symbol_file_add_with_addrs)
2222 (expand_symtabs_matching, map_symbol_filenames): Update.
2223 * symfile-debug.c (objfile::has_partial_symbols)
2224 (objfile::find_last_source_symtab)
2225 (objfile::forget_cached_source_info)
2226 (objfile::map_symtabs_matching_filename, objfile::lookup_symbol)
2227 (objfile::print_stats, objfile::dump)
2228 (objfile::expand_symtabs_for_function)
2229 (objfile::expand_all_symtabs)
2230 (objfile::expand_symtabs_with_fullname)
2231 (objfile::map_matching_symbols)
2232 (objfile::expand_symtabs_matching)
2233 (objfile::find_pc_sect_compunit_symtab)
2234 (objfile::map_symbol_filenames)
2235 (objfile::find_compunit_symtab_by_address)
2236 (objfile::lookup_global_symbol_language): New methods.
2237 (debug_sym_quick_functions): Remove.
2238 (debug_sym_fns, install_symfile_debug_logging): Update.
2239 * source.c (forget_cached_source_info_for_objfile)
2240 (select_source_symtab): Update.
2241 * objfiles.h (struct objfile): Add methods corresponding to
2242 quick_symbol_functions.
2243 * objfiles.c (objfile::has_partial_symbols): Move to
2245 * linespec.c (iterate_over_all_matching_symtabs): Update.
2246 * cp-support.c (add_symbol_overload_list_qualified): Update.
2247 * ada-lang.c (add_nonlocal_symbols): Update.
2249 2021-03-20 Tom Tromey <tom@tromey.com>
2251 * objfiles.h (struct objfile) <has_partial_symbols>: Return bool.
2252 * symfile.h (struct quick_symbol_functions) <has_symbols>: Return
2254 * symfile-debug.c (debug_qf_has_symbols): Return bool.
2255 * psymtab.c (psym_has_symbols): Return bool.
2256 * objfiles.c (objfile::has_partial_symbols): Return bool.
2257 * dwarf2/read.c (dw2_has_symbols): Return bool.
2259 2021-03-20 Tom Tromey <tom@tromey.com>
2261 * symfile.c (read_symbols): Update.
2262 * objfiles.h (struct objfile) <has_partial_symbols>: New method.
2263 (objfile_has_partial_symbols): Don't declare.
2264 * objfiles.c (objfile::has_partial_symbols): Rename from
2265 objfile_has_partial_symbols.
2266 (objfile_has_symbols, have_partial_symbols): Update.
2267 * elfread.c (elf_symfile_read): Update.
2268 * dwarf2/read.c (dwarf2_has_info): Update.
2269 * coffread.c (coff_symfile_read): Update.
2271 2021-03-20 Tom Tromey <tom@tromey.com>
2273 * coffread.c: Include dwarf2/public.h.
2274 * dwarf2/frame.c: Include dwarf2/public.h.
2275 * dwarf2/index-write.h: Include dwarf2/public.h, not symfile.h.
2276 * dwarf2/public.h: New file.
2277 * dwarf2/read.c: Include dwarf2/public.h.
2278 * elfread.c: Include dwarf2/public.h.
2279 * machoread.c: Include dwarf2/public.h.
2280 * symfile.h (dwarf2_has_info, enum dw_index_kind)
2281 (dwarf2_initialize_objfile, dwarf2_build_psymtabs)
2282 (dwarf2_build_frame_info): Move to dwarf2/public.h.
2283 * xcoffread.c: Include dwarf2/public.h.
2285 2021-03-20 Tom Tromey <tom@tromey.com>
2287 * symfile.h (enum dwarf2_section_enum)
2288 (dwarf2_get_section_info): Move to dwarf2/read.h.
2289 * dwarf2/read.h (enum dwarf2_section_enum)
2290 (dwarf2_get_section_info): Move from symfile.h.
2292 2021-03-19 Pedro Alves <pedro@palves.net>
2294 * thread.c (any_thread_of_inferior): Check if there's a selected
2295 thread before calling inferior_thread().
2297 2021-03-18 Tom Tromey <tromey@adacore.com>
2299 * dwarf2/stringify.c (dwarf_unit_type_name): New function. Use
2301 * dwarf2/stringify.h (dwarf_unit_type_name): Declare.
2302 * dwarf2/comp-unit.c (dwarf_unit_type_name): Remove.
2304 2021-03-18 Andrew Burgess <andrew.burgess@embecosm.com>
2306 * python/py-param.c (get_set_value): Update header comment.
2308 2021-03-17 Simon Marchi <simon.marchi@polymtl.ca>
2310 * infrun.c (check_multi_target_resumption): Remove argument to
2311 all_non_exited_inferiors.
2313 2021-03-16 Christian Biesinger <cbiesinger@google.com>
2315 * windows-nat.c (windows_init_thread_list): Add message to
2318 2021-03-16 Andrew Burgess <andrew.burgess@embecosm.com>
2320 * python/py-framefilter.c (py_print_frame): Use PyInt_Check as
2321 well as PyLong_Check for Python 2.
2323 2021-03-15 Tom Tromey <tromey@adacore.com>
2326 * rust-exp.y (maker_map): Use gdb::hash_enum.
2327 * stap-probe.c (stap_maker_map): Use gdb::hash_enum.
2329 2021-03-15 Simon Marchi <simon.marchi@polymtl.ca>
2331 * dwarf2/read.c (create_debug_type_hash_table): Remove colon at
2334 2021-03-15 Simon Marchi <simon.marchi@polymtl.ca>
2336 * dwarf2/read.c (dw2_get_file_names_reader): Remove info_ptr
2337 parameter, adjust caller.
2339 2021-03-15 Tom Tromey <tromey@adacore.com>
2341 * ada-exp.y (simple_exp): Always push a result for unary '+'.
2343 2021-03-15 Tom Tromey <tromey@adacore.com>
2345 * ada-lang.c (ada_unop_ind_operation::evaluate): Call
2346 ada_ensure_varsize_limit.
2348 2021-03-15 Tom Tromey <tromey@adacore.com>
2350 * ada-lang.c (numeric_type_p, integer_type_p): Return true for
2352 * ada-exp.y (maybe_overload): New function.
2353 (ada_wrap_overload): New function.
2354 (ada_un_wrap2, ada_wrap2, ada_wrap_op): Use maybe_overload.
2355 (exp1, simple_exp, relation, and_exp, and_then_exp, or_exp)
2356 (or_else_exp, xor_exp, primary): Update.
2358 2021-03-15 Tom Tromey <tromey@adacore.com>
2361 * ada-lang.c (ada_var_value_operation::evaluate): Use recursive
2362 call for tagged type.
2364 2021-03-15 Tom Tromey <tromey@adacore.com>
2366 * ada-exp.y (exp1): Handle resolution of the right hand side of an
2369 2021-03-15 Tom Tromey <tromey@adacore.com>
2371 * ada-lang.c (ada_aggregate_operation::assign_aggregate): Return
2373 (ada_assign_operation::evaluate): Update.
2374 * ada-exp.h (class ada_aggregate_operation) <assign_aggregate>:
2377 2021-03-15 Felix Willgerodt <felix.willgerodt@intel.com>
2379 * i386-tdep.c (i386_floatformat_for_type): Add COMPLEX*32 and REAL*16.
2381 2021-03-15 Andrew Burgess <andrew.burgess@embecosm.com>
2383 * python/python.c (gdbpy_source_objfile_script): Use
2384 make_scoped_restore to restore gdbpy_current_objfile.
2385 (gdbpy_execute_objfile_script): Likewise.
2387 2021-03-14 Tom Tromey <tom@tromey.com>
2389 * dwarf2/read.c (read_attribute_value): Use cu_header
2392 2021-03-14 Tom Tromey <tom@tromey.com>
2394 * dwarf2/read.c (struct die_reader_specs) <abfd>: Fix formatting.
2395 (peek_die_abbrev): Use reader.abfd.
2397 2021-03-14 Tom Tromey <tom@tromey.com>
2399 * dwarf2/read.c (dwarf2_per_cu_data::get_header): Set
2402 2021-03-13 Tom Tromey <tom@tromey.com>
2404 * dwarf2/read.c (struct partial_die_info): Update.
2405 (peek_die_abbrev, skip_children, skip_one_die, read_full_die_1)
2406 (load_partial_dies, partial_die_info::partial_die_info): Update.
2407 * dwarf2/abbrev.h (lookup_abbrev): Constify.
2409 2021-03-13 Tom Tromey <tom@tromey.com>
2411 * dwarf2/abbrev.c (abbrev_table::read): Remove Irix 6 workaround.
2413 2021-03-12 Christian Biesinger <cbiesinger@google.com>
2416 * cp-support.c: Use scoped_segv_handler_restore.
2417 * event-top.c (thread_local_segv_handler): Made static.
2418 (scoped_segv_handler_restore::scoped_segv_handler_restore):
2420 (scoped_segv_handler_restore::~scoped_segv_handler_restore): New
2422 * event-top.h (class scoped_segv_handler_restore): New class.
2423 (thread_local_segv_handler): Removed.
2425 2021-03-10 Tom Tromey <tromey@adacore.com>
2427 * parser-defs.h (parser_state): Change completion to bool.
2428 <parse_completion>: Likewise.
2429 * ada-lang.h (ada_find_operator_symbol, ada_resolve_funcall)
2430 (ada_resolve_variable, ada_resolve_function): Update.
2431 * ada-lang.c (ada_find_operator_symbol): Change
2432 parse_completion to bool.
2433 (ada_resolve_funcall, ada_resolve_variable)
2434 (ada_resolve_function): Likewise.
2436 2021-03-09 Tom Tromey <tromey@adacore.com>
2438 * eval.c (operation::evaluate_funcall): Use function formal
2439 parameter types when evaluating.
2441 2021-03-09 Andrew Burgess <andrew.burgess@embecosm.com>
2443 * gdb-gdb.py.in (StructMainTypePrettyPrinter) <owner_to_string>:
2444 Updated fields names flag_objfile_owned to m_flag_objfile_owned,
2445 and owner to m_owner.
2447 2021-03-09 Felix Willgerodt <felix.willgerodt@intel.com>
2449 * f-exp.h (eval_op_f_loc): Declare.
2450 (expr::fortran_loc_operation): New typedef.
2451 * f-exp.y (exp): Handle UNOP_FORTRAN_LOC after parsing an
2453 (f77_keywords): Add LOC keyword.
2454 * f-lang.c (eval_op_f_loc): New function.
2455 * std-operator.def (UNOP_FORTRAN_LOC): New operator.
2457 2021-03-09 Andrew Burgess <andrew.burgess@embecosm.com>
2459 * f-exp.h (eval_op_f_array_shape): Declare.
2460 (fortran_array_shape_operation): New type.
2461 * f-exp.y (exp): Handle UNOP_FORTRAN_SHAPE after parsing
2463 (f77_keywords): Add "shape" keyword.
2464 * f-lang.c (fortran_array_shape): New function.
2465 (eval_op_f_array_shape): New function.
2466 * std-operator.def (UNOP_FORTRAN_SHAPE): New operator.
2468 2021-03-09 Andrew Burgess <andrew.burgess@embecosm.com>
2470 * f-exp.y (eval_op_f_array_size): Declare 1 and 2 argument forms
2472 (expr::fortran_array_size_1arg): New type.
2473 (expr::fortran_array_size_2arg): Likewise.
2474 * f-exp.y (exp): Handle FORTRAN_ARRAY_SIZE after parsing
2475 UNOP_OR_BINOP_INTRINSIC.
2476 (f77_keywords): Add "size" keyword.
2477 * f-lang.c (fortran_array_size): New function.
2478 (eval_op_f_array_size): New function, has a 1 arg and 2 arg form.
2479 * std-operator.def (FORTRAN_ARRAY_SIZE): New operator.
2481 2021-03-09 Andrew Burgess <andrew.burgess@embecosm.com>
2483 * f-exp.h (eval_op_f_rank): Declare.
2484 (expr::fortran_rank_operation): New typedef.
2485 * f-exp.y (exp): Handle UNOP_FORTRAN_RANK after parsing an
2487 (f77_keywords): Add "rank" keyword.
2488 * f-lang.c (eval_op_f_rank): New function.
2489 * std-operator.def (UNOP_FORTRAN_RANK): New operator.
2491 2021-03-08 Tom Tromey <tom@tromey.com>
2493 * printcmd.c (set_command): Remove null check.
2494 * value.c (init_if_undefined_command): Remove null check.
2496 2021-03-08 Tom Tromey <tom@tromey.com>
2498 * parse.c (parser_state::push_symbol, parser_state::push_dollar):
2500 * p-exp.y (variable): Update.
2501 * go-exp.y (variable): Update.
2502 * expprint.c (dump_for_expression): Use bound_minimal_symbol.
2503 Remove overload for objfile.
2504 * expop.h (eval_op_var_msym_value): Use bound_minimal_symbol
2506 (check_objfile): Likewise.
2507 (dump_for_expression): Likewise. Remove overload for objfile.
2508 (class var_msym_value_operation): Use bound_minimal_symbol.
2509 * eval.c (eval_op_var_msym_value): Use bound_minimal_symbol
2511 (var_msym_value_operation::evaluate_for_address)
2512 (var_msym_value_operation::evaluate_for_sizeof)
2513 (var_msym_value_operation::evaluate_for_cast): Update.
2514 * d-exp.y (PrimaryExpression): Update.
2515 * c-exp.y (variable): Update.
2516 * ax-gdb.c (var_msym_value_operation::do_generate_ax): Update.
2517 * ada-lang.c (ada_var_msym_value_operation::evaluate_for_cast):
2519 * ada-exp.y (write_var_or_type): Update.
2521 2021-03-08 Tom Tromey <tom@tromey.com>
2523 * parser-defs.h (exp_uses_objfile): Return bool.
2524 * parse.c (exp_uses_objfile): Return bool.
2526 2021-03-08 Tom Tromey <tom@tromey.com>
2528 * value.h (eval_skip_value): Don't declare.
2529 * opencl-lang.c (eval_opencl_assign): Update.
2530 * m2-lang.c (eval_op_m2_high, eval_op_m2_subscript): Update.
2531 * f-lang.c (eval_op_f_abs, eval_op_f_mod, eval_op_f_ceil)
2532 (eval_op_f_floor, eval_op_f_modulo, eval_op_f_cmplx): Remove.
2533 * expression.h (enum noside) <EVAL_SKIP>: Remove.
2534 * expop.h (typeof_operation::evaluate)
2535 (decltype_operation::evaluate, unop_addr_operation::evaluate)
2536 (unop_sizeof_operation::evaluate, assign_operation::evaluate)
2537 (cxx_cast_operation::evaluate): Update.
2538 * eval.c (eval_skip_value): Remove.
2539 (eval_op_scope, eval_op_var_entry_value)
2540 (eval_op_func_static_var, eval_op_string, eval_op_objc_selector)
2541 (eval_op_concat, eval_op_ternop, eval_op_structop_struct)
2542 (eval_op_structop_ptr, eval_op_member, eval_op_add, eval_op_sub)
2543 (eval_op_binary, eval_op_subscript, eval_op_equal)
2544 (eval_op_notequal, eval_op_less, eval_op_gtr, eval_op_geq)
2545 (eval_op_leq, eval_op_repeat, eval_op_plus, eval_op_neg)
2546 (eval_op_complement, eval_op_lognot, eval_op_ind)
2547 (eval_op_memval, eval_op_preinc, eval_op_predec)
2548 (eval_op_postinc, eval_op_postdec, eval_op_type)
2549 (eval_binop_assign_modify, eval_op_objc_msgcall)
2550 (eval_multi_subscript, logical_and_operation::evaluate)
2551 (logical_or_operation::evaluate, array_operation::evaluate)
2552 (operation::evaluate_for_cast)
2553 (var_msym_value_operation::evaluate_for_cast)
2554 (var_value_operation::evaluate_for_cast): Update.
2555 * c-lang.c (c_string_operation::evaluate): Update.
2556 * c-exp.h (objc_nsstring_operation::evaluate)
2557 (objc_selector_operation::evaluate): Update.
2558 * ada-lang.c (ada_assign_operation::evaluate)
2559 (eval_ternop_in_range, ada_unop_neg, ada_unop_in_range)
2560 (ada_atr_size): Update.
2562 2021-03-08 Tom Tromey <tom@tromey.com>
2564 * eval.c: Merge "namespace" scopes.
2566 2021-03-08 Tom Tromey <tom@tromey.com>
2568 * parser-defs.h (struct expr_builder) <expr_builder>: Inline.
2570 * parse.c (expr_builder::expr_builder, expr_builder::release):
2573 2021-03-08 Tom Tromey <tom@tromey.com>
2575 * parse.c (expression::expression, expression::~expression):
2577 * expression.h (struct expression): Inline constructor. Remove
2580 2021-03-08 Tom Tromey <tom@tromey.com>
2582 * std-operator.def (BINOP_END): Remove.
2583 * p-exp.y (tokentab3, tokentab2): Use OP_NULL, not BINOP_END.
2584 * go-exp.y (tokentab2): Use OP_NULL, not BINOP_END.
2585 * f-exp.y (dot_ops, f77_keywords): Use OP_NULL, not BINOP_END.
2586 * d-exp.y (tokentab2, ident_tokens): Use OP_NULL, not BINOP_END.
2587 * c-exp.y (tokentab3, tokentab2, ident_tokens): Use OP_NULL, not
2590 2021-03-08 Tom Tromey <tom@tromey.com>
2592 * expression.h (enum exp_opcode) <OP_UNUSED_LAST>: Remove.
2594 2021-03-08 Tom Tromey <tom@tromey.com>
2596 * std-operator.def (OP_EXTENDED0): Remove.
2598 2021-03-08 Tom Tromey <tom@tromey.com>
2600 * std-operator.def (OP_NAME, OP_ATR_IMAGE, OP_ATR_MODULUS)
2601 (OP_OTHERS, OP_CHOICES, OP_POSITIONAL, OP_DISCRETE_RANGE):
2604 2021-03-08 Tom Tromey <tom@tromey.com>
2606 * std-operator.def (UNOP_CAP, UNOP_CHR, UNOP_ORD, UNOP_FLOAT)
2607 (UNOP_MAX, UNOP_MIN, UNOP_ODD, UNOP_TRUNC, OP_M2_STRING): Remove.
2609 2021-03-08 Tom Tromey <tom@tromey.com>
2611 * std-operator.def (OP_ATR_MIN, OP_ATR_MAX): Remove.
2612 * ada-lang.c (ada_binop_minmax): Update.
2613 * ada-exp.h (ada_binop_min_operation, ada_binop_max_operation):
2614 Use BINOP_MIN and BINOP_MAX.
2616 2021-03-08 Tom Tromey <tom@tromey.com>
2618 * value.h (evaluate_subexp_with_coercion): Don't declare.
2619 * parse.c (exp_descriptor_standard): Remove.
2620 (expr_builder::expr_builder, expr_builder::release): Update.
2621 (expression::expression): Remove size_t parameter.
2622 (expression::~expression): Simplify.
2623 (expression::resize): Remove.
2624 (write_exp_elt, write_exp_elt_opcode, write_exp_elt_sym)
2625 (write_exp_elt_msym, write_exp_elt_block, write_exp_elt_objfile)
2626 (write_exp_elt_longcst, write_exp_elt_floatcst)
2627 (write_exp_elt_type, write_exp_elt_intern, write_exp_string)
2628 (write_exp_string_vector, write_exp_bitstring): Remove.
2629 * p-lang.h (class pascal_language) <opcode_print_table,
2630 op_print_tab>: Remove.
2631 * p-lang.c (pascal_language::op_print_tab): Remove.
2632 * opencl-lang.c (class opencl_language) <opcode_print_table>:
2634 * objc-lang.c (objc_op_print_tab): Remove.
2635 (class objc_language) <opcode_print_table>: Remove.
2636 * m2-lang.h (class m2_language) <opcode_print_table,
2637 op_print_tab>: Remove.
2638 * m2-lang.c (m2_language::op_print_tab): Remove.
2639 * language.h (struct language_defn) <post_parser, expression_ops,
2640 opcode_print_table>: Remove.
2641 * language.c (language_defn::expression_ops)
2642 (auto_or_unknown_language::opcode_print_table): Remove.
2643 * go-lang.h (class go_language) <opcode_print_table,
2644 op_print_tab>: Remove.
2645 * go-lang.c (go_language::op_print_tab): Remove.
2646 * f-lang.h (class f_language) <opcode_print_table>: Remove
2647 <op_print_tab>: Remove.
2648 * f-lang.c (f_language::op_print_tab): Remove.
2649 * expression.h (union exp_element): Remove.
2650 (struct expression): Remove size_t parameter from constructor.
2652 <first_opcode>: Update.
2653 <nelts, elts>: Remove.
2654 (EXP_ELEM_TO_BYTES, BYTES_TO_EXP_ELEM): Remove.
2655 (evaluate_subexp_standard, print_expression, op_string)
2656 (dump_raw_expression): Don't declare.
2657 * expprint.c (print_expression, print_subexp)
2658 (print_subexp_funcall, print_subexp_standard, op_string)
2659 (dump_raw_expression, dump_subexp, dump_subexp_body)
2660 (dump_subexp_body_funcall, dump_subexp_body_standard): Remove.
2661 (dump_prefix_expression): Update.
2662 * eval.c (evaluate_subexp): Remove.
2663 (evaluate_expression, evaluate_type): Update.
2664 (evaluate_subexpression_type): Remove.
2665 (fetch_subexp_value): Remove "pc" parameter. Update.
2666 (extract_field_op, evaluate_struct_tuple, evaluate_funcall)
2667 (evaluate_subexp_standard, evaluate_subexp_for_address)
2668 (evaluate_subexp_with_coercion, evaluate_subexp_for_sizeof)
2669 (evaluate_subexp_for_cast): Remove.
2670 (parse_and_eval_type): Update.
2671 * dtrace-probe.c (dtrace_probe::compile_to_ax): Update.
2672 * d-lang.c (d_op_print_tab): Remove.
2673 (class d_language) <opcode_print_table>: Remove.
2674 * c-lang.h (c_op_print_tab): Don't declare.
2675 * c-lang.c (c_op_print_tab): Remove.
2676 (class c_language, class cplus_language, class asm_language, class
2677 minimal_language) <opcode_print_table>: Remove.
2678 * breakpoint.c (update_watchpoint, watchpoint_check)
2679 (watchpoint_exp_is_const, watch_command_1): Update.
2680 * ax-gdb.h (union exp_element): Don't declare.
2681 * ax-gdb.c (const_var_ref, const_expr, maybe_const_expr)
2682 (gen_repeat, gen_sizeof, gen_expr_for_cast, gen_expr)
2683 (gen_expr_binop_rest): Remove.
2684 (gen_trace_for_expr, gen_eval_for_expr, gen_printf): Update.
2685 * ada-lang.c (ada_op_print_tab): Remove.
2686 (class ada_language) <post_parser, opcode_print_table>: Remove.
2688 2021-03-08 Tom Tromey <tom@tromey.com>
2690 * go-lang.c (go_language::expression_ops): Don't declare.
2691 * go-lang.h (class go_language) <expression_ops>: Remove.
2692 * opencl-lang.c (evaluate_subexp_opencl, exp_descriptor_opencl):
2694 (class opencl_language) <expression_ops>: Remove.
2695 * d-lang.c (class d_language) <expression_ops>: Remove.
2696 * c-lang.h (evaluate_subexp_c, exp_descriptor_c): Don't declare.
2697 * c-lang.c (evaluate_subexp_c, exp_descriptor_c): Remove.
2698 (class c_language, class cplus_language, class asm_language)
2699 (class minimal_language) <expression_ops>: Remove.
2701 2021-03-08 Tom Tromey <tom@tromey.com>
2703 * ada-lang.c (resolve_subexp, replace_operator_with_call)
2704 (evaluate_subexp_type, assign_aggregate)
2705 (aggregate_assign_positional, aggregate_assign_from_choices)
2706 (aggregate_assign_others, ada_evaluate_subexp_for_cast)
2707 (ada_evaluate_subexp, ADA_OPERATORS, ada_operator_length)
2708 (ada_operator_check, ada_forward_operator_length)
2709 (ada_dump_subexp_body, ada_print_subexp, ada_exp_descriptor):
2711 (post_parser): Update.
2712 (class ada_language) <expresssion_ops>: Remove.
2714 2021-03-08 Tom Tromey <tom@tromey.com>
2716 * m2-lang.h (class m2_language) <expresssion_ops,
2717 exp_descriptor_modula2>: Remove.
2718 * m2-lang.c (evaluate_subexp_modula2)
2719 (m2_language::exp_descriptor_modula2): Remove.
2721 2021-03-08 Tom Tromey <tom@tromey.com>
2723 * f-lang.h (class f_language) <expresssion_ops>: Remove.
2724 <exp_descriptor_tab>: Remove.
2725 * f-lang.c (fortran_value_subarray, evaluate_subexp_f)
2726 (operator_length_f, print_unop_subexp_f, print_binop_subexp_f)
2727 (print_subexp_f, dump_subexp_body_f, operator_check_f)
2728 (f_language::exp_descriptor_tab, fortran_prepare_argument):
2731 2021-03-08 Tom Tromey <tom@tromey.com>
2733 * rust-lang.h (class rust_language) <expression_ops,
2734 exp_descriptor_tab>: Remove.
2735 * rust-lang.c (rust_evaluate_funcall): Remove.
2736 (rust_range, rust_subscript, eval_op_rust_complement): Don't use
2738 (rust_evaluate_subexp): Remove.
2739 (rust_aggregate_operation::evaluate): Don't use EVAL_SKIP.
2740 (rust_operator_length, rust_dump_subexp_body, rust_print_subexp)
2741 (rust_operator_check, rust_language::exp_descriptor_tab): Remove.
2743 2021-03-08 Tom Tromey <tom@tromey.com>
2745 * ada-exp.y: Create operations.
2746 (empty_stoken): Remove.
2747 (ada_pop, ada_wrap, ada_addrof, ada_un_wrap2, ada_wrap2)
2748 (ada_wrap_op, ada_wrap3, ada_funcall): New functions.
2749 (components): New global.
2750 (push_component, choice_component, pop_component, pop_components):
2752 (associations): New global
2753 (push_association, pop_association, pop_associations): New
2755 (ada_parse): Update.
2756 (write_var_from_sym, write_int): Create operations.
2757 (write_exp_op_with_string): Remove.
2758 (write_object_renaming, write_selectors, write_ambiguous_var)
2759 (write_var_or_type, write_name_assoc): Create operations.
2760 * ada-lang.h (ada_index_type): Declare.
2761 * ada-lang.c (ada_index_type): No longer static.
2763 2021-03-08 Tom Tromey <tom@tromey.com>
2765 * f-exp.y: Create operations.
2766 (f_language::parser): Update.
2768 2021-03-08 Tom Tromey <tom@tromey.com>
2770 * m2-exp.y: Create operations.
2771 (m2_language::parser): Update.
2773 2021-03-08 Tom Tromey <tom@tromey.com>
2775 * p-exp.y: Create operations.
2776 (pascal_language::parser): Update.
2778 2021-03-08 Tom Tromey <tom@tromey.com>
2780 * d-exp.y: Create operations.
2783 2021-03-08 Tom Tromey <tom@tromey.com>
2785 * go-exp.y: Create operations.
2786 (go_language::parser): Update.
2788 2021-03-08 Tom Tromey <tom@tromey.com>
2790 * objc-lang.c (end_msglist): Create operations.
2791 * c-exp.y: Change parser to create operations.
2792 (write_destructor_name): Remove.
2795 2021-03-08 Tom Tromey <tom@tromey.com>
2797 * rust-exp.y: Create operations.
2798 (rust_parser::convert_params_to_expression): Change return type.
2799 (binop_maker_ftype): New typedef.
2800 (maker_map): New global.
2801 (rust_parser::convert_ast_to_expression): Change return type.
2802 (rust_language::parser): Update.
2803 (_initialize_rust_exp): Initialize maker_map.
2805 2021-03-08 Tom Tromey <tom@tromey.com>
2807 * stap-probe.c (binop_maker_ftype): New typedef.
2808 (stap_maker_map): New global.
2809 (stap_make_binop): New function.
2810 (stap_parse_register_operand): Return operation_up.
2811 (stap_parse_single_operand, stap_parse_argument_conditionally)
2812 (stap_parse_argument_1): Likewise.
2813 (stap_parse_argument): Create operations.
2814 (stap_probe::parse_arguments): Update.
2815 (_initialize_stap_probe): Initialize stap_maker_map.
2816 * ppc-linux-tdep.c (ppc_stap_parse_special_token): Change return
2818 * i386-tdep.h (i386_stap_parse_special_token): Change return
2820 * i386-tdep.c (i386_stap_parse_special_token_triplet)
2821 (i386_stap_parse_special_token_three_arg_disp)
2822 (i386_stap_parse_special_token): Change return type.
2823 * gdbarch.sh (stap_parse_special_token): Change return type.
2824 * gdbarch.c: Rebuild.
2825 * gdbarch.h: Rebuild.
2826 * arm-linux-tdep.c (arm_stap_parse_special_token): Change return
2828 * aarch64-linux-tdep.c (aarch64_stap_parse_special_token): Change
2831 2021-03-08 Tom Tromey <tom@tromey.com>
2833 * gdbarch.sh (dtrace_parse_probe_argument): Change return type.
2834 * gdbarch.h: Rebuild.
2835 * gdbarch.c: Rebuild.
2836 * dtrace-probe.c (dtrace_probe::build_arg_exprs): Update.
2837 * amd64-linux-tdep.c (amd64_dtrace_parse_probe_argument): Change
2839 (amd64_dtrace_parse_probe_argument): Update.
2841 2021-03-08 Tom Tromey <tom@tromey.com>
2843 * parser-defs.h (struct parser_state) <push, push_new,
2844 push_c_string, push_symbol, push_dollar, pop, pop_vector, wrap,
2845 wrap2>: New methods.
2846 <m_operations>: New member.
2847 * parse.c (parser_state::push_c_string)
2848 (parser_state::push_symbol, parser_state::push_dollar): New
2851 2021-03-08 Tom Tromey <tom@tromey.com>
2853 * parser-defs.h (struct expr_completion_state) <expout_last_op>:
2855 (struct parser_state) <mark_struct_expression>: New method.
2856 * parse.c (parser_state::mark_struct_expression): Update assert.
2857 (parser_state::mark_struct_expression): New method.
2858 (parser_state::mark_completion_tag): Update assert.
2859 (parse_expression_for_completion): Handle expout_last_op.
2861 2021-03-08 Tom Tromey <tom@tromey.com>
2863 * ada-exp.h (class ada_var_value_operation) <get_symbol>: Remove;
2865 * value.h (fetch_subexp_value): Add "op" parameter.
2866 * value.c (init_if_undefined_command): Update.
2867 * tracepoint.c (validate_actionline, encode_actions_1): Update.
2868 * stap-probe.c (stap_probe::compile_to_ax): Update.
2869 * printcmd.c (set_command): Update.
2870 * ppc-linux-nat.c (ppc_linux_nat_target::check_condition):
2872 * parser-defs.h (struct expr_builder) <set_operation>: New
2874 * parse.c (parse_exp_in_context, exp_uses_objfile): Update.
2875 * expression.h (struct expression) <first_opcode>: Update.
2877 * expprint.c (dump_raw_expression, dump_prefix_expression):
2879 * expop.h (class var_value_operation) <get_symbol>: New method.
2880 (class register_operation) <get_name>: New method.
2881 (class equal_operation): No longer a typedef, now a subclass.
2882 (class unop_memval_operation) <get_type>: New method.
2883 (class assign_operation) <get_lhs>: New method.
2884 (class unop_cast_operation) <get_type>: New method.
2885 * eval.c (evaluate_expression, evaluate_type)
2886 (evaluate_subexpression_type): Update.
2887 (fetch_subexp_value): Add "op" parameter.
2888 (parse_and_eval_type): Update.
2889 * dtrace-probe.c (dtrace_probe::compile_to_ax): Update.
2890 * breakpoint.c (update_watchpoint, watchpoint_check)
2891 (watchpoint_exp_is_const, watch_command_1): Update.
2892 * ax-gdb.c (gen_trace_for_expr, gen_eval_for_expr, gen_printf):
2895 2021-03-08 Tom Tromey <tom@tromey.com>
2897 * ada-lang.c (ada_value_binop): Do not use op_string.
2899 2021-03-08 Tom Tromey <tom@tromey.com>
2901 * expprint.c (dump_for_expression): New overload.
2902 * expop.h (check_objfile, dump_for_expression): Declare new
2904 * ada-lang.c (check_objfile): New overload.
2905 (assign_component, ada_aggregate_component::uses_objfile)
2906 (ada_aggregate_component::dump, ada_aggregate_component::assign)
2907 (ada_aggregate_component::assign_aggregate)
2908 (ada_positional_component::uses_objfile)
2909 (ada_positional_component::dump, ada_positional_component::assign)
2910 (ada_discrete_range_association::uses_objfile)
2911 (ada_discrete_range_association::dump)
2912 (ada_discrete_range_association::assign)
2913 (ada_name_association::uses_objfile, ada_name_association::dump)
2914 (ada_name_association::assign)
2915 (ada_choices_component::uses_objfile, ada_choices_component::dump)
2916 (ada_choices_component::assign)
2917 (ada_others_component::uses_objfile, ada_others_component::dump)
2918 (ada_others_component::assign, ada_assign_operation::evaluate):
2920 * ada-exp.h (ada_string_operation) <get_name>: New method.
2921 (class ada_assign_operation): New.
2922 (class ada_component): New.
2923 (ada_component_up): New typedef.
2924 (class ada_aggregate_operation, class ada_aggregate_component)
2925 (class ada_positional_component, class ada_others_component)
2926 (class ada_association): New.
2927 (ada_association_up): New typedef.
2928 (class ada_choices_component)
2929 (class ada_discrete_range_association)
2930 (class ada_name_association): New.
2932 2021-03-08 Tom Tromey <tom@tromey.com>
2934 * ada-lang.c (ada_var_value_operation::resolve)
2935 (ada_funcall_operation::resolve)
2936 (ada_ternop_slice_operation::resolve): New methods.
2937 * ada-exp.h (struct ada_resolvable): New.
2938 (class ada_var_value_operation): Derive from ada_resolvable.
2939 <get_block, resolve>: New methods.
2940 (class ada_funcall_operation): Derive from ada_resolvable.
2941 <resolve>: New method.
2942 (class ada_ternop_slice_operation): Derive from ada_resolvable.
2943 <resolve>: New method.
2945 2021-03-08 Tom Tromey <tom@tromey.com>
2947 * ada-lang.c (ada_funcall_operation::evaluate): New method.
2948 * ada-exp.h (class ada_var_msym_value_operation) <get_symbol>: New
2950 (class ada_funcall_operation): New.
2952 2021-03-08 Tom Tromey <tom@tromey.com>
2954 * ada-lang.c (ada_structop_operation::evaluate): New method.
2955 * ada-exp.h (class ada_structop_operation): New.
2957 2021-03-08 Tom Tromey <tom@tromey.com>
2959 * ada-lang.c (ada_unop_ind_operation::evaluate): New method.
2960 * ada-exp.h (class ada_unop_ind_operation): New.
2962 2021-03-08 Tom Tromey <tom@tromey.com>
2964 * ada-lang.c (ada_binop_exp): No longer static.
2965 * ada-exp.h (ada_binop_exp_operation): New typedef.
2967 2021-03-08 Tom Tromey <tom@tromey.com>
2969 * ada-lang.c (ada_val_atr): No longer static.
2970 (ada_atr_val_operation::evaluate): New method.
2971 * ada-exp.h (class ada_atr_val_operation): New.
2973 2021-03-08 Tom Tromey <tom@tromey.com>
2975 * ada-lang.c (ada_pos_atr): No longer static.
2976 * ada-exp.h (ada_pos_operation): New typedef.
2978 2021-03-08 Tom Tromey <tom@tromey.com>
2980 * ada-lang.c (ada_pos_atr): Rename from value_pos_atr. Change
2982 (ada_evaluate_subexp): Use it.
2984 2021-03-08 Tom Tromey <tom@tromey.com>
2986 * ada-lang.c (ada_binop_minmax): No longer static.
2987 * ada-exp.h (ada_binop_min_operation, ada_binop_max_operation):
2990 2021-03-08 Tom Tromey <tom@tromey.com>
2992 * ada-lang.c (ada_var_msym_value_operation::evaluate_for_cast):
2994 * ada-exp.h (class ada_var_msym_value_operation): New.
2996 2021-03-08 Tom Tromey <tom@tromey.com>
2998 * ada-lang.c (ada_var_value_operation::evaluate_for_cast)
2999 (ada_var_value_operation::evaluate): New methods.
3000 * ada-exp.h (class ada_var_value_operation): New.
3002 2021-03-08 Tom Tromey <tom@tromey.com>
3004 * ada-lang.c (ada_unop_atr_operation::evaluate): New method.
3005 * ada-exp.h (class ada_unop_atr_operation): New.
3007 2021-03-08 Tom Tromey <tom@tromey.com>
3009 * ada-lang.c (ada_binop_in_bounds): No longer static.
3010 * ada-exp.h (class ada_binop_in_bounds_operation): New.
3012 2021-03-08 Tom Tromey <tom@tromey.com>
3014 * ada-lang.c (ada_ternop_slice): No longer static.
3015 * ada-exp.h (class ada_ternop_slice_operation): New.
3017 2021-03-08 Tom Tromey <tom@tromey.com>
3019 * ada-exp.h (ada_bitwise_operation): New template class.
3020 (ada_bitwise_and_operation, ada_bitwise_ior_operation)
3021 (ada_bitwise_xor_operation): New typedefs.
3023 2021-03-08 Tom Tromey <tom@tromey.com>
3025 * ada-lang.c (ada_equal_binop): No longer static.
3026 * ada-exp.h (class ada_binop_equal_operation): New.
3028 2021-03-08 Tom Tromey <tom@tromey.com>
3030 * ada-lang.c (ada_mult_binop): No longer static.
3031 * ada-exp.h (ada_binop_mul_operation ada_binop_div_operation)
3032 (ada_binop_rem_operation, ada_binop_mod_operation): New typedefs.
3034 2021-03-08 Tom Tromey <tom@tromey.com>
3036 * ada-lang.c (ada_binop_addsub_operation::evaluate): New method.
3037 * ada-exp.h (class ada_binop_addsub_operation): New.
3039 2021-03-08 Tom Tromey <tom@tromey.com>
3041 * ada-lang.h (ada_find_operator_symbol, ada_resolve_funcall)
3042 (ada_resolve_variable): Declare.
3043 * ada-lang.c (ada_find_operator_symbol, ada_resolve_funcall)
3044 (ada_resolve_variable): New functions.
3045 (resolve_subexp): Update.
3047 2021-03-08 Tom Tromey <tom@tromey.com>
3049 * opencl-lang.c (opencl_ternop_cond_operation::evaluate): New
3051 * c-exp.h (class opencl_ternop_cond_operation): New.
3053 2021-03-08 Tom Tromey <tom@tromey.com>
3055 * opencl-lang.c (opencl_logical_binop_operation::evaluate): New
3057 * c-exp.h (class opencl_logical_binop_operation): New.
3059 2021-03-08 Tom Tromey <tom@tromey.com>
3061 * opencl-lang.c (opencl_structop_operation::evaluate): New
3063 * c-exp.h (class opencl_structop_operation): New.
3065 2021-03-08 Tom Tromey <tom@tromey.com>
3067 * opencl-lang.c (opencl_logical_not): No longer static. Change
3069 (evaluate_subexp_opencl): Update.
3070 * c-exp.h (opencl_notequal_operation): New typedef.
3072 2021-03-08 Tom Tromey <tom@tromey.com>
3074 * opencl-lang.c (opencl_relop, eval_opencl_assign): No longer
3075 static. Change parameters.
3076 (eval_opencl_assign): No longer static. Add "op" parameter.
3077 (evaluate_subexp_opencl): Update.
3078 * c-exp.h (opencl_binop_operation): New template class.
3079 (opencl_assign_operation, opencl_equal_operation)
3080 (opencl_notequal_operation, opencl_less_operation)
3081 (opencl_gtr_operation, opencl_geq_operation)
3082 (opencl_leq_operation): New typedefs.
3084 2021-03-08 Tom Tromey <tom@tromey.com>
3086 * opencl-lang.c (opencl_value_cast): No longer static.
3087 * c-exp.h (opencl_cast_type_operation): New typedef.
3089 2021-03-08 Tom Tromey <tom@tromey.com>
3091 * f-exp.h (eval_op_f_allocated): Declare.
3092 (fortran_allocated_operation): New typedef.
3093 * f-lang.c (eval_op_f_allocated): No longer static.
3095 2021-03-08 Tom Tromey <tom@tromey.com>
3097 * f-lang.c (eval_op_f_associated): New functions.
3098 * f-exp.h (fortran_associated_1arg, fortran_associated_2arg): New
3101 2021-03-08 Tom Tromey <tom@tromey.com>
3103 * f-lang.c (fortran_bound_1arg::evaluate)
3104 (fortran_bound_2arg::evaluate): New methods.
3105 * f-exp.h (class fortran_bound_1arg, class fortran_bound_2arg):
3108 2021-03-08 Tom Tromey <tom@tromey.com>
3110 * expop.h (class unop_addr_operation) <get_expression>: New
3112 * f-lang.c (fortran_undetermined::value_subarray)
3113 (fortran_undetermined::evaluate): New methods.
3114 (fortran_prepare_argument): New overload.
3115 * f-exp.h (class fortran_range_operation)
3116 (class fortran_undetermined): New classes.
3118 2021-03-08 Tom Tromey <tom@tromey.com>
3120 * rust-lang.c (rust_structop::evaluate_funcall): New method.
3121 * rust-exp.h (class rust_structop) <evaluate_funcall>: Declare
3124 2021-03-08 Tom Tromey <tom@tromey.com>
3126 * expression.h (class operation) <evaluate_funcall>: New methods.
3127 * expop.h (class scope_operation) <evaluate_funcall>: New method.
3128 (class var_value_operation) <evaluate_funcall>: New method.
3129 (class structop_base_operation) <evaluate_funcall>: New method.
3130 (class var_msym_value_operation) <evaluate_funcall>: New method.
3131 (class structop_member_base): New class.
3132 (class structop_member_operation): Derive from
3133 structop_member_base.
3134 (class structop_mptr_operation): Derive from
3135 structop_member_base.
3136 (class funcall_operation): New class.
3137 * eval.c (operation::evaluate_funcall)
3138 (var_value_operation::evaluate_funcall)
3139 (scope_operation::evaluate_funcall)
3140 (structop_member_base::evaluate_funcall)
3141 (structop_base_operation::evaluate_funcall): New methods.
3143 2021-03-08 Tom Tromey <tom@tromey.com>
3145 * expop.h (class array_operation): New.
3146 * eval.c (array_operation::evaluate_struct_tuple)
3147 (array_operation::evaluate): New methods.
3149 2021-03-08 Tom Tromey <tom@tromey.com>
3151 * expop.h (class adl_func_operation): New.
3152 * eval.c (adl_func_operation::evaluate): New method.
3154 2021-03-08 Tom Tromey <tom@tromey.com>
3156 * ada-lang.c (ada_unop_in_range): No longer static.
3157 * ada-exp.h (class ada_unop_range_operation): New.
3159 2021-03-08 Tom Tromey <tom@tromey.com>
3161 * ada-lang.c (ada_unop_neg, ada_atr_tag, ada_atr_size, ada_abs):
3163 * ada-exp.h (ada_neg_operation, ada_atr_tag_operation)
3164 (ada_atr_size_operation, ada_abs_operation): New typedefs.
3166 2021-03-08 Tom Tromey <tom@tromey.com>
3168 * expop.h (class logical_and_operation)
3169 (class logical_or_operation): New.
3170 * eval.c (logical_and_operation::evaluate)
3171 (logical_or_operation::evaluate): New methods.
3172 * ax-gdb.c (logical_and_operation::do_generate_ax)
3173 (logical_or_operation::do_generate_ax): New methods.
3175 2021-03-08 Tom Tromey <tom@tromey.com>
3177 * m2-lang.c (eval_op_m2_high, eval_op_m2_subscript): No longer
3179 * m2-exp.h: New file.
3181 2021-03-08 Tom Tromey <tom@tromey.com>
3183 * rust-lang.c (rust_aggregate_operation::evaluate): New method.
3184 * rust-exp.h (class rust_aggregate_operation): New.
3186 2021-03-08 Tom Tromey <tom@tromey.com>
3188 * rust-lang.c (eval_op_rust_struct_anon, eval_op_rust_structop):
3190 * rust-exp.h (class rust_struct_anon): New.
3191 (class rust_structop): New.
3193 2021-03-08 Tom Tromey <tom@tromey.com>
3195 * rust-lang.c (rust_range): No longer static.
3196 * rust-exp.h (class rust_range_operation): New.
3198 2021-03-08 Tom Tromey <tom@tromey.com>
3200 * rust-lang.c (rust_subscript): No longer static.
3201 * rust-exp.h (class rust_subscript_operation): New.
3203 2021-03-08 Tom Tromey <tom@tromey.com>
3205 * rust-lang.c (eval_op_rust_ind): No longer static. Add "opcode"
3207 (rust_evaluate_subexp): Update.
3208 * rust-exp.h (class rust_unop_ind_operation): New.
3210 2021-03-08 Tom Tromey <tom@tromey.com>
3212 * rust-lang.c (eval_op_rust_complement, eval_op_rust_array): No
3213 longer static. Add "opcode" parameter.
3214 (rust_evaluate_subexp): Update.
3215 * rust-exp.h: New file.
3217 2021-03-08 Tom Tromey <tom@tromey.com>
3219 * f-lang.c (eval_op_f_abs, eval_op_f_mod, eval_op_f_ceil)
3220 (eval_op_f_floor, eval_op_f_modulo, eval_op_f_cmplx)
3221 (eval_op_f_kind): No longer static. Add "opcode" parameter.
3222 (evaluate_subexp_f): Update.
3223 * f-exp.h: New file.
3225 2021-03-08 Tom Tromey <tom@tromey.com>
3227 * ada-lang.c (ada_ternop_range_operation::evaluate): New method.
3228 * ada-exp.h (class ada_ternop_range_operation): New.
3230 2021-03-08 Tom Tromey <tom@tromey.com>
3232 * ada-lang.c (ada_qual_operation::evaluate): New method.
3233 * ada-exp.h (class ada_qual_operation): New.
3235 2021-03-08 Tom Tromey <tom@tromey.com>
3237 * ada-lang.c (ada_string_operation::evaluate): New method.
3238 * ada-exp.h (class ada_string_operation): New.
3240 2021-03-08 Tom Tromey <tom@tromey.com>
3242 * ada-lang.c (ada_wrapped_operation::evaluate): New method.
3243 * ada-exp.h: New file.
3245 2021-03-08 Tom Tromey <tom@tromey.com>
3247 * expop.h (class multi_subscript_operation): New.
3248 * eval.c (multi_subscript_operation::evaluate): New method.
3250 2021-03-08 Tom Tromey <tom@tromey.com>
3252 * eval.c (objc_msgcall_operation::evaluate): New method.
3253 * c-exp.h (class objc_msgcall_operation): New.
3255 2021-03-08 Tom Tromey <tom@tromey.com>
3257 * expop.h (class var_value_operation): New.
3258 * eval.c (var_value_operation::evaluate)
3259 (var_value_operation::evaluate_for_address)
3260 (var_value_operation::evaluate_with_coercion)
3261 (var_value_operation::evaluate_for_sizeof)
3262 (var_value_operation::evaluate_for_cast): New methods.
3263 * ax-gdb.c (var_value_operation::do_generate_ax): New method.
3265 2021-03-08 Tom Tromey <tom@tromey.com>
3267 * expop.h (cxx_cast_ftype): New typedef.
3268 (cxx_cast_operation): New template.
3269 (dynamic_cast_operation, reinterpret_cast_operation): New
3272 2021-03-08 Tom Tromey <tom@tromey.com>
3274 * expop.h (class unop_cast_type_operation): New.
3275 * ax-gdb.c (unop_cast_type_operation::do_generate_ax): New
3278 2021-03-08 Tom Tromey <tom@tromey.com>
3280 * expop.h (class unop_cast_operation): New.
3281 * ax-gdb.c (unop_cast_operation::do_generate_ax): New method.
3283 2021-03-08 Tom Tromey <tom@tromey.com>
3285 * expop.h (class assign_modify_operation): New.
3286 * eval.c (eval_binop_assign_modify): No longer static.
3287 * ax-gdb.c (assign_modify_operation::do_generate_ax): New method.
3289 2021-03-08 Tom Tromey <tom@tromey.com>
3291 * expop.h (class assign_operation): New.
3292 * ax-gdb.c (assign_operation::do_generate_ax): New method.
3294 2021-03-08 Tom Tromey <tom@tromey.com>
3296 * expop.h (class type_instance_operation): New.
3297 * eval.c (type_instance_operation::evaluate): New method.
3299 2021-03-08 Tom Tromey <tom@tromey.com>
3301 * expop.h (class op_this_operation): New.
3302 * ax-gdb.c (op_this_operation::do_generate_ax): New method.
3304 2021-03-08 Tom Tromey <tom@tromey.com>
3306 * expop.h (class unop_memval_operation)
3307 (class unop_memval_type_operation): New.
3308 * eval.c (eval_op_memval): No longer static.
3309 (unop_memval_operation::evaluate_for_address)
3310 (unop_memval_type_operation::evaluate_for_address)
3311 (unop_memval_operation::evaluate_for_sizeof)
3312 (unop_memval_type_operation::evaluate_for_sizeof): New methods.
3313 * ax-gdb.c (unop_memval_operation::do_generate_ax)
3314 (unop_memval_type_operation::do_generate_ax): New methods.
3316 2021-03-08 Tom Tromey <tom@tromey.com>
3318 * expop.h (class unop_alignof_operation): New.
3319 * eval.c (eval_op_alignof): No longer static.
3321 2021-03-08 Tom Tromey <tom@tromey.com>
3323 * expop.h (class unop_sizeof_operation): New.
3324 * ax-gdb.c (unop_sizeof_operation::do_generate_ax): New method.
3326 2021-03-08 Tom Tromey <tom@tromey.com>
3328 * expop.h (class unop_addr_operation): New.
3329 * ax-gdb.c (gen_expr_unop) <case UNOP_ADDR>: New.
3331 2021-03-08 Tom Tromey <tom@tromey.com>
3333 * expop.h (class typeid_operation): New.
3335 2021-03-08 Tom Tromey <tom@tromey.com>
3337 * expop.h (class decltype_operation): New.
3339 2021-03-08 Tom Tromey <tom@tromey.com>
3341 * expop.h (class typeof_operation): New.
3343 2021-03-08 Tom Tromey <tom@tromey.com>
3345 * expop.h (class type_operation): New.
3346 * eval.c (eval_op_type): No longer static.
3348 2021-03-08 Tom Tromey <tom@tromey.com>
3350 * expop.h (class unop_ind_base_operation)
3351 (class unop_ind_operation): New.
3352 * eval.c (eval_op_ind): No longer static. Remove "op" parameter.
3353 (unop_ind_base_operation::evaluate_for_address)
3354 (unop_ind_base_operation::evaluate_for_sizeof): New method.
3355 * ax-gdb.c (gen_expr_unop) <case UNOP_IND>: New.
3357 2021-03-08 Tom Tromey <tom@tromey.com>
3359 * expop.h (unop_incr_operation): New template.
3360 (preinc_operation, predec_operation, postinc_operation)
3361 (postdec_operation): New typedefs.
3362 * eval.c (eval_op_preinc, eval_op_predec, eval_op_postinc)
3363 (eval_op_postdec): No longer static.
3365 2021-03-08 Tom Tromey <tom@tromey.com>
3367 * expop.h (unary_ftype): New typedef.
3368 (unop_operation, usual_ax_binop_operation): New templates.
3369 (unary_plus_operation, unary_neg_operation)
3370 (unary_complement_operation, unary_logical_not_operation): New
3372 * eval.c (eval_op_plus, eval_op_neg, eval_op_complement)
3373 (eval_op_lognot): No longer static.
3374 * ax-gdb.c (gen_expr_unop): New function.
3376 2021-03-08 Tom Tromey <tom@tromey.com>
3378 * ax-gdb.c (comma_operation::do_generate_ax): New method.
3380 2021-03-08 Tom Tromey <tom@tromey.com>
3382 * expop.h (class repeat_operation): New.
3383 * eval.c (eval_op_repeat): No longer static. Remove "op"
3385 (evaluate_subexp_standard): Update.
3386 * ax-gdb.c (repeat_operation::do_generate_ax): New method.
3388 2021-03-08 Tom Tromey <tom@tromey.com>
3390 * expop.h (class comparison_operation): New.
3391 (equal_operation, notequal_operation, less_operation)
3392 (gtr_operation, geq_operation, leq_operation): New typedefs.
3393 * eval.c (eval_op_equal, eval_op_notequal, eval_op_less)
3394 (eval_op_gtr, eval_op_geq, eval_op_leq): No longer static.
3396 2021-03-08 Tom Tromey <tom@tromey.com>
3398 * expop.h (class subscript_operation): New.
3399 * eval.c (eval_op_subscript): No longer static.
3401 2021-03-08 Tom Tromey <tom@tromey.com>
3403 * expop.h (class binop_operation, class usual_ax_binop_operation):
3405 (exp_operation, intdiv_operation, mod_operation, mul_operation)
3406 (div_operation, rem_operation, lsh_operation, rsh_operation)
3407 (bitwise_and_operation, bitwise_ior_operation)
3408 (bitwise_xor_operation): New typedefs.
3409 * eval.c (eval_op_binary): No longer static.
3411 2021-03-08 Tom Tromey <tom@tromey.com>
3413 * expop.h (class sub_operation): New.
3414 * eval.c (eval_op_sub): No longer static. Remove "op" parameter.
3415 (evaluate_subexp_standard): Update.
3417 2021-03-08 Tom Tromey <tom@tromey.com>
3419 * expop.h (class add_operation): New.
3420 * eval.c (eval_op_add): No longer static. Remove "op" parameter.
3421 (evaluate_subexp_standard): Update.
3423 2021-03-08 Tom Tromey <tom@tromey.com>
3425 * expop.h (class concat_operation): New.
3426 * eval.c (eval_op_concat): No longer static. Remove "op"
3428 (evaluate_subexp_standard): Update.
3430 2021-03-08 Tom Tromey <tom@tromey.com>
3432 * expop.h (class structop_member_operation)
3433 (class structop_mptr_operation): New.
3434 * eval.c (eval_op_member): No longer static.
3436 2021-03-08 Tom Tromey <tom@tromey.com>
3438 * expop.h (class structop_ptr_operation): New.
3439 * eval.c (eval_op_structop_ptr): No longer static. Remove "op"
3442 2021-03-08 Tom Tromey <tom@tromey.com>
3444 * expop.h (class structop_base_operation)
3445 (class structop_operation): New.
3446 * eval.c (eval_op_structop_struct): No longer static.
3448 2021-03-08 Tom Tromey <tom@tromey.com>
3450 * expop.h (class complex_operation): New.
3452 2021-03-08 Tom Tromey <tom@tromey.com>
3454 * eval.c (eval_op_objc_selector): No longer static.
3455 * c-exp.h (class objc_selector_operation): New.
3457 2021-03-08 Tom Tromey <tom@tromey.com>
3459 * eval.c: Include c-exp.h.
3460 * c-exp.h (class objc_nsstring_operation): New.
3462 2021-03-08 Tom Tromey <tom@tromey.com>
3464 * c-lang.c (c_string_operation::evaluate): New method.
3465 * c-exp.h: New file.
3467 2021-03-08 Tom Tromey <tom@tromey.com>
3469 * expop.h (class ternop_cond_operation): New.
3470 * ax-gdb.c (ternop_cond_operation::do_generate_ax): New method.
3472 2021-03-08 Tom Tromey <tom@tromey.com>
3474 * expop.h (class ternop_slice_operation): New.
3475 * eval.c (eval_op_ternop): No longer static.
3477 2021-03-08 Tom Tromey <tom@tromey.com>
3479 * expop.h (class string_operation): New.
3480 * eval.c (eval_op_string): No longer static.
3482 2021-03-08 Tom Tromey <tom@tromey.com>
3484 * expop.h (class internalvar_operation): New.
3485 * ax-gdb.c (internalvar_operation::do_generate_ax): New method.
3487 2021-03-08 Tom Tromey <tom@tromey.com>
3489 * expop.h (class bool_operation): New.
3491 2021-03-08 Tom Tromey <tom@tromey.com>
3493 * expop.h (class register_operation): New.
3494 * eval.c (eval_op_register): No longer static.
3495 * ax-gdb.c (register_operation::do_generate_ax): New method.
3497 2021-03-08 Tom Tromey <tom@tromey.com>
3499 * expop.h (class last_operation): New.
3501 2021-03-08 Tom Tromey <tom@tromey.com>
3503 * expop.h (class func_static_var_operation): New.
3504 * eval.c (eval_op_func_static_var): No longer static.
3506 2021-03-08 Tom Tromey <tom@tromey.com>
3508 * expop.h (class var_entry_value_operation): New.
3509 * eval.c (eval_op_var_entry_value): No longer static.
3511 2021-03-08 Tom Tromey <tom@tromey.com>
3513 * expression.h (class operation) <set_outermost>: New method.
3514 * expop.h (class var_msym_value_operation): New.
3515 * eval.c (eval_op_var_msym_value): No longer static.
3516 (var_msym_value_operation::evaluate_for_address)
3517 (var_msym_value_operation::evaluate_for_sizeof)
3518 (var_msym_value_operation::evaluate_for_cast): New methods.
3519 * ax-gdb.c (var_msym_value_operation::do_generate_ax): New
3522 2021-03-08 Tom Tromey <tom@tromey.com>
3524 * expop.h (class long_const_operation): New.
3525 * ax-gdb.c (long_const_operation::do_generate_ax): New method.
3527 2021-03-08 Tom Tromey <tom@tromey.com>
3529 * expop.h (class scope_operation): New.
3530 * eval.c (eval_op_scope): No longer static.
3531 (scope_operation::evaluate_for_address): New method.
3532 * ax-gdb.c (scope_operation::do_generate_ax): New method.
3534 2021-03-08 Tom Tromey <tom@tromey.com>
3536 * expprint.c (float_const_operation::dump): New method.
3537 * expop.h (float_data): New typedef.
3538 (class float_const_operation): New.
3540 2021-03-08 Tom Tromey <tom@tromey.com>
3542 * expop.h (gen_expr_binop, gen_expr_structop): Declare.
3543 * ax-gdb.c (gen_expr_binop): New function.
3544 (gen_expr_structop): Likewise.
3546 2021-03-08 Tom Tromey <tom@tromey.com>
3548 * expprint.c (expr::dump_for_expression): New functions.
3549 * expop.h (dump_for_expression): New overloads.
3550 (tuple_holding_operation::dump, tuple_holding_operation::do_dump):
3553 2021-03-08 Tom Tromey <tom@tromey.com>
3555 * expression.h (expr::operation): New class.
3556 (expr::make_operation): New function.
3557 (expr::operation_up): New typedef.
3558 * expop.h: New file.
3559 * eval.c (operation::evaluate_for_cast)
3560 (operation::evaluate_for_address, operation::evaluate_for_sizeof):
3562 * ax-gdb.c (operation::generate_ax): New method.
3564 2021-03-08 Tom Tromey <tom@tromey.com>
3566 * ax-gdb.c (gen_expr_binop_rest): Remove "pc" parameter.
3567 (gen_expr_binop_rest): New overload.
3569 2021-03-08 Tom Tromey <tom@tromey.com>
3571 * eval.c (eval_multi_subscript): New function.
3572 (evaluate_subexp_standard): Use it.
3574 2021-03-08 Tom Tromey <tom@tromey.com>
3576 * ada-lang.c (ada_binop_exp): New function.
3577 (ada_evaluate_subexp): Use it.
3579 2021-03-08 Tom Tromey <tom@tromey.com>
3581 * ada-lang.c (ada_val_atr): Rename from value_val_atr. Change
3583 (ada_evaluate_subexp): Use it.
3585 2021-03-08 Tom Tromey <tom@tromey.com>
3587 * ada-lang.c (ada_binop_minmax): New function.
3588 (ada_evaluate_subexp): Use it.
3590 2021-03-08 Tom Tromey <tom@tromey.com>
3592 * ada-lang.c (ada_unop_atr): New function.
3593 (ada_evaluate_subexp): Use it.
3595 2021-03-08 Tom Tromey <tom@tromey.com>
3597 * ada-lang.c (ada_binop_in_bounds): New function.
3598 (ada_evaluate_subexp): Use it.
3600 2021-03-08 Tom Tromey <tom@tromey.com>
3602 * ada-lang.c (ada_ternop_slice): New function.
3603 (ada_evaluate_subexp): Use it.
3605 2021-03-08 Tom Tromey <tom@tromey.com>
3607 * ada-lang.c (ada_equal_binop): New function.
3608 (ada_evaluate_subexp): Use it.
3610 2021-03-08 Tom Tromey <tom@tromey.com>
3612 * ada-lang.c (ada_mult_binop): New function.
3613 (ada_evaluate_subexp): Use it.
3615 2021-03-08 Tom Tromey <tom@tromey.com>
3617 * ada-lang.c (ada_abs): New function.
3618 (ada_evaluate_subexp): Use it.
3620 2021-03-08 Tom Tromey <tom@tromey.com>
3622 * ada-lang.c (ada_atr_size): New function.
3623 (ada_evaluate_subexp): Use it.
3625 2021-03-08 Tom Tromey <tom@tromey.com>
3627 * ada-lang.c (ada_atr_tag): New function.
3628 (ada_evaluate_subexp): Use it.
3630 2021-03-08 Tom Tromey <tom@tromey.com>
3632 * ada-lang.c (ada_unop_in_range): New function.
3633 (ada_evaluate_subexp): Use it.
3635 2021-03-08 Tom Tromey <tom@tromey.com>
3637 * ada-lang.c (ada_unop_neg): New function.
3638 (ada_evaluate_subexp): Use it.
3640 2021-03-08 Tom Tromey <tom@tromey.com>
3642 * ada-lang.c (eval_ternop_in_range): New function.
3643 (ada_evaluate_subexp): Use it.
3645 2021-03-08 Tom Tromey <tom@tromey.com>
3647 * opencl-lang.c (eval_opencl_assign): New function.
3648 (evaluate_subexp_opencl): Use it.
3650 2021-03-08 Tom Tromey <tom@tromey.com>
3652 * eval.c (eval_op_objc_msgcall): New function.
3653 (evaluate_subexp_standard): Use it.
3655 2021-03-08 Tom Tromey <tom@tromey.com>
3657 * eval.c (eval_binop_assign_modify): New function.
3658 (evaluate_subexp_standard): Use it.
3660 2021-03-08 Tom Tromey <tom@tromey.com>
3662 * m2-lang.c (eval_op_m2_subscript): New function.
3663 (evaluate_subexp_modula2): Use it.
3665 2021-03-08 Tom Tromey <tom@tromey.com>
3667 * m2-lang.c (eval_op_m2_high): New function.
3668 (evaluate_subexp_modula2): Use it.
3670 2021-03-08 Tom Tromey <tom@tromey.com>
3672 * eval.c (evaluate_subexp_for_address_base): New function.
3673 (evaluate_subexp_for_address): Use it.
3674 (evaluate_subexp_for_sizeof_base): New function.
3675 (evaluate_subexp_for_sizeof): Use it.
3677 2021-03-08 Tom Tromey <tom@tromey.com>
3679 * rust-lang.c (eval_op_rust_structop): New function.
3680 (rust_evaluate_subexp): Use it.
3682 2021-03-08 Tom Tromey <tom@tromey.com>
3684 * rust-lang.c (eval_op_rust_struct_anon): New function.
3685 (rust_evaluate_subexp): Use it.
3687 2021-03-08 Tom Tromey <tom@tromey.com>
3689 * rust-lang.c (eval_op_rust_array): New function.
3690 (rust_evaluate_subexp): Use it.
3692 2021-03-08 Tom Tromey <tom@tromey.com>
3694 * rust-lang.c (eval_op_rust_complement): New function.
3695 (rust_evaluate_subexp): Use it.
3697 2021-03-08 Tom Tromey <tom@tromey.com>
3699 * rust-lang.c (eval_op_rust_ind): New function.
3700 (rust_evaluate_subexp): Use it.
3702 2021-03-08 Tom Tromey <tom@tromey.com>
3704 * rust-lang.c (rust_subscript): Change parameters.
3705 (rust_evaluate_subexp): Update.
3707 2021-03-08 Tom Tromey <tom@tromey.com>
3709 * rust-lang.c (rust_range): Change parameters.
3710 (rust_evaluate_subexp): Update.
3712 2021-03-08 Tom Tromey <tom@tromey.com>
3714 * f-lang.c (eval_op_f_allocated): New function.
3715 (evaluate_subexp_f): Use it.
3717 2021-03-08 Tom Tromey <tom@tromey.com>
3719 * f-lang.c (fortran_require_array): New function.
3720 (evaluate_subexp_f): Use it.
3722 2021-03-08 Tom Tromey <tom@tromey.com>
3724 * f-lang.c (eval_op_f_kind): New function.
3725 (evaluate_subexp_f): Use it.
3727 2021-03-08 Tom Tromey <tom@tromey.com>
3729 * f-lang.c (eval_op_f_cmplx): New function.
3730 (evaluate_subexp_f): Use it.
3732 2021-03-08 Tom Tromey <tom@tromey.com>
3734 * f-lang.c (eval_op_f_modulo): New function.
3735 (evaluate_subexp_f): Use it.
3737 2021-03-08 Tom Tromey <tom@tromey.com>
3739 * f-lang.c (eval_op_f_floor): New function.
3740 (evaluate_subexp_f): Use it.
3742 2021-03-08 Tom Tromey <tom@tromey.com>
3744 * f-lang.c (eval_op_f_ceil): New function.
3745 (evaluate_subexp_f): Use it.
3747 2021-03-08 Tom Tromey <tom@tromey.com>
3749 * f-lang.c (eval_op_f_mod): New function.
3750 (evaluate_subexp_f): Use it.
3752 2021-03-08 Tom Tromey <tom@tromey.com>
3754 * f-lang.c (eval_op_f_abs): New function.
3755 (evaluate_subexp_f): Use it.
3757 2021-03-08 Tom Tromey <tom@tromey.com>
3759 * eval.c (eval_op_type): New function.
3760 (evaluate_subexp_standard): Use it.
3762 2021-03-08 Tom Tromey <tom@tromey.com>
3764 * eval.c (eval_op_postdec): New function.
3765 (evaluate_subexp_standard): Use it.
3767 2021-03-08 Tom Tromey <tom@tromey.com>
3769 * eval.c (eval_op_postinc): New function.
3770 (evaluate_subexp_standard): Use it.
3772 2021-03-08 Tom Tromey <tom@tromey.com>
3774 * eval.c (eval_op_predec): New file.
3775 (evaluate_subexp_standard): Use it.
3777 2021-03-08 Tom Tromey <tom@tromey.com>
3779 * eval.c (eval_op_preinc): New function.
3780 (evaluate_subexp_standard): Use it.
3782 2021-03-08 Tom Tromey <tom@tromey.com>
3784 * eval.c (eval_op_memval): New function.
3785 (evaluate_subexp_standard): Use it.
3787 2021-03-08 Tom Tromey <tom@tromey.com>
3789 * eval.c (eval_op_alignof): New function.
3790 (evaluate_subexp_standard): Use it.
3792 2021-03-08 Tom Tromey <tom@tromey.com>
3794 * eval.c (eval_op_ind): New function.
3795 (evaluate_subexp_standard): Use it.
3797 2021-03-08 Tom Tromey <tom@tromey.com>
3799 * eval.c (eval_op_lognot): New function.
3800 (evaluate_subexp_standard): Use it.
3802 2021-03-08 Tom Tromey <tom@tromey.com>
3804 * eval.c (eval_op_complement): New function.
3805 (evaluate_subexp_standard): Use it.
3807 2021-03-08 Tom Tromey <tom@tromey.com>
3809 * eval.c (eval_op_neg): New function.
3810 (evaluate_subexp_standard): Use it.
3812 2021-03-08 Tom Tromey <tom@tromey.com>
3814 * eval.c (eval_op_plus): New function.
3815 (evaluate_subexp_standard): Use it.
3817 2021-03-08 Tom Tromey <tom@tromey.com>
3819 * eval.c (eval_op_repeat): New function.
3820 (evaluate_subexp_standard): Use it.
3822 2021-03-08 Tom Tromey <tom@tromey.com>
3824 * eval.c (eval_op_leq): New function.
3825 (evaluate_subexp_standard): Use it.
3827 2021-03-08 Tom Tromey <tom@tromey.com>
3829 * eval.c (eval_op_geq): New function.
3830 (evaluate_subexp_standard): Use it.
3832 2021-03-08 Tom Tromey <tom@tromey.com>
3834 * eval.c (eval_op_gtr): New function.
3835 (evaluate_subexp_standard): Use it.
3837 2021-03-08 Tom Tromey <tom@tromey.com>
3839 * eval.c (eval_op_less): New function.
3840 (evaluate_subexp_standard): Use it.
3842 2021-03-08 Tom Tromey <tom@tromey.com>
3844 * eval.c (eval_op_notequal): New function.
3845 (evaluate_subexp_standard): Use it.
3847 2021-03-08 Tom Tromey <tom@tromey.com>
3849 * eval.c (eval_op_equal): New function.
3850 (evaluate_subexp_standard): Use it.
3852 2021-03-08 Tom Tromey <tom@tromey.com>
3854 * eval.c (eval_op_subscript): New function.
3855 (evaluate_subexp_standard): Use it.
3857 2021-03-08 Tom Tromey <tom@tromey.com>
3859 * eval.c (eval_op_binary): New function.
3860 (evaluate_subexp_standard): Use it.
3862 2021-03-08 Tom Tromey <tom@tromey.com>
3864 * eval.c (eval_op_sub): New function.
3865 (evaluate_subexp_standard): Use it.
3867 2021-03-08 Tom Tromey <tom@tromey.com>
3869 * eval.c (eval_op_add): New function.
3870 (evaluate_subexp_standard): Use it.
3872 2021-03-08 Tom Tromey <tom@tromey.com>
3874 * eval.c (eval_op_member): New function.
3875 (evaluate_subexp_standard): Use it.
3877 2021-03-08 Tom Tromey <tom@tromey.com>
3879 * eval.c (eval_op_structop_ptr): New function.
3880 (evaluate_subexp_standard): Use it.
3882 2021-03-08 Tom Tromey <tom@tromey.com>
3884 * eval.c (eval_op_structop_struct): New function.
3885 (evaluate_subexp_standard): Use it.
3887 2021-03-08 Tom Tromey <tom@tromey.com>
3889 * eval.c (eval_op_ternop): New function.
3890 (evaluate_subexp_standard): Use it.
3892 2021-03-08 Tom Tromey <tom@tromey.com>
3894 * eval.c (eval_op_concat): New function.
3895 (evaluate_subexp_standard): Use it.
3897 2021-03-08 Tom Tromey <tom@tromey.com>
3899 * eval.c (eval_op_objc_selector): New function.
3900 (evaluate_subexp_standard): Use it.
3902 2021-03-08 Tom Tromey <tom@tromey.com>
3904 * eval.c (eval_op_string): New function.
3905 (evaluate_subexp_standard): Use it.
3907 2021-03-08 Tom Tromey <tom@tromey.com>
3909 * eval.c (eval_op_register): New function.
3910 (evaluate_subexp_standard): Use it.
3912 2021-03-08 Tom Tromey <tom@tromey.com>
3914 * eval.c (eval_op_func_static_var): New function.
3915 (evaluate_subexp_standard): Use it.
3917 2021-03-08 Tom Tromey <tom@tromey.com>
3919 * eval.c (eval_op_var_msym_value): New function.
3920 (evaluate_subexp_standard): Use it.
3922 2021-03-08 Tom Tromey <tom@tromey.com>
3924 * eval.c (eval_op_var_entry_value): New function.
3925 (evaluate_subexp_standard): Use it.
3927 2021-03-08 Tom Tromey <tom@tromey.com>
3929 * eval.c (eval_op_scope): New function.
3930 (evaluate_subexp_standard): Use it.
3932 2021-03-06 Chernov Sergey <klen_s@mail.ru>
3935 * ada-lang.c (ada_fold_name): Use gdb::to_string.
3937 2021-03-06 Tom Tromey <tom@tromey.com>
3939 * dwarf2/sect-names.h (dwarf2_elf_names): Declare.
3940 * dwarf2/read.h (dwarf2_get_dwz_file): Move to dwz.h.
3941 * dwarf2/read.c (dwarf2_elf_names): No longer static.
3942 (locate_dwz_sections, dwz_search_other_debugdirs)
3943 (dwarf2_get_dwz_file): Move to dwz.c.
3944 * dwarf2/dwz.h (dwarf2_get_dwz_file): Move declaration from
3946 * dwarf2/dwz.c (locate_dwz_sections, dwz_search_other_debugdirs)
3947 (dwarf2_get_dwz_file): Move from read.c.
3949 2021-03-06 Tom Tromey <tom@tromey.com>
3951 * debuginfod-support.h: Include scoped_fd.h.
3953 2021-03-06 Tom Tromey <tom@tromey.com>
3955 * dwarf2/read.h (dwarf2_get_dwz_file): Add 'require' parameter.
3956 * dwarf2/read.c (dwarf2_get_dwz_file): Add 'require' parameter.
3957 (get_abbrev_section_for_cu, read_attribute_value)
3958 (get_debug_line_section): Update.
3959 * dwarf2/macro.c (dwarf_decode_macro_bytes): Update.
3961 2021-03-06 Tom Tromey <tom@tromey.com>
3963 * dwarf2/sect-names.h (struct dwarf2_section_names) <matches>: New
3965 * dwarf2/read.c (section_is_p): Remove.
3966 (dwarf2_per_bfd::locate_sections)
3967 (dwarf2_per_bfd::locate_sections, locate_dwz_sections)
3968 (locate_v1_virtual_dwo_sections, dwarf2_locate_dwo_sections)
3969 (dwarf2_locate_common_dwp_sections)
3970 (dwarf2_locate_v2_dwp_sections, dwarf2_locate_v5_dwp_sections):
3973 2021-03-06 Tom Tromey <tom@tromey.com>
3975 * xcoffread.c: Include sect-names.h.
3976 * symfile.h (struct dwarf2_section_names, struct
3977 dwarf2_debug_sections): Move to dwarf2/sect-names.h.
3978 * dwarf2/sect-names.h: New file, from symfile.h.
3979 * dwarf2/read.c: Include sect-names.h.
3981 2021-03-06 Tom Tromey <tom@tromey.com>
3983 * dwarf2/read.c (read_attribute): Make 'abbrev' const.
3984 * dwarf2/abbrev.c (abbrev_table::alloc_abbrev): Remove.
3985 (abbrev_table::read): Update.
3986 * dwarf2/abbrev.h (struct attr_abbrev): Move earlier.
3987 (struct abbrev_info): Reformat.
3988 <attrs>: Now an array.
3989 (struct abbrev_table) <alloc_abbrev>: Remove.
3991 2021-03-06 Weimin Pan <weimin.pan@oracle.com>
3993 * ctfread.c (ctf_psymtab_add_enums): New function.
3994 (ctf_psymtab_type_cb): call ctf_psymtab_add_enums.
3996 2021-03-06 Weimin Pan <weimin.pan@oracle.com>
3998 * ctfread.c (read_func_kind_type): Set up function arguments.
4000 2021-03-05 Craig Blackmore <craig.blackmore@embecosm.com>
4001 Andrew Burgess <andrew.burgess@embecosm.com>
4003 * riscv-none-tdep.c: Add 'user-regs.h' and 'target-description.h'
4005 (riscv_csrset): New static global.
4006 (riscv_update_csrmap): New function.
4007 (riscv_iterate_over_regset_sections): Process CSRs.
4009 2021-03-05 Andrew Burgess <andrew.burgess@embecosm.com>
4011 * riscv-tdep.c (riscv_feature_name_csr): Define.
4012 (riscv_feature_name_cpu): Define.
4013 (riscv_feature_name_fpu): Define.
4014 (riscv_feature_name_virtual): Define.
4015 (riscv_xreg_feature): Use riscv_feature_name_cpu.
4016 (riscv_freg_feature): Use riscv_feature_name_fpu.
4017 (riscv_virtual_feature): Use riscv_feature_name_virtual.
4018 (riscv_csr_feature): Use riscv_feature_name_csr.
4019 * riscv-tdep.h (riscv_feature_name_csr): Declare.
4021 2021-03-05 Andrew Burgess <andrew.burgess@embecosm.com>
4022 Craig Blackmore <craig.blackmore@embecosm.com>
4024 * Makefile.in (ALL_TARGET_OBS): Add riscv-none-tdep.o.
4025 (ALLDEPFILES): Add riscv-none-tdep.c.
4026 * configure: Regenerate.
4027 * configure.ac (CONFIG_OBS): Add elf-none-tdep.o when BFD has ELF
4029 * configure.tgt (riscv*-*-*): Include riscv-none-tdep.c.
4030 * elf-none-tdep.c: New file.
4031 * elf-none-tdep.h: New file.
4032 * riscv-none-tdep.c: New file.
4034 2021-03-05 Craig Blackmore <craig.blackmore@embecosm.com>
4035 Andrew Burgess <andrew.burgess@embecosm.com>
4037 * corelow.c: Add 'xml-tdesc.h' include.
4038 (core_target::read_description): Load the target description from
4039 the core file when possible.
4040 * fbsd-tdep.c (fbsd_make_corefile_notes): Add target description
4042 * gcore-elf.c: Add 'gdbsupport/tdesc.h' include.
4043 (gcore_elf_make_tdesc_note): New function.
4044 * gcore-elf.h (gcore_elf_make_tdesc_note): Declare.
4045 * linux-tdep.c (linux_make_corefile_notes): Add target description
4048 2021-03-05 Andrew Burgess <andrew.burgess@embecosm.com>
4050 * Makefile.in (SFILES): Add gcore-elf.c.
4051 (HFILES_NO_SRCDIR): Add gcore-elf.h
4052 * configure: Regenerate.
4053 * configure.ac: Add gcore-elf.o to CONFIG_OBS if we have ELF
4055 * fbsd-tdep.c: Add 'gcore-elf.h' include.
4056 (struct fbsd_collect_regset_section_cb_data): Delete.
4057 (fbsd_collect_regset_section_cb): Delete.
4058 (fbsd_collect_thread_registers): Delete.
4059 (struct fbsd_corefile_thread_data): Delete.
4060 (fbsd_corefile_thread): Delete.
4061 (fbsd_make_corefile_notes): Call
4062 gcore_elf_build_thread_register_notes instead of the now deleted
4064 * gcore-elf.c: New file, the content was moved here from
4065 linux-tdep.c, functions were renamed and given minor cleanup.
4066 * gcore-elf.h: New file.
4067 * gcore.c (gcore_find_signalled_thread): Moved here from
4068 linux-tdep.c and given a new name. Minor cleanups.
4069 * gcore.h (gcore_find_signalled_thread): Declare.
4070 * linux-tdep.c: Add 'gcore.h' and 'gcore-elf.h' includes.
4071 (struct linux_collect_regset_section_cb_data): Delete.
4072 (linux_collect_regset_section_cb): Delete.
4073 (linux_collect_thread_registers): Delete.
4074 (linux_corefile_thread): Call
4075 gcore_elf_build_thread_register_notes.
4076 (find_signalled_thread): Delete.
4077 (linux_make_corefile_notes): Call gcore_find_signalled_thread.
4079 2021-03-04 Simon Marchi <simon.marchi@polymtl.ca>
4082 * sparc-nat.h (sparc_fetch_inferior_registers): Add
4083 process_stratum_target parameter,
4084 sparc_store_inferior_registers): update callers.
4085 * sparc-nat.c (sparc_fetch_inferior_registers,
4086 sparc_store_inferior_registers): Add process_stratum_target
4087 parameter. Switch current thread before calling
4088 sparc_supply_gregset / sparc_collect_rwindow.
4089 (sparc_store_inferior_registers): Likewise.
4090 * sparc-obsd-tdep.c (sparc32obsd_supply_uthread): Add assertion.
4091 (sparc32obsd_collect_uthread): Likewise.
4092 * sparc-tdep.c (sparc_supply_rwindow, sparc_collect_rwindow):
4094 * sparc64-obsd-tdep.c (sparc64obsd_collect_uthread,
4095 sparc64obsd_supply_uthread): Add assertion.
4097 2021-03-04 Tom Tromey <tromey@adacore.com>
4099 * ada-lang.c (struct match_data) <found_sym>: Now bool.
4100 (aux_add_nonlocal_symbols): Update.
4101 (ada_add_block_symbols): Change "found_sym" to bool.
4103 2021-03-03 Tom Tromey <tromey@adacore.com>
4105 * ada-lang.c (ada_resolve_function): Update comment.
4106 (is_nonfunction, add_symbols_from_enclosing_procs)
4107 (remove_extra_symbols): Likewise.
4108 (struct match_data): Add constructor, initializers.
4109 (add_nonlocal_symbols): Remove memset.
4110 (aux_add_nonlocal_symbols): Update comment.
4111 (ada_add_block_renamings, add_nonlocal_symbols)
4112 (ada_add_all_symbols): Likewise.
4113 * ada-exp.y (write_var_or_type): Clean up trailing whitespace.
4115 2021-03-02 Tom Tromey <tromey@adacore.com>
4117 * ada-lang.c (cast_from_gnat_encoded_fixed_point_type)
4118 (cast_to_gnat_encoded_fixed_point_type): Remove.
4119 (ada_value_cast, ada_evaluate_subexp): Update.
4120 (gnat_encoded_fixed_point_type_info)
4121 (ada_is_gnat_encoded_fixed_point_type)
4122 (gnat_encoded_fixed_point_delta)
4123 (gnat_encoded_fixed_point_scaling_factor): Remove.
4124 * ada-lang.h (ada_is_gnat_encoded_fixed_point_type)
4125 (gnat_encoded_fixed_point_delta)
4126 (gnat_encoded_fixed_point_scaling_factor): Don't declare.
4127 * ada-typeprint.c (print_gnat_encoded_fixed_point_type): Remove.
4128 (ada_print_type): Update.
4129 * ada-valprint.c (ada_value_print_num): Update.
4130 * dwarf2/read.c (ada_get_gnat_encoded_number)
4131 (ada_get_gnat_encoded_ratio): New functions.
4132 (finish_fixed_point_type): Use them. Add parameters.
4133 (GNAT_FIXED_POINT_SUFFIX): New define.
4134 (gnat_encoded_fixed_point_type_info): New function.
4135 (read_base_type): Handle gnat encodings.
4137 2021-03-02 Tom Tromey <tromey@adacore.com>
4139 * ada-lang.c (ada_fold_name, ada_variant_discrim_name)
4140 (ada_enum_name, scan_discrim_bound, to_fixed_range_type): Use
4142 (GROW_VECT): Remove.
4143 (grow_vect): Remove.
4145 2021-03-02 Tom Tromey <tromey@adacore.com>
4147 * ada-lang.h (ada_lookup_symbol_list): Return a vector.
4148 * ada-lang.c (resolve_subexp): Update.
4149 (ada_resolve_function): Accept a vector.
4150 (is_nonfunction, add_defn_to_vec)
4151 (add_symbols_from_enclosing_procs): Likewise.
4152 (num_defns_collected, defns_collected): Remove.
4153 (remove_extra_symbols): Return a vector.
4154 (remove_irrelevant_renamings): Return void.
4155 (ada_add_local_symbols): Accept a vector.
4156 (struct match_data) <obstackp>: Remove.
4157 <resultp>: New member.
4158 (aux_add_nonlocal_symbols): Update.
4159 (ada_add_block_renamings, add_nonlocal_symbols)
4160 (ada_add_all_symbols): Accept a vector.
4161 (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Return a
4163 (ada_lookup_symbol): Update.
4164 (ada_add_block_symbols): Accept a vector.
4165 (get_var_value, iterate_over_symbols): Update.
4166 * ada-exp.y (block_lookup, write_var_or_type, write_name_assoc):
4169 2021-03-02 Tom Tromey <tromey@adacore.com>
4171 * ada-lang.c (resolve_subexp): Use any_of and erase-remove idiom.
4173 2021-03-02 Tom Tromey <tromey@adacore.com>
4175 * ada-lang.c (struct ada_symbol_cache) <cache_space>: Now an
4178 (ada_pspace_data): Remove destructor.
4179 <sym_cache>: Now a unique_ptr.
4180 (ada_init_symbol_cache, ada_free_symbol_cache): Remove.
4181 (ada_get_symbol_cache): Use 'new'.
4182 (ada_clear_symbol_cache): Rewrite.
4184 2021-03-02 Tom Tromey <tromey@adacore.com>
4186 * ada-lang.c (add_nonlocal_symbols): Handle case where objfile->sf
4189 2021-02-27 Lancelot Six <lsix@lancelotsix.com>
4192 * source.c (add_path): Skip empty dirnames.
4194 2021-02-25 Kevin Buettner <kevinb@redhat.com>
4196 * nat/aarch64-sve-linux-ptrace.h: Add comment regarding
4197 include order for <sys/ptrace.h> and <asm/ptrace.h>.
4199 2021-02-25 Simon Marchi <simon.marchi@polymtl.ca>
4202 * target.c (target_mourn_inferior): Only compare pids in
4203 target_mourn_inferior.
4205 2021-02-25 Jan Matyas <jmatyas@codasip.com>
4208 * remote.c (remote_target::start_remote): Ensure the single
4209 thread, automatically added for remote targets without the
4210 concept of threading, is initially in set to the "resumed"
4212 * remote.c (remote_target::add_current_inferior_and_thread):
4213 Add return value - return the main thread.
4215 2021-02-25 Jan Vrany <jan.vrany@labware.com>
4217 * gdb/mi/mi-interp.c (mi_traceframe_changed): Remove trailing \n from output.
4218 (mi_tsv_created): Likewise.
4219 (mi_tsv_deleted): Likewise.
4221 2021-02-25 Tom de Vries <tdevries@suse.de>
4224 * dwarf2/read.c (open_and_init_dwo_file): Use rcuh_kind::COMPILE as
4225 section_kind for &dwo_file->sections.info.
4227 2021-02-25 Andrew Burgess <andrew.burgess@embecosm.com>
4230 * f-lang.c (fortran_argument_convert): Delete declaration.
4231 (fortran_prepare_argument): New function.
4232 (evaluate_subexp_f): Move logic to new function
4233 fortran_prepare_argument.
4235 2021-02-25 Andrew Burgess <andrew.burgess@embecosm.com>
4237 * f-exp.y (f77_keywords): Add 'associated'.
4238 * f-lang.c (fortran_associated): New function.
4239 (evaluate_subexp_f): Handle FORTRAN_ASSOCIATED.
4240 (operator_length_f): Likewise.
4241 (print_unop_or_binop_subexp_f): New function.
4242 (print_subexp_f): Make use of print_unop_or_binop_subexp_f for
4243 FORTRAN_ASSOCIATED, FORTRAN_LBOUND, and FORTRAN_UBOUND.
4244 (dump_subexp_body_f): Handle FORTRAN_ASSOCIATED.
4245 (operator_check_f): Likewise.
4246 * std-operator.def: Add FORTRAN_ASSOCIATED.
4248 2021-02-25 Andrew Burgess <andrew.burgess@embecosm.com>
4250 * f-exp.y (fortran_operators): Add ".xor.".
4252 2021-02-24 Tom de Vries <tdevries@suse.de>
4255 * dwarf2/attribute.c (attribute::form_is_signed): New function
4257 * dwarf2/attribute.h (attribute::as_signed): ... here.
4258 (attribute::is_nonnegative, attribute::as_nonnegative): New function.
4259 (attribute::form_is_signed): Declare.
4260 * dwarf2/read.c (new_symbol): Use is_nonnegative and as_nonnegative
4261 for DW_AT_decl_file.
4263 2021-02-24 Kevin Buettner <kevinb@redhat.com>
4265 * nat/aarch64-linux-hw-point.c: Add comment regarding include
4266 order for <sys/ptrace.h> and <asm/ptrace.h>.
4268 2021-02-24 Kevin Buettner <kevinb@redhat.com>
4270 * nat/aarch64-linux-hw-point.c: Include <asm/ptrace.h> after
4273 2021-02-24 Andrew Burgess <andrew.burgess@embecosm.com>
4275 * exec.c (set_section_command): Move variable declarations into
4276 the function body, and use std::string instead of a fixed size
4279 2021-02-24 Andrew Burgess <andrew.burgess@embecosm.com>
4281 * exec.c (exec_target::get_section_table): Delete member function.
4282 (section_table_read_available_memory): Use current_top_target, not
4283 just the exec_ops target.
4284 * target-delegates.c: Regenerate.
4285 * target.c (default_get_section_table): New function.
4286 * target.h (target_ops::get_section_table): Change default
4287 behaviour to call default_get_section_table.
4288 (default_get_section_table): Declare.
4290 2021-02-24 Andrew Burgess <andrew.burgess@embecosm.com>
4292 * exec.c (exec_target::close): Call new clear_target_sections
4294 (program_space::add_target_sections): Update name of member
4296 (program_space::add_target_sections): Update name of member
4298 (program_space::remove_target_sections): Likewise.
4299 (exec_one_fork): Use new target_sections member function.
4300 (exec_target::get_section_table): Likewise.
4301 (exec_target::files_info): Likewise.
4302 (set_section_command): Likewise.
4303 (exec_set_section_address): Likewise.
4304 (exec_target::has_memory): Use new target_sections member
4306 * progspace.h (program_space::clear_target_sections): New member
4308 (program_space::target_sections): Rename member variable to
4309 m_target_sections, replace with a new member function.
4310 (program_space::m_target_sections): New member variable.
4311 * solib-dsbt.c (scan_dyntag): Use new member function.
4312 * solib-svr4.c (scan_dyntag): Likewise.
4314 2021-02-24 Andrew Burgess <andrew.burgess@embecosm.com>
4316 * gdb/bfd-target.c (class target_bfd) <get_section_table>: Make
4318 * gdb/exec.c (struct exec_target) <get_section_table>: Likewise.
4319 (section_table_read_available_memory): Make local const.
4320 (exec_target::xfer_partial): Make local const.
4321 (print_section_info): Make parameter const.
4322 * gdb/exec.h (print_section_info): Likewise.
4323 * gdb/ppc64-tdep.c (ppc64_convert_from_func_ptr_addr): Make local
4325 * gdb/record-btrace.c (record_btrace_target::xfer_partial):
4327 * gdb/remote.c (remote_target::remote_xfer_live_readonly_partial):
4329 * gdb/s390-tdep.c (s390_load): Likewise.
4330 * gdb/solib-dsbt.c (scan_dyntag): Likewise.
4331 * gdb/solib-svr4.c (scan_dyntag): Likewise.
4332 * gdb/target-debug.h (target_debug_print_target_section_table_p):
4334 (target_debug_print_const_target_section_table_p): ...this.
4335 * gdb/target-delegates.c: Regenerate.
4336 * gdb/target.c (target_get_section_table): Make return type const.
4337 (target_section_by_addr): Likewise. Also make some locals const.
4338 (memory_xfer_partial_1): Make some locals const.
4339 * gdb/target.h (struct target_ops) <get_section_table>: Make
4341 (target_section_by_addr): Likewise.
4342 (target_get_section_table): Likewise.
4344 2021-02-24 Andrew Burgess <andrew.burgess@embecosm.com>
4346 * NEWS: Mention new 'maint info target-sections' command.
4347 * maint.c (maintenance_info_target_sections): New function.
4348 (_initialize_maint_cmds): Register new command.
4350 2021-02-24 Andrew Burgess <andrew.burgess@embecosm.com>
4352 * riscv-tdep.c (riscv_features_from_gdbarch_info): Rename to...
4353 (riscv_features_from_bfd): ...this. Change parameter type to
4354 'bfd*', and update as required.
4355 (riscv_find_default_target_description): Update call to
4356 riscv_features_from_bfd. Select a default xlen based on
4358 (riscv_gdbarch_init): Update call to riscv_features_from_bfd.
4360 2021-02-24 Andrew Burgess <andrew.burgess@embecosm.com>
4362 * eval.c (evaluate_subexp_standard): Call value_ind for points to
4363 dynamic types in UNOP_IND.
4365 2021-02-23 Simon Marchi <simon.marchi@polymtl.ca>
4368 * dwarf2/read.c (dwarf2_queue_guard) <dwarf2_queue_guard>:
4370 (~dwarf2_queue_guard): Clear queue.
4371 (queue_comp_unit): Assert that queue is
4373 (process_queue): Adjust.
4374 * dwarf2/read.h (struct dwarf2_per_bfd) <queue>: Make optional.
4376 2021-02-23 Simon Marchi <simon.marchi@polymtl.ca>
4379 * dwarf2/read.c (maybe_queue_comp_unit): Check if CU is expanded
4380 to decide whether or not to enqueue it for expansion.
4381 (follow_die_offset, follow_die_sig_1): Ensure we load the DIEs
4382 after calling maybe_queue_comp_unit.
4384 2021-02-23 Simon Marchi <simon.marchi@polymtl.ca>
4386 * linux-nat.c (linux_nat_filter_event): Return void.
4388 2021-02-22 Tom Tromey <tromey@adacore.com>
4390 * solib-svr4.c (enable_break): Update.
4391 * bfd-target.c (class target_bfd) <target_bfd>: Change parameter
4393 (target_bfd_reopen): Change parameter type.
4394 * bfd-target.h (target_bfd_reopen): Change parameter type.
4396 2021-02-22 Simon Marchi <simon.marchi@polymtl.ca>
4398 * thread.c (add_thread_silent): Add assert.
4399 (find_thread_ptid): Add assert.
4401 2021-02-22 Simon Marchi <simon.marchi@polymtl.ca>
4404 * inf-ptrace.c (struct target_unpusher): Move to target.h.
4405 (target_unpush_up): Likewise.
4406 * procfs.c (procfs_target::attach): Push target early. Use
4407 target_unpush_up to unpush target in case of error.
4408 * target.h (struct target_unpusher): Move here.
4409 (target_unpush_up): Likewise.
4411 2021-02-19 Kevin Buettner <kevinb@redhat.com>
4413 * nat/amd64-linux-siginfo.c: Include "gdbsupport/common-defs.h"
4414 (which in turn includes <gnulib/config.h>) before include
4417 2021-02-19 Nelson Chu <nelson.chu@sifive.com>
4420 * riscv-tdep.c (decode_ci_type_insn): Updated encoding macros.
4421 (decode_j_type_insn): Likewise.
4422 (decode_cj_type_insn): Likewise.
4423 (decode_b_type_insn): Likewise.
4426 2021-02-18 Tom Tromey <tom@tromey.com>
4428 * expression.h (struct expression) <evaluate>: Declare method.
4429 * eval.c (evaluate_subexp): Simplify.
4430 (expression::evaluate): New method.
4431 (evaluate_expression, evaluate_type): Use expression::evaluate.
4433 2021-02-17 Kevin Buettner <kevinb@redhat.com>
4435 * ada-lang.c (ada_fold_name): Check for non-empty string prior
4437 (ada_lookup_name_info): Likewise.
4439 2021-02-13 Mike Frysinger <vapier@gentoo.org>
4441 * aclocal.m4: Regenerate.
4443 2021-02-12 Tom de Vries <tdevries@suse.de>
4446 * linux-nat.c (lin_thread_get_thread_signals): Remove.
4447 (lin_thread_signals): New static var.
4448 (lin_thread_get_thread_signal_num, lin_thread_get_thread_signal):
4450 * linux-nat.h (lin_thread_get_thread_signals): Remove.
4451 (lin_thread_get_thread_signal_num, lin_thread_get_thread_signal):
4453 * linux-thread-db.c (check_thread_signals): Use
4454 lin_thread_get_thread_signal_num and lin_thread_get_thread_signal.
4456 2021-02-12 Andrew Burgess <andrew.burgess@embecosm.com>
4458 * f-exp.y (f77_keywords): Add allocated.
4459 * f-lang.c (evaluate_subexp_f): Handle UNOP_FORTRAN_ALLOCATED.
4460 (operator_length_f): Likewise.
4461 (print_subexp_f): Likewise.
4462 (dump_subexp_body_f): Likewise.
4463 (operator_check_f): Likewise.
4464 * std-operator.def (UNOP_FORTRAN_ALLOCATED): New operator.
4466 2021-02-11 Tom de Vries <tdevries@suse.de>
4469 * dwarf2/attribute.c (attribute::form_requires_reprocessing):
4470 Return true for DW_FORM_strx.
4472 2021-02-11 Tom Tromey <tromey@adacore.com>
4475 * parse.c (write_exp_symbol_reference): Write sym.block.
4477 2021-02-11 Andrew Burgess <andrew.burgess@embecosm.com>
4479 * NEWS: Mention changes to 'maint info sections'.
4480 * maint.c (match_substring): Return a bool, fix whitespace issue.
4481 (struct single_bfd_flag_info): New struct.
4482 (bfd_flag_info): New static global.
4483 (match_bfd_flags): Return a bool, use bfd_flag_info.
4484 (print_bfd_flags): Use bfd_flag_info.
4485 (maint_print_section_info): Delete trailing whitespace.
4486 (struct maint_info_sections_opts): New struct.
4487 (maint_info_sections_option_defs): New static global.
4488 (maint_info_sections_completer): New function.
4489 (maintenance_info_sections): Use option parsing mechanism.
4490 (_initialize_maint_cmds): Update command help text for 'maint info
4491 sections' and register a command completer.
4493 2021-02-11 Andrew Burgess <andrew.burgess@embecosm.com>
4495 * maint.c (print_bfd_section_info_maybe_relocated): Delete,
4496 functionality merged into...
4497 (maint_print_all_sections): ...this new function.
4498 (maintenance_info_sections): Make use of maint_print_all_sections,
4499 allow all objects to be printed even where there's no executable.
4501 2021-02-11 Andrew Burgess <andrew.burgess@embecosm.com>
4503 * breakpoint.c (resolve_sal_pc): Make use of
4504 bound_minimal_symbol::obj_section.
4505 * maint.c (maintenance_translate_address): Likewise.
4506 * minsyms.c (minimal_symbol_upper_bound): Likewise.
4507 * minsyms.h (struct bound_minimal_symbol) <obj_section>: New
4509 * printcmd.c (info_address_command): Make use of
4510 bound_minimal_symbol::obj_section.
4512 2021-02-11 Alan Modra <amodra@gmail.com>
4514 * arm-symbian-tdep.c: Delete.
4515 * NEWS: Mention arm-symbian removal.
4516 * Makefile.in: Remove arm-symbian-tdep entries.
4517 * configure.tgt: Remove arm*-*-symbianelf*.
4518 * doc/gdb.texinfo: Remove mention of SymbianOS.
4519 * osabi.c (gdb_osabi_names): Remove "Symbian".
4520 * osabi.h (enum gdb_osabi): Remove GDB_OSABI_SYMBIAN.
4521 * testsuite/gdb.base/ending-run.exp: Remove E32Main handling.
4522 * testsuite/gdb.ada/catch_ex_std.exp: Remove arm*-*-symbianelf*
4524 * testsuite/gdb.base/dup-sect.exp: Likewise.
4525 * testsuite/gdb.base/long_long.exp: Likewise.
4526 * testsuite/gdb.base/solib-weak.exp: Likewise.
4527 * testsuite/gdb.guile/scm-section-script.exp: Likewise.
4528 * testsuite/gdb.python/py-section-script.exp: Likewise.
4529 * testsuite/lib/dwarf.exp: Likewise.
4530 * testsuite/lib/gdb.exp: Likewise.
4532 2021-02-10 Andrew Burgess <andrew.burgess@embecosm.com>
4534 * f-exp.y (UNOP_OR_BINOP_INTRINSIC): New token.
4535 (exp): New pattern using UNOP_OR_BINOP_INTRINSIC.
4536 (one_or_two_args): New pattern.
4537 (f77_keywords): Add lbound and ubound.
4538 * f-lang.c (fortran_bounds_all_dims): New function.
4539 (fortran_bounds_for_dimension): New function.
4540 (evaluate_subexp_f): Handle FORTRAN_LBOUND and FORTRAN_UBOUND.
4541 (operator_length_f): Likewise.
4542 (print_subexp_f): Likewise.
4543 (dump_subexp_body_f): Likewise.
4544 (operator_check_f): Likewise.
4545 * std-operator.def (FORTRAN_LBOUND): Define.
4546 (FORTRAN_UBOUND): Define.
4548 2021-02-10 Andrew Burgess <andrew.burgess@embecosm.com>
4550 * coff-pe-read.c (add_pe_forwarded_sym): Make use of section_index
4551 and set_section_index member functions where appropriate.
4552 * coffread.c (coff_symtab_read): Likewise.
4553 (process_coff_symbol): Likewise.
4554 * ctfread.c (set_symbol_address): Likewise.
4555 * dwarf2/read.c (add_partial_symbol): Likewise.
4556 (var_decode_location): Likewise.
4557 * language.c: Likewise.
4558 * minsyms.c (minimal_symbol_reader::record_full): Likewise.
4559 (compact_minimal_symbols): Likewise.
4560 (minimal_symbol_upper_bound): Likewise.
4561 * objfiles.c (relocate_one_symbol): Likewise.
4562 * psympriv.h (partial_symbol::obj_section): Likewise.
4563 (partial_symbol::address): Likewise.
4564 * psymtab.c (partial_symtab::add_psymbol): Likewise.
4565 * stabsread.c (scan_file_globals): Likewise.
4566 * symmisc.c (dump_msymbols): Likewise.
4567 * symtab.c (general_symbol_info::obj_section): Likewise.
4568 (fixup_section): Likewise.
4569 (get_msymbol_address): Likewise.
4570 * symtab.h (general_symbol_info::section): Rename to...
4571 (general_symbol_info::m_section): ...this.
4572 (general_symbol_info::set_section_index): New member function.
4573 (general_symbol_info::section_index): Likewise.
4574 (SYMBOL_SECTION): Delete.
4575 (MSYMBOL_VALUE_ADDRESS): Make use of section_index and
4576 set_section_index member functions where appropriate.
4577 (MSYMBOL_SECTION): Delete.
4578 (symbol::symbol): Update to initialize 'm_section'.
4579 * xcoffread.c (read_xcoff_symtab): Make use of set_section_index.
4580 (process_xcoff_symbol): Likewise.
4582 2021-02-10 Andrew Burgess <andrew.burgess@embecosm.com>
4584 * breakpoint.c (resolve_sal_pc): Replace SYMBOL_OBJ_SECTION and
4585 MSYMBOL_OBJ_SECTION.
4586 * findvar.c (language_defn::read_var_value): Likewise.
4587 * infcmd.c (jump_command): Likewise.
4588 * linespec.c (minsym_found): Likewise.
4589 * maint.c (maintenance_translate_address): Likewise.
4590 * minsyms.c (lookup_minimal_symbol_by_pc_section): Likewise.
4591 (minimal_symbol_upper_bound): Likewise.
4592 * parse.c (find_minsym_type_and_address): Likewise.
4593 (operator_check_standard): Likewise.
4594 * printcmd.c (info_address_command): Likewise.
4595 * symmisc.c (dump_msymbols): Likewise.
4596 (print_symbol): Likewise.
4597 * symtab.c (general_symbol_info::obj_section): Define new
4599 (fixup_symbol_section): Replace SYMBOL_OBJ_SECTION.
4600 (find_pc_sect_compunit_symtab): Likewise.
4601 (find_function_start_sal): Likewise.
4602 (skip_prologue_sal): Replace SYMBOL_OBJ_SECTION and
4603 MSYMBOL_OBJ_SECTION.
4604 * symtab.h (struct general_symbol_info) <obj_section>: Declare new
4606 (SYMBOL_OBJ_SECTION): Delete.
4607 (MSYMBOL_OBJ_SECTION): Delete.
4609 2021-02-09 Tom Tromey <tom@tromey.com>
4611 * stap-probe.c (stap_parse_argument_conditionally): Fix typo.
4613 2021-02-09 Tom de Vries <tdevries@suse.de>
4616 * dwarf2/read.c (read_array_type): Return NULL when not being able to
4617 construct an array type. Add assert to ensure that element_type is
4620 2021-02-09 Andrew Burgess <andrew.burgess@embecosm.com>
4622 * gcore.c (struct gcore_collect_regset_section_cb_data): Delete.
4623 (gcore_collect_regset_section_cb): Delete.
4624 (gcore_collect_thread_registers): Delete.
4625 (gcore_build_thread_register_notes): Delete.
4626 (gcore_find_signalled_thread): Delete.
4627 * gcore.h: Remove 'gdbsupport/gdb_signals.h' include and delete
4628 'gdbarch' and 'thread_info' declarations.
4629 (gcore_build_thread_register_notes): Delete declaration.
4630 (gcore_find_signalled_thread): Likewise.
4631 * fbsd-tdep.c: Remove 'gcore.h' include.
4632 (struct fbsd_collect_regset_section_cb_data): New struct.
4633 (fbsd_collect_regset_section_cb): New function.
4634 (fbsd_collect_thread_registers): New function.
4635 (struct fbsd_corefile_thread_data): New struct.
4636 (fbsd_corefile_thread): New function.
4637 (fbsd_make_corefile_notes): Call FreeBSD specific code.
4638 * linux-tdep.c: Remove 'gcore.h' include.
4639 (struct linux_collect_regset_section_cb_data): New struct.
4640 (linux_collect_regset_section_cb): New function.
4641 (linux_collect_thread_registers): New function.
4642 (linux_corefile_thread): Call Linux specific code.
4643 (find_signalled_thread): New function.
4644 (linux_make_corefile_notes): Call find_signalled_thread.
4646 2021-02-09 Tom Tromey <tromey@adacore.com>
4648 * ada-lang.c (coerce_unspec_val_to_type): Avoid making lazy
4650 * value.c (value_contents_copy_raw): Now static.
4651 * value.h (value_contents_copy_raw): Don't declare.
4653 2021-02-09 Tom Tromey <tromey@adacore.com>
4655 * gdbtypes.c (resolve_dynamic_struct): Handle structure with no
4658 2021-02-08 Shahab Vahedi <shahab@synopsys.com>
4661 * arc-linux-tdep.c (handle_atomic_sequence): New.
4662 (arc_linux_software_single_step): Call handle_atomic_sequence().
4664 2021-02-08 Andrew Burgess <andrew.burgess@embecosm.com>
4666 * python/py-tui.c (gdbpy_tui_window) <is_valid>: New member
4668 (REQUIRE_WINDOW): Call is_valid member function.
4669 (REQUIRE_WINDOW_FOR_SETTER): New define.
4670 (gdbpy_tui_is_valid): Call is_valid member function.
4671 (gdbpy_tui_set_title): Call REQUIRE_WINDOW_FOR_SETTER instead.
4672 * tui/tui-data.h (struct tui_win_info) <is_visible>: Check
4674 * tui/tui-layout.c (tui_apply_current_layout): Add an assert.
4675 * tui/tui.c (tui_enable): Move setting of tui_active earlier in
4678 2021-02-08 Andrew Burgess <andrew.burgess@embecosm.com>
4680 * python/py-tui.c (gdbpy_tui_set_title): Check that the new value
4681 for the title is not nullptr.
4683 2021-02-08 Andrew Burgess <andrew.burgess@embecosm.com>
4685 * tui-layout.c (saved_tui_windows): Delete.
4686 (tui_apply_current_layout): Don't make use of saved_tui_windows,
4687 call new get_windows member function instead.
4688 (tui_get_window_by_name): Check in tui_windows.
4689 (tui_layout_window::apply): Don't add to tui_windows.
4690 * tui-layout.h (tui_layout_base::get_windows): New member function.
4691 (tui_layout_window::get_windows): Likewise.
4692 (tui_layout_split::get_windows): Likewise.
4694 2021-02-08 Andrew Burgess <andrew.burgess@embecosm.com>
4696 * tui/tui-layout.c (tui_apply_current_layout): Restore the delete
4697 of the window objects.
4699 2021-02-08 Andrew Burgess <andrew.burgess@embecosm.com>
4701 * python/python.c (gdbpy_print_stack): Reformat an error message.
4703 2021-02-08 Andrew Burgess <andrew.burgess@embecosm.com>
4705 * tui/tui-interp.c (tui_command_line_handler): New function.
4706 (tui_interp::resume): Register tui_command_line_handler as the
4708 * tui/tui-io.c (tui_inject_newline_into_command_window): New
4710 (tui_getc_1): Delete handling of '\n' and '\r'.
4711 * tui-io.h (tui_inject_newline_into_command_window): Declare.
4713 2021-02-07 Hannes Domani <ssbssa@yahoo.de>
4715 * tui/tui-regs.c (tui_data_window::display_registers_from):
4716 Mark invisible register sub windows.
4717 (tui_data_window::check_register_values): Ignore invisible
4718 register sub windows.
4720 2021-02-07 Hannes Domani <ssbssa@yahoo.de>
4722 * tui/tui-regs.c (tui_data_item_window::rerender): Don't call
4723 n_spaces with a negative value.
4725 2021-02-07 Hannes Domani <ssbssa@yahoo.de>
4727 * tui/tui-regs.c (tui_data_window::display_registers_from):
4728 Add refresh_window call.
4730 2021-02-07 Hannes Domani <ssbssa@yahoo.de>
4732 * python/py-frame.c (frapy_richcompare): Compare frame_id_is_next.
4734 2021-02-05 Simon Marchi <simon.marchi@polymtl.ca>
4736 * symmisc.c (std_in, std_out, std_err): Remove.
4737 (_initialize_symmisc): Don't set std_in, std_out and std_err.
4739 2021-02-05 Tom de Vries <tdevries@suse.de>
4741 PR breakpoints/27330
4742 * breakpoint.c (create_exception_master_breakpoint): Handle case that
4743 glibc object file has debug info.
4745 2021-02-05 Tom de Vries <tdevries@suse.de>
4748 * dwarf2/read.c (process_psymtab_comp_unit): Handle DW_TAG_type_unit.
4750 2021-02-05 Tom de Vries <tdevries@suse.de>
4752 PR breakpoints/27313
4753 * break-catch-syscall.c (catch_syscall_split_args): Reject negative
4756 2021-02-05 Tom Tromey <tom@tromey.com>
4758 * compile/compile-c-support.c (get_compile_context)
4759 (c_get_compile_context, cplus_get_compile_context): Change return
4761 * language.c (language_defn::get_compile_instance): New method.
4762 * language.h (language_defn::get_compile_instance): Change return
4763 type. No longer inline.
4764 * c-lang.c (c_language::get_compile_instance): Change return type.
4765 (cplus_language::get_compile_instance): Change return type.
4766 * c-lang.h (c_get_compile_context, cplus_get_compile_context):
4768 * compile/compile.c (compile_to_object): Update.
4770 2021-02-05 Tom Tromey <tom@tromey.com>
4772 * parser-defs.h (write_exp_symbol_reference): Declare.
4773 * parse.c (write_exp_symbol_reference): New function.
4774 * p-exp.y (variable): Use write_exp_symbol_reference.
4775 * m2-exp.y (variable): Use write_exp_symbol_reference.
4776 * f-exp.y (variable): Use write_exp_symbol_reference.
4777 * d-exp.y (PrimaryExpression): Use write_exp_symbol_reference.
4778 * c-exp.y (variable): Use write_exp_symbol_reference.
4780 2021-02-05 Tom de Vries <tdevries@suse.de>
4783 * valarith.c (complex_binop): Throw an error if complex type can't
4786 2021-02-05 Tom de Vries <tdevries@suse.de>
4789 * dwarf2/read.c (create_cus_from_debug_names_list): Add missing
4792 2021-02-05 Tom de Vries <tdevries@suse.de>
4794 * dwarf2/read.c (create_cus_from_debug_names_list): Fix indentation.
4796 2021-02-04 Mike Frysinger <vapier@gentoo.org>
4798 * configure.tgt (riscv*-*-*): Set gdb_sim.
4800 2021-02-04 Simon Marchi <simon.marchi@polymtl.ca>
4802 * target.c (target_is_non_stop_p): Return bool.
4803 * target.h (target_is_non_stop_p): Return bool.
4805 2021-02-04 Simon Marchi <simon.marchi@efficios.com>
4807 * record-full.c (record_full_async_inferior_event_handler):
4808 Don't clear async event handler.
4809 (record_full_base_target::wait): Clear async event handler at
4812 2021-02-04 Simon Marchi <simon.marchi@efficios.com>
4814 * record-btrace.c (record_btrace_handle_async_inferior_event):
4815 Don't clear async event handler.
4816 (record_btrace_target::wait): Clear async event handler at
4819 2021-02-04 Simon Marchi <simon.marchi@efficios.com>
4821 * remote.c (remote_target::wait): Clear async event handler at
4822 beginning, mark if needed at the end.
4823 (remote_async_inferior_event_handler): Don't set or clear async
4826 2021-02-04 Simon Marchi <simon.marchi@efficios.com>
4828 * async-event.h (async_event_handler_func): Add documentation.
4829 * async-event.c (check_async_event_handlers): Don't clear
4830 async_event_handler ready flag.
4831 * infrun.c (infrun_async_inferior_event_handler): Clear ready
4833 * record-btrace.c (record_btrace_handle_async_inferior_event):
4835 * record-full.c (record_full_async_inferior_event_handler):
4837 * remote-notif.c (remote_async_get_pending_events_handler):
4839 * remote.c (remote_async_inferior_event_handler): Likewise.
4841 2021-02-03 Simon Marchi <simon.marchi@polymtl.ca>
4843 * infrun.c (handle_inferior_event): Move stop_soon variable to
4846 2021-02-03 Pedro Alves <pedro@palves.net>
4848 * infcmd.c (detach_command): Hold strong reference to target, and
4849 if all-stop on entry, restart threads on exit.
4850 * infrun.c (switch_back_to_stepped_thread): Factor out bits to ...
4851 (restart_stepped_thread): ... this new function. Also handle
4853 (restart_after_all_stop_detach): New function.
4854 * infrun.h (restart_after_all_stop_detach): Declare.
4856 2021-02-03 Pedro Alves <pedro@palves.net>
4858 * infrun.c (struct step_over_info): Initialize fields.
4859 (prepare_for_detach): Handle ongoing in-line step over.
4861 2021-02-03 Pedro Alves <pedro@palves.net>
4863 * linux-nat.c (linux_nat_target::detach): Remove breakpoints
4865 * remote.c (remote_target::remote_detach_1): ... and here ...
4866 * target.c (target_detach): ... instead of here.
4867 * target.h (target_ops::detach): Add comment.
4869 2021-02-03 Pedro Alves <pedro@palves.net>
4871 * infrun.c (struct wait_one_event): Move higher up.
4872 (prepare_for_detach): Abort in-progress displaced steps instead of
4873 letting them complete.
4874 (handle_one): If the inferior is detaching, don't add the thread
4875 back to the global step-over chain.
4876 (restart_threads): Don't restart threads if detaching.
4877 (handle_signal_stop): Remove inferior::detaching reference.
4879 2021-02-03 Pedro Alves <pedro@palves.net>
4881 * infrun.c (prepare_for_detach): Don't release scoped_restore
4884 2021-02-03 Pedro Alves <pedro@palves.net>
4886 * infrun.c (handle_one): New function, factored out from ...
4887 (stop_all_threads): ... here.
4889 2021-02-03 Pedro Alves <pedro@palves.net>
4891 * remote.c (remote_notif_stop_ack): Don't error out on
4892 TARGET_WAITKIND_IGNORE; instead, just ignore the notification.
4893 (remote_target::discard_pending_stop_replies): Don't delete
4894 in-flight notification; instead, clear its contents.
4896 2021-02-03 Pedro Alves <pedro@palves.net>
4898 * remote.c (extended_remote_target::attach): Set target async in
4899 the target-non-stop path too.
4901 2021-02-03 Pedro Alves <pedro@palves.net>
4904 * infrun.c (handle_signal_stop): Move main context_switch call
4905 earlier, before STOP_QUIETLY_NO_SIGSTOP.
4907 2021-02-02 Lancelot SIX <lsix@lancelotsix.com>
4909 * NEWS (Changed commands): Add entry for the behavior change of
4910 the inferior command.
4911 * inferior.c (inferior_command): When no argument is given to the
4912 inferior command, display info about the currently selected
4915 2021-02-02 Simon Marchi <simon.marchi@efficios.com>
4917 * dwarf2/read.c (read_loclist_index, read_rnglist_index): Return
4919 (read_attribute_reprocess): Adjust.
4921 2021-02-02 Simon Marchi <simon.marchi@efficios.com>
4923 * dwarf2/die.h (struct die_info) <ranges_base>: Split in...
4924 <gnu_ranges_base>: ... this...
4925 <rnglists_base>: ... and this.
4926 * dwarf2/read.c (struct dwarf2_cu) <ranges_base>: Split in...
4927 <gnu_ranges_base>: ... this...
4928 <rnglists_base>: ... and this.
4929 (read_cutu_die_from_dwo): Adjust
4930 (dwarf2_get_pc_bounds): Adjust
4931 (dwarf2_record_block_ranges): Adjust.
4932 (read_full_die_1): Adjust
4933 (partial_die_info::read): Adjust.
4934 (read_rnglist_index): Adjust.
4936 2021-02-02 Simon Marchi <simon.marchi@efficios.com>
4939 * dwarf2/read.c (read_loclists_rnglists_header): Add
4940 header_offset parameter and use it.
4941 (read_loclist_index): Read header of the current contribution,
4942 not the one at the beginning of the section.
4943 (read_rnglist_index): Likewise.
4945 2021-02-02 Simon Marchi <simon.marchi@efficios.com>
4948 * dwarf2/attribute.h (struct attribute) <set_unsigned>: Clear
4949 requires_reprocessing flag.
4950 * dwarf2/attribute.c (attribute::form_is_unsigned): Handle
4952 (attribute::form_requires_reprocessing): Handle DW_FORM_rnglistx
4953 and DW_FORM_loclistx.
4954 * dwarf2/read.c (read_attribute_reprocess): Use set_unsigned
4955 instead of set_address for DW_FORM_loclistx and
4958 2021-02-02 Simon Marchi <simon.marchi@efficios.com>
4960 * dwarf2/read.c (read_loclist_index): Remove bound check for
4962 (read_rnglist_index): Likewise.
4964 2021-02-02 Simon Marchi <simon.marchi@efficios.com>
4966 * dwarf2/read.c (read_loclist_index): Add bound check for the end
4969 2021-02-02 Simon Marchi <simon.marchi@efficios.com>
4971 * dwarf2/read.c (read_rnglist_index): Fix bound check.
4973 2021-02-02 Simon Marchi <simon.marchi@efficios.com>
4975 * dwarf2/read.c (read_loclist_index): Change complaints into
4978 2021-02-02 Tom de Vries <tdevries@suse.de>
4981 * dwarf2/index-write.c (write_one_signatured_type): Skip if
4984 2021-02-01 Andrew Burgess <andrew.burgess@embecosm.com>
4986 * Makefile.in (HFILES_NO_SRCDIR): Add corefile.h.
4987 * gcore.c (struct gcore_collect_regset_section_cb_data): Moved
4988 here from linux-tdep.c and given a new name. Minor cleanups.
4989 (gcore_collect_regset_section_cb): Likewise.
4990 (gcore_collect_thread_registers): Likewise.
4991 (gcore_build_thread_register_notes): Likewise.
4992 (gcore_find_signalled_thread): Likewise.
4993 * gcore.h (gcore_build_thread_register_notes): Declare.
4994 (gcore_find_signalled_thread): Declare.
4995 * fbsd-tdep.c: Add 'gcore.h' include.
4996 (struct fbsd_collect_regset_section_cb_data): Delete.
4997 (fbsd_collect_regset_section_cb): Delete.
4998 (fbsd_collect_thread_registers): Delete.
4999 (struct fbsd_corefile_thread_data): Delete.
5000 (fbsd_corefile_thread): Delete.
5001 (fbsd_make_corefile_notes): Call
5002 gcore_build_thread_register_notes instead of the now deleted
5004 * linux-tdep.c: Add 'gcore.h' include.
5005 (struct linux_collect_regset_section_cb_data): Delete.
5006 (linux_collect_regset_section_cb): Delete.
5007 (linux_collect_thread_registers): Delete.
5008 (linux_corefile_thread): Call
5009 gcore_build_thread_register_notes.
5010 (find_signalled_thread): Delete.
5011 (linux_make_corefile_notes): Call gcore_find_signalled_thread.
5013 2021-01-29 Tom de Vries <tdevries@suse.de>
5015 PR breakpoints/26063
5016 * infrun.c (process_event_stop_test): Reset
5017 ecs->event_thread->current_line to 0 if is-stmt=n and frame has
5020 2021-01-28 Andrew Burgess <andrew.burgess@embecosm.com>
5022 * thread.c (thr_try_catch_cmd): Replace swith_to_thread with an
5023 assert. Extend the header comment.
5025 2021-01-28 Andrew Burgess <andrew.burgess@embecosm.com>
5027 * Makefile.in (SUBDIR_TUI_SRCS): Add tui/tui-location.c.
5028 (HFILES_NO_SRCDIR): Add tui/tui-location.h.
5029 * tui/tui-data.h (TUI_STATUS_WIN): Define.
5030 (tui_locator_win_info_ptr): Delete declaration.
5031 * tui/tui-disasm.c: Add 'tui/tui-location.h' include.
5032 (tui_disasm_window::set_contents): Fetch state from tui_location
5034 (tui_get_begin_asm_address): Likewise.
5035 * tui/tui-layout.c (tui_apply_current_layout): Remove special case
5037 (get_locator_window): Delete.
5038 (initialize_known_windows): Treat locator window just like all the
5040 * tui/tui-source.c: Add 'tui/tui-location.h' include.
5041 (tui_source_window::set_contents): Fetch state from tui_location
5043 (tui_source_window::showing_source_p): Likewise.
5044 * tui/tui-stack.c: Add 'tui/tui-location.h' include.
5046 (tui_locator_win_info_ptr): Delete.
5047 (tui_locator_window::make_status_line): Fetch state from
5048 tui_location global.
5049 (tui_locator_window::rerender): Remove check of 'handle',
5050 reindent function body.
5051 (tui_locator_window::set_locator_fullname): Delete.
5052 (tui_locator_window::set_locator_info): Delete.
5053 (tui_update_locator_fullname): Delete.
5054 (tui_show_frame_info): Likewise.
5055 (tui_show_locator_content): Access window through TUI_STATUS_WIN.
5056 * tui/tui-stack.h (tui_locator_window::set_locator_info): Moved to
5057 tui/tui-location.h and renamed to
5058 tui_location_tracker::set_location.
5059 (tui_locator_window::set_locator_fullname): Moved to
5060 tui/tui-location.h and renamed to
5061 tui_location_tracker::set_fullname.
5062 (tui_locator_window::full_name): Delete.
5063 (tui_locator_window::proc_name): Delete.
5064 (tui_locator_window::line_no): Delete.
5065 (tui_locator_window::addr): Delete.
5066 (tui_locator_window::gdbarch): Delete.
5067 (tui_update_locator_fullname): Delete declaration.
5068 * tui/tui-wingeneral.c (tui_refresh_all): Removed special handling
5070 * tui/tui-winsource.c: Add 'tui/tui-location.h' include.
5071 (tui_display_main): Call function on tui_location directly.
5072 * tui/tui.h (enum tui_win_type): Add STATUS_WIN.
5073 * tui/tui-location.c: New file.
5074 * tui/tui-location.h: New file.
5076 2021-01-28 Simon Marchi <simon.marchi@polymtl.ca>
5078 * gdbtypes.h (get_type_arch): Rename to...
5079 (struct type) <arch>: ... this, update all users.
5081 2021-01-28 Simon Marchi <simon.marchi@polymtl.ca>
5083 * gdbtypes.h (struct type) <arch>: Rename to...
5084 <arch_owner>: ... this, update all users.
5085 <objfile>: Rename to...
5086 <objfile_owner>: ... this, update all users.
5088 2021-01-28 Andrew Burgess <andrew.burgess@embecosm.com>
5090 * gdbcmd.h (execute_command_to_string): Update comment.
5091 * top.c (execute_command_to_string): Update header comment.
5093 2021-01-28 Tom de Vries <tdevries@suse.de>
5095 PR breakpoints/27205
5096 * breakpoint.c (create_longjmp_master_breakpoint_probe)
5097 (create_longjmp_master_breakpoint_names): New function, factored out
5099 (create_longjmp_master_breakpoint): ... here. Only try to install
5100 longjmp_names breakpoints in libc.so/libc.so.debug if installing probe
5101 breakpoint in libc.so failed.
5103 2021-01-27 Lancelot SIX <lsix@lancelotsix.com>
5106 * cli/cli-interp.c (cli_interp_base::set_logging): Ensure the
5107 unique_ptr is released when the wrapped pointer is kept for later
5110 2021-01-27 Matthew Malcomson <matthew.malcomson@arm.com>
5112 * aarch64-tdep.c (aarch64_displaced_step_others): Account for
5113 BLR and BR instructions.
5114 * arch/aarch64-insn.h (enum aarch64_opcodes): Add BR opcode.
5115 (enum aarch64_masks): New.
5117 2021-01-26 Tom Tromey <tromey@adacore.com>
5119 * windows-nat.c (DEBUG_EXEC, DEBUG_EVENTS, DEBUG_MEM)
5120 (DEBUG_EXCEPT): Use debug_prefixed_printf_cond.
5121 (windows_init_thread_list, windows_nat::handle_load_dll)
5122 (windows_nat::handle_unload_dll, windows_nat_target::resume)
5123 (windows_nat_target::resume)
5124 (windows_nat_target::get_windows_debug_event)
5125 (windows_nat_target::interrupt, windows_xfer_memory)
5126 (windows_nat_target::close): Update.
5127 * nat/windows-nat.c (DEBUG_EVENTS): Use
5128 debug_prefixed_printf_cond.
5129 (matching_pending_stop, fetch_pending_stop)
5130 (continue_last_debug_event): Update.
5132 2020-12-17 Mihails Strasuns <mihails.strasuns@intel.com>
5134 * linux-tdep.c (linux_make_mappings_corefile_notes): Start using
5135 elfcore_write_file_note.
5137 2021-01-26 Shahab Vahedi <shahab@synopsys.com>
5139 * arc-tdep.c (arc_add_reggroups): New function.
5140 (arc_gdbarch_init): Call arc_add_reggroups.
5142 2021-01-26 Anton Kolesov <anton.kolesov@synopsys.com>
5144 * arc-tdep.c (arc_skip_prologue): Log "pc" address.
5146 2021-01-25 Bernd Edlinger <bernd.edlinger@hotmail.de>
5147 Simon Marchi <simon.marchi@polymtl.ca>
5148 Tom de Vries <tdevries@suse.de>
5150 * dwarf2/read.c (partial_die_info::read): Use as_unsigned () for
5153 2021-01-25 Tom Tromey <tromey@adacore.com>
5155 * dwarf2/read.c (get_mpz): New function.
5156 (get_dwarf2_rational_constant): Use it.
5158 2021-01-25 Tom Tromey <tromey@adacore.com>
5160 * ada-lang.c (resolve_subexp): Handle array context.
5162 2021-01-23 Tom Tromey <tom@tromey.com>
5165 * compile/compile-loc2c.c (note_register): New function.
5166 (pushf_register_address, pushf_register): Use it.
5168 2021-01-23 Tom Tromey <tom@tromey.com>
5170 * symtab.h (struct symbol_computed_ops) <generate_c_location>:
5171 Change type of "registers_used".
5172 * dwarf2/loc.h (dwarf2_compile_property_to_c): Update.
5173 * dwarf2/loc.c (dwarf2_compile_property_to_c)
5174 (locexpr_generate_c_location, loclist_generate_c_location): Change
5175 type of "registers_used".
5176 * compile/compile.h (compile_dwarf_expr_to_c)
5177 (compile_dwarf_bounds_to_c): Update.
5178 * compile/compile-loc2c.c (pushf_register_address)
5179 (pushf_register, do_compile_dwarf_expr_to_c)
5180 (compile_dwarf_expr_to_c, compile_dwarf_bounds_to_c): Change type
5181 of "registers_used".
5182 * compile/compile-c.h (generate_c_for_variable_locations):
5184 * compile/compile-c-symbols.c (generate_vla_size)
5185 (generate_c_for_for_one_variable): Change type of
5187 (generate_c_for_variable_locations): Return std::vector.
5188 * compile/compile-c-support.c (generate_register_struct): Change
5189 type of "registers_used".
5192 2021-01-23 Tom Tromey <tom@tromey.com>
5194 * compile/compile-internal.h (class compile_instance)
5195 <set_arguments>: Change return type.
5196 * compile/compile.c (compile_to_object): Remove call to reset.
5197 (compile_instance::set_arguments): Change return type.
5199 2021-01-23 Simon Marchi <simon.marchi@polymtl.ca>
5201 * gdbtypes.c (copy_type_recursive): Use get_type_arch.
5202 * gdbtypes.h (struct type) <set_owner>: Add asserts.
5204 2021-01-23 Lancelot SIX <lsix@lancelotsix.com>
5206 * Makefile.in (SELFTESTS_SRCS): Add
5207 unittests/gdb_tilde_expand-selftests.c.
5208 * unittests/gdb_tilde_expand-selftests.c: New file.
5210 2021-01-22 Andrew Burgess <andrew.burgess@embecosm.com>
5213 * NEWS: Mention new command.
5214 * cli/cli-style.c: Add 'cli/cli-setshow.h' include.
5215 (version_style): Define.
5216 (cli_style_option::cli_style_option): Add intensity parameter, and
5218 (_initialize_cli_style): Register version style set/show commands.
5219 * cli/cli-style.h (cli_style_option): Add intensity parameter.
5220 (version_style): Declare.
5221 * top.c (print_gdb_version): Use version_stype, and styled_string
5222 to print the GDB version string.
5224 2021-01-22 Andrew Burgess <andrew.burgess@embecosm.com>
5226 * utils.c (emit_style_escape): Only emit an escape sequence if the
5227 requested style is different than the current applied style.
5228 (fputs_maybe_filtered): Adjust the juggling of the wrap_style, and
5229 current applied_style.
5230 (fputs_styled): Remove is_default check.
5231 (fputs_styled_unfiltered): Likewise.
5232 (vfprintf_styled_no_gdbfmt): Likewise.
5234 2021-01-22 Simon Marchi <simon.marchi@polymtl.ca>
5236 * remote.h (remote_debug_printf): New.
5237 (remote_debug_printf_nofunc): New.
5238 (REMOTE_SCOPED_DEBUG_ENTER_EXIT): New.
5239 * remote.c: Use above macros throughout file.
5241 2021-01-22 Simon Marchi <simon.marchi@polymtl.ca>
5243 * remote.h (remote_debug): Change to bool.
5244 * remote.c (remote_debug): Change to bool.
5245 (_initialize_remote): Adjust.
5247 2021-01-22 Simon Marchi <simon.marchi@polymtl.ca>
5249 * target.h (remote_debug): Move to...
5250 * remote.h (remote_debug): ... here.
5251 * top.c (remote_debug): Move to...
5252 * remote.c (remote_debug): ... here.
5253 * remote-sim.c: Include remote.h.
5255 2021-01-22 Simon Marchi <simon.marchi@polymtl.ca>
5257 * cli/cli-cmds.c (show_remote_debug): Remove.
5258 (show_remote_timeout): Remove.
5259 (_initialize_cli_cmds): Don't register commands.
5260 * remote.c (show_remote_debug): Move here.
5261 (show_remote_timeout): Move here.
5262 (_initialize_remote): Register commands.
5264 2021-01-22 Simon Marchi <simon.marchi@polymtl.ca>
5266 * gdbtypes.h (TYPE_OBJFILE): Remove, change all users to use the
5267 type::objfile method instead.
5269 2021-01-22 Simon Marchi <simon.marchi@polymtl.ca>
5271 * gdbtypes.h (TYPE_OBJFILE_OWNED): Remove, update all users to
5272 use the type::is_objfile_owned method.
5274 2021-01-22 Simon Marchi <simon.marchi@efficios.com>
5276 * gdbtypes.h (TYPE_OBJFILE_OWNED): Adjust.
5277 (TYPE_OWNER): Remove.
5278 (TYPE_OBJFILE): Adjust.
5279 (struct main_type) <flag_objfile_owned>: Rename to...
5280 <m_flag_objfile_owned>: ... this.
5281 <owner>: Rename to...
5282 <m_owner>: ... this.
5283 (struct type) <is_objfile_owned, set_owner, objfile, arch>: New
5285 (TYPE_ALLOC): Adjust.
5286 * gdbtypes.c (alloc_type): Adjust.
5287 (alloc_type_arch): Adjust.
5288 (alloc_type_copy): Adjust.
5289 (get_type_arch): Adjust.
5290 (smash_type): Adjust.
5291 (lookup_array_range_type): Adjust.
5292 (recursive_dump_type): Adjust.
5293 (copy_type_recursive): Adjust.
5294 * compile/compile-c-types.c (convert_func): Adjust.
5295 (convert_type_basic): Adjust.
5296 * compile/compile-cplus-types.c (compile_cplus_convert_func):
5299 (language_arch_info::type_and_symbol::alloc_type_symbol):
5302 2021-01-21 Luis Machado <luis.machado@linaro.org>
5304 * coffread.c (enter_linenos): Passing string to complaint.
5305 * valops.c (value_assign): Make array view.
5307 2021-01-21 Simon Marchi <simon.marchi@polymtl.ca>
5309 * auto-load.h (debug_auto_load): Move here.
5310 (auto_load_debug_printf): New.
5311 * auto-load.c: Use auto_load_debug_printf.
5312 (debug_auto_load): Move to header.
5313 * linux-thread-db.c (try_thread_db_load): Use
5314 auto_load_debug_printf.
5315 * main.c (captured_main_1): Likewise.
5317 2021-01-21 Simon Marchi <simon.marchi@polymtl.ca>
5319 * f-valprint.c (f77_array_offset_tbl): Remove.
5321 2021-01-21 Simon Marchi <simon.marchi@polymtl.ca>
5323 * gdb_bfd.c (bfd_cache_debug_printf): New, use throughout file.
5325 2021-01-21 Simon Marchi <simon.marchi@polymtl.ca>
5327 * ser-tcp.c (wait_for_connect): Use interruptible_select instead
5330 2021-01-21 Hannes Domani <ssbssa@yahoo.de>
5333 * python/py-breakpoint.c (bppy_get_location): Handle
5334 bp_hardware_breakpoint.
5335 (bppy_init): Likewise.
5336 (gdbpy_breakpoint_created): Likewise.
5338 2021-01-21 Simon Marchi <simon.marchi@polymtl.ca>
5340 * arm-tdep.c (arm_debug_printf): Add and use throughout file.
5342 2021-01-20 Simon Marchi <simon.marchi@polymtl.ca>
5344 * gdb_bfd.c (debug_bfd_cache): Change type to bool.
5345 (_initialize_gdb_bfd): Adjust.
5347 2021-01-20 Simon Marchi <simon.marchi@polymtl.ca>
5350 * dwarf2/read.c (maybe_queue_comp_unit): Add assertion.
5352 2021-01-20 Simon Marchi <simon.marchi@polymtl.ca>
5354 * dwarf2/read.c (follow_die_offset): Add logging.
5355 (dwarf2_per_objfile::age_comp_units): Add logging.
5357 2021-01-20 Simon Marchi <simon.marchi@polymtl.ca>
5359 * aarch64-linux-tdep.c (aarch64_linux_record_tdep): Make static.
5360 * aarch64-tdep.c (tdesc_aarch64_list, aarch64_prologue_unwind,
5361 aarch64_stub_unwind, aarch64_normal_base, ): Make static.
5362 * arm-linux-tdep.c (arm_prologue_unwind): Make static.
5363 * arm-tdep.c (struct frame_unwind): Make static.
5364 * auto-load.c (auto_load_safe_path_vec): Make static.
5365 * csky-tdep.c (csky_stub_unwind): Make static.
5366 * gdbarch.c (gdbarch_data_registry): Make static.
5367 * gnu-v2-abi.c (gnu_v2_abi_ops): Make static.
5368 * i386-netbsd-tdep.c (i386nbsd_mc_reg_offset): Make static.
5369 * i386-tdep.c (i386_frame_setup_skip_insns,
5370 i386_tramp_chain_in_reg_insns, i386_tramp_chain_on_stack_insns):
5372 * infrun.c (observer_mode): Make static.
5373 * linux-nat.c (sigchld_action): Make static.
5374 * linux-thread-db.c (thread_db_list): Make static.
5375 * maint-test-options.c (maintenance_test_options_list):
5376 * mep-tdep.c (mep_csr_registers): Make static.
5377 * mi/mi-cmds.c (struct mi_cmd_stats): Remove struct type name.
5378 (stats): Make static.
5379 * nat/linux-osdata.c (struct osdata_type): Make static.
5380 * ppc-netbsd-tdep.c (ppcnbsd_reg_offsets): Make static.
5381 * progspace.c (last_program_space_num): Make static.
5382 * python/py-param.c (struct parm_constant): Remove struct type
5384 (parm_constants): Make static.
5385 * python/py-record-btrace.c (btpy_list_methods): Make static.
5386 * python/py-record.c (recpy_gap_type): Make static.
5387 * record.c (record_goto_cmdlist): Make static.
5388 * regcache.c (regcache_descr_handle): Make static.
5389 * registry.h (DEFINE_REGISTRY): Make definition static.
5390 * symmisc.c (std_in, std_out, std_err): Make static.
5391 * top.c (previous_saved_command_line): Make static.
5392 * tracepoint.c (trace_user, trace_notes, trace_stop_notes): Make
5394 * unittests/command-def-selftests.c (nr_duplicates,
5395 nr_invalid_prefixcmd, lists): Make static.
5396 * unittests/observable-selftests.c (test_notification): Make
5398 * unittests/optional/assignment/1.cc (counter): Make static.
5399 * unittests/optional/assignment/2.cc (counter): Make static.
5400 * unittests/optional/assignment/3.cc (counter): Make static.
5401 * unittests/optional/assignment/4.cc (counter): Make static.
5402 * unittests/optional/assignment/5.cc (counter): Make static.
5403 * unittests/optional/assignment/6.cc (counter): Make static.
5405 2021-01-20 Joel Sherrill <joel@rtems.org>
5408 * remote.c (struct remote_thread_info) <resume_state>: Rename
5410 <get_resume_state>: ... this.
5411 (remote_target::resume): Adjust.
5412 (remote_target::commit_resume): Adjust.
5413 (remote_target::select_thread_for_ambiguous_stop_reply): Adjust.
5415 2021-01-20 Sergio Durigan Junior <sergiodj@sergiodj.net>
5416 Tom Tromey <tom@tromey.com>
5418 * stap-probe.c (stap_parse_single_operand): Handle '!'
5420 (stap_parse_argument_conditionally): Likewise.
5421 Skip spaces after processing open-parenthesis sub-expression.
5422 (stap_parse_argument_1): Skip spaces after call to
5423 stap_parse_argument_conditionally.
5424 Handle case when right-side expression is a parenthesized
5426 Skip spaces after call to stap_parse_argument_1.
5428 2021-01-19 Lancelot SIX <lsix@lancelotsix.com>
5430 * top.h (switch_thru_all_uis): Use DISABLE_COPY_AND_ASSIGN.
5432 2021-01-19 Luis Machado <luis.machado@linaro.org>
5434 * trad-frame.h (trad_frame_saved_reg) <set_value_bytes>: Allocate
5435 memory and save data.
5436 (trad_frame_set_value, trad_frame_set_realreg, trad_frame_set_addr)
5437 (trad_frame_set_unknown, trad_frame_set_value_bytes)
5438 (trad_frame_value_p, trad_frame_addr_p, trad_frame_realreg_p)
5439 (trad_frame_value_bytes_p): Remove.
5440 (trad_frame_reset_saved_regs): Adjust documentation.
5441 * trad-frame.c (trad_frame_alloc_saved_regs): Initialize via a
5442 constructor and reset the state of the registers.
5443 (trad_frame_value_p, trad_frame_addr_p, trad_frame_realreg_p)
5444 (trad_frame_value_bytes_p, trad_frame_set_value)
5445 (trad_frame_set_realreg, trad_frame_set_addr)
5446 (trad_frame_set_unknown, trad_frame_set_value_bytes): Remove.
5447 (trad_frame_set_reg_realreg): Update to call member function.
5448 (trad_frame_set_reg_addr, trad_frame_set_reg_value_bytes): Likewise.
5449 (trad_frame_get_prev_register): Likewise.
5451 * aarch64-tdep.c (aarch64_analyze_prologue)
5452 (aarch64_analyze_prologue_test, aarch64_make_prologue_cache_1)
5453 (aarch64_prologue_prev_register): Update to use member functions.
5454 * alpha-mdebug-tdep.c (alpha_mdebug_frame_unwind_cache): Likewise.
5455 * alpha-tdep.c (alpha_heuristic_frame_unwind_cache): Likewise.
5456 * arc-tdep.c (arc_print_frame_cache, arc_make_frame_cache): Likewise.
5457 * arm-tdep.c (arm_make_prologue_cache, arm_exidx_fill_cache)
5458 (arm_make_epilogue_frame_cache): Likewise.
5459 * avr-tdep.c (avr_frame_unwind_cache)
5460 (avr_frame_prev_register): Likewise.
5461 * cris-tdep.c (cris_scan_prologue): Likewise.
5462 * csky-tdep.c (csky_frame_unwind_cache): Likewise.
5463 * frv-tdep.c (frv_analyze_prologue): Likewise.
5464 * hppa-tdep.c (hppa_frame_cache, hppa_fallback_frame_cache): Likewise.
5465 * lm32-tdep.c (lm32_frame_cache): Likewise.
5466 * m32r-tdep.c (m32r_frame_unwind_cache): Likewise.
5467 * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
5468 * mips-tdep.c (set_reg_offset, mips_insn16_frame_cache)
5469 (mips_micro_frame_cache, mips_insn32_frame_cache): Likewise.
5470 (reset_saved_regs): Adjust to set realreg.
5471 * riscv-tdep.c (riscv_scan_prologue, riscv_frame_cache): Adjust to
5472 call member functions.
5473 * rs6000-tdep.c (rs6000_frame_cache, rs6000_epilogue_frame_cache)
5474 * s390-tdep.c (s390_prologue_frame_unwind_cache)
5475 (s390_backchain_frame_unwind_cache): Likewise.
5476 * score-tdep.c (score7_analyze_prologue)
5477 (score3_analyze_prologue, score_make_prologue_cache): Likewise.
5478 * sparc-netbsd-tdep.c (sparc32nbsd_sigcontext_saved_regs): Likewise.
5479 * sparc-sol2-tdep.c (sparc32_sol2_sigtramp_frame_cache): Likewise.
5480 * sparc64-netbsd-tdep.c (sparc64nbsd_sigcontext_saved_regs): Likewise.
5481 * sparc64-sol2-tdep.c (sparc64_sol2_sigtramp_frame_cache): Likewise.
5482 * tilegx-tdep.c (tilegx_analyze_prologue)
5483 (tilegx_frame_cache): Likewise.
5484 * v850-tdep.c (v850_frame_cache): Likewise.
5485 * vax-tdep.c (vax_frame_cache): Likewise.
5487 2021-01-19 Luis Machado <luis.machado@linaro.org>
5489 * frame.h (get_frame_register_bytes): Pass a gdb::array_view instead
5491 (put_frame_register_bytes): Likewise.
5492 Adjust documentation.
5493 (get_frame_memory): Pass a gdb::array_view instead of buffer + length.
5494 (safe_frame_unwind_memory): Likewise.
5495 * frame.c (get_frame_register_bytes, put_frame_register_bytes)
5496 (get_frame_memory, safe_frame_unwind_memory): Adjust to use
5498 * amd64-fbsd-tdep.c (amd64fbsd_sigtramp_p): Likewise.
5499 * amd64-linux-tdep.c (amd64_linux_sigtramp_start): Likewise.
5500 * amd64-obsd-tdep.c (amd64obsd_sigtramp_p): Likewise.
5501 * arc-linux-tdep.c (arc_linux_is_sigtramp): Likewise.
5502 * cris-tdep.c (cris_sigtramp_start, cris_rt_sigtramp_start): Likewise.
5503 * dwarf2/loc.c (rw_pieced_value): Likewise.
5504 * hppa-tdep.c (hppa_frame_cache): Likewise.
5505 * i386-fbsd-tdep.c (i386fbsd_sigtramp_p): Likewise.
5506 * i386-gnu-tdep.c (i386_gnu_sigtramp_start): Likewise.
5507 * i386-linux-tdep.c (i386_linux_sigtramp_start)
5508 (i386_linux_rt_sigtramp_start): Likewise.
5509 * i386-obsd-tdep.c (i386obsd_sigtramp_p): Likewise.
5510 * i386-tdep.c (i386_register_to_value): Likewise.
5511 * i387-tdep.c (i387_register_to_value): Likewise.
5512 * ia64-tdep.c (ia64_register_to_value): Likewise.
5513 * m32r-linux-tdep.c (m32r_linux_sigtramp_start)
5514 (m32r_linux_rt_sigtramp_start): Likewise.
5515 * m68k-linux-tdep.c (m68k_linux_pc_in_sigtramp): Likewise.
5516 * m68k-tdep.c (m68k_register_to_value): Likewise.
5517 * mips-tdep.c (mips_register_to_value)
5518 (mips_value_to_register): Likewise.
5519 * ppc-fbsd-tdep.c (ppcfbsd_sigtramp_frame_sniffer)
5520 (ppcfbsd_sigtramp_frame_cache): Likewise.
5521 * ppc-obsd-tdep.c (ppcobsd_sigtramp_frame_sniffer)
5522 (ppcobsd_sigtramp_frame_cache): Likewise.
5523 * rs6000-tdep.c (rs6000_in_function_epilogue_frame_p)
5524 (rs6000_register_to_value): Likewise.
5525 * tilegx-tdep.c (tilegx_analyze_prologue): Likewise.
5526 * tramp-frame.c (tramp_frame_start): Likewise.
5527 * valops.c (value_assign): Likewise.
5529 2021-01-19 Luis Machado <luis.machado@linaro.org>
5531 * aarch64-linux-tdep.c (aarch64_linux_restore_vreg): Pass in an
5533 * trad-frame.c (trad_frame_set_value_bytes): Use gdb::array_view
5534 instead of buffer and size.
5535 (trad_frame_set_reg_value_bytes): Likewise.
5536 * trad-frame.h (trad_frame_set_reg_value_bytes): Likewise.
5537 (trad_frame_set_value_bytes): Likewise.
5539 2021-01-18 Mike Frysinger <vapier@gentoo.org>
5541 * copyright.py (NOT_FSF_LIST): Delete sim/testsuite/sim/bfin/s21.s.
5543 2021-01-18 Andrew Burgess <andrew.burgess@embecosm.com>
5545 * riscv-fbsd-tdep.c (riscv_fbsd_supply_gregset): Delete.
5546 (riscv_fbsd_gregset): Use riscv_supply_regset.
5547 (riscv_fbsd_fpregset): Likewise.
5548 * riscv-linux-tdep.c (riscv_linux_gregset): Likewise.
5549 (riscv_linux_fregset): Likewise.
5550 * riscv-tdep.c (riscv_supply_regset): Define new function.
5551 * riscv-tdep.h (riscv_supply_regset): Declare new function.
5553 2021-01-18 Tom de Vries <tdevries@suse.de>
5556 * nat/amd64-linux-siginfo.c (cpt_si_lower, cpt_si_upper, SEGV_BNDERR):
5558 (compat_siginfo_from_siginfo): Copy cpt_si_lower and cpt_si_upper
5561 2021-01-18 Simon Marchi <simon.marchi@polymtl.ca>
5563 * remote.c (class remote_target) <remote_hostio_send_command,
5564 remote_hostio_parse_result>: Constify parameter.
5565 (remote_hostio_parse_result): Likewise.
5566 (remote_target::remote_hostio_send_command): Adjust.
5567 (remote_target::remote_hostio_pread_vFile): Adjust.
5568 (remote_target::fileio_readlink): Adjust.
5569 (remote_target::fileio_fstat): Adjust.
5571 2021-01-18 Simon Marchi <simon.marchi@polymtl.ca>
5573 * remote.c (remote_target::start_remote): Move wait_status to
5576 2021-01-18 Simon Marchi <simon.marchi@polymtl.ca>
5578 * remote.c (class remote_target):
5579 <add_current_inferior_and_thread>: Constify parameter.
5580 (stop_reply_extract_thread): Likewise.
5581 (remote_target::get_current_thread): Likewise.
5582 (remote_target::add_current_inferior_and_thread): Likewise.
5584 2021-01-18 Simon Marchi <simon.marchi@polymtl.ca>
5586 * remote.c (class remote_target)
5587 <remote_unpack_thread_info_response,
5588 parse_threadlist_response>: Constify parameter and/or return
5589 value and or local variable.
5590 (stub_unpack_int): Likewise.
5591 (unpack_nibble): Likewise.
5592 (unpack_byte): Likewise.
5593 (unpack_int): Likewise.
5594 (unpack_string): Likewise.
5595 (unpack_threadid): Likewise.
5596 (remote_target::remote_unpack_thread_info_response): Likewise.
5597 (remote_target::parse_threadlist_response): Likewise.
5599 2021-01-15 Andrew Burgess <andrew.burgess@embecosm.com>
5601 * tui/tui.c (tui_is_window_visible): Compare to nullptr, not 0.
5603 2021-01-14 Lancelot Six <lsix@lancelotsix.com>
5605 * MAINTAINERS (Write After Approval): Add myself.
5607 2021-01-14 Bernd Edlinger <bernd.edlinger@hotmail.de>
5609 * trad-frame.c (trad_frame_alloc_saved_regs): Avoid compile-error
5610 because is_trivially_default_constructible was first implemented with
5613 2021-01-14 Tom de Vries <tdevries@suse.de>
5615 PR breakpoints/27151
5616 * objfiles.h (in_plt_section): Handle .plt.sec.
5618 2021-01-13 Andrew Burgess <andrew.burgess@embecosm.com>
5622 (remote_target::select_thread_for_ambiguous_stop_reply): New
5624 (remote_target::process_stop_reply): Call
5625 select_thread_for_ambiguous_stop_reply.
5627 2021-01-13 Simon Marchi <simon.marchi@efficios.com>
5629 * record-btrace.c (class record_btrace_target): Remove.
5630 (record_btrace_target::commit_resume): Remove.
5631 * record-full.c (class record_full_target): Remove.
5632 (record_full_target::commit_resume): Remove.
5634 2021-01-13 Simon Marchi <simon.marchi@efficios.com>
5636 * remote.c (enum class resume_state): New.
5637 (struct resumed_pending_vcont_info): New.
5638 (struct remote_thread_info) <resume_state, set_not_resumed,
5639 set_resumed_pending_vcont, resumed_pending_vcont_info,
5640 set_resumed, m_resume_state, m_resumed_pending_vcont_info>:
5642 <last_resume_step, last_resume_sig, vcont_resumed>: Remove.
5643 (remote_target::remote_add_thread): Adjust.
5644 (remote_target::process_initial_stop_replies): Adjust.
5645 (remote_target::resume): Adjust.
5646 (remote_target::commit_resume): Rely on state in
5647 remote_thread_info and not on tp->executing.
5648 (remote_target::process_stop_reply): Adjust.
5650 2021-01-13 Simon Marchi <simon.marchi@polymtl.ca>
5652 * arc-tdep.h (arc_debug_printf): New.
5653 * arc-tdep.c: Use arc_debug_printf.
5654 * arc-linux-nat.c (arc_linux_nat_debug_printf): Add and use.
5655 * arc-linux-tdep.c (arc_linux_debug_printf): Add and use.
5656 * arc-newlib-tdep.c (arc_newlib_debug_printf): Add and use.
5658 2021-01-13 Simon Marchi <simon.marchi@polymtl.ca>
5660 * arc-tdep.h (arc_debug): Change type to bool.
5661 * arc-tdep.c (arc_debug): Change type to bool.
5662 (arc_analyze_prologue): Adjust.
5663 (_initialize_arc_tdep): Use add_setshow_boolean_cmd.
5664 * arc-linux-nat.c (ps_get_thread_area): Adjust.
5666 2021-01-13 Simon Marchi <simon.marchi@polymtl.ca>
5668 * auto-load.c (auto_load_objfile_script_1): Use bool.
5669 (execute_script_contents): Use bool.
5671 2021-01-13 Simon Marchi <simon.marchi@polymtl.ca>
5673 * auto-load.h (auto_load_gdb_scripts_enabled): Return bool, move
5675 * auto-load.c (auto_load_gdb_scripts_enabled): Return bool, move
5677 * extension-priv.h (struct extension_language_script_ops)
5678 <auto_load_enabled>: Return bool.
5679 * extension.h (ext_lang_auto_load_enabled): Return bool, move
5681 * extension.c (ext_lang_auto_load_enabled): Return bool, move
5683 * guile/guile-header.h (gdbscm_auto_load_enabled): Return bool,
5685 * guile/scm-auto-load.c (gdbscm_auto_load_enabled): Return bool,
5686 move comment to header.
5687 * python/python-header.h (gdbpy_auto_load_enabled): Return bool,
5689 * python/py-auto-load.c (gdbpy_auto_load_enabled): Return bool,
5690 move comment to header.
5692 2021-01-13 Simon Marchi <simon.marchi@polymtl.ca>
5694 * auto-load.h (file_is_auto_load_safe): Change return type to
5695 bool, move comment here.
5696 * auto-load.c (file_is_auto_load_safe): Change return type and
5697 advice_printed to bool. Move comment to header.
5699 2021-01-13 Simon Marchi <simon.marchi@polymtl.ca>
5701 * jit.c (jit_debug_printf): New, use throughout file.
5703 2021-01-12 Simon Marchi <simon.marchi@polymtl.ca>
5705 * infrun.c (normal_stop): Fix indentation.
5707 2021-01-12 Simon Marchi <simon.marchi@polymtl.ca>
5709 * top.h (readnow_symbol_files, readnever_symbol_files): Move
5711 * symfile.h: ... here.
5712 * symfile.c: Update doc.
5714 2021-01-12 Simon Marchi <simon.marchi@polymtl.ca>
5716 * target.h (baud_rate, serial_parity): Move declarations...
5717 * serial.h: ... here.
5718 * main.c: Include serial.h.
5719 * serial.c (baud_rate, serial_parity): Update doc.
5721 2021-01-12 Simon Marchi <simon.marchi@polymtl.ca>
5723 * top.c (pre_init_ui_hook): Remove.
5725 2021-01-12 Srinath Parvathaneni <srinath.parvathaneni@arm.com>
5727 * aarch64-tdep.c (aarch64_vnh_type): Add "bf" field in h registers.
5728 (aarch64_vnv_type): Add "bf" type in h field of v registers.
5729 * features/aarch64-fpu.c (create_feature_aarch64_fpu): Regenerated.
5730 * features/aarch64-fpu.xml: Add bfloat16 type.
5732 2021-01-12 Andrew Burgess <andrew.burgess@embecosm.com>
5734 * expprint.c (dump_subexp_body_standard): Handle OP_BOOL.
5736 2021-01-12 Andrew Burgess <andrew.burgess@embecosm.com>
5738 * f-exp.y (dot_ops): Rename to...
5739 (fortran_operators): ...this. Add a header comment. Add symbol
5741 (yylex): Update to use fortran_operators not dot_ops. Remove
5742 special handling for '**', this is now included in
5745 2021-01-11 Simon Marchi <simon.marchi@polymtl.ca>
5747 * arch/aarch64-insn.h (aarch64_debug_printf): New.
5748 * arch/aarch64-insn.c: Use aarch64_debug_printf.
5749 * aarch64-tdep.c: Use aarch64_debug_printf.
5751 2021-01-11 Simon Marchi <simon.marchi@polymtl.ca>
5753 * solib-aix.c (solib_aix_debug_printf): New, use throughout
5756 2021-01-11 Simon Marchi <simon.marchi@polymtl.ca>
5758 * jit.c (jit_debug): Change type to bool.
5759 (_initialize_jit): Adjust.
5761 2021-01-09 Tom Tromey <tom@tromey.com>
5764 * compile/compile.c (compile_to_object): Avoid crash when
5765 osabi_triplet_regexp returns NULL.
5767 2021-01-09 Tom Tromey <tom@tromey.com>
5769 * tracepoint.h (class collection_list) <append_exp>: Take a
5771 * tracepoint.c (collection_list::append_exp): Take a std::string.
5772 (encode_actions_1): Update.
5774 2021-01-08 Tom Tromey <tromey@adacore.com>
5776 * parse.c (parse_expression): Add void_context_p parameter. Use
5777 parse_exp_in_context.
5778 * printcmd.c (print_command_1): Change voidprint to bool. Pass to
5780 (print_command, call_command): Update.
5781 * expression.h (parse_expression): Add void_context_p parameter.
5783 2021-01-08 Andrew Burgess <andrew.burgess@embecosm.com>
5785 * value.c (set_value_component_location): Adjust the VALUE_LVAL
5786 for internalvar components that have a dynamic location.
5788 2021-01-08 Tom de Vries <tdevries@suse.de>
5791 * breakpoint.c (create_exception_master_breakpoint_probe)
5792 (create_exception_master_breakpoint_hook): Factor out
5794 (create_exception_master_breakpoint): ... here. Only try to install
5795 the master exception breakpoint in objfile.debug using the
5796 _Unwind_DebugHook method, if the install using probes in objfile
5799 2021-01-08 Andrew Burgess <andrew.burgess@embecosm.com>
5801 * f-lang.c (fortran_value_subarray): Call value_from_component.
5803 2021-01-07 Mike Frysinger <vapier@gentoo.org>
5805 * remote-sim.c: Include memory-map.h.
5806 (gdbsim_target): Define memory_map override.
5807 (gdbsim_target::memory_map): Define.
5809 2021-01-07 Tom Tromey <tromey@adacore.com>
5811 * ada-lang.c (do_full_match): Conditionally skip "_ada_" prefix.
5813 2021-01-07 Tom Tromey <tromey@adacore.com>
5815 * ada-lang.c (add_component_interval): Start loop using vector's
5818 2021-01-06 Tom Tromey <tromey@adacore.com>
5820 * ada-lang.c (ada_evaluate_subexp) <BINOP_ADD, BINOP_SUB>:
5822 * valarith.c (fixed_point_binop): Handle multiplication
5823 and division specially.
5824 * valops.c (value_to_gdb_mpq): New function.
5825 (value_cast_to_fixed_point): Use it.
5827 2021-01-05 Hannes Domani <ssbssa@yahoo.de>
5829 * tui/tui-winsource.c (tui_source_window_base::refresh_window):
5830 Call wnoutrefresh instead of tui_win_info::refresh_window.
5832 2021-01-05 Hannes Domani <ssbssa@yahoo.de>
5834 * tui/tui-source.c (tui_source_window::show_line_number):
5835 Redraw second space after line number.
5837 2021-01-05 Hannes Domani <ssbssa@yahoo.de>
5840 * tui/tui-winsource.c (tui_source_window_base::refresh_window):
5841 Fix source pad size in prefresh.
5842 (tui_source_window_base::show_source_content): Grow source pad
5845 2021-01-04 Mike Frysinger <vapier@gentoo.org>
5847 * bfin-tdep.c (bfin_push_dummy_call): Use align_up.
5848 (bfin_frame_align): Use align_down.
5850 2021-01-04 Tom de Vries <tdevries@suse.de>
5852 * buildsym.c (buildsym_compunit::record_line): Filter out end-of-seq
5853 terminators that do not terminate anything.
5855 2021-01-04 Simon Marchi <simon.marchi@efficios.com>
5857 * debug.c (debug_print_depth): New.
5858 * infrun.h (INFRUN_SCOPED_DEBUG_START_END): New.
5859 (INFRUN_SCOPED_DEBUG_ENTER_EXIT): New.
5860 * infrun.c (start_step_over): Use
5861 INFRUN_SCOPED_DEBUG_ENTER_EXIT.
5862 (proceed): Use INFRUN_SCOPED_DEBUG_ENTER_EXIT and
5863 INFRUN_SCOPED_DEBUG_START_END.
5864 (fetch_inferior_event): Use INFRUN_SCOPED_DEBUG_ENTER_EXIT.
5866 2021-01-04 Simon Marchi <simon.marchi@efficios.com>
5868 * infrun.c (print_target_wait_results): Use infrun_debug_printf.
5870 2021-01-04 Simon Marchi <simon.marchi@efficios.com>
5872 * utils.c (vfprintf_unfiltered): Print timestamp only when
5873 previous debug output ended with a newline.
5875 2021-01-04 Luis Machado <luis.machado@linaro.org>
5877 Update all users of trad_frame_saved_reg to use the new member
5880 Remote all struct keywords from declarations of trad_frame_saved_reg
5881 types, except on forward declarations.
5883 * aarch64-tdep.c: Update.
5884 * alpha-mdebug-tdep.c: Update.
5885 * alpha-tdep.c: Update.
5886 * arc-tdep.c: Update.
5887 * arm-tdep.c: Update.
5888 * avr-tdep.c: Update.
5889 * cris-tdep.c: Update.
5890 * csky-tdep.c: Update.
5891 * frv-tdep.c: Update.
5892 * hppa-linux-tdep.c: Update.
5893 * hppa-tdep.c: Update.
5894 * hppa-tdep.h: Update.
5895 * lm32-tdep.c: Update.
5896 * m32r-linux-tdep.c: Update.
5897 * m32r-tdep.c: Update.
5898 * m68hc11-tdep.c: Update.
5899 * mips-tdep.c: Update.
5900 * moxie-tdep.c: Update.
5901 * riscv-tdep.c: Update.
5902 * rs6000-tdep.c: Update.
5903 * s390-linux-tdep.c: Update.
5904 * s390-tdep.c: Update.
5905 * score-tdep.c: Update.
5906 * sparc-netbsd-tdep.c: Update.
5907 * sparc-sol2-tdep.c: Update.
5908 * sparc64-fbsd-tdep.c: Update.
5909 * sparc64-netbsd-tdep.c: Update.
5910 * sparc64-obsd-tdep.c: Update.
5911 * sparc64-sol2-tdep.c: Update.
5912 * tilegx-tdep.c: Update.
5913 * v850-tdep.c: Update.
5914 * vax-tdep.c: Update.
5916 * frame-unwind.c (frame_unwind_got_bytes): Make parameter const.
5917 * frame-unwind.h (frame_unwind_got_bytes): Likewise.
5919 * trad-frame.c: Update.
5920 Remove TF_REG_* enum.
5921 (trad_frame_alloc_saved_regs): Add a static assertion to check for
5922 a trivially-constructible struct.
5923 (trad_frame_reset_saved_regs): Adjust to use member function.
5924 (trad_frame_value_p): Likewise.
5925 (trad_frame_addr_p): Likewise.
5926 (trad_frame_realreg_p): Likewise.
5927 (trad_frame_value_bytes_p): Likewise.
5928 (trad_frame_set_value): Likewise.
5929 (trad_frame_set_realreg): Likewise.
5930 (trad_frame_set_addr): Likewise.
5931 (trad_frame_set_unknown): Likewise.
5932 (trad_frame_set_value_bytes): Likewise.
5933 (trad_frame_get_prev_register): Likewise.
5934 * trad-frame.h: Update.
5935 (trad_frame_saved_reg_kind): New enum.
5936 (struct trad_frame_saved_reg) <addr, realreg, data>: Remove.
5937 <m_kind, m_reg>: New member fields.
5938 <set_value, set_realreg, set_addr, set_unknown, set_value_bytes>
5939 <kind, value, realreg, addr, value_bytes, is_value, is_realreg>
5940 <is_addr, is_unknown, is_value_bytes>: New member functions.
5942 2021-01-02 Simon Marchi <simon.marchi@polymtl.ca>
5944 * target-float.c: Fix typos.
5946 2021-01-02 Hannes Domani <ssbssa@yahoo.de>
5948 * gdb-gdb.py.in: Fix main_type.flds_bnds.bounds pretty printer.
5950 2021-01-01 Joel Brobecker <brobecker@adacore.com>
5952 * gdbarch.sh: Update copyright year range.
5954 2021-01-01 Joel Brobecker <brobecker@adacore.com>
5956 Update copyright year range in copyright header of all GDB files.
5958 2021-01-01 Joel Brobecker <brobecker@adacore.com>
5960 * copyright.py (get_update_list): Add "gdbserver" and "gdbsupport"
5961 to the list of directories to update.
5963 2021-01-01 Joel Brobecker <brobecker@adacore.com>
5965 * top.c (print_gdb_version): Update copyright year.
5967 2021-01-01, 21 Joel Brobecker <brobecker@adacore.com>
5969 * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2020.
5971 For older changes see ChangeLog-2020.
5977 version-control: never