81fae4924a5527573be7373fea11f8429e57fe33
[deliverable/binutils-gdb.git] / gdb / ChangeLog
1 2018-06-28 Tom Tromey <tom@tromey.com>
2
3 * coffread.c (coff_symfile_finish): Update.
4 * xcoffread.c (xcoff_symfile_finish): Update.
5 * elfread.c (elf_symfile_finish): Update.
6 * symfile.h (dwarf2_free_objfile): Don't declare.
7 * dwarf2read.c (_initialize_dwarf2_read): Use
8 register_objfile_data_with_cleanup.
9 (dwarf2_free_objfile): Now static. Change signature.
10
11 2018-06-28 Petr Tesarik <ptesarik@suse.cz>
12
13 * symfile.c (add_symbol_file_command, _initialize_symfile): Add
14 option "-o" to add-symbol-file-load to add an offset to each
15 section's load address.
16 * symfile.c (set_objfile_default_section_offset): New function.
17
18 2018-06-28 Petr Tesarik <ptesarik@suse.cz>
19
20 * symfile.c (add_symbol_file_command): Make sure that sections
21 with the same name are sorted in the same order.
22
23 2018-06-28 Petr Tesarik <ptesarik@suse.cz>
24
25 * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
26 require the second argument. If omitted, load sections at the
27 addresses specified in the file.
28
29 2018-06-28 Petr Tesarik <ptesarik@suse.cz>
30
31 * symfile.c (symbol_file_command, symbol_file_add_main_1)
32 (_initialize_symfile): Add option "-o" to symbol-file to add an
33 offset to each section of the symbol file.
34
35 2018-06-28 Petr Tesarik <ptesarik@suse.cz>
36
37 * MAINTAINERS (Write After Approval): Add Petr Tesarik.
38
39 2018-06-27 Tom Tromey <tom@tromey.com>
40
41 * stack.c (_initialize_stack): Update "func" help text.
42
43 2018-06-27 Tom Tromey <tom@tromey.com>
44
45 * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
46 std::vector.
47 (unwind_infopy_str, pyuw_create_unwind_info)
48 (unwind_infopy_add_saved_register, pyuw_sniffer)
49 (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
50 Update.
51 (struct saved_reg): Add constructor.
52 <value>: Now a gdbpy_ref<>.
53
54 2018-06-27 Tom Tromey <tom@tromey.com>
55
56 * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
57
58 2018-06-27 Simon Marchi <simon.marchi@ericsson.com>
59
60 * gdb-gdb.py.in: Format using autopep8.
61
62 2018-06-27 Simon Marchi <simon.marchi@ericsson.com>
63
64 * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
65 (type_lookup_function): Recognize CORE_ADDR values.
66
67 2018-06-27 Simon Marchi <simon.marchi@ericsson.com>
68
69 * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
70 print tag_name.
71
72 2018-06-27 Simon Marchi <simon.marchi@ericsson.com>
73
74 * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
75 <__lt__>: Add.
76
77 2018-06-27 Simon Marchi <simon.marchi@ericsson.com>
78
79 * gdb-gdb.py: Move to...
80 * gdb-gdb.py.in: ... here.
81 * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
82 * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
83 dependencies.
84 (distclean): Remove gdb-gdb.py when cleaning.
85 (gdb-gdb.py, gdb-gdb.gdb): New rules.
86 * configure: Re-generate.
87
88 2018-06-27 Pedro Alves <palves@redhat.com>
89
90 * proc-service.c (get_ps_regcache): New.
91 (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
92 (ps_lsetfpregs): Use it.
93
94 2018-06-27 Omair Javaid <omair.javaid@linaro.org>
95
96 PR gdb/21695
97 * dwarf2read.c (lnp_state_machine::check_line_address): Update declaration.
98 (dwarf_decode_lines_1): Adjust.
99
100 2018-06-27 Simon Marchi <simon.marchi@ericsson.com>
101
102 * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
103 override.
104 <info_proc>: Likewise.
105
106 2018-06-26 Joel Brobecker <brobecker@adacore.com>
107
108 * windows-nat.c (do_windows_fetch_inferior_registers): Rename
109 to windows_fetch_one_register, and only handle the case of
110 fetching one register. Move the code that reloads the context
111 and iterates over all registers if R is negative to...
112 (windows_nat_target::fetch_registers): ... here.
113 (do_windows_store_inferior_registers): Rename to
114 windows_store_one_register, and only handle the case of storing
115 one register. Move the code that handles the case where r is
116 negative to...
117 (windows_nat_target::store_registers) ... here.
118
119 2018-06-26 Tom Tromey <tom@tromey.com>
120
121 PR rust/22574:
122 * typeprint.c (whatis_exp): Allow ptype/o for Rust.
123 * rust-lang.c (rust_print_struct_def): Add podata parameter.
124 Update.
125 (rust_internal_print_type): Add podata parameter.
126 (rust_print_type): Update.
127
128 2018-06-26 Tom Tromey <tom@tromey.com>
129
130 * typeprint.h (struct print_offset_data) <update, finish,
131 maybe_print_hole>: New methods.
132 <indentation>: New constant.
133 * typeprint.c (print_offset_data::indentation): Define.
134 (print_offset_data::maybe_print_hole, print_offset_data::update)
135 (print_offset_data::finish): Move from c-typeprint.c and rename.
136 * c-typeprint.c (OFFSET_SPC_LEN): Remove.
137 (print_spaces_filtered_with_print_options): Update.
138 (c_print_type_union_field_offset, maybe_print_hole)
139 (c_print_type_struct_field_offset): Move to typeprint.c and
140 rename.
141 (c_type_print_base_struct_union): Update.
142
143 2018-06-25 Pedro Alves <palves@redhat.com>
144
145 * gdbthread.h (thread_info_ref, delete_thread)
146 (delete_thread_silent, first_thread_of_inferior)
147 (any_thread_of_inferior, switch_to_thread)
148 (enable_thread_stack_temporaries)
149 (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
150 (get_last_thread_stack_temporary)
151 (value_in_thread_stack_temporaries, can_access_registers_thread):
152 Spell out "struct thread_info" instead of just "thread_info".
153 * inferior.h (notice_new_inferior): Likewise.
154
155 2018-06-25 Pedro Alves <palves@redhat.com>
156
157 * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
158 pass thread_info pointer to delete_thread.
159 (windows_nat_target::detach): Pass inferior pointer to
160 detach_inferior.
161 * aix-thread.c (sync_threadlists): Pass thread_info pointer to
162 delete_thread.
163 * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
164 * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
165 and pass a thread_info pointer to delete_thread.
166 * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
167 pass thread_info pointer to delete_thread.
168 * go32-nat.c (go32_nat_target::mourn_inferior): Remove
169 delete_thread_silent call.
170 * procfs.c (procfs_target::detach): Pass inferior pointer to
171 detach_inferior.
172 (procfs_target::wait): Pass thread_info pointer to delete_thread.
173 * remote-sim.c (gdbsim_target::mourn_inferior): Remove
174 delete_thread_silent call.
175 * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
176 pass thread_info pointer to delete_thread.
177 (windows_nat_target::detach): Pass inferior pointer to
178 delete_inferior.
179
180 2018-06-22 Alan Hayward <alan.hayward@arm.com>
181
182 * regcache.c (readable_regcache::read_part): Fix asserts.
183 (reg_buffer::raw_collect_part): New function.
184 (regcache::write_part): Fix asserts.
185 (reg_buffer::raw_supply_part): New function.
186 (regcache::transfer_regset_register): New helper function.
187 (regcache::transfer_regset): Call new functions.
188 (regcache_supply_regset): Use gdb_byte*.
189 (regcache::supply_regset): Likewise.
190 (regcache_collect_regset): Likewise.
191 (regcache::collect_regset): Likewise.
192 * regcache.h (reg_buffer::raw_collect_part): New declaration.
193 (reg_buffer::raw_supply_part): Likewise.
194 (regcache::transfer_regset_register): Likewise.
195 (regcache::transfer_regset): Use gdb_byte*.
196
197 2018-06-22 Alan Hayward <alan.hayward@arm.com>
198
199 * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
200
201 2018-06-21 Pedro Alves <palves@redhat.com>
202
203 * ada-lang.h (ada_get_task_number): Take a thread_info pointer
204 instead of a ptid_t. All callers adjusted.
205 * ada-tasks.c (ada_get_task_number): Likewise. All callers
206 adjusted.
207 (print_ada_task_info, display_current_task_id, task_command_1):
208 Adjust.
209 * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
210 inferior_thread.
211 (breakpoint_kind): Adjust.
212 (remove_breakpoints_pid): Rename to ...
213 (remove_breakpoints_inf): ... this. Adjust to take an inferior
214 pointer. All callers adjusted.
215 (bpstat_clear_actions): Use inferior_thread.
216 (get_bpstat_thread): New.
217 (bpstat_do_actions): Use it.
218 (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
219 to take a thread_info pointer. All callers adjusted.
220 (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
221 (breakpoint_re_set_thread): Use inferior_thread.
222 * breakpoint.h (struct inferior): Forward declare.
223 (bpstat_stop_status): Update.
224 (remove_breakpoints_pid): Delete.
225 (remove_breakpoints_inf): New.
226 * bsd-uthread.c (bsd_uthread_target::wait)
227 (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
228 * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
229 (maint_btrace_packet_history_cmd)
230 (maint_btrace_clear_packet_history_cmd): Adjust.
231 (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
232 inferior_thread.
233 * cli/cli-interp.c: Include "inferior.h".
234 * common/refcounted-object.h (struct
235 refcounted_object_ref_policy): New.
236 * compile/compile-object-load.c: Include gdbthread.h.
237 (store_regs): Use inferior_thread.
238 * corelow.c (core_target::close): Use current_inferior.
239 (core_target_open): Adjust to use first_thread_of_inferior and use
240 the current inferior.
241 * ctf.c (ctf_target::close): Adjust to use current_inferior.
242 * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
243 <thread>: ... this new field. All references adjusted.
244 (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
245 Take a thread_info pointer instead of a ptid_t.
246 * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
247 (dummy_frame_discard, register_dummy_frame_dtor): Take a
248 thread_info pointer instead of a ptid_t.
249 * elfread.c: Include "inferior.h".
250 (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
251 Use inferior_thread.
252 * eval.c (evaluate_subexp): Likewise.
253 * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
254 inferior_thread.
255 * gdb_proc_service.h (struct thread_info): Forward declare.
256 (struct ps_prochandle) <ptid>: Delete, replaced by ...
257 <thread>: ... this new field. All references adjusted.
258 * gdbarch.h, gdbarch.c: Regenerate.
259 * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
260 'thread' parameter. All implementations and callers adjusted.
261 * gdbthread.h (thread_info) <set_running>: New method.
262 (delete_thread, delete_thread_silent): Take a thread_info pointer
263 instead of a ptid.
264 (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
265 (first_thread_of_process): Delete, replaced by ...
266 (first_thread_of_inferior): ... this new function. All callers
267 adjusted.
268 (any_live_thread_of_process): Delete, replaced by ...
269 (any_live_thread_of_inferior): ... this new function. All callers
270 adjusted.
271 (switch_to_thread, switch_to_no_thread): Declare.
272 (is_executing): Delete.
273 (enable_thread_stack_temporaries): Update comment.
274 <enable_thread_stack_temporaries>: Take a thread_info pointer
275 instead of a ptid_t. Incref the thread.
276 <~enable_thread_stack_temporaries>: Decref the thread.
277 <m_ptid>: Delete
278 <m_thr>: New.
279 (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
280 (get_last_thread_stack_temporary)
281 (value_in_thread_stack_temporaries, can_access_registers_thread):
282 Take a thread_info pointer instead of a ptid_t. All callers
283 adjusted.
284 * infcall.c (get_call_return_value): Use inferior_thread.
285 (run_inferior_call): Work with thread pointers instead of ptid_t.
286 (call_function_by_hand_dummy): Work with thread pointers instead
287 of ptid_t. Use thread_info_ref.
288 * infcmd.c (proceed_thread_callback): Access thread's state
289 directly.
290 (ensure_valid_thread, ensure_not_running): Use inferior_thread,
291 access thread's state directly.
292 (continue_command): Use inferior_thread.
293 (info_program_command): Use find_thread_ptid and access thread
294 state directly.
295 (proceed_after_attach_callback): Use thread state directly.
296 (notice_new_inferior): Take a thread_info pointer instead of a
297 ptid_t. All callers adjusted.
298 (exit_inferior): Take an inferior pointer instead of a pid. All
299 callers adjusted.
300 (exit_inferior_silent): New.
301 (detach_inferior): Delete.
302 (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
303 (gdb_inferior_id_to_pid, in_inferior_list): Delete.
304 (detach_inferior_command, kill_inferior_command): Use
305 find_inferior_id instead of valid_gdb_inferior_id and
306 gdb_inferior_id_to_pid.
307 (inferior_command): Use inferior and thread pointers.
308 * inferior.h (struct thread_info): Forward declare.
309 (notice_new_inferior): Take a thread_info pointer instead of a
310 ptid_t. All callers adjusted.
311 (detach_inferior): Delete declaration.
312 (exit_inferior, exit_inferior_silent): Take an inferior pointer
313 instead of a pid. All callers adjusted.
314 (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
315 (valid_gdb_inferior_id): Delete.
316 * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
317 (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
318 (struct displaced_step_inferior_state) <pid>: Delete, replaced by
319 ...
320 <inf>: ... this new field.
321 <step_ptid>: Delete, replaced by ...
322 <step_thread>: ... this new field.
323 (get_displaced_stepping_state): Take an inferior pointer instead
324 of a pid. All callers adjusted.
325 (displaced_step_in_progress_any_inferior): Adjust.
326 (displaced_step_in_progress_thread): Take a thread pointer instead
327 of a ptid_t. All callers adjusted.
328 (displaced_step_in_progress, add_displaced_stepping_state): Take
329 an inferior pointer instead of a pid. All callers adjusted.
330 (get_displaced_step_closure_by_addr): Adjust.
331 (remove_displaced_stepping_state): Take an inferior pointer
332 instead of a pid. All callers adjusted.
333 (displaced_step_prepare_throw, displaced_step_prepare)
334 (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
335 All callers adjusted.
336 (start_step_over): Adjust.
337 (infrun_thread_ptid_changed): Remove bit updating ptids in the
338 displaced step queue.
339 (do_target_resume): Adjust.
340 (fetch_inferior_event): Use inferior_thread.
341 (context_switch, get_inferior_stop_soon): Take an
342 execution_control_state pointer instead of a ptid_t. All callers
343 adjusted.
344 (switch_to_thread_cleanup): Delete.
345 (stop_all_threads): Use scoped_restore_current_thread.
346 * inline-frame.c: Include "gdbthread.h".
347 (inline_state) <inline_state>: Take a thread pointer instead of a
348 ptid_t. All callers adjusted.
349 <ptid>: Delete, replaced by ...
350 <thread>: ... this new field.
351 (find_inline_frame_state): Take a thread pointer instead of a
352 ptid_t. All callers adjusted.
353 (skip_inline_frames, step_into_inline_frame)
354 (inline_skipped_frames, inline_skipped_symbol): Take a thread
355 pointer instead of a ptid_t. All callers adjusted.
356 * inline-frame.h (skip_inline_frames, step_into_inline_frame)
357 (inline_skipped_frames, inline_skipped_symbol): Likewise.
358 * linux-fork.c (delete_checkpoint_command): Adjust to use thread
359 pointers directly.
360 * linux-nat.c (get_detach_signal): Likewise.
361 * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
362 (thread_db_notice_clone): Adjust.
363 (thread_db_find_new_threads_silently)
364 (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
365 a thread pointer instead of a ptid_t. All callers adjusted.
366 * mi/mi-cmd-var.c: Include "inferior.h".
367 (mi_cmd_var_update_iter): Update to use thread pointers.
368 * mi/mi-interp.c (mi_new_thread): Update to use the thread's
369 inferior directly.
370 (mi_output_running_pid, mi_inferior_count): Delete, bits factored
371 out to ...
372 (mi_output_running): ... this new function.
373 (mi_on_resume_1): Adjust to use it.
374 (mi_user_selected_context_changed): Adjust to use inferior_thread.
375 * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
376 directly.
377 (interrupt_thread_callback): : Adjust to use thread and inferior
378 pointers.
379 * proc-service.c: Include "gdbthread.h".
380 (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
381 * progspace-and-thread.c: Include "inferior.h".
382 * progspace.c: Include "inferior.h".
383 * python/py-exitedevent.c (create_exited_event_object): Adjust to
384 hold a reference to an inferior_object.
385 * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
386 inferior_thread.
387 * python/py-inferior.c (struct inferior_object): Give the type a
388 tag name instead of a typedef.
389 (python_on_normal_stop): No need to check if the current thread is
390 listed.
391 (inferior_to_inferior_object): Change return type to
392 inferior_object. All callers adjusted.
393 (find_thread_object): Delete, bits factored out to ...
394 (thread_to_thread_object): ... this new function.
395 * python/py-infthread.c (create_thread_object): Use
396 inferior_to_inferior_object.
397 (thpy_is_stopped): Use thread pointer directly.
398 (gdbpy_selected_thread): Use inferior_thread.
399 * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
400 field, replaced with ...
401 <thread>: ... this new field. All users adjusted.
402 (btpy_insn_or_gap_new): Drop const.
403 (btpy_list_new): Take a thread pointer instead of a ptid_t. All
404 callers adjusted.
405 * python/py-record.c: Include "gdbthread.h".
406 (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
407 a ptid_t. All callers adjusted.
408 (gdbpy_current_recording): Use inferior_thread.
409 * python/py-record.h (recpy_record_object) <ptid>: Delete
410 field, replaced with ...
411 <thread>: ... this new field. All users adjusted.
412 (recpy_element_object) <ptid>: Delete
413 field, replaced with ...
414 <thread>: ... this new field. All users adjusted.
415 (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
416 a ptid_t. All callers adjusted.
417 * python/py-threadevent.c: Include "gdbthread.h".
418 (get_event_thread): Use thread_to_thread_object.
419 * python/python-internal.h (struct inferior_object): Forward
420 declare.
421 (find_thread_object, find_inferior_object): Delete declarations.
422 (thread_to_thread_object, inferior_to_inferior_object): New
423 declarations.
424 * record-btrace.c: Include "inferior.h".
425 (require_btrace_thread): Use inferior_thread.
426 (record_btrace_frame_sniffer)
427 (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
428 (get_thread_current_frame): Use scoped_restore_current_thread and
429 switch_to_thread.
430 (get_thread_current_frame): Use thread pointer directly.
431 (record_btrace_replay_at_breakpoint): Use thread's inferior
432 pointer directly.
433 * record-full.c: Include "inferior.h".
434 * regcache.c: Include "gdbthread.h".
435 (get_thread_arch_regcache): Use the inferior's address space
436 directly.
437 (get_thread_regcache, registers_changed_thread): New.
438 * regcache.h (get_thread_regcache(thread_info *thread)): New
439 overload.
440 (registers_changed_thread): New.
441 (remote_target) <remote_detach_1>: Swap order of parameters.
442 (remote_add_thread): <remote_add_thread>: Return the new thread.
443 (get_remote_thread_info(ptid_t)): New overload.
444 (remote_target::remote_notice_new_inferior): Use thread pointers
445 directly.
446 (remote_target::process_initial_stop_replies): Use
447 thread_info::set_running.
448 (remote_target::remote_detach_1, remote_target::detach)
449 (extended_remote_target::detach): Adjust.
450 * stack.c (frame_show_address): Use inferior_thread.
451 * target-debug.h (target_debug_print_thread_info_pp): New.
452 * target-delegates.c: Regenerate.
453 * target.c (default_thread_address_space): Delete.
454 (memory_xfer_partial_1): Use current_inferior.
455 (target_detach): Use current_inferior.
456 (target_thread_address_space): Delete.
457 (generic_mourn_inferior): Use current_inferior.
458 * target.h (struct target_ops) <thread_address_space>: Delete.
459 (target_thread_address_space): Delete.
460 * thread.c (init_thread_list): Use ALL_THREADS_SAFE. Use thread
461 pointers directly.
462 (delete_thread_1, delete_thread, delete_thread_silent): Take a
463 thread pointer instead of a ptid_t. Adjust all callers.
464 (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
465 (first_thread_of_process): Delete, replaced by ...
466 (first_thread_of_inferior): ... this new function. All callers
467 adjusted.
468 (any_thread_of_process): Rename to ...
469 (any_thread_of_inferior): ... this, and take an inferior pointer.
470 (any_live_thread_of_process): Rename to ...
471 (any_live_thread_of_inferior): ... this, and take an inferior
472 pointer.
473 (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
474 (value_in_thread_stack_temporaries)
475 (get_last_thread_stack_temporary): Take a thread pointer instead
476 of a ptid_t. Adjust all callers.
477 (thread_info::set_running): New.
478 (validate_registers_access): Use inferior_thread.
479 (can_access_registers_ptid): Rename to ...
480 (can_access_registers_thread): ... this, and take a thread
481 pointer.
482 (print_thread_info_1): Adjust to compare thread pointers instead
483 of ptids.
484 (switch_to_no_thread, switch_to_thread): Make extern.
485 (scoped_restore_current_thread::~scoped_restore_current_thread):
486 Use m_thread pointer directly.
487 (scoped_restore_current_thread::scoped_restore_current_thread):
488 Use inferior_thread.
489 (thread_command): Use thread pointer directly.
490 (thread_num_make_value_helper): Use inferior_thread.
491 * top.c (execute_command): Use inferior_thread.
492 * tui/tui-interp.c: Include "inferior.h".
493 * varobj.c (varobj_create): Use inferior_thread.
494 (value_of_root_1): Use find_thread_global_id instead of
495 global_thread_id_to_ptid.
496
497 2018-06-21 Alan Hayward <alan.hayward@arm.com>
498
499 * regcache.c (readable_regcache::read_part): Avoid memcpy when
500 possible.
501 (regcache::write_part): Likewise.
502 (readable_regcache::cooked_read_part): Update comment.
503 (readable_regcache::cooked_write_part): Likewise.
504 * regcache.h: (readable_regcache::read_part): Likewise.
505 (regcache::write_part): Likewise.
506
507 2018-06-21 Richard Bunt <richard.bunt@arm.com>
508 Dirk Schubert <dirk.schubert@arm.com>
509
510 * aarch64-linux-nat.c (post_attach): New.
511 (aarch64_linux_nat_target::post_attach): Override post_attach to
512 record the number of hardware debug registers.
513
514 2018-06-20 Tom Tromey <tom@tromey.com>
515
516 * python/py-param.c (add_setshow_generic): Make parameters const.
517 (parmpy_init): Update.
518
519 2018-06-20 Simon Marchi <simon.marchi@polymtl.ca>
520
521 * regcache.h (regcache_cooked_read_ftype): Rename to...
522 (register_read_ftype): ...this, change type to function_view.
523 (class reg_buffer) <save>: Remove src parameter.
524 (readonly_detached_regcache) <readonly_detached_regcache>: Make
525 parameter non-const in first overload. Remove src parameter in
526 second overload.
527 * regcache.c (do_cooked_read): Remove.
528 (readonly_detached_regcache::readonly_detached_regcache): Make
529 parameter non-const, adjust call to other constructor.
530 (reg_buffer::save): Remove src parameter.
531 * frame.c (do_frame_register_read): Remove.
532 (frame_save_as_regcache): Use lambda function.
533 * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
534 parameter to ppu2spu_data *.
535 (ppu2spu_sniffer): Use lambda function.
536
537 2018-06-20 Simon Marchi <simon.marchi@polymtl.ca>
538
539 * record-full.c (record_full_target::insert_breakpoint): Remove
540 "struct" keyword, add const.
541
542 2018-06-19 Simon Marchi <simon.marchi@ericsson.com>
543
544 * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
545 PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
546 * configure.ac: Remove AC_PREREQ, add missing quoting.
547 * gnulib/configure.ac: Modernize usage of
548 AC_INIT/AM_INIT_AUTOMAKE. Remove AC_PREREQ.
549 * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
550 (AUTOMAKE_VERSION): Bump to 1.15.1.
551 * configure: Re-generate.
552 * config.in: Re-generate.
553 * aclocal.m4: Re-generate.
554 * gnulib/aclocal.m4: Re-generate.
555 * gnulib/config.in: Re-generate.
556 * gnulib/configure: Re-generate.
557 * gnulib/import/Makefile.in: Re-generate.
558
559 2018-06-19 Pedro Alves <palves@redhat.com>
560
561 * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
562 (lookup_minimal_symbol_by_pc_section): ... here with
563 gdb_assert_not_reached added.
564
565 2018-06-19 Pedro Alves <palves@redhat.com>
566
567 * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
568 parameter with a block parameter. Compare location's block symbol
569 with the frame's block instead of addresses.
570 (skip_inline_frames): Pass the current block instead of the
571 frame's address. Break out as soon as we determine the frame
572 should not be skipped.
573
574 2018-06-18 Tom Tromey <tom@tromey.com>
575
576 * solib-aix.c (solib_aix_get_section_offsets): Return
577 unique_xmalloc_ptr.
578 (solib_aix_solib_create_inferior_hook): Update.
579
580 2018-06-18 Tom Tromey <tom@tromey.com>
581
582 * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
583
584 2018-06-18 Tom Tromey <tom@tromey.com>
585
586 * solib-frv.c (frv_relocate_main_executable): Use
587 unique_xmalloc_ptr.
588 * solib-dsbt.c (dsbt_relocate_main_executable): Use
589 unique_xmalloc_ptr.
590
591 2018-06-18 Tom Tromey <tom@tromey.com>
592
593 * objfiles.h (inhibit_section_map_updates): Update.
594 (resume_section_map_updates, resume_section_map_updates_cleanup):
595 Remove.
596 * solib-svr4.c (svr4_handle_solib_event): Update.
597 * objfiles.c (inhibit_section_map_updates): Return
598 scoped_restore_tmpl<int>.
599 (resume_section_map_updates, resume_section_map_updates_cleanup):
600 Remove.
601
602 2018-06-18 Tom Tromey <tom@tromey.com>
603
604 * valprint.h (read_string): Update.
605 * valprint.c (read_string): Change type of "buffer".
606 (val_print_string): Update.
607 * python/py-value.c (valpy_string): Update.
608 * language.h (struct language_defn) <la_get_string>: Change
609 type of "buffer".
610 (default_get_string, c_get_string): Update.
611 * language.c (default_get_string): Change type of "buffer".
612 * guile/scm-value.c (gdbscm_value_to_string): Update.
613 * c-lang.c (c_get_string): Change type of "buffer".
614
615 2018-06-18 Tom Tromey <tom@tromey.com>
616
617 * ser-mingw.c (struct pipe_state_destroyer): New.
618 (pipe_state_up): New typedef.
619 (cleanup_pipe_state): Remove.
620 (pipe_windows_open): Use pipe_state_up. Don't release argv.
621
622 2018-06-18 Tom Tromey <tom@tromey.com>
623
624 * rust-lang.h (rust_yyerror): Don't declare.
625 * rust-lang.c (rust_language_defn): Update.
626 * rust-exp.y (yyerror): Now static.
627 * parse.c (parse_exp_in_context_1): Update.
628 * p-lang.h (p_yyerror): Don't declare.
629 * p-lang.c (p_language_defn): Update.
630 * p-exp.y (yyerror): Now static.
631 * opencl-lang.c (opencl_language_defn): Update.
632 * objc-lang.c (objc_language_defn): Update.
633 * m2-lang.h (m2_yyerror): Don't declare.
634 * m2-lang.c (m2_language_defn): Update.
635 * m2-exp.y (yyerror): Now static.
636 * language.h (struct language_defn) <la_error>: Remove.
637 * language.c (unk_lang_error): Remove.
638 (unknown_language_defn, auto_language_defn): Remove.
639 * go-lang.h (go_yyerror): Don't declare.
640 * go-lang.c (go_language_defn): Update.
641 * go-exp.y (yyerror): Now static.
642 * f-lang.h (f_yyerror): Don't declare.
643 * f-lang.c (f_language_defn): Update.
644 * f-exp.y (yyerror): Now static.
645 * d-lang.h (d_yyerror): Don't declare.
646 * d-lang.c (d_language_defn): Update.
647 * d-exp.y (yyerror): Now static.
648 * c-lang.h (c_yyerror): Don't declare.
649 * c-lang.c (c_language_defn, cplus_language_defn)
650 (asm_language_defn, minimal_language_defn): Update.
651 * c-exp.y (yyerror): Now static.
652 * ada-lang.h (ada_yyerror): Don't declare.
653 * ada-lang.c (ada_language_defn): Update.
654 * ada-exp.y (yyerror): Now static.
655
656 2018-06-18 Alan Hayward <alan.hayward@arm.com>
657
658 * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
659 (store_sveregs_to_thread): Likewise.
660 (aarch64_linux_fetch_inferior_registers): Check for SVE.
661 (aarch64_linux_store_inferior_registers): Likewise.
662 * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
663 function.
664 (aarch64_sve_regs_copy_to_regcache): Likewise.
665 (aarch64_sve_regs_copy_from_regcache): Likewise.
666 * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
667 declaration.
668 (aarch64_sve_regs_copy_to_regcache): Likewise.
669 (aarch64_sve_regs_copy_from_regcache): Likewise.
670 (sve_context): Structure from Linux headers.
671 (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
672 (SVE_SIG_ZREG_SIZE): Likewise.
673 (SVE_SIG_PREG_SIZE): Likewise.
674 (SVE_SIG_FFR_SIZE): Likewise.
675 (SVE_SIG_REGS_OFFSET): Likewise.
676 (SVE_SIG_ZREGS_OFFSET): Likewise.
677 (SVE_SIG_ZREG_OFFSET): Likewise.
678 (SVE_SIG_ZREGS_SIZE): Likewise.
679 (SVE_SIG_PREGS_OFFSET): Likewise.
680 (SVE_SIG_PREG_OFFSET): Likewise.
681 (SVE_SIG_PREGS_SIZE): Likewise.
682 (SVE_SIG_FFR_OFFSET): Likewise.
683 (SVE_SIG_REGS_SIZE): Likewise.
684 (SVE_SIG_CONTEXT_SIZE): Likewise.
685 (SVE_PT_REGS_MASK): Likewise.
686 (SVE_PT_REGS_FPSIMD): Likewise.
687 (SVE_PT_REGS_SVE): Likewise.
688 (SVE_PT_VL_INHERIT): Likewise.
689 (SVE_PT_VL_ONEXEC): Likewise.
690 (SVE_PT_REGS_OFFSET): Likewise.
691 (SVE_PT_FPSIMD_OFFSET): Likewise.
692 (SVE_PT_FPSIMD_SIZE): Likewise.
693 (SVE_PT_SVE_ZREG_SIZE): Likewise.
694 (SVE_PT_SVE_PREG_SIZE): Likewise.
695 (SVE_PT_SVE_FFR_SIZE): Likewise.
696 (SVE_PT_SVE_FPSR_SIZE): Likewise.
697 (SVE_PT_SVE_FPCR_SIZE): Likewise.
698 (__SVE_SIG_TO_PT): Likewise.
699 (SVE_PT_SVE_OFFSET): Likewise.
700 (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
701 (SVE_PT_SVE_ZREG_OFFSET): Likewise.
702 (SVE_PT_SVE_ZREGS_SIZE): Likewise.
703 (SVE_PT_SVE_PREGS_OFFSET): Likewise.
704 (SVE_PT_SVE_PREG_OFFSET): Likewise.
705 (SVE_PT_SVE_PREGS_SIZE): Likewise.
706 (SVE_PT_SVE_FFR_OFFSET): Likewise.
707 (SVE_PT_SVE_FPSR_OFFSET): Likewise.
708 (SVE_PT_SVE_FPCR_OFFSET): Likewise.
709 (SVE_PT_SVE_SIZE): Likewise.
710 (SVE_PT_SIZE): Likewise.
711 (HAS_SVE_STATE): New define.
712
713 2018-06-18 Alan Hayward <alan.hayward@arm.com>
714
715 * nat/aarch64-sve-linux-sigcontext.h: New file.
716 * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
717 new files.
718 (SVE_VQ_MIN): Likewise.
719 (SVE_VQ_MAX): Likewise.
720 (SVE_VL_MIN): Likewise.
721 (SVE_VL_MAX): Likewise.
722 (SVE_NUM_ZREGS): Likewise.
723 (SVE_NUM_PREGS): Likewise.
724 (sve_vl_valid): Likewise.
725 (struct user_sve_header): Likewise.
726
727 2018-06-16 Andrew Burgess <andrew.burgess@embecosm.com>
728 Richard Bunt <Richard.Bunt@arm.com>
729
730 * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
731 was requested by GDB.
732
733 2018-06-15 Tom de Vries <tdevries@suse.de>
734
735 * MAINTAINERS (Write After Approval): Add Tom de Vries.
736
737 2018-06-14 Simon Marchi <simon.marchi@polymtl.ca>
738
739 * gnulib/update-gnulib.sh: Print expected versions of
740 autoconf/aclocal.
741
742 2018-06-14 Simon Marchi <simon.marchi@ericsson.com>
743
744 * arch-utils.c (default_type_align): Use type_length_units.
745 * gdbtypes.c (type_align): Use type_length_units.
746
747 2018-06-14 Philippe Waroquiers <philippe.waroquiers@skynet.be>
748
749 * cli/cli-script.c (_initialize_cli_script): Fix online documentation
750 of 'define' command.
751
752 2018-06-14 Tom de Vries <tdevries@suse.de>
753
754 PR cli/22573
755 * infcmd.c (print_return_value_1): Use get_user_print_options instead of
756 get_no_prettyformat_print_options.
757
758 2018-06-13 Simon Marchi <simon.marchi@ericsson.com>
759
760 * sparc-nat.h: Include target.h.
761 * sparc64-linux-nat.c (class sparc64_linux_nat_target)
762 <fetch_registers>: Remove this argument in function call.
763 <store_registers>: Remove this argument in function call, remove
764 extra semicolon.
765 <low_forget_process>: Call sparc64_forget_process instead of
766 sparc_forget_process.
767
768 2018-06-13 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
769
770 * procfs.c (_initialize_procfs): Use add_inf_child_target.
771 (procfs_target::make_corefile_notes): Adjust to new
772 target_read_alloc return type.
773
774 2018-06-12 Andrew Burgess <andrew.burgess@embecosm.com>
775 Stephen Roberts <stephen.roberts@arm.com>
776
777 PR gdb/22882
778 * infrun.c (fetch_inferior_event): If GDB is not proceeding then
779 run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
780 Move should_notify_stop local into more inner scope.
781
782 2018-06-12 Andrew Burgess <andrew.burgess@embecosm.com>
783 Stephen Roberts <stephen.roberts@arm.com>
784
785 PR gdb/22882
786 * infrun.c (resume_1): Add call to mark_async_event_handler.
787
788 2018-06-12 Andrew Burgess <andrew.burgess@embecosm.com>
789
790 * infrun.c (do_target_wait): Change old version of $pc printed.
791
792 2018-06-11 Simon Marchi <simon.marchi@ericsson.com>
793
794 * dwarf2read.c (read_index_from_section): Rename to...
795 (read_gdb_index_from_section): ... this, update all callers.
796 (dwarf2_read_index): Rename to...
797 (dwarf2_read_gdb_index): ... this, update all callers.
798
799 2018-06-11 John David Anglin <danglin@gcc.gnu.org>
800
801 * gdb/hppa-linux-nat.c
802 (hppa_linux_nat_target::fetch_inferior_registers): Rename to
803 hppa_linux_nat_target::fetch_registers.
804
805 2018-06-11 Alan Hayward <alan.hayward@arm.com>
806
807 * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
808 * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
809 (AARCH64_DWARF_SVE_FFR): Likewise.
810 (AARCH64_DWARF_SVE_P0): Likewise.
811 (AARCH64_DWARF_SVE_Z0): Likewise.
812
813 2018-06-11 Alan Hayward <alan.hayward@arm.com>
814
815 * common/common-regcache.h (raw_compare): New function.
816 * regcache.c (regcache::raw_compare): Likewise.
817 * regcache.h (regcache::raw_compare): New declaration.
818
819 2018-06-11 Alan Hayward <alan.hayward@arm.com>
820
821 * common/common-regcache.h (reg_buffer_common): New structure.
822 * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
823 (reg_buffer::raw_supply): Likewise.
824 (reg_buffer::raw_supply_integer): Likewise.
825 (reg_buffer::raw_supply_zeroed): Likewise.
826 (reg_buffer::raw_collect): Likewise.
827 (reg_buffer::raw_collect_integer): Likewise.
828 * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
829 (reg_buffer::raw_supply): Likewise.
830 (reg_buffer::raw_supply_integer): Likewise.
831 (reg_buffer::raw_supply_zeroed): Likewise.
832 (reg_buffer::raw_collect): Likewise.
833 (reg_buffer::raw_collect_integer): Likewise.
834
835 2018-06-10 Tom Tromey <tom@tromey.com>
836
837 * remote.c (stop_reply_p): Remove typedef. Don't declare queue.
838 (class remote_state) <stop_reply_queue>: Now std::vector.
839 (remote_state::~remote_state)
840 (remote_target::stop_reply_queue_length): Update.
841 (struct queue_iter_param, remove_child_of_pending_fork)
842 (struct check_pending_event_prevents_wildcard_vcont_callback_data)
843 (check_pending_event_prevents_wildcard_vcont_callback)
844 (remove_stop_reply_for_inferior)
845 (remove_stop_reply_of_remote_state)
846 (remote_notif_remove_once_on_match)
847 (stop_reply_match_ptid_and_ws)
848 (remote_kill_child_of_pending_fork): Remove.
849 (remote_target::remove_new_fork_children)
850 (remote_target::check_pending_events_prevent_wildcard_vcont)
851 (remote_target::discard_pending_stop_replies)
852 (remote_target::discard_pending_stop_replies_in_queue)
853 (remote_target::remote_notif_remove_queued_reply)
854 (remote_target::queued_stop_reply)
855 (remote_target::push_stop_reply, remote_target::peek_stop_reply)
856 (remote_target::wait, remote_target::kill_new_fork_children)
857 (remote_target::async): Update.
858
859 2018-06-10 Tom Tromey <tom@tromey.com>
860
861 * record-full.c (record_full_arch_list_cleanups): Remove.
862 (record_full_message): Use try/catch.
863 (record_full_wait_cleanups): Remove.
864 (record_full_wait_1): Use try/catch.
865 (record_full_restore): Likewise.
866
867 2018-06-10 Tom Tromey <tom@tromey.com>
868
869 * record-full.c (record_full_breakpoint_p): Remove typedef. Don't
870 declare VEC. Add constructor.
871 <in_target_beneath>: Now bool.
872 (record_full_breakpoints): Now a std::vector, static.
873 (record_full_sync_record_breakpoints)
874 (record_full_init_record_breakpoints)
875 (record_full_target::insert_breakpoint)
876 (record_full_target::remove_breakpoint): Update. Don't use XNEW.
877
878 2018-06-10 Simon Marchi <simon.marchi@polymtl.ca>
879
880 * dwarf2read.c (process_cu_includes): Remove struct keyword.
881 * serial.c (serial_interface_lookup): Remove struct keyword.
882
883 2018-06-10 Tom Tromey <tom@tromey.com>
884
885 * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
886 method.
887 * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
888 a method.
889 * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
890 method.
891 * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
892 "beneath" as a method.
893 * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
894 Use "beneath" as a method.
895
896 2018-06-10 Tom Tromey <tom@tromey.com>
897
898 * tracefile.c (struct trace_file_writer_deleter): New.
899 <operator()>: Rename from trace_file_writer_xfree.
900 (trace_file_writer_up): New typedef.
901 (tsave_command, trace_save_tfile, trace_save_ctf): Update.
902
903 2018-06-09 Simon Marchi <simon.marchi@ericsson.com>
904
905 * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
906 <m_registers, m_register_status>: Change type to
907 std::unique_ptr.
908 * regcache.c (reg_buffer::reg_buffer): Use new instead of
909 XCNEWVEC.
910
911 2018-06-09 Simon Marchi <simon.marchi@ericsson.com>
912
913 * common/common-regcache.h (enum register_status): Add
914 underlying type "signed char".
915 * regcache.h (reg_buffer) <m_register_status>: Change type to
916 register_status *.
917 * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
918 register_status instead of signed char.
919 (reg_buffer::save): Use REG_UNKNOWN instead of 0.
920 (reg_buffer::get_register_status): Remove cast.
921 (readable_regcache::raw_read): Remove cast.
922 (readable_regcache::cooked_read): Remove cast.
923
924 2018-06-09 Tom Tromey <tom@tromey.com>
925
926 * source.c (reverse_search_command, forward_search_command): Use
927 scoped_fd.
928
929 2018-06-09 Tom Tromey <tom@tromey.com>
930
931 * serial.c (serial_ops_p): Remove typedef. Don't declare VEC.
932 (serial_ops_list): Now static, std::vector.
933 (serial_interface_lookup, serial_add_interface): Update.
934
935 2018-06-09 Tom Tromey <tom@tromey.com>
936
937 * dwarf2read.c (process_cu_includes): Update.
938 (process_full_comp_unit): Update.
939 * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
940 std::vector.
941
942 2018-06-08 Paul Koning <paul_koning@dell.com>
943
944 PR gdb/23252
945
946 * python/python.c (do_start_initialization):
947 Avoid call to internal Python API.
948 (init__gdb_module): New function.
949
950 2018-06-08 Gary Benson <gbenson@redhat.com>
951
952 * linux-thread-db.c (valprint.h): New include.
953 (struct check_thread_db_info): New structure.
954 (check_thread_db_on_load, tdb_testinfo): New static globals.
955 (check_thread_db, check_thread_db_callback): New functions.
956 (try_thread_db_load_1): Run integrity checks if requested.
957 (maintenance_check_libthread_db): New function.
958 (_initialize_thread_db): Register "maint check libthread-db"
959 and "maint set/show check-libthread-db".
960 * NEWS: Mention the above new commands.
961
962 2018-06-08 Tom Tromey <tom@tromey.com>
963
964 * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
965 now a method.
966
967 2018-06-08 Tom Tromey <tom@tromey.com>
968
969 * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
970
971 2018-06-08 Tom Tromey <tom@tromey.com>
972
973 * common/btrace-common.h (struct btrace_data): Add constructor,
974 destructor, move assignment operator.
975 <empty, clear, fini>: New methods.
976 <format>: Initialize.
977 (btrace_data_init, btrace_data_fini, btrace_data_clear)
978 (btrace_data_empty): Don't declare.
979 * common/btrace-common.c (btrace_data_init): Remove.
980 (btrace_data::fini): Rename from btrace_data_fini.
981 (btrace_data::empty): Rename from btrace_data_empty.
982 (btrace_data::clear): Rename from btrace_data_clear. Return
983 bool.
984 * btrace.h (make_cleanup_btrace_data): Don't declare.
985 * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
986 (parse_xml_btrace): Update.
987 (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
988 (maint_btrace_clear_packet_history_cmd): Update.
989
990 2018-06-07 Pedro Alves <palves@redhat.com>
991
992 * target.h (target_ops) <beneath>: Now a method. All references
993 updated.
994 (class target_stack): New.
995 * target.c (g_target_stack): New.
996 (g_current_top_target): Delete.
997 (current_top_target): Get the top target out of g_target_stack.
998 (target_stack::push, target_stack::unpush): New.
999 (push_target, unpush_target): Reimplement.
1000 (target_is_pushed): Reimplement in terms of g_target_stack.
1001 (target_ops::beneath, target_stack::find_beneath): New.
1002
1003 2018-06-07 Pedro Alves <palves@redhat.com>
1004
1005 * target.h (find_target_beneath): Delete declaration.
1006 * target.c (find_target_beneath): Delete definition.
1007 * aix-thread.c: All callers of find_target_beneath adjusted to
1008 call target_ops::beneath instead.
1009 * bsd-uthread.c: Likewise.
1010 * linux-thread-db.c: Likewise.
1011 * ravenscar-thread.c: Likewise.
1012 * sol-thread.c: Likewise.
1013 * spu-multiarch.c: Likewise.
1014
1015 2018-06-07 Pedro Alves <palves@redhat.com>
1016
1017 * target.h (target_ops) <beneath>: Now a method. All references
1018 updated.
1019 (target_ops) <m_beneath>: New.
1020 * target.c (target_ops::beneath): New.
1021 * corelow.c: Adjust all references to target_ops::beneath.
1022 * linux-thread-db.c: Likewise.
1023 * make-target-delegates: Likewise.
1024 * record-btrace.c: Likewise.
1025 * record-full.c: Likewise.
1026 * remote.c: Likewise.
1027 * target.c: Likewise.
1028 * target-delegates.c: Regenerate.
1029
1030 2018-06-07 Pedro Alves <palves@redhat.com>
1031
1032 * target.h (target_stack): Delete.
1033 (current_top_target): Declare function.
1034 * target.c (target_stack): Delete.
1035 (g_current_top_target): New.
1036 (current_top_target): New function.
1037 * auxv.c: Use current_top_target instead of target_stack
1038 throughout.
1039 * avr-tdep.c: Likewise.
1040 * breakpoint.c: Likewise.
1041 * corefile.c: Likewise.
1042 * elfread.c: Likewise.
1043 * eval.c: Likewise.
1044 * exceptions.c: Likewise.
1045 * frame.c: Likewise.
1046 * gdbarch-selftests.c: Likewise.
1047 * gnu-v3-abi.c: Likewise.
1048 * ia64-tdep.c: Likewise.
1049 * ia64-vms-tdep.c: Likewise.
1050 * infcall.c: Likewise.
1051 * infcmd.c: Likewise.
1052 * infrun.c: Likewise.
1053 * linespec.c: Likewise.
1054 * linux-tdep.c: Likewise.
1055 * minsyms.c: Likewise.
1056 * ppc-linux-nat.c: Likewise.
1057 * ppc-linux-tdep.c: Likewise.
1058 * procfs.c: Likewise.
1059 * regcache.c: Likewise.
1060 * remote.c: Likewise.
1061 * rs6000-tdep.c: Likewise.
1062 * s390-linux-nat.c: Likewise.
1063 * s390-tdep.c: Likewise.
1064 * solib-aix.c: Likewise.
1065 * solib-darwin.c: Likewise.
1066 * solib-dsbt.c: Likewise.
1067 * solib-spu.c: Likewise.
1068 * solib-svr4.c: Likewise.
1069 * solib-target.c: Likewise.
1070 * sparc-tdep.c: Likewise.
1071 * sparc64-tdep.c: Likewise.
1072 * spu-tdep.c: Likewise.
1073 * symfile.c: Likewise.
1074 * symtab.c: Likewise.
1075 * target-descriptions.c: Likewise.
1076 * target-memory.c: Likewise.
1077 * target.c: Likewise.
1078 * target.h: Likewise.
1079 * tracefile-tfile.c: Likewise.
1080 * tracepoint.c: Likewise.
1081 * valops.c: Likewise.
1082 * valprint.c: Likewise.
1083 * value.c: Likewise.
1084 * windows-tdep.c: Likewise.
1085 * mi/mi-main.c: Likewise.
1086
1087 2018-06-07 Tom Tromey <tom@tromey.com>
1088
1089 * valprint.h (build_address_symbolic): Declare.
1090 * printcmd.c (print_address_symbolic): Update.
1091 (build_address_symbolic): Change "name" and "filename" to
1092 std::string.
1093 * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
1094 Update.
1095 * defs.h (build_address_symbolic): Remove declaration.
1096
1097 2018-06-07 Alan Hayward <alan.hayward@arm.com>
1098
1099 * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
1100 (aarch64_vnv_type): Add function.
1101 (aarch64_pseudo_register_name): Add V regs for SVE.
1102 (aarch64_pseudo_register_type): Likewise.
1103 (aarch64_pseudo_register_reggroup_p): Likewise.
1104 (aarch64_pseudo_read_value_2): Use V0 offset for SVE
1105 (aarch64_pseudo_read_value): Add V regs for SVE.
1106 (aarch64_pseudo_write_2): Use V0 offset for SVE
1107 (aarch64_pseudo_write): Add V regs for SVE.
1108 * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
1109
1110 2018-06-06 Sergio Durigan Junior <sergiodj@redhat.com>
1111
1112 * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
1113 (sve_vl_from_vq): Likewise.
1114
1115 2018-06-05 Tom Tromey <tom@tromey.com>
1116
1117 * cli/cli-cmds.c (show_version): Update.
1118 * top.c (print_gdb_version): Add "interactive" parameter.
1119 Update.
1120 * main.c (captured_main_1): Update.
1121 * top.h (print_gdb_version): Add "interactive" parameter and a
1122 comment.
1123
1124 2018-06-05 David Malcolm <dmalcolm@redhat.com>
1125
1126 * common/enum-flags.h: Add trailing semicolon to example in
1127 comment.
1128
1129 2018-06-05 Tom Tromey <tom@tromey.com>
1130
1131 PR cli/12326:
1132 * NEWS: Add entry about pager.
1133 * utils.c (pagination_disabled_for_command): New global.
1134 (prompt_for_continue): Allow "c" response to prompt.
1135 (reinitialize_more_filter): Clear
1136 pagination_disabled_for_command.
1137 (fputs_maybe_filtered): Check pagination_disabled_for_command.
1138
1139 2018-06-04 Tom Tromey <tom@tromey.com>
1140
1141 * ada-lang.h (ada_lookup_symbol_list): Update.
1142 * ada-lang.c (resolve_subexp): Update.
1143 (symbols_are_identical_enums): Change type of syms. Remove nsyms
1144 parameter.
1145 (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
1146 (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
1147 results parameter to std::vector.
1148 (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
1149 Update.
1150 * ada-exp.y (block_lookup): Update.
1151 (select_possible_type_sym): Change type of syms. Remove nsyms
1152 parameter.
1153 (write_var_or_type, write_name_assoc): Update.
1154
1155 2018-06-04 Joel Brobecker <brobecker@adacore.com>
1156
1157 * windows-nat.c (windows_nat_target::xfer_partial): Return
1158 TARGET_XFER_E_IO if we need to delegate to the target beneath
1159 but BENEATH is NULL.
1160
1161 2018-06-04 Simon Marchi <simon.marchi@ericsson.com>
1162
1163 * Makefile.in (config.status): Add configure.nat as a
1164 dependency.
1165
1166 2018-06-04 Tom Tromey <tom@tromey.com>
1167
1168 * cp-name-parser.y (cpname_state): Add method declarations.
1169 (HANDLE_QUAL): Update.
1170 (cpname_state::d_grab, cpname_state::fill_comp)
1171 (cpname_state::make_operator, cpname_state::make_dtor)
1172 (cpname_state::make_builtin_type, cpname_state::make_name)
1173 (cpname_state::d_qualify, cpname_state::d_int_type)
1174 (cpname_state::d_unary, cpname_state::d_binary): Now methods.
1175 (%union): Move earlier.
1176
1177 2018-06-04 Alan Hayward <alan.hayward@arm.com>
1178
1179 * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
1180
1181 2018-06-04 Alan Hayward <alan.hayward@arm.com>
1182
1183 * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
1184 (aarch64_pseudo_write_1): Likewise.
1185 (aarch64_pseudo_read_value): Use helper.
1186 (aarch64_pseudo_write): Likewise.
1187
1188 2018-06-04 Pedro Alves <palves@redhat.com>
1189
1190 * darwin-nat.c (darwin_ops): Delete.
1191 (darwin_attach_pid): Use get_native_target.
1192
1193 2018-06-04 Alan Hayward <alan.hayward@arm.com>
1194
1195 * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
1196 * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
1197
1198 2018-06-04 Alan Hayward <alan.hayward@arm.com>
1199
1200 * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
1201 * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
1202 (aarch64_gdbarch_init): Check for SVE.
1203 * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
1204
1205 2018-06-04 Alan Hayward <alan.hayward@arm.com>
1206
1207 * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
1208 * aarch64-tdep.h (aarch64_read_description): Likewise.
1209 * arch/aarch64.c (aarch64_create_target_description): Likewise.
1210 * arch/aarch64.h (aarch64_create_target_description): Likewise.
1211 * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
1212 * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
1213 * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
1214
1215 2018-06-02 Simon Marchi <simon.marchi@ericsson.com>
1216
1217 * value.c (value_fetch_lazy_bitfield): New.
1218 (value_fetch_lazy_memory): New.
1219 (value_fetch_lazy_register): New.
1220 (value_fetch_lazy): Factor out to smaller functions.
1221
1222 2018-06-01 Tom Tromey <tom@tromey.com>
1223
1224 * cp-name-parser.y (backslashable, represented): Now const.
1225
1226 2018-06-01 Tom Tromey <tom@tromey.com>
1227
1228 * cp-name-parser.y: Include parser-defs.h.
1229 (parser_fprintf): Remove declaration.
1230
1231 2018-06-01 Tom Tromey <tom@tromey.com>
1232
1233 * cp-name-parser.y: Use %pure-parser, %lex-param, and
1234 %parse-param.
1235 (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
1236 (global_result): Remove globals.
1237 (struct cpname_state): New.
1238 (yyparse): Don't declare.
1239 (yylex, yyerror): Move declarations after %union.
1240 (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
1241 (make_name): Add state parameter.
1242 Update all callers.
1243 (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
1244 parameter.
1245 (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
1246 Update.
1247 (yylex): Add lvalp, state parameters.
1248 (yyerror): Add state parameter.
1249 (cp_demangled_name_to_comp): Update.
1250
1251 2018-06-01 Tom Tromey <tom@tromey.com>
1252
1253 * cp-name-parser.y (parser_fprintf): Declare.
1254 (GDB_YY_REMAP_PREFIX): Define.
1255 Include yy-remap.h. Don't redefine yy* identifiers.
1256
1257 2018-06-01 Tom Tromey <tom@tromey.com>
1258
1259 * python/py-type.c (typy_legacy_template_argument): Update.
1260 * cp-support.h (cp_demangled_name_to_comp): Update.
1261 * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
1262 parameter to be a "std::string *".
1263 (main): Update.
1264
1265 2018-06-01 H.J. Lu <hongjiu.lu@intel.com>
1266
1267 * ada-lex.l: Include "diagnostics.h" instead of
1268 "common/diagnostics.h".
1269 * unittests/environ-selftests.c: Likewise.
1270 * common/diagnostics.h: Moved to ../include.
1271
1272 2018-06-01 Joel Brobecker <brobecker@adacore.com>
1273
1274 * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
1275 to language_mode_manual while calling breakpoint_re_set_one.
1276
1277 2018-06-01 Tom Tromey <tom@tromey.com>
1278
1279 * valops.c (value_cast_structs, destructor_name_p): Update.
1280 * symtab.c (gdb_mangle_name): Update.
1281 * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
1282 Update.
1283 * p-valprint.c (pascal_object_is_vtbl_ptr_type)
1284 (pascal_object_print_value_fields, pascal_object_print_value):
1285 Update.
1286 * p-typeprint.c (pascal_type_print_derivation_info): Update.
1287 * linespec.c (find_methods): Update.
1288 * gdbtypes.h (type_name_no_tag): Remove.
1289 (type_name_or_error): Rename from type_name_no_tag_or_error.
1290 * gdbtypes.c (type_name_no_tag): Remove.
1291 (type_name_or_error): Rename from type_name_no_tag_or_error.
1292 (lookup_struct_elt_type, check_typedef): Update.
1293 * expprint.c (print_subexp_standard): Update.
1294 * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
1295 * d-namespace.c (d_lookup_nested_symbol): Update.
1296 * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
1297 (cp_print_class_member): Update.
1298 * cp-namespace.c (cp_lookup_nested_symbol): Update.
1299 * completer.c (add_struct_fields): Update.
1300 * c-typeprint.c (cp_type_print_derivation_info)
1301 (c_type_print_varspec_prefix, c_type_print_base_struct_union):
1302 Update.
1303 * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
1304 (ada_prefer_type, ada_is_exception_sym): Update.
1305
1306 2018-06-01 Tom Tromey <tom@tromey.com>
1307
1308 * valops.c (enum_constant_from_type, value_namespace_elt)
1309 (value_maybe_namespace_elt): Update.
1310 * valarith.c (find_size_for_pointer_math): Update.
1311 * target-descriptions.c (make_gdb_type): Update.
1312 * symmisc.c (print_symbol): Update.
1313 * stabsread.c (define_symbol, read_type)
1314 (complain_about_struct_wipeout, add_undefined_type)
1315 (cleanup_undefined_types_1): Update.
1316 * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
1317 (rust_range_type_p, val_print_struct, rust_print_struct_def)
1318 (rust_internal_print_type, rust_composite_type)
1319 (rust_evaluate_funcall, rust_evaluate_subexp)
1320 (rust_inclusive_range_type_p): Update.
1321 * python/py-type.c (typy_get_tag): Update.
1322 * p-typeprint.c (pascal_type_print_base): Update.
1323 * mdebugread.c (parse_symbol, parse_type): Update.
1324 * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
1325 Update.
1326 * guile/scm-type.c (gdbscm_type_tag): Update.
1327 * go-lang.c (sixg_string_p): Update.
1328 * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
1329 Update.
1330 * gdbtypes.h (struct main_type) <tag_name>: Remove.
1331 (TYPE_TAG_NAME): Remove.
1332 * gdbtypes.c (type_name_no_tag): Simplify.
1333 (check_typedef, check_types_equal, recursive_dump_type)
1334 (copy_type_recursive, arch_composite_type): Update.
1335 * f-typeprint.c (f_type_print_base): Update. Print "Type" prefix
1336 in summary mode when needed.
1337 * eval.c (evaluate_funcall): Update.
1338 * dwarf2read.c (fixup_go_packaging, read_structure_type)
1339 (process_structure_scope, read_enumeration_type)
1340 (read_namespace_type, read_module_type, determine_prefix): Update.
1341 * cp-support.c (inspect_type): Update.
1342 * coffread.c (process_coff_symbol, decode_base_type): Update.
1343 * c-varobj.c (c_is_path_expr_parent): Update.
1344 * c-typeprint.c (c_type_print_base_struct_union): Update.
1345 (c_type_print_base_1): Update. Print struct/class/union/enum in
1346 summary when using C language.
1347 * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
1348 (gen_maybe_namespace_elt): Update.
1349 * ada-lang.c (ada_type_name): Simplify.
1350 (empty_record, ada_template_to_fixed_record_type_1)
1351 (template_to_static_fixed_type)
1352 (to_record_with_fixed_variant_part, ada_check_typedef): Update.
1353
1354 2018-06-01 Tom Tromey <tom@tromey.com>
1355
1356 * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
1357 c_print_type.
1358 * c-typeprint.c (c_print_type_1): Add "language" parameter.
1359 (c_print_type): Update.
1360 (c_print_type): New overload.
1361 (c_type_print_varspec_prefix, c_type_print_args)
1362 (c_type_print_varspec_suffix, c_print_type_no_offsets)
1363 (c_type_print_base_struct_union, c_type_print_base_1)
1364 (cp_type_print_method_args): Add "language" parameter.
1365 (c_type_print_base): Update.
1366 * c-lang.h (c_print_type): Add new overload.
1367
1368 2018-06-01 Tom Tromey <tom@tromey.com>
1369
1370 * typeprint.h (c_type_print_varspec_suffix): Don't declare.
1371 * c-typeprint.c (c_type_print_varspec_suffix): Now static.
1372
1373 2018-06-01 Alan Hayward <alan.hayward@arm.com>
1374
1375 * aarch64-tdep.c (aarch64_sve_register_names): New const
1376 var.
1377 * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
1378 (AARCH64_SVE_Z_REGS_NUM): New define.
1379 (AARCH64_SVE_P_REGS_NUM): Likewise.
1380 (AARCH64_SVE_NUM_REGS): Likewise.
1381
1382 2018-05-31 Uros Bizjak <ubizjak@gmail.com>
1383
1384 * nat/linux-ptrace.h [__alpha__]
1385 (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
1386 definitions.
1387
1388 2018-05-31 Maciej W. Rozycki <macro@mips.com>
1389
1390 * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
1391 the endianness selected.
1392 * NEWS: Document `set endian auto' mode operation update.
1393
1394 2018-05-31 Alan Hayward <alan.hayward@arm.com>
1395
1396 * Makefile.in: Add new header.
1397 * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
1398 (sve_vl_from_vg): Likewise.
1399 (sve_vq_from_vl): Likewise.
1400 (sve_vl_from_vq): Likewise.
1401 (sve_vq_from_vg): Likewise.
1402 (sve_vg_from_vq): Likewise.
1403 * configure.nat: Add new c file.
1404 * nat/aarch64-sve-linux-ptrace.c: New file.
1405 * nat/aarch64-sve-linux-ptrace.h: New file.
1406
1407 2018-05-31 Alan Hayward <alan.hayward@arm.com>
1408
1409 * aarch64-linux-nat.c (aarch64_linux_read_description):
1410 Add parmeter zero.
1411 * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
1412 Likewise.
1413 * aarch64-tdep.c (tdesc_aarch64_list): Add.
1414 (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
1415 (aarch64_gdbarch_init): Add parmeter zero.
1416 * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
1417 * arch/aarch64.c (aarch64_create_target_description): Check VQ.
1418 * arch/aarch64.h (aarch64_create_target_description): Add VQ.
1419 parmeter.
1420 * doc/gdb.texinfo: Describe SVE feature
1421 * features/aarch64-sve.c: New file.
1422
1423 2018-05-31 Omair Javaid <omair.javaid@linaro.org>
1424
1425 PR gdb/23210
1426 * gdbarch.sh (significant_addr_bit): Default to zero when
1427 not set by target architecture.
1428 * gdbarch.c: Re-generated.
1429 * utils.c (address_significant): Update.
1430
1431 2018-05-30 Joel Brobecker <brobecker@adacore.com>
1432
1433 * stack.c (func_command): Remove trailing newline in call to error.
1434
1435 2018-05-30 Simon Marchi <simon.marchi@ericsson.com>
1436
1437 * regcache.h (regcache_raw_collect): Remove, update callers to
1438 use regcache::raw_collect.
1439 * regcache.c (regcache_raw_collect): Remove.
1440
1441 2018-05-30 Simon Marchi <simon.marchi@ericsson.com>
1442
1443 * regcache.h (regcache_raw_supply): Remove, update callers to
1444 use detached_regcache::raw_supply.
1445 * regcache.c (regcache_raw_supply): Remove.
1446
1447 2018-05-30 Simon Marchi <simon.marchi@ericsson.com>
1448
1449 * regcache.h (regcache_cooked_write_part): Remove, update
1450 callers to use regcache::cooked_write_part.
1451 * regcache.c (regcache_cooked_write_part): Remove.
1452
1453 2018-05-30 Simon Marchi <simon.marchi@ericsson.com>
1454
1455 * regcache.h (regcache_cooked_read_part): Remove, update callers
1456 to use readable_regcache::cooked_read_part.
1457 * regcache.c (regcache_cooked_read_part): Remove.
1458
1459 2018-05-30 Simon Marchi <simon.marchi@ericsson.com>
1460
1461 * regcache.h (regcache_cooked_read_value): Remove, update
1462 callers to use readable_regcache::cooked_read_value.
1463 * regcache.c (regcache_cooked_read_value): Remove.
1464
1465 2018-05-30 Simon Marchi <simon.marchi@ericsson.com>
1466
1467 * regcache.h (regcache_cooked_write): Remove, update callers to
1468 use regcache::cooked_write.
1469 * regcache.c (regcache_cooked_write): Remove.
1470
1471 2018-05-30 Simon Marchi <simon.marchi@ericsson.com>
1472
1473 * regcache.h (regcache_invalidate): Remove, update callers to
1474 use detached_regcache::invalidate instead.
1475 * regcache.c (regcache_invalidate): Remove.
1476
1477 2018-05-30 Simon Marchi <simon.marchi@ericsson.com>
1478
1479 * regcache.h (regcache_raw_write_part): Remove, update callers
1480 to use regcache::raw_write_part instead.
1481 * regcache.c (regcache_raw_write_part): Remove.
1482
1483 2018-05-30 Simon Marchi <simon.marchi@ericsson.com>
1484
1485 * regcache.h (regcache_raw_read_part): Remove, update callers to
1486 use readable_regcache::raw_read_part instead.
1487 * regcache.c (regcache_raw_read_part): Remove.
1488
1489 2018-05-30 Simon Marchi <simon.marchi@ericsson.com>
1490
1491 * regcache.h (regcache_cooked_read): Remove, update callers to
1492 use readable_regcache::cooked_read instead.
1493 * regcache.c (regcache_cooked_read): Remove.
1494
1495 2018-05-30 Simon Marchi <simon.marchi@ericsson.com>
1496
1497 * regcache.h (regcache_raw_write): Remove, update callers to use
1498 regcache::raw_write instead.
1499 * regcache.c (regcache_raw_write): Remove.
1500
1501 2018-05-30 Simon Marchi <simon.marchi@ericsson.com>
1502
1503 * regcache.h (regcache_raw_read): Remove, update callers to use
1504 readable_regcache::raw_read instead.
1505 * regcache.c (regcache_raw_read): Remove.
1506
1507 2018-05-30 Simon Marchi <simon.marchi@ericsson.com>
1508
1509 * regcache.h (regcache_raw_update): Remove, update callers to
1510 use readable_regcache::raw_update instead.
1511 * regcache.c (regcache_raw_update): Remove.
1512
1513 2018-05-30 Simon Marchi <simon.marchi@ericsson.com>
1514
1515 * regcache.h (regcache_register_status): Remove, update callers
1516 to use reg_buffer::get_register_status directly instead.
1517 * regcache.c (regcache_register_status): Remove.
1518
1519 2018-05-30 Simon Marchi <simon.marchi@ericsson.com>
1520
1521 * regcache.h (regcache_get_ptid): Remove, update all callers to
1522 call regcache::ptid instead.
1523 * regcache.c (regcache_get_ptid): Remove.
1524
1525 2018-05-30 Simon Marchi <simon.marchi@ericsson.com>
1526
1527 * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
1528
1529 2018-05-30 Pedro Alves <palves@redhat.com>
1530
1531 * common/common-exceptions.h (exception_rethrow): Use
1532 ATTRIBUTE_NORETURN.
1533
1534 2018-05-29 Simon Marchi <simon.marchi@polymtl.ca>
1535
1536 * breakpoint.c (print_solib_event, check_status_catch_solib):
1537 Remove struct keyword in range-based for loops.
1538 * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
1539 * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
1540 Likewise.
1541 * linespec.c (find_superclass_methods, search_minsyms_for_name):
1542 Likewise.
1543 * symfile.c (addr_info_make_relative): Likewise.
1544 * thread.c (value_in_thread_stack_temporaries): Likewise.
1545
1546 2018-06-12 Weimin Pan <weimin.pan@oracle.com>
1547
1548 PR gdb/16841
1549 * valops.c (value_struct_elt_for_reference): Call check_typedef on
1550 aggregate type to get its real type before accessing it.
1551
1552 2018-05-29 Weimin Pan <weimin.pan@oracle.com>
1553
1554 * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
1555 * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
1556 * coff-pe-read.c (add_pe_forwarded_sym): Replace
1557 lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
1558 * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
1559 * jit.c (jit_breakpoint_re_set_internal): Likewise.
1560 * printcmd.c (info_address_command): Likewise.
1561
1562 2018-05-29 Tom Tromey <tom@tromey.com>
1563
1564 * windows-nat.c (handle_exception): Update fall-through comment.
1565
1566 2018-05-29 Tom Tromey <tom@tromey.com>
1567
1568 * progspace.h (so_list_ptr): Remove typedef. Don't declare VEC.
1569 (struct program_space) <added_solibs>: Now a std::vector.
1570 * breakpoint.c (print_solib_event): Update.
1571 (check_status_catch_solib): Update.
1572 * progspace.c (clear_program_space_solib_cache): Update.
1573 * solib.c (update_solib_list): Update.
1574
1575 2018-05-29 Tom Tromey <tom@tromey.com>
1576
1577 * python/py-type.c (typy_richcompare): Update.
1578 * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
1579 * gdbtypes.h (types_deeply_equal): Return bool.
1580 (types_equal): Likewise.
1581 * gdbtypes.c (type_equality_entry_d): Remove typedef. Don't
1582 declare VEC.
1583 (check_types_equal): Change worklist to std::vector. Return
1584 bool.
1585 (struct type_equality_entry): Add constructor.
1586 (compare_maybe_null_strings): Return bool.
1587 (check_types_worklist): Return bool. Change worklist to
1588 std::vector.
1589 (types_deeply_equal): Use std::vector.
1590 (types_equal): Return bool.
1591 (compare_maybe_null_strings): Simplify.
1592
1593 2018-05-29 Tom Tromey <tom@tromey.com>
1594
1595 * record-btrace.c (tp_t): Remove typedef. Don't declare VEC.
1596
1597 2018-05-29 Tom Tromey <tom@tromey.com>
1598
1599 * objc-lang.h: Don't include cp-support.h.
1600 * common/gdb_vecs.h (const_char_ptr): Remove typedef. Don't
1601 declare VEC.
1602
1603 2018-05-27 Tom Tromey <tom@tromey.com>
1604
1605 * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
1606
1607 2018-05-25 Tom Tromey <tom@tromey.com>
1608
1609 * value.c (value::location): Initialize.
1610
1611 2018-05-25 Tom Tromey <tom@tromey.com>
1612
1613 * dbxread.c (init_bincl_list): Remove.
1614 (bincl_list): Now a std::vector.
1615 (bincls_allocated, next_bincl): Remove.
1616 (free_bincl_list, do_free_bincl_list_cleanup)
1617 (make_cleanup_free_bincl_list): Remove.
1618 (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
1619 unique_xmalloc_ptr.
1620 (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
1621 (struct header_file_location): Add constructor.
1622 (add_bincl_to_list): Remove.
1623
1624 2018-05-25 Tom Tromey <tom@tromey.com>
1625
1626 * tui/tui.c (tui_enable): Update.
1627 * mi/mi-interp.c (mi_interp::init): Update.
1628 * interps.h (class interp) <name>: New method.
1629 <m_name>: Rename from name.
1630 (~scoped_restore_interp): Update.
1631 * interps.c (interp::interp): Update.
1632 (interp_add, interp_set, interp_lookup_existing)
1633 (current_interp_named_p): Update.
1634
1635 2018-05-25 Tom Tromey <tom@tromey.com>
1636
1637 * interps.c (interp_name): Remove.
1638 * mi/mi-interp.c (mi_interp::init): Update.
1639 * interps.h (interp_name): Remove.
1640 (~scoped_restore_interp): Update.
1641 * tui/tui.c (tui_enable): Update.
1642
1643 2018-05-25 Tom Tromey <tom@tromey.com>
1644
1645 * utils.c (fputs_maybe_filtered): Update.
1646 * linespec.c (decode_line_full): Update.
1647 * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
1648 (mi_print_breakpoint_for_event, mi_solib_loaded)
1649 (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
1650 (mi_user_selected_context_changed): Update.
1651 * mi/mi-main.c (mi_execute_command): Update.
1652 * cli/cli-script.c (execute_control_command): Update.
1653 * python/python.c (execute_gdb_command): Update.
1654 * solib.c (info_sharedlibrary_command): Update.
1655 * interps.c (interp_ui_out): Remove.
1656 * interps.h (interp_ui_out): Remove.
1657
1658 2018-05-25 Tom Tromey <tom@tromey.com>
1659
1660 * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
1661 * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
1662 * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
1663
1664 2018-05-25 Tom Tromey <tom@tromey.com>
1665
1666 * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
1667 * interps.c (interp_exec): Use scoped_restore.
1668
1669 2018-05-25 Tom Tromey <tom@tromey.com>
1670
1671 * remote.c (remote_target::remote_file_get): Use
1672 gdb::byte_vector.
1673 (remote_target::remote_file_put): Likewise.
1674
1675 2018-05-25 Tom Tromey <tom@tromey.com>
1676
1677 * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
1678 a std::string.
1679 (get_pe_section_index, add_pe_exported_sym): Update.
1680 (read_pe_exported_syms): Use gdb::def_vector.
1681
1682 2018-05-25 Tom Tromey <tom@tromey.com>
1683
1684 * frame.c (remove_prev_frame): Remove.
1685 (get_prev_frame_if_no_cycle): Use TRY/CATCH.
1686
1687 2018-05-25 Maciej W. Rozycki <macro@mips.com>
1688
1689 * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
1690 Remove prototypes.
1691 * mips-linux-nat.c (supply_fpregset): Always call
1692 `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
1693 (fill_fpregset): Always call `mips64_fill_fpregset' rather than
1694 `mips_fill_fpregset'.
1695 * mips-linux-tdep.c (mips_supply_fpregset)
1696 (mips_supply_fpregset_wrapper, mips_fill_fpregset)
1697 (mips_fill_fpregset_wrapper): Remove functions.
1698 (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
1699 (mips_linux_fpregset): Remove variable.
1700 (mips_linux_iterate_over_regset_sections): Use
1701 `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
1702 (mips_linux_o32_sigframe_init): Remove comment.
1703
1704 2018-05-25 Pedro Alves <palves@redhat.com>
1705
1706 * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
1707 (struct readahead_cache, struct packet_reg, struct
1708 remote_arch_state, class remote_state): Move higher up in the
1709 file.
1710 (remote_target::m_remote_state): Now an object instead of a pointer.
1711 (remote_target::get_remote_state): Adjust.
1712
1713 2018-05-24 Andrew Burgess <andrew.burgess@embecosm.com>
1714
1715 * stack.c (select_and_print_frame): Delete.
1716 (struct function_bounds): Move struct within function.
1717 (func_command): Most content moved into new function
1718 find_frame_for_function, use new function, print result, add
1719 function comment.
1720 (find_frame_for_function): New function, now returns a result.
1721
1722 2018-05-24 Philippe Waroquiers <philippe.waroquiers@skynet.be>
1723
1724 * stack.c (iterate_over_block_arg_vars): Fix comment.
1725 (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
1726
1727 2018-05-24 Andrew Burgess <andrew.burgess@embecosm.com>
1728
1729 PR gdb/23203
1730 * frame.c
1731 (scoped_restore_selected_frame::scoped_restore_selected_frame):
1732 Define.
1733 (scoped_restore_selected_frame::~scoped_restore_selected_frame):
1734 Define.
1735 * frame.h (class scoped_restore_selected_frame): New class.
1736 * stack.c (print_frame_local_vars): Remove catching and rethrowing
1737 of any exception, use scoped_restore_selected_frame to restore the
1738 frame instead.
1739
1740 2018-05-24 Pedro Alves <palves@redhat.com>
1741
1742 * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
1743 override.
1744
1745 2018-05-23 Tom Tromey <tom@tromey.com>
1746
1747 * complaints.c (struct complaints): Remove.
1748 (symfile_complaint_book): Remove.
1749 (series): New global.
1750 (complaint_internal): Update.
1751 (clear_complaints): Update.
1752
1753 2018-05-23 Tom Tromey <tom@tromey.com>
1754
1755 * complaints.c (counters): New global.
1756 (struct complain): Remove.
1757 (struct complaints) <root>: Remove.
1758 (complaint_sentinel): Remove.
1759 (symfile_complaint_book): Update.
1760 (find_complaint) Remove.
1761 (complaint_internal, clear_complaints): Update.
1762
1763 2018-05-23 Tom Tromey <tom@tromey.com>
1764
1765 * complaints.c (struct complain) <file, line>: Remove.
1766 (find_complaint): Remove file, line parameters.
1767 (complaint_internal): Update.
1768
1769 2018-05-23 Tom Tromey <tom@tromey.com>
1770
1771 * complaints.c (vcomplaint): Remove.
1772 (complaint_internal) Merge in contents of vcomplaint.
1773
1774 2018-05-23 Tom Tromey <tom@tromey.com>
1775
1776 * complaints.c (struct complaints) <explanation>: Remove.
1777 (symfile_explanations): Remove.
1778 (symfile_complaint_book): Update.
1779 (vcomplaint): Update.
1780 (struct explanation): Remove.
1781
1782 2018-05-23 Tom Tromey <tom@tromey.com>
1783
1784 * complaints.c (symfile_complaints): Remove.
1785 (complaint_internal): Remove "complaints" parameter.
1786 (clear_complaints, vcomplaint): Remove "c" parameter.
1787 (get_complaints): Remove.
1788 * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
1789 (dwarf2_debug_line_missing_file_complaint)
1790 (dwarf2_debug_line_missing_end_sequence_complaint)
1791 (dwarf2_complex_location_expr_complaint)
1792 (dwarf2_const_value_length_mismatch_complaint)
1793 (dwarf2_section_buffer_overflow_complaint)
1794 (dwarf2_macro_malformed_definition_complaint)
1795 (dwarf2_invalid_attrib_class_complaint)
1796 (create_addrmap_from_index, dw2_symtab_iter_next)
1797 (dw2_expand_marked_cus)
1798 (dw2_debug_names_iterator::find_vec_in_debug_names)
1799 (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
1800 (create_debug_type_hash_table, init_cutu_and_read_dies)
1801 (partial_die_parent_scope, add_partial_enumeration)
1802 (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
1803 (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
1804 (read_import_statement, read_file_scope, create_dwo_cu_reader)
1805 (create_cus_hash_table, create_dwp_hash_table)
1806 (inherit_abstract_dies, read_func_scope, read_call_site_scope)
1807 (dwarf2_rnglists_process, dwarf2_ranges_process)
1808 (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
1809 (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
1810 (handle_struct_member_die, process_structure_scope)
1811 (read_array_type, read_common_block, read_module_type)
1812 (read_tag_pointer_type, read_typedef, read_base_type)
1813 (read_subrange_type, load_partial_dies, partial_die_info::read)
1814 (partial_die_info::read, partial_die_info::read)
1815 (partial_die_info::read, read_checked_initial_length_and_offset)
1816 (dwarf2_string_attr, read_formatted_entries)
1817 (dwarf_decode_line_header)
1818 (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
1819 (new_symbol, dwarf2_const_value_attr, lookup_die_type)
1820 (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
1821 (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
1822 (get_signatured_type, get_DW_AT_signature_type)
1823 (decode_locdesc, file_file_name, consume_improper_spaces)
1824 (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
1825 (dwarf_decode_macro_bytes, dwarf_decode_macros)
1826 (dwarf2_symbol_mark_computed, set_die_type)
1827 (read_attribute_value): Update.
1828 * stap-probe.c (handle_stap_probe, get_stap_base_address):
1829 Update.
1830 * dbxread.c (unknown_symtype_complaint)
1831 (lbrac_mismatch_complaint, repeated_header_complaint)
1832 (set_namestring, function_outside_compilation_unit_complaint)
1833 (read_dbx_symtab, process_one_symbol): Update.
1834 * gdbtypes.c (stub_noname_complaint): Update.
1835 * windows-nat.c (handle_unload_dll): Update.
1836 * coffread.c (coff_symtab_read, enter_linenos, decode_type)
1837 (decode_base_type): Update.
1838 * xcoffread.c (bf_notfound_complaint, ef_complaint)
1839 (eb_complaint, record_include_begin, record_include_end)
1840 (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
1841 (process_xcoff_symbol, read_symbol)
1842 (function_outside_compilation_unit_complaint)
1843 (scan_xcoff_symtab): Update.
1844 * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
1845 * buildsym.c (finish_block_internal, make_blockvector)
1846 (end_symtab_get_static_block, augment_type_symtab): Update.
1847 * dtrace-probe.c (dtrace_process_dof)
1848 (dtrace_static_probe_ops::get_probes): Update.
1849 * complaints.h (struct complaint): Don't declare.
1850 (symfile_complaints): Remove.
1851 (complaint_internal): Remove "complaints" parameter.
1852 (complaint): Likewise.
1853 (clear_complaints): Likewise.
1854 * symfile.c (syms_from_objfile_1, finish_new_objfile)
1855 (reread_symbols): Update.
1856 * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
1857 (dwarf2_frame_cache, decode_frame_entry): Update.
1858 * dwarf2loc.c (dwarf_reg_to_regnum): Update.
1859 * objc-lang.c (lookup_objc_class, lookup_child_selector)
1860 (info_selectors_command): Update.
1861 * macrotab.c (macro_include, check_for_redefinition)
1862 (macro_undef): Update.
1863 * objfiles.c (filter_overlapping_sections): Update.
1864 * stabsread.c (invalid_cpp_abbrev_complaint)
1865 (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
1866 (define_symbol, error_type, read_type, rs6000_builtin_type)
1867 (stabs_method_name_from_physname, read_member_functions)
1868 (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
1869 (attach_fields_to_type, complain_about_struct_wipeout)
1870 (read_range_type, read_args, common_block_start)
1871 (common_block_end, cleanup_undefined_types_1, scan_file_globals):
1872 Update.
1873 * mdebugread.c (index_complaint, unknown_ext_complaint)
1874 (basic_type_complaint, bad_tag_guess_complaint)
1875 (bad_rfd_entry_complaint, unexpected_type_code_complaint)
1876 (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
1877 (parse_procedure, parse_lines)
1878 (function_outside_compilation_unit_complaint)
1879 (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
1880 (bad_tag_guess_complaint, reg_value_complaint): Update.
1881 * cp-support.c (demangled_name_complaint): Update.
1882 * macroscope.c (sal_macro_scope): Update.
1883 * dwarf-index-write.c (class debug_names): Update.
1884
1885 2018-05-23 Tom Tromey <tom@tromey.com>
1886
1887 * complaints.c (clear_complaints): Remove "noisy" parameter.
1888 * complaints.h (clear_complaints): Update.
1889 * symfile.c (syms_from_objfile_1, finish_new_objfile)
1890 (reread_symbols): Update.
1891
1892 2018-05-23 Tom Tromey <tom@tromey.com>
1893
1894 * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
1895 SUBSEQUENT_MESSAGE.
1896 (vcomplaint, clear_complaints): Update.
1897 (symfile_explanations): Remove some messages.
1898
1899 2018-05-23 Tom Tromey <tom@tromey.com>
1900
1901 * complaints.c (internal_complaint): Remove.
1902 * complaints.h (internal_complaint): Remove.
1903
1904 2018-05-22 Maciej W. Rozycki <macro@mips.com>
1905
1906 * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
1907
1908 2018-05-22 Pedro Alves <palves@redhat.com>
1909
1910 * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
1911 (remote_fileio_badfd, remote_fileio_return_errno)
1912 (remote_fileio_return_success, remote_fileio_func_open)
1913 (remote_fileio_func_open, remote_fileio_func_close)
1914 (remote_fileio_func_read, remote_fileio_func_write)
1915 (remote_fileio_func_lseek, remote_fileio_func_rename)
1916 (remote_fileio_func_unlink, remote_fileio_func_stat)
1917 (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
1918 (remote_fileio_func_isatty, remote_fileio_func_system): Add
1919 remote_target parameter.
1920 (remote_fio_func_map) <func>: Add remote_target parameter.
1921 (do_remote_fileio_request, remote_fileio_request):
1922 * remote-fileio.h (remote_fileio_request):
1923 * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
1924 remote_target parameter.
1925 (remote_notif_process, handle_notification): Adjust to pass down
1926 the remote.
1927 (remote_notif_state_allocate): Add remote_target parameter. Save
1928 it.
1929 * remote-notif.h (struct remote_target): Forward declare.
1930 (struct notif_client) <parse, ack, can_get_pending_events>: Add
1931 remote_target parameter.
1932 (struct remote_notif_state) <remote>: New field.
1933 (remote_notif_ack, remote_notif_parse): Add remote_target
1934 parameter.
1935 (remote_notif_state_allocate, remote_notif_state_allocate): Add
1936 remote_target parameter.
1937 * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
1938 (threads_listing_context, rmt_thread_action, protocol_feature)
1939 (packet_reg, stop_reply, stop_reply_p, enum packet_support)
1940 (packet_result, struct threads_listing_context, remote_state):
1941 Move definitions and declarations higher up.
1942 (remote_target) <~remote_target>: Declare.
1943 (remote_download_command_source, remote_file_put, remote_file_get)
1944 (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
1945 (remote_hostio_pread_vFile, remote_hostio_send_command)
1946 (remote_hostio_set_filesystem, remote_hostio_open)
1947 (remote_hostio_close, remote_hostio_unlink, remote_state)
1948 (get_remote_state, get_remote_packet_size, get_memory_packet_size)
1949 (get_memory_write_packet_size, get_memory_read_packet_size)
1950 (append_pending_thread_resumptions, remote_detach_1)
1951 (append_resumption, remote_resume_with_vcont)
1952 (add_current_inferior_and_thread, wait_ns, wait_as)
1953 (process_stop_reply, remote_notice_new_inferior)
1954 (process_initial_stop_replies, remote_add_thread)
1955 (btrace_sync_conf, remote_btrace_maybe_reopen)
1956 (remove_new_fork_children, kill_new_fork_children)
1957 (discard_pending_stop_replies, stop_reply_queue_length)
1958 (check_pending_events_prevent_wildcard_vcont)
1959 (discard_pending_stop_replies_in_queue, stop_reply)
1960 (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
1961 (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
1962 (remote_interrupt_as, remote_interrupt_ns)
1963 (remote_get_noisy_reply, remote_query_attached)
1964 (remote_add_inferior, remote_current_thread, get_current_thread)
1965 (set_thread, set_general_thread, set_continue_thread)
1966 (set_general_process, write_ptid)
1967 (remote_unpack_thread_info_response, remote_get_threadinfo)
1968 (parse_threadlist_response, remote_get_threadlist)
1969 (remote_threadlist_iterator, remote_get_threads_with_ql)
1970 (remote_get_threads_with_qxfer)
1971 (remote_get_threads_with_qthreadinfo, extended_remote_restart)
1972 (get_offsets, remote_check_symbols, remote_supported_packet)
1973 (remote_query_supported, remote_packet_size)
1974 (remote_serial_quit_handler, remote_detach_pid)
1975 (remote_vcont_probe, remote_resume_with_hc)
1976 (send_interrupt_sequence, interrupt_query)
1977 (remote_notif_get_pending_events, fetch_register_using_p)
1978 (send_g_packet, process_g_packet, fetch_registers_using_g)
1979 (store_register_using_P, store_registers_using_G)
1980 (set_remote_traceframe, check_binary_download)
1981 (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
1982 (remote_xfer_live_readonly_partial, remote_read_bytes)
1983 (remote_send_printf, remote_flash_write, readchar)
1984 (remote_serial_write, putpkt, putpkt_binary, skip_frame)
1985 (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
1986 (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
1987 (extended_remote_disable_randomization, extended_remote_run)
1988 (send_environment_packet, extended_remote_environment_support)
1989 (extended_remote_set_inferior_cwd, remote_write_qxfer)
1990 (remote_read_qxfer, push_stop_reply, vcont_r_supported)
1991 (packet_command): Now methods of ...
1992 (remote_target): ... this class.
1993 (m_remote_state) <remote_target>: New field.
1994 (struct remote_state) <stop_reply_queue,
1995 remote_async_inferior_event_token, wait_forever_enabled_p>: New
1996 fields.
1997 (remote_state::remote_state): Allocate stop_reply_queue.
1998 (remote_state): Delete global.
1999 (get_remote_state_raw): Delete.
2000 (remote_target::get_remote_state): Allocate m_remote_state on
2001 demand.
2002 (get_current_remote_target): New.
2003 (remote_ops, extended_remote_ops): Delete.
2004 (wait_forever_enabled_p, remote_async_inferior_event_token):
2005 Delete, moved to struct remote_state.
2006 (remote_target::close): Delete self. Destruction bits split to
2007 ...
2008 (remote_target::~remote_target): ... this.
2009 (show_memory_packet_size): Adjust to use
2010 get_current_remote_target.
2011 (struct protocol_feature) <func>: Add remote_target parameter.
2012 All callers adjusted.
2013 (curr_quit_handler_target): New.
2014 (remote_serial_quit_handler): Reimplement.
2015 (remote_target::open_1): Adjust to use get_current_remote_target.
2016 Heap-allocate remote_target/extended_remote_target instances.
2017 (vcont_builder::vcont_builder): Add remote_target parameter, and
2018 save it in m_remote. All callers adjusted.
2019 (vcont_builder::m_remote): New field.
2020 (vcont_builder::restart, vcont_builder::flush)
2021 (vcont_builder::push_action): Use it.
2022 (remote_target::commit_resume): Use it.
2023 (struct queue_iter_param) <remote>: New field.
2024 (remote_target::remove_new_fork_children): Fill in 'remote' field.
2025 (check_pending_event_prevents_wildcard_vcont_callback_data): New.
2026 (check_pending_event_prevents_wildcard_vcont_callback)
2027 (remote_target::check_pending_events_prevent_wildcard_vcont)
2028 (remote_target::discard_pending_stop_replies)
2029 (remote_target::discard_pending_stop_replies_in_queue)
2030 (remote_target::remote_notif_remove_queued_reply): Fill in
2031 'remote' field.
2032 (remote_notif_get_pending_events): New.
2033 (remote_target::readchar, remote_target::remote_serial_write):
2034 Save/restore curr_quit_handler_target.
2035 (putpkt): New.
2036 (kill_new_fork_children): Fill in 'remote' field.
2037 (packet_command): Use get_current_remote_target, defer to
2038 remote_target method of same name.
2039 (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
2040 parameter, and save it in m_remote. All callers adjusted.
2041 (scoped_remote_fd::release): Use m_remote.
2042 (scoped_remote_fd::m_remote): New field.
2043 (remote_file_put, remote_file_get, remote_file_delete): Use
2044 get_current_remote_target, defer to remote_target method of same
2045 name.
2046 (remote_btrace_reset): Add remote_state paremeter. Update all
2047 callers.
2048 (remote_async_inferior_event_handler). Pass down 'data'.
2049 (remote_new_objfile): Use get_current_remote_target.
2050 (remote_target::vcont_r_supported): New.
2051 (set_range_stepping): Use get_current_remote_target and
2052 remote_target::vcont_r_supported.
2053 (_initialize_remote): Don't allocate 'remote_state' and
2054 'stop_reply_queue' globals.
2055 * remote.h (struct remote_target): Forward declare.
2056 (getpkt, putpkt, remote_notif_get_pending_events): Add
2057 'remote_target' parameter.
2058
2059 2018-05-22 Pedro Alves <palves@redhat.com>
2060
2061 * remote.c (vcont_builder): Now a class. Make all data members
2062 private.
2063 (vcont_builder) <vcont_builder, restart, flush, push_action>:
2064 Declare methods.
2065 (vcont_builder_restart): Rename to ...
2066 (vcont_builder::restart): ... this.
2067 (vcont_builder_flush): Rename to ...
2068 (vcont_builder::flush): ... this.
2069 (vcont_builder_push_action): Rename to ...
2070 (vcont_builder::push_action): ... this.
2071 (remote_target::commit_resume): Adjust.
2072
2073 2018-05-22 Pedro Alves <palves@redhat.com>
2074
2075 * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
2076 (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
2077 (get_fixed_memory_packet_size): New.
2078 (get_memory_packet_size): Use it.
2079 (set_memory_packet_size): Don't override the config size with
2080 DEFAULT_MAX_MEMORY_PACKET_SIZE.
2081 (show_memory_packet_size): Use get_fixed_memory_packet_size.
2082 Don't refer to get_memory_packet_size if not connected to a remote
2083 target. Show "(default)" if configured size is 0.
2084
2085 2018-05-22 Pedro Alves <palves@redhat.com>
2086
2087 * remote.c (remote_target::mourn_inferior): Move
2088 discard_pending_stop_replies call here from ...
2089 (_initialize_remote): ... here.
2090
2091 2018-05-22 Pedro Alves <palves@redhat.com>
2092
2093 * remote.c (compare_section_command): Remove set_general_process
2094 call.
2095
2096 2018-05-22 Pedro Alves <palves@redhat.com>
2097
2098 * remote.c (struct packet_reg, struct remote_arch_state):
2099 Move higher up in the file.
2100 (remote_state) <m_arch_states>: Store remote_arch_state values
2101 instead of remote_arch_state pointers.
2102 (remote_state::get_remote_arch_state): Adjust.
2103
2104 2018-05-22 Pedro Alves <palves@redhat.com>
2105
2106 * remote.c: Include <unordered_map>.
2107 (remote_state): Now a class.
2108 (remote_state) <get_remote_arch_state>: Declare method.
2109 <get_remote_arch_state>: New field.
2110 (remote_arch_state) <remote_arch_state>: Declare ctor.
2111 <regs>: Now a unique_ptr.
2112 (remote_gdbarch_data_handle): Delete.
2113 (get_remote_arch_state): Delete.
2114 (remote_state::get_remote_arch_state): New.
2115 (get_remote_state): Adjust to call remote_state's
2116 get_remote_arch_state method.
2117 (init_remote_state): Delete, bits factored out to ...
2118 (remote_arch_state::remote_arch_state): ... this new method.
2119 (get_remote_packet_size, get_memory_packet_size)
2120 (process_g_packet, remote_target::fetch_registers)
2121 (remote_target::prepare_to_store, store_registers_using_G)
2122 (remote_target::store_registers, remote_target::get_trace_status):
2123 Adjust to call remote_state's method.
2124 (_initialize_remote): Remove reference to
2125 remote_gdbarch_data_handle.
2126
2127 2018-05-22 Pedro Alves <palves@redhat.com>
2128
2129 * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
2130 pread>: New method declarations.
2131 (remote_target::open_1): Adjust.
2132 (readahead_cache_invalidate): Rename to ...
2133 (readahead_cache::invalidate): ... this, and adjust to be a class
2134 method.
2135 (readahead_cache_invalidate_fd): Rename to ...
2136 (readahead_cache::invalidate_fd): ... this, and adjust to be a
2137 class method.
2138 (remote_hostio_pwrite): Adjust.
2139 (remote_hostio_pread_from_cache): Rename to ...
2140 (readahead_cache::pread): ... this, and adjust to be a class
2141 method.
2142 (remote_hostio_close): Adjust.
2143
2144 2018-05-22 Pedro Alves <palves@redhat.com>
2145
2146 * remote.c (remote_hostio_close_cleanup): Delete.
2147 (class scoped_remote_fd): New.
2148 (remote_file_put, remote_file_get): Use it.
2149
2150 2018-05-22 Pedro Alves <palves@redhat.com>
2151
2152 (struct vCont_action_support): Use bool and initialize all fields.
2153 (struct readahead_cache): Initialize all fields.
2154 (remote_state): Use bool and initialize all fields.
2155 (remote_state::remote_state, remote_state::~remote_state): New.
2156 (new_remote_state): Delete.
2157 (_initialize_remote): Use new to allocate remote_state.
2158
2159 2018-05-22 Pedro Alves <palves@redhat.com>
2160 張俊芝 <zjz@zjz.name>
2161
2162 PR gdb/22973
2163 * c-exp.y: Include "c-support.h".
2164 (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
2165 of tolower. Use c_ident_is_alpha to scan names.
2166 * c-lang.c: Include "c-support.h".
2167 (convert_ucn, convert_octal, convert_hex, convert_escape): Use
2168 ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
2169 * c-support.h: New file, with bits factored out from ...
2170 * cp-name-parser.y: ... this file.
2171 Include "c-support.h".
2172 (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
2173 c-support.h and renamed.
2174 (symbol_end, yylex): Adjust.
2175
2176 2018-05-22 Pedro Franco de Carvalho <pedromfc@linux.vnet.ibm.com>
2177
2178 * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
2179 parameter type to CORE_ADDR.
2180 * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
2181 parameter type in declaration to CORE_ADDR.
2182 * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
2183 target_auxv_search to get AT_HWCAP and use the result to get the
2184 target description.
2185 * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
2186 to CORE_ADDR. Remove the cast of the return value to unsigned
2187 long. Fix error predicate of target_auxv_search.
2188 (ppc_linux_nat_target::read_description): Change the type of the
2189 hwcap variable to CORE_ADDR.
2190
2191 2018-05-22 Pedro Franco de Carvalho <pedromfc@linux.vnet.ibm.com>
2192
2193 * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
2194 if the size of fpscr is larger than 32 bits.
2195
2196 2018-05-22 Pedro Franco de Carvalho <pedromfc@linux.vnet.ibm.com>
2197
2198 * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
2199 (ppc32_linux_vsxregmap): New global.
2200 (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
2201 regcache_supply_regset, and regcache_collect_regset.
2202 * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
2203 * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
2204 (fetch_vsx_register, store_vsx_register): Remove.
2205 (fetch_vsx_registers): Add regno parameter. Get regset using
2206 ppc_linux_vsxregset. Use regset to supply registers.
2207 (store_vsx_registers): Add regno parameter. Get regset using
2208 ppc_linux_vsxregset. Use regset to collect registers.
2209 (fetch_register): Call fetch_vsx_registers instead of
2210 fetch_vsx_register.
2211 (store_register): Call store_vsx_registers instead of
2212 store_vsx_register.
2213 (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
2214 new regno parameter.
2215 (store_ppc_registers): Call store_vsx_registers with -1 for the
2216 new regno parameter.
2217 * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
2218 (ppc_collect_vsxregset): Remove.
2219
2220 2018-05-22 Pedro Franco de Carvalho <pedromfc@linux.vnet.ibm.com>
2221
2222 * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
2223 offset fields.
2224 * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
2225 for vector register offset fields.
2226 (ppc64_fbsd_reg_offsets): Likewise.
2227 * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
2228 to vector register offset fields.
2229 * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
2230 to vector register offset fields.
2231 * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
2232 vector register offset fields.
2233 * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
2234 initializers for vector register offset fields.
2235 (rs6000_aix64_reg_offsets): Likewise.
2236 * rs6000-tdep.c (ppc_vrreg_offset): Remove.
2237 (ppc_supply_vrregset): Remove.
2238 (ppc_collect_vrregset): Remove.
2239 * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
2240 (ppc_linux_vrregset) : New function.
2241 (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
2242 (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
2243 (ppc32_linux_vrregset): Remove.
2244 (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
2245 and use result instead of ppc32_linux_vrregset.
2246 (ppc32_linux_reg_offsets): Remove initializers for vector register
2247 offset fields.
2248 (ppc64_linux_reg_offsets): Likewise.
2249 * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
2250 * ppc-linux-nat.c: Include regset.h.
2251 (gdb_vrregset_t): Adjust comment to account for little-endian
2252 mode.
2253 (supply_vrregset, fill_vrregset): Remove.
2254 (fetch_altivec_register, store_altivec_register): Remove.
2255 (fetch_altivec_registers): Add regno parameter. Get regset using
2256 ppc_linux_vrregset. Use regset to supply registers.
2257 (store_altivec_registers): Add regno parameter. Get regset using
2258 ppc_linux_vrregset. Use regset to collect registers.
2259 (fetch_register): Call fetch_altivec_registers instead of
2260 fetch_altivec_register.
2261 (store_register): Call store_altivec_registers instead of
2262 store_altivec_register.
2263 (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
2264 the new regno parameter.
2265 (store_ppc_registers): Call store_altivec_registers with -1 for
2266 the new regno parameter.
2267
2268 2018-05-22 Pedro Franco de Carvalho <pedromfc@linux.vnet.ibm.com>
2269
2270 * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
2271 (PPC_LINUX_SIZEOF_VSXREGSET): Define.
2272 * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
2273 (gdb_vrregset_t): Change array type size to
2274 PPC_LINUX_SIZEOF_VRREGSET.
2275 (gdb_vsxregset_t): Change array type size to
2276 PPC_LINUX_SIZEOF_VSXREGSET.
2277 * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
2278 Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
2279 PPC_LINUX_SIZEOF_VSXREGSET.
2280
2281 2018-05-22 Pedro Franco de Carvalho <pedromfc@linux.vnet.ibm.com>
2282
2283 * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
2284 * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
2285 nat/ppc-linux.c.
2286 (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
2287 ppc_linux_target_wordsize with tid.
2288 (ppc_linux_nat_target::read_description): Call ppc_linux_target
2289 wordsize with tid.
2290 * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
2291 (ppc64_64bit_inferior_p): Add static and inline specifiers.
2292 (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
2293 tid parameter. Remove static specifier.
2294 * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
2295 (ppc_linux_target_wordsize): New declaration.
2296
2297 2018-05-22 Pedro Franco de Carvalho <pedromfc@linux.vnet.ibm.com>
2298
2299 * arch/ppc-linux-common.c: New file.
2300 * arch/ppc-linux-common.h: New file.
2301 * arch/ppc-linux-tdesc.h: New file.
2302 * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
2303 * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
2304 (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
2305 arch/ppc-linux-tdesc.h.
2306 * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
2307 arch/ppc-linux-tdesc.h.
2308 (ppc_linux_nat_target::read_description): Remove target
2309 description matching code. Fill a ppc_linux_features struct and
2310 call ppc_linux_match_description with it. Move comment about ISA
2311 2.05 to ppc-linux-common.c.
2312 * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
2313 arch/ppc-linux-tdesc.h.
2314 (ppc_linux_core_read_description): Remove target description
2315 matching code. Fill a ppc_linux_features struct and call
2316 ppc_linux_match_description with it.
2317 * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
2318 (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
2319 (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
2320 (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
2321 (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
2322 (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
2323 (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
2324 (tdesc_powerpc_e500l): Remove.
2325
2326 2018-05-22 Joel Brobecker <brobecker@adacore.com>
2327
2328 * ada-lang.c (catch_assert_command): Pass empty string instead
2329 of NULL for excep_string argument.
2330
2331 2018-05-22 Maciej W. Rozycki <macro@mips.com>
2332
2333 * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
2334 the width of the requested register exceeds the width of the
2335 `ptrace' data type.
2336
2337 2018-05-21 Tom Tromey <tom@tromey.com>
2338
2339 * printcmd.c (output_command): Remove.
2340 (output_command_const): Rename to output_command.
2341 * valprint.h (output_command): Rename from output_command_const.
2342 * tracepoint.c (trace_dump_actions): Call output_command.
2343
2344 2018-05-21 Tom Tromey <tom@tromey.com>
2345
2346 * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
2347 (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
2348 * ada-lang.h (create_ada_exception_catchpoint): Update.
2349 * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
2350 std::string.
2351 (create_excep_cond_exprs, ~ada_catchpoint)
2352 (should_stop_exception, print_one_exception)
2353 (print_mention_exception, print_recreate_exception): Update.
2354 (ada_get_next_arg): Remove.
2355 (catch_ada_exception_command_split): Use std::string. Change type
2356 of "excep_string", "cond_string".
2357 (catch_ada_exception_command): Update.
2358 (create_ada_exception_catchpoint): Change type of excep_string.
2359 (ada_exception_sal): Remove excep_string parameter.
2360 (~ada_catchpoint): Remove.
2361
2362 2018-05-21 Tom Tromey <tom@tromey.com>
2363
2364 * ada-lang.c (ada_collect_symbol_completion_matches): Remove
2365 cleanup.
2366
2367 2018-05-21 Tom Tromey <tom@tromey.com>
2368
2369 * ada-lang.c (ada_exception_message_1, ada_exception_message):
2370 Return unique_xmalloc_ptr.
2371 (print_it_exception): Update.
2372
2373 2018-05-21 Tom Tromey <tom@tromey.com>
2374
2375 * tracepoint.c (trace_dump_actions): Use std::string.
2376
2377 2018-05-21 Tom Tromey <tom@tromey.com>
2378
2379 * symfile.c (reread_symbols): Use std::string for original_name.
2380
2381 2018-05-21 Tom Tromey <tom@tromey.com>
2382
2383 * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
2384 (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN. Default
2385 constructor.
2386
2387 2018-05-20 Simon Marchi <simon.marchi@polymtl.ca>
2388
2389 * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
2390 instance to...
2391 (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
2392 * objfiles.c (get_objfile_bfd_data): Allocate
2393 objfile_per_bfd_storage with obstack_new when allocating on
2394 obstack.
2395
2396 2018-05-20 Simon Marchi <simon.marchi@ericsson.com>
2397
2398 * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
2399 OBSTACK_ZALLOC.
2400 * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
2401 * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
2402 * mdebugread.c (mdebug_build_psymtabs): Likewise.
2403 (add_pending): Likewise.
2404 (parse_symbol): Likewise.
2405 (parse_partial_symbols): Likewise.
2406 (psymtab_to_symtab_1): Likewise.
2407 (new_psymtab): Likewise.
2408 (elfmdebug_build_psymtabs): Likewise.
2409 * minsyms.c (terminate_minimal_symbol_table): Likewise.
2410 * objfiles.c (get_objfile_bfd_data): Likewise.
2411 (objfile_register_static_link): Likewise.
2412 * psymtab.c (allocate_psymtab): Likewise.
2413 * stabsread.c (read_member_functions): Likewise.
2414 * xcoffread.c (xcoff_end_psymtab): Likewise.
2415
2416 2018-05-20 Simon Marchi <simon.marchi@ericsson.com>
2417
2418 * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
2419 compiler supports std::is_trivially_constructible.
2420 * common/poison.h: Include obstack.h.
2421 (IsMallocable): Define to is_trivially_constructible if the
2422 compiler supports it, define to true_type otherwise.
2423 (xobnew): New.
2424 (XOBNEW): Redefine.
2425 (xobnewvec): New.
2426 (XOBNEWVEC): Redefine.
2427 * gdb_obstack.h (obstack_zalloc): New.
2428 (OBSTACK_ZALLOC): Redefine.
2429 (obstack_calloc): New.
2430 (OBSTACK_CALLOC): Redefine.
2431 (obstack_new): New.
2432 * gdbarch.sh: Include gdb_obstack in gdbarch.h.
2433 (gdbarch_obstack): New declaration in gdbarch.h, definition in
2434 gdbarch.c.
2435 (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
2436 obstack_calloc/obstack_zalloc.
2437 (gdbarch_obstack_zalloc): Remove.
2438 * target-descriptions.c (tdesc_data_init): Use obstack_new.
2439
2440 2018-05-19 Philippe Waroquiers <philippe.waroquiers@skynet.be>
2441
2442 * stack.c (backtrace_command_1): Remove useless variable int i.
2443
2444 2018-05-19 Philippe Waroquiers <philippe.waroquiers@skynet.be>
2445
2446 * stack.c (print_frame_info): Fix comment.
2447
2448 2018-05-18 Tom Tromey <tom@tromey.com>
2449
2450 * dwarf2read.c (struct dwz_file): Add constructor, initializers.
2451 <dwz_bfd>: Now a gdb_bfd_ref_ptr.
2452 (~dwarf2_per_objfile): Update
2453 (dwarf2_get_dwz_file): Use new.
2454 * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
2455 unique_ptr.
2456
2457 2018-05-18 Tom Tromey <tom@tromey.com>
2458
2459 * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
2460 unique_ptr.
2461 * dwarf2read.c (struct dwp_file): Add constructor and
2462 initializers.
2463 (open_and_init_dwp_file): Return a unique_ptr.
2464 (dwarf2_per_objfile, create_dwp_hash_table)
2465 (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
2466 (lookup_dwo_unit_in_dwp): Update.
2467 (open_and_init_dwp_file, get_dwp_file): Update.
2468
2469 2018-05-18 Tom Tromey <tom@tromey.com>
2470
2471 * dwarf2read.c (dwarf2_per_objfile): Update.
2472 (struct mapped_index): Add initializers.
2473 (dwarf2_read_index): Use new.
2474 (dw2_symtab_iter_init): Update.
2475 * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
2476 unique_ptr.
2477
2478 2018-05-18 Simon Marchi <simon.marchi@ericsson.com>
2479
2480 * dwarf2read.c (mapped_index) <total_size>: Remove.
2481
2482 2018-05-18 Simon Marchi <simon.marchi@ericsson.com>
2483
2484 * unittests/format_pieces-selftests.c (test_format_specifier):
2485 Add ARI comments.
2486
2487 2018-05-18 Tom Tromey <tom@tromey.com>
2488
2489 * c-typeprint.c (maybe_print_hole): New function.
2490 (c_print_type_struct_field_offset): Update.
2491 (c_type_print_base_struct_union): Call maybe_print_hole.
2492
2493 2018-05-17 Keith Seitz <keiths@redhat.com>
2494
2495 * breakpoint.c (build_bpstat_chain): New function, moved from
2496 bpstat_stop_status.
2497 (bpstat_stop_status): Add optional parameter, `stop_chain'.
2498 If no stop chain is passed, call build_bpstat_chain to build it.
2499 * breakpoint.h (build_bpstat_chain): Declare.
2500 (bpstat_stop_status): Move documentation here from breakpoint.c.
2501 * infrun.c (handle_signal_stop): Before eliding inlined frames,
2502 build the stop chain and pass it to skip_inline_frames.
2503 Pass this stop chain to bpstat_stop_status.
2504 * inline-frame.c: Include breakpoint.h.
2505 (stopped_by_user_bp_inline_frame): New function.
2506 (skip_inline_frames): Add parameter `stop_chain'.
2507 Move documention to inline-frame.h.
2508 If non-NULL, use stopped_by_user_bp_inline_frame to determine
2509 whether the frame should be elided.
2510 * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
2511 Add moved documentation and update for new parameter.
2512
2513 2018-05-17 Simon Marchi <simon.marchi@ericsson.com>
2514
2515 PR cli/14975
2516 * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
2517 unittests/format_pieces-selftests.c.
2518 * common/format.h (format_piece) <operator==>: New.
2519 (format_pieces) <operator[]>: Remove.
2520 * common/format.c (format_pieces::format_pieces): Handle \e.
2521 * unittests/format_pieces-selftests.c: New.
2522
2523 2018-05-17 Tom Tromey <tom@tromey.com>
2524
2525 PR symtab/23010:
2526 * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
2527 (dw2_instantiate_symtab): Add skip_partial parameter.
2528 (dw2_find_last_source_symtab, dw2_map_expand_apply)
2529 (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
2530 (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
2531 (dw2_expand_symtabs_matching_one)
2532 (dw2_find_pc_sect_compunit_symtab)
2533 (dw2_debug_names_lookup_symbol)
2534 (dw2_debug_names_expand_symtabs_for_function): Update.
2535 (init_cutu_and_read_dies): Add skip_partial parameter.
2536 (process_psymtab_comp_unit, build_type_psymtabs_1)
2537 (process_skeletonless_type_unit, load_partial_comp_unit)
2538 (psymtab_to_symtab_1): Update.
2539 (load_full_comp_unit): Add skip_partial parameter.
2540 (process_imported_unit_die, dwarf2_read_addr_index)
2541 (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
2542 (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
2543 (read_signatured_type): Update.
2544
2545 2018-05-17 Simon Marchi <simon.marchi@ericsson.com>
2546
2547 * value.c (release_value): Remove unused variable.
2548 (record_latest_value): Likewise.
2549 (access_value_history): Likewise.
2550 (preserve_values): Likewise.
2551
2552 2018-05-17 Tom Tromey <tom@tromey.com>
2553
2554 * extension.h (struct ext_lang_type_printers) <py_type_printers>:
2555 Initialize.
2556
2557 2018-05-16 Maciej W. Rozycki <macro@mips.com>
2558
2559 PR gdb/22286
2560 * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
2561 Also handle registers whose width is not a multiple of
2562 PTRACE_TYPE_RET.
2563 (linux_nat_trad_target::store_register): Likewise.
2564
2565 2018-05-16 Tom Tromey <tom@tromey.com>
2566
2567 * gdbcore.h (core_bfd): Redefine.
2568 * corelow.c (core_target::close): Update.
2569 (core_target_open): Update.
2570 * progspace.h (struct program_space) <cbfd>: Now a
2571 gdb_bfd_ref_ptr.
2572
2573 2018-05-16 Tom Tromey <tom@tromey.com>
2574
2575 PR cli/19551:
2576 * symfile-add-flags.h (enum symfile_add_flags)
2577 <SYMFILE_NOT_FILENAME>: New constant.
2578 * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME. Get
2579 objfile name from BFD.
2580 (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
2581 * minidebug.c (find_separate_debug_file_in_section): Put
2582 ".gnu_debugdata" into BFD's file name.
2583
2584 2018-05-16 Simon Marchi <simon.marchi@ericsson.com>
2585
2586 * regcache.c (regcache_read_ftype, regcache_write_ftype):
2587 Remove.
2588
2589 2018-05-15 Tamar Christina <tamar.christina@arm.com>
2590
2591 PR binutils/21446
2592 * aarch64-tdep.c (aarch64_analyze_prologue,
2593 aarch64_software_single_step, aarch64_displaced_step_copy_insn):
2594 Indicate not interested in errors.
2595
2596 2018-05-15 Maciej W. Rozycki <macro@mips.com>
2597
2598 * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
2599 Supply the MIPS_ZERO_REGNUM register.
2600
2601 2018-05-15 Maciej W. Rozycki <macro@mips.com>
2602
2603 * mips-tdep.c (mask_address_var): Make variable static.
2604
2605 2018-05-14 Tom Tromey <tom@tromey.com>
2606
2607 * dwarf2read.c (rust_union_quirks): Clear rust_unions.
2608
2609 2018-05-11 Andrew Burgess <andrew.burgess@embecosm.com>
2610
2611 * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
2612 FXSAVE_ADDR for the mxcsr register.
2613
2614 2018-05-11 Max Filippov <jcmvbkbc@gmail.com>
2615
2616 * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
2617
2618 2018-05-11 Pedro Alves <palves@redhat.com>
2619
2620 * corelow.c (core_target) <core_target>: No longer inline.
2621 Initialize m_core_gdbarch, m_core_vec and build the section table
2622 here.
2623 <~core_target>: New.
2624 <core_gdbarch, get_core_register_section>: New methods.
2625 <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
2626 factored out from ...
2627 <core_data, core_vec, core_gdbarch>: ... these deleted globals.
2628 (core_ops): Delete.
2629 (sniff_core_bfd): Add gdbarch parameter.
2630 (core_close): Delete, merged into ...
2631 (core_target::close): ... here. Delete self.
2632 (core_close_cleanup): Delete.
2633 (core_target_open): Allocate a core_target on the heap. Use a
2634 unique_ptr instead of a cleanup. Bits moved into the core_target
2635 ctor. Adjust to use core_target methods instead of globals.
2636 (get_core_register_section): Rename to ...
2637 (core_target::get_core_register_section): ... this and adjust.
2638 (struct get_core_registers_cb_data): New.
2639 (get_core_registers_cb): Use it. Use bool.
2640 (core_target::fetch_registers, core_target::files_info)
2641 (core_target::xfer_partial, core_target::read_description)
2642 (core_target::pid_to, core_target::thread_name): Adjust to
2643 reference class fields instead of globals.
2644 * target.h (struct target_ops_deleter, target_ops_up): New.
2645
2646 2018-05-11 Pedro Alves <palves@redhat.com>
2647
2648 * corefile.c (core_file_command): Move to corelow.c.
2649 * corelow.c (the_core_target): Delete.
2650 (core_file_command): Moved from corefile.c. Check exec_bfd
2651 instead of the_core_target. Use target_detach instead of calling
2652 into the_core_target directly.
2653 (maybe_say_no_core_file_now): New.
2654 (core_target::detach): Use it.
2655 (_initialize_corelow): Remove references to the_core_target.
2656 * gdbcore.h (the_core_target): Delete.
2657
2658 2018-05-11 Tom Tromey <tromey@redhat.com>
2659 Pedro Alves <palves@redhat.com>
2660
2661 * corefile.c (core_bfd): Remove.
2662 * gdbcore.h (core_bfd): Now a macro.
2663 * progspace.h (struct program_space) <cbfd>: New field.
2664
2665 2018-05-11 Tom Tromey <tom@tromey.com>
2666
2667 * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
2668 gdb::def_vector.
2669
2670 2018-05-10 Tom Tromey <tom@tromey.com>
2671
2672 * configure: Rebuild.
2673 * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
2674
2675 2018-05-10 Joel Brobecker <brobecker@adacore.com>
2676
2677 PR server/23158:
2678 * regformats/regdat.sh: Adjust script, following the addition
2679 of the new expedite_regs parameter to init_target_desc.
2680
2681 2018-05-10 Omair Javaid <omair.javaid@linaro.org>
2682
2683 PR gdb/23127
2684 * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
2685 set_gdbarch_significant_addr_bit.
2686 * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
2687 set_gdbarch_significant_addr_bit.
2688 * utils.c (address_significant): Update to sign extend addr.
2689
2690 2018-05-09 Max Filippov <jcmvbkbc@gmail.com>
2691
2692 * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
2693 (xtensa_linux_init_abi): Limit tdep->num_regs by
2694 tdep->num_nopriv_regs.
2695 * xtensa-tdep.c (xtensa_derive_tdep): Calculate
2696 tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
2697 not initialized.
2698
2699 2018-05-08 Simon Marchi <simon.marchi@ericsson.com>
2700
2701 * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
2702
2703 2018-05-08 Andrew Burgess <andrew.burgess@embecosm.com>
2704
2705 * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
2706 (I387_MXCSR_INIT_VAL): New constant.
2707 * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
2708 buffer if it was supplied by the inferior.
2709 * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
2710 (i387_xsave_get_clear_bv): New function.
2711 (i387_supply_xsave): Only read x87 control registers from the
2712 xsave buffer if the feature is enabled, and the state will have
2713 been written, otherwise, provide a suitable default.
2714 (i387_collect_xsave): Pre-clear all registers in xsave buffer,
2715 including x87 control registers. Update control registers if they
2716 have changed from the default value, and mark features as enabled
2717 as required.
2718 * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
2719
2720 2018-05-08 Ulrich Weigand <uweigand@de.ibm.com>
2721
2722 * spu-tdep.c (info_spu_event_command): Fix output formatting.
2723
2724 2018-05-07 Tom Tromey <tom@tromey.com>
2725
2726 * configure: Rebuild.
2727 * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
2728
2729 2018-05-07 Tom Tromey <tom@tromey.com>
2730
2731 PR tdep/20362:
2732 * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
2733 bit. Use correct value for VDIV.
2734
2735 2018-05-04 Tom Tromey <tom@tromey.com>
2736
2737 * configure: Rebuild.
2738 * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
2739
2740 2018-05-04 Tom Tromey <tom@tromey.com>
2741
2742 * linux-record.c (record_linux_system_call) <case
2743 RECORD_SYS_RECVFROM>: Add "break".
2744
2745 2018-05-04 Tom Tromey <tom@tromey.com>
2746
2747 * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
2748 Add missing "break".
2749 * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
2750 Add missing "break".
2751
2752 2018-05-04 Tom Tromey <tom@tromey.com>
2753
2754 * rs6000-tdep.c (ppc_process_record_op4)
2755 (ppc_process_record_op63): Add fall-through comment.
2756
2757 2018-05-04 Tom Tromey <tom@tromey.com>
2758
2759 * i386-tdep.c (i386_process_record): Add fall-through comment.
2760
2761 2018-05-04 Tom Tromey <tom@tromey.com>
2762
2763 * stabsread.c (define_symbol) <case 'p'>: Add fall-through
2764 comment.
2765
2766 2018-05-04 Tom Tromey <tom@tromey.com>
2767
2768 * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
2769 * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
2770 * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
2771 comment.
2772 * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
2773 comment.
2774 * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
2775 comment.
2776
2777 2018-05-04 Tom Tromey <tom@tromey.com>
2778
2779 * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
2780
2781 2018-05-04 Tom Tromey <tom@tromey.com>
2782
2783 * s390-tdep.c (s390_process_record): Fix fall-through comments.
2784 * xcoffread.c (scan_xcoff_symtab): Move comment later.
2785 * symfile.c (section_is_mapped): Fix fall-through comment.
2786 * stabsread.c (define_symbol, read_member_functions): Fix
2787 fall-through comment.
2788 * s390-linux-tdep.c (s390_process_record): Fix fall-through
2789 comment.
2790 * remote.c (remote_wait_as): Fix fall-through comment.
2791 * p-exp.y (yylex): Fix fall-through comment.
2792 * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
2793 comment.
2794 * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
2795 * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
2796 * jv-exp.y (yylex): Fix fall-through comment.
2797 * go-exp.y (lex_one_token): Fix fall-through comment.
2798 * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
2799 fall-through comment.
2800 * f-exp.y (yylex): Fix fall-through comment.
2801 * dwarf2read.c (process_die): Fix fall-through comments.
2802 * dbxread.c (process_one_symbol): Fix fall-through comment.
2803 * d-exp.y (lex_one_token): Fix fall-through comment.
2804 * cp-name-parser.y (yylex): Fix fall-through comment.
2805 * coffread.c (coff_symtab_read): Fix fall-through comment.
2806 * c-exp.y (lex_one_token): Fix fall-through comment.
2807 * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
2808 comment.
2809 * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
2810 comment.
2811
2812 2018-05-04 Tom Tromey <tom@tromey.com>
2813
2814 PR python/22730:
2815 * NEWS: Mention gdb.execute change.
2816 * gdbcmd.h (execute_control_command): Don't declare.
2817 * python/python.c (execute_gdb_command): Use read_command_lines_1,
2818 execute_control_commands, execute_control_commands_to_string.
2819 * cli/cli-script.h (execute_control_commands)
2820 (execute_control_commands_to_string): Declare.
2821 (execute_control_command): Add from_tty parameter.
2822 * cli/cli-script.c (execute_control_commands)
2823 (execute_control_commands_to_string): New functions.
2824 (execute_user_command): Use execute_control_commands.
2825 (execute_control_command_1): Add "from_tty" parameter. Update.
2826 (execute_control_command): Likewise.
2827
2828 2018-05-04 Tom Tromey <tom@tromey.com>
2829
2830 PR python/22731:
2831 * NEWS: Mention that breakpoint commands are writable.
2832 * python/py-breakpoint.c (bppy_set_commands): New function.
2833 (breakpoint_object_getset) <"commands">: Use it.
2834
2835 2018-05-04 Tom Tromey <tom@tromey.com>
2836
2837 * tracepoint.c (actions_command): Update.
2838 * mi/mi-cmd-break.c (mi_command_line_array)
2839 (mi_command_line_array_cnt, mi_command_line_array_ptr)
2840 (mi_read_next_line): Remove.
2841 (mi_cmd_break_commands): Update.
2842 * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
2843 function_view.
2844 * cli/cli-script.c (get_command_line): Update.
2845 (process_next_line): Use function_view. Constify.
2846 (recurse_read_control_structure, read_command_lines)
2847 (read_command_lines_1): Change argument types to function_view.
2848 (do_define_command, document_command): Update.
2849 * breakpoint.h (check_tracepoint_command): Don't declare.
2850 * breakpoint.c (check_tracepoint_command): Remove.
2851 (commands_command_1, create_tracepoint_from_upload): Update.
2852
2853 2018-05-04 Tom Tromey <tom@tromey.com>
2854
2855 PR gdb/11750:
2856 * cli/cli-script.h (enum command_control_type) <define_control>:
2857 New constant.
2858 * cli/cli-script.c (multi_line_command_p): Handle define_control.
2859 (build_command_line, execute_control_command_1)
2860 (process_next_line): Likewise.
2861 (do_define_command): New function, extracted from define_command.
2862 (define_command): Use it.
2863
2864 2018-05-04 Tom Tromey <tom@tromey.com>
2865
2866 * tracepoint.c (actions_command): Update.
2867 * cli/cli-script.h (read_command_lines): Update.
2868 * cli/cli-script.c (read_command_lines): Constify prompt_arg.
2869 (MAX_TMPBUF): Remove define.
2870 (define_command): Use string_printf.
2871 (document_command): Likewise.
2872 * breakpoint.c (commands_command_1): Update.
2873
2874 2018-05-04 Tom Tromey <tom@tromey.com>
2875
2876 * top.c (execute_command): Update.
2877 * cli/cli-script.h (print_command_lines): Now varargs.
2878 * cli/cli-script.c (print_command_lines): Now varargs.
2879 (execute_control_command_1) <case while_control, case if_control>:
2880 Update.
2881
2882 2018-05-04 Tom Tromey <tom@tromey.com>
2883
2884 * tracepoint.c (all_tracepoint_actions): Rename from
2885 all_tracepoint_actions_and_cleanup. Change return type.
2886 (actions_command, encode_actions_1, encode_actions)
2887 (trace_dump_actions, tdump_command): Update.
2888 * remote.c (remote_download_command_source): Update.
2889 * python/python.c (gdbpy_eval_from_control_command)
2890 (python_command, python_interactive_command): Update.
2891 * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
2892 * guile/guile.c (guile_command)
2893 (gdbscm_eval_from_control_command, guile_command): Update.
2894 * compile/compile.c (compile_code_command)
2895 (compile_print_command, compile_to_object): Update.
2896 * cli/cli-script.h (struct command_lines_deleter): New.
2897 (counted_command_line): New typedef.
2898 (struct command_line): Add constructor, destructor.
2899 <body_list>: Remove.
2900 <body_list_0, body_list_1>: New members.
2901 (command_line_up): Remove typedef.
2902 (read_command_lines, read_command_lines_1, get_command_line):
2903 Update.
2904 (copy_command_lines): Don't declare.
2905 * cli/cli-script.c (build_command_line): Use "new".
2906 (get_command_line): Return counted_command_line.
2907 (print_command_lines, execute_user_command)
2908 (execute_control_command_1, while_command, if_command): Update.
2909 (realloc_body_list): Remove.
2910 (process_next_line, recurse_read_control_structure): Update.
2911 (read_command_lines, read_command_lines_1): Return counted_command_line.
2912 (free_command_lines): Use "delete".
2913 (copy_command_lines): Remove.
2914 (define_command, document_command, show_user_1): Update.
2915 * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
2916 a counted_command_line.
2917 * breakpoint.h (counted_command_line): Remove typedef.
2918 (breakpoint_set_commands): Update.
2919 * breakpoint.c (check_no_tracepoint_commands)
2920 (validate_commands_for_breakpoint): Update.
2921 (breakpoint_set_commands): Change commands to be a
2922 counted_command_line.
2923 (commands_command_1, update_dprintf_command_list)
2924 (create_tracepoint_from_upload): Update.
2925
2926 2018-05-04 Tom Tromey <tom@tromey.com>
2927
2928 * cli/cli-decode.h (cmd_list_element): New constructor.
2929 (~cmd_list_element): New destructor.
2930 (struct cmd_list_element): Add initializers.
2931 * cli/cli-decode.c (do_add_cmd): Use "new".
2932 (delete_cmd): Use "delete".
2933
2934 2018-05-04 Jan Kratochvil <jan.kratochvil@redhat.com>
2935 Pedro Alves <palves@redhat.com>
2936
2937 PR breakpoints/19806 and support for PR external/20207.
2938 * NEWS: Mention Aarch64 watchpoint improvements.
2939 * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
2940 watchpoints and PR external/20207 watchpoints.
2941 * nat/aarch64-linux-hw-point.c
2942 (kernel_supports_any_contiguous_range): New.
2943 (aarch64_watchpoint_offset): New.
2944 (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
2945 (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
2946 (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
2947 (aarch64_align_watchpoint): New parameters aligned_offset_p and
2948 next_addr_orig_p. Support PR external/20207 watchpoints.
2949 (aarch64_downgrade_regs): New.
2950 (aarch64_dr_state_insert_one_point): New parameters offset and
2951 addr_orig.
2952 (aarch64_dr_state_remove_one_point): Likewise.
2953 (aarch64_handle_breakpoint): Update caller.
2954 (aarch64_handle_aligned_watchpoint): Likewise.
2955 (aarch64_handle_unaligned_watchpoint): Support addr_orig and
2956 aligned_offset.
2957 (aarch64_linux_set_debug_regs): Remove const from state. Call
2958 aarch64_downgrade_regs.
2959 (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
2960 * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
2961 (DR_CONTROL_MASK): ... this.
2962 (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
2963 (unsigned int aarch64_watchpoint_offset): New prototype.
2964 (aarch64_linux_set_debug_regs): Remove const from state.
2965 * utils.c (align_up, align_down): Move to ...
2966 * common/common-utils.c (align_up, align_down): ... here.
2967 * utils.h (align_up, align_down): Move to ...
2968 * common/common-utils.h (align_up, align_down): ... here.
2969
2970 2018-05-04 Joel Brobecker <brobecker@adacore.com>
2971
2972 * sparc-tdep.c (sparc_structure_return_p): Re-implement to
2973 match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
2974 (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
2975 Re-implement to match the ABI as summarized in GCC's
2976 gcc/config/sparc/sparc.c. All callers updated.
2977 (sparc32_store_arguments): Remove assertion.
2978
2979 2018-05-04 Tom Tromey <tom@tromey.com>
2980
2981 * printcmd.c: Don't include tui.h.
2982 (decode_format): Use skip_spaces.
2983
2984 2018-05-04 Tom Tromey <tom@tromey.com>
2985
2986 PR gdb/22619:
2987 * printcmd.c (last_count): New global.
2988 (x_command): Use saved count when repeating.
2989
2990 2018-05-04 Tom Tromey <tom@tromey.com>
2991
2992 * nto-procfs.c (do_closedir_cleanup): Remove.
2993 (procfs_pidlist): Use gdb_dir_up.
2994 * procfs.c (do_closedir_cleanup): Remove.
2995 (proc_update_threads): Use gdb_dir_up.
2996 * common/filestuff.h (struct gdb_dir_deleter): New.
2997 (gdb_dir_up): New typedef.
2998
2999 2018-05-04 Tom Tromey <tom@tromey.com>
3000
3001 * ada-lang.c (print_mention_exception): Use std::string.
3002
3003 2018-05-04 Tom Tromey <tom@tromey.com>
3004
3005 * ada-lang.c (create_excep_cond_exprs): Update.
3006 (ada_exception_catchpoint_cond_string): Use std::string.
3007
3008 2018-05-04 Tom Tromey <tom@tromey.com>
3009
3010 * ada-lang.c (xget_renaming_scope): Return std::string.
3011 (old_renaming_is_invisible): Update.
3012
3013 2018-05-04 Tom Tromey <tom@tromey.com>
3014
3015 * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
3016 (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
3017
3018 2018-05-04 Ulrich Weigand <uweigand@de.ibm.com>
3019
3020 * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
3021
3022 2018-05-04 Tom Tromey <tom@tromey.com>
3023
3024 * remote.c (remote_query_supported_append): Change type.
3025 (remote_check_symbols): Update.
3026
3027 2018-05-04 Paul Pluzhnikov <ppluzhnikov@google.com>
3028
3029 PR gdb/11420
3030 * configure.ac: Prepend libpython.
3031 * python/python-config.py: Likewise.
3032 * configure: Regenerate.
3033
3034 2018-05-03 Simon Marchi <simon.marchi@ericsson.com>
3035
3036 * Makefile.in (%.c: %.l): Use -t instead of --stdout.
3037
3038 2018-05-03 Pedro Alves <palves@redhat.com>
3039
3040 * s390-linux-nat.c
3041 (s390_linux_nat_target::have_continuable_watchpoint): Mark with
3042 override. Write 'true' instead of '1'.
3043 (s390_linux_nat_target::watchpoint_addr_within_range): Remove
3044 declaration.
3045
3046 2018-05-02 Pedro Alves <palves@redhat.com>
3047
3048 * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
3049 add_inf_child_target.
3050 * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
3051 add_inf_child_target.
3052 * aix-thread.c (aix_thread_target_info): New.
3053 (aix_thread_target) <shortname, longname, doc>: Delete.
3054 <info>: New.
3055 * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
3056 add_inf_child_target.
3057 * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
3058 add_inf_child_target.
3059 * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
3060 add_inf_child_target.
3061 * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
3062 add_inf_child_target.
3063 * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
3064 add_inf_child_target.
3065 * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
3066 add_inf_child_target.
3067 * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
3068 add_inf_child_target.
3069 * arm-linux-nat.c (_initialize_arm_linux_nat): Use
3070 add_inf_child_target.
3071 * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
3072 add_inf_child_target.
3073 * bfd-target.c (target_bfd_target_info): New.
3074 (target_bfd) <shortname, longname, doc>: Delete.
3075 <info>: New.
3076 * bsd-kvm.c (bsd_kvm_target_info): New.
3077 (bsd_kvm_target) <shortname, longname, doc>: Delete.
3078 <info>: New.
3079 (bsd_kvm_target::open): Rename to ...
3080 (bsd_kvm_target_open): ... this. Adjust.
3081 * bsd-uthread.c (bsd_uthread_target_info): New.
3082 (bsd_uthread_target) <shortname, longname, doc>: Delete.
3083 <info>: New.
3084 * corefile.c (core_file_command): Adjust.
3085 * corelow.c (core_target_info): New.
3086 (core_target) <shortname, longname, doc>: Delete.
3087 <info>: New.
3088 (core_target::open): Rename to ...
3089 (core_target_open): ... this. Adjust.
3090 * ctf.c (ctf_target_info): New.
3091 (ctf_target) <shortname, longname, doc>: Delete.
3092 <info>: New.
3093 (ctf_target::open): Rename to ...
3094 (ctf_target_open): ... this.
3095 (_initialize_ctf): Adjust.
3096 * exec.c (exec_target_info): New.
3097 (exec_target) <shortname, longname, doc>: Delete.
3098 <info>: New.
3099 (exec_target::open): Rename to ...
3100 (exec_target_open): ... this.
3101 * gdbcore.h (core_target_open): Declare.
3102 * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
3103 * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
3104 add_inf_child_target.
3105 * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
3106 add_inf_child_target.
3107 * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
3108 add_inf_child_target.
3109 * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
3110 add_inf_child_target.
3111 * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
3112 add_inf_child_target.
3113 * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
3114 add_inf_child_target.
3115 * i386-linux-nat.c (_initialize_i386_linux_nat): Use
3116 add_inf_child_target.
3117 * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
3118 add_inf_child_target.
3119 * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
3120 add_inf_child_target.
3121 * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
3122 add_inf_child_target.
3123 * inf-child.c (inf_child_target_info): New.
3124 (inf_child_target::info): New.
3125 (inf_child_open_target): Remove 'target' parameter. Use
3126 get_native_target instead.
3127 (inf_child_target::open): Delete.
3128 (add_inf_child_target): New.
3129 * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
3130 Delete.
3131 <info>: New.
3132 (add_inf_child_target): Declare.
3133 (inf_child_open_target): Declare.
3134 * linux-thread-db.c (thread_db_target_info): New.
3135 (thread_db_target) <shortname, longname, doc>: Delete.
3136 <info>: New.
3137 * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
3138 add_inf_child_target.
3139 * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
3140 add_inf_child_target.
3141 * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
3142 add_inf_child_target.
3143 * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
3144 add_inf_child_target.
3145 * make-target-delegates (print_class): Adjust.
3146 * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
3147 add_inf_child_target.
3148 * mips-linux-nat.c (_initialize_mips_linux_nat): Use
3149 add_inf_child_target.
3150 * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
3151 add_inf_child_target.
3152 * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
3153 add_inf_child_target.
3154 * nto-procfs.c (nto_native_target_info): New.
3155 (nto_procfs_target_native) <shortname, longname, doc>:
3156 Delete.
3157 <info>: New.
3158 (nto_procfs_target_info): New.
3159 (nto_procfs_target_procfs) <shortname, longname, doc>:
3160 Delete.
3161 <info>: New.
3162 (init_procfs_targets): Adjust.
3163 * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
3164 add_inf_child_target.
3165 * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
3166 add_inf_child_target.
3167 * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
3168 add_inf_child_target.
3169 * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
3170 add_inf_child_target.
3171 * ravenscar-thread.c (ravenscar_target_info): New.
3172 (ravenscar_thread_target) <shortname, longname, doc>:
3173 Delete.
3174 <info>: New.
3175 * record-btrace.c (record_btrace_target_info):
3176 (record_btrace_target) <shortname, longname, doc>: Delete.
3177 <info>: New.
3178 (record_btrace_target::open): Rename to ...
3179 (record_btrace_target_open): ... this. Adjust.
3180 * record-full.c (record_longname, record_doc): New.
3181 (record_full_base_target) <shortname, longname, doc>: Delete.
3182 <info>: New.
3183 (record_full_target_info): New.
3184 (record_full_target): <shortname>: Delete.
3185 <info>: New.
3186 (record_full_core_open_1, record_full_open_1): Update comments.
3187 (record_full_base_target::open): Rename to ...
3188 (record_full_open): ... this.
3189 (cmd_record_full_restore): Update.
3190 (_initialize_record_full): Update.
3191 * remote-sim.c (remote_sim_target_info): New.
3192 (gdbsim_target) <shortname, longname, doc>: Delete.
3193 <info>: New.
3194 (gdbsim_target::open): Rename to ...
3195 (gdbsim_target_open): ... this.
3196 (_initialize_remote_sim): Adjust.
3197 * remote.c (remote_doc): New.
3198 (remote_target_info): New.
3199 (remote_target) <shortname, longname, doc>: Delete.
3200 <info>: New.
3201 (extended_remote_target_info): New.
3202 (extended_remote_target) <shortname, longname, doc>: Delete.
3203 <info>: New.
3204 (remote_target::open_1): Make static. Adjust.
3205 * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
3206 * s390-linux-nat.c (_initialize_s390_nat): Use
3207 add_inf_child_target.
3208 * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
3209 add_inf_child_target.
3210 * sol-thread.c (thread_db_target_info): New.
3211 (sol_thread_target) <shortname, longname, doc>: Delete.
3212 <info>: New.
3213 * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
3214 add_inf_child_target.
3215 * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
3216 add_inf_child_target.
3217 * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
3218 add_inf_child_target.
3219 * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
3220 add_inf_child_target.
3221 * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
3222 add_inf_child_target.
3223 * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
3224 add_inf_child_target.
3225 * spu-linux-nat.c (_initialize_spu_nat): Use
3226 add_inf_child_target.
3227 * spu-multiarch.c (spu_multiarch_target_info): New.
3228 (spu_multiarch_target) <shortname, longname, doc>: Delete.
3229 <info>: New.
3230 * target-delegates.c: Regenerate.
3231 * target.c: Include <unordered_map>.
3232 (target_ops_p): Delete.
3233 (DEF_VEC_P(target_ops_p)): Delete.
3234 (target_factories): New.
3235 (test_target_info): New.
3236 (test_target_ops::info): New.
3237 (open_target): Adjust to use target_factories.
3238 (add_target_with_completer): Rename to ...
3239 (add_target): ... this. Change prototype. Register target_info
3240 and open callback in target_factories. Register target_info in
3241 command context instead of target_ops.
3242 (add_target): Delete old implementation.
3243 (add_deprecated_target_alias): Change prototype. Adjust.
3244 (the_native_target): New.
3245 (set_native_target, get_native_target): New.
3246 (find_default_run_target): Use the_native_target.
3247 (find_attach_target, find_run_target): Simplify.
3248 (target_ops::open): Delete.
3249 (dummy_target_info): New.
3250 (dummy_target::shortname, dummy_target::longname)
3251 (dummy_target::doc): Delete.
3252 (dummy_target::info): New.
3253 (debug_target::shortname, debug_target::longname)
3254 (debug_target::doc): Delete.
3255 (debug_target::info): New.
3256 * target.h (struct target_info): New.
3257 (target_ops::~target_ops): Add comment.
3258 (target_ops::info): New.
3259 (target_ops::shortname, target_ops::longname, target_ops::doc): No
3260 longer virtual. Implement in terms of target_info.
3261 (set_native_target, get_native_target): Declare.
3262 (target_open_ftype): New.
3263 (add_target, add_target_with_completer)
3264 (add_deprecated_target_alias): Change prototype.
3265 (test_target) <shortname, longname, doc>: Delete.
3266 <info>: New.
3267 * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
3268 add_inf_child_target.
3269 * tracefile-tfile.c (tfile_target_info): New.
3270 (tfile_target) <shortname, longname, doc>: Delete.
3271 <info>: New.
3272 (tfile_target::open): Rename to ...
3273 (tfile_target_open): ... this.
3274 (_initialize_tracefile_tfile): Adjust.
3275 * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
3276 add_inf_child_target.
3277 * windows-nat.c (_initialize_windows_nat): Use
3278 add_inf_child_target.
3279 * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
3280 add_inf_child_target.
3281
3282 2018-05-02 Pedro Alves <palves@redhat.com>
3283
3284 * linux-nat.h (linux_nat_target) <low_new_thread,
3285 low_delete_thread, low_new_fork, low_forget_process,
3286 low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
3287 New virtual methods.
3288 (linux_nat_set_new_thread, linux_nat_set_delete_thread)
3289 (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
3290 (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
3291 (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
3292 (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
3293 Delete.
3294 * linux-fork.c (delete_fork): Adjust to call low method.
3295 * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
3296 (linux_nat_new_fork, linux_nat_forget_process_hook)
3297 (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
3298 (linux_nat_status_is_event):
3299 (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
3300 (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
3301 to call low method.
3302 (sigtrap_is_event): Rename to ...
3303 (linux_nat_target::low_status_is_event): ... this.
3304 (linux_nat_set_status_is_event): Delete.
3305 (save_stop_reason, linux_nat_wait_1)
3306 (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
3307 low methods.
3308 (linux_nat_set_new_thread, linux_nat_set_delete_thread)
3309 (linux_nat_set_new_fork, linux_nat_set_forget_process)
3310 (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
3311 (linux_nat_set_prepare_to_resume): Delete.
3312 * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
3313 low virtual methods.
3314 * amd64-linux-nat.c: Likewise.
3315 * arm-linux-nat.c: Likewise.
3316 * i386-linux-nat.c: Likewise.
3317 * ia64-linux-nat.c: Likewise.
3318 * mips-linux-nat.c: Likewise.
3319 * ppc-linux-nat.c: Likewise.
3320 * s390-linux-nat.c: Likewise.
3321 * sparc64-linux-nat.c: Likewise.
3322 * x86-linux-nat.c: Likewise.
3323 * x86-linux-nat.h: Include "nat/x86-linux.h".
3324 (x86_linux_nat_target) <low_new_fork, low_forget_process,
3325 low_prepare_to_resume, low_new_thread, low_delete_thread>:
3326 Override methods.
3327
3328 2018-05-02 Pedro Alves <palves@redhat.com>
3329
3330 * target.h (target_ops)
3331 <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
3332 stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
3333 stopped_by_watchpoint, have_continuable_watchpoint,
3334 stopped_data_address, watchpoint_addr_within_range,
3335 can_accel_watchpoint_condition, can_run, thread_alive,
3336 has_all_memory, has_memory, has_stack, has_registers,
3337 has_execution, can_async_p, is_async_p, supports_non_stop,
3338 always_non_stop_p, can_execute_reverse, supports_multi_process,
3339 supports_enable_disable_tracepoint,
3340 supports_disable_randomization, supports_string_tracing,
3341 supports_evaluation_of_breakpoint_conditions,
3342 can_run_breakpoint_commands, filesystem_is_local,
3343 can_download_tracepoint, get_trace_state_variable_value,
3344 set_trace_notes, get_tib_address, use_agent, can_use_agent,
3345 record_is_replaying, record_will_replay,
3346 augmented_libraries_svr4_read>: Adjust to return bool.
3347 * aarch64-linux-nat.c: All implementations adjusted.
3348 * aix-thread.c: All implementations adjusted.
3349 * arm-linux-nat.c: All implementations adjusted.
3350 * breakpoint.c: All implementations adjusted.
3351 * bsd-kvm.c: All implementations adjusted.
3352 * bsd-uthread.c: All implementations adjusted.
3353 * corelow.c: All implementations adjusted.
3354 * ctf.c: All implementations adjusted.
3355 * darwin-nat.c: All implementations adjusted.
3356 * darwin-nat.h: All implementations adjusted.
3357 * exec.c: All implementations adjusted.
3358 * fbsd-nat.c: All implementations adjusted.
3359 * fbsd-nat.h: All implementations adjusted.
3360 * gnu-nat.c: All implementations adjusted.
3361 * gnu-nat.h: All implementations adjusted.
3362 * go32-nat.c: All implementations adjusted.
3363 * ia64-linux-nat.c: All implementations adjusted.
3364 * inf-child.c: All implementations adjusted.
3365 * inf-child.h: All implementations adjusted.
3366 * inf-ptrace.c: All implementations adjusted.
3367 * inf-ptrace.h: All implementations adjusted.
3368 * linux-nat.c: All implementations adjusted.
3369 * linux-nat.h: All implementations adjusted.
3370 * mips-linux-nat.c: All implementations adjusted.
3371 * nto-procfs.c: All implementations adjusted.
3372 * ppc-linux-nat.c: All implementations adjusted.
3373 * procfs.c: All implementations adjusted.
3374 * ravenscar-thread.c: All implementations adjusted.
3375 * record-btrace.c: All implementations adjusted.
3376 * record-full.c: All implementations adjusted.
3377 * remote-sim.c: All implementations adjusted.
3378 * remote.c: All implementations adjusted.
3379 * s390-linux-nat.c: All implementations adjusted.
3380 * sol-thread.c: All implementations adjusted.
3381 * spu-multiarch.c: All implementations adjusted.
3382 * target-delegates.c: All implementations adjusted.
3383 * target.c: All implementations adjusted.
3384 * target.h: All implementations adjusted.
3385 * tracefile-tfile.c: All implementations adjusted.
3386 * tracefile.c: All implementations adjusted.
3387 * tracefile.h: All implementations adjusted.
3388 * windows-nat.c: All implementations adjusted.
3389 * x86-linux-nat.h: All implementations adjusted.
3390 * x86-nat.h: All implementations adjusted.
3391
3392 2018-05-02 Pedro Alves <palves@redhat.com>
3393
3394 * make-target-delegates (scan_target_h): Don't trim lines here.
3395 Replace sequences of tabs and/or whitespace with a single
3396 whitespace.
3397 (top level, parsing methods): Trim each line before processing it
3398 here.
3399
3400 2018-05-02 Pedro Alves <palves@redhat.com>
3401 John Baldwin <jhb@freebsd.org>
3402
3403 * target.h (enum strata) <debug_stratum>: New.
3404 (struct target_ops) <all delegation methods>: Replace by C++
3405 virtual methods, and drop "to_" prefix. All references updated
3406 throughout.
3407 <to_shortname, to_longname, to_doc, to_data,
3408 to_have_steppable_watchpoint, to_have_continuable_watchpoint,
3409 to_has_thread_control, to_attach_no_wait>: Delete, replaced by
3410 virtual methods. All references updated throughout.
3411 <can_attach, supports_terminal_ours, can_create_inferior,
3412 get_thread_control_capabilities, attach_no_wait>: New
3413 virtual methods.
3414 <insert_breakpoint, remove_breakpoint>: Now
3415 TARGET_DEFAULT_NORETURN methods.
3416 <info_proc>: Now returns bool.
3417 <to_magic>: Delete.
3418 (OPS_MAGIC): Delete.
3419 (current_target): Delete. All references replaced by references
3420 to ...
3421 (target_stack): ... this. New.
3422 (target_shortname, target_longname): Adjust.
3423 (target_can_run): Now a function declaration.
3424 (default_child_has_all_memory, default_child_has_memory)
3425 (default_child_has_stack, default_child_has_registers)
3426 (default_child_has_execution): Remove target_ops parameter.
3427 (complete_target_initialization): Delete.
3428 (memory_breakpoint_target): New template class.
3429 (test_target_ops): Refactor as a C++ class with virtual methods.
3430 * make-target-delegates (NAME_PART): Tighten.
3431 (POINTER_PART, CP_SYMBOL): New.
3432 (SIMPLE_RETURN_PART): Reimplement.
3433 (VEC_RETURN_PART): Expect less.
3434 (RETURN_PART, VIRTUAL_PART): New.
3435 (METHOD): Adjust to C++ virtual methods.
3436 (scan_target_h): Remove reference to C99.
3437 (dname): Output "target_ops::" prefix.
3438 (write_function_header): Adjust to output a C++ class method.
3439 (write_declaration): New.
3440 (write_delegator): Adjust to output a C++ class method.
3441 (tdname): Output "dummy_target::" prefix.
3442 (write_tdefault, write_debugmethod): Adjust to output a C++ class
3443 method.
3444 (tdefault_names, debug_names): Delete.
3445 (return_types, tdefaults, styles, argtypes_array): New.
3446 (top level): All methods are delegators.
3447 (print_class): New.
3448 (top level): Print dummy_target and debug_target classes.
3449 * target-delegates.c: Regenerate.
3450 * target-debug.h (target_debug_print_enum_info_proc_what)
3451 (target_debug_print_thread_control_capabilities)
3452 (target_debug_print_thread_info_p): New.
3453 * target.c (dummy_target): Delete.
3454 (the_dummy_target, the_debug_target): New.
3455 (target_stack): Now extern.
3456 (set_targetdebug): Push/unpush debug target.
3457 (default_child_has_all_memory, default_child_has_memory)
3458 (default_child_has_stack, default_child_has_registers)
3459 (default_child_has_execution): Remove target_ops parameter.
3460 (complete_target_initialization): Delete.
3461 (add_target_with_completer): No longer call
3462 complete_target_initialization.
3463 (target_supports_terminal_ours): Use regular delegation.
3464 (update_current_target): Delete.
3465 (push_target): No longer check magic number. Don't call
3466 update_current_target.
3467 (unpush_target): Don't call update_current_target.
3468 (target_is_pushed): No longer check magic number.
3469 (target_require_runnable): Skip for all stratums over
3470 process_stratum.
3471 (target_ops::info_proc): New.
3472 (target_info_proc): Use find_target_at and
3473 find_default_run_target.
3474 (target_supports_disable_randomization): Use regular delegation.
3475 (target_get_osdata): Use find_target_at.
3476 (target_ops::open, target_ops::close, target_ops::can_attach)
3477 (target_ops::attach, target_ops::can_create_inferior)
3478 (target_ops::create_inferior, target_ops::can_run)
3479 (target_can_run): New.
3480 (default_fileio_target): Use regular delegation.
3481 (target_ops::fileio_open, target_ops::fileio_pwrite)
3482 (target_ops::fileio_pread, target_ops::fileio_fstat)
3483 (target_ops::fileio_close, target_ops::fileio_unlink)
3484 (target_ops::fileio_readlink): New.
3485 (target_fileio_open_1, target_fileio_unlink)
3486 (target_fileio_readlink): Always call the target method. Handle
3487 FILEIO_ENOSYS.
3488 (return_zero, return_zero_has_execution): Delete.
3489 (init_dummy_target): Delete.
3490 (dummy_target::dummy_target, dummy_target::shortname)
3491 (dummy_target::longname, dummy_target::doc)
3492 (debug_target::debug_target, debug_target::shortname)
3493 (debug_target::longname, debug_target::doc): New.
3494 (target_supports_delete_record): Use regular delegation.
3495 (setup_target_debug): Delete.
3496 (maintenance_print_target_stack): Skip debug_stratum.
3497 (initialize_targets): Instantiate the_dummy_target and
3498 the_debug_target.
3499 * auxv.c (target_auxv_parse): Remove 'ops' parameter. Adjust to
3500 use target_stack.
3501 (target_auxv_search, fprint_target_auxv): Adjust.
3502 (info_auxv_command): Adjust to use target_stack.
3503 * auxv.h (target_auxv_parse): Remove 'ops' parameter.
3504 * exceptions.c (print_flush): Handle a NULL target_stack.
3505 * regcache.c (target_ops_no_register): Refactor as class with
3506 virtual methods.
3507
3508 * exec.c (exec_target): New class.
3509 (exec_ops): Now an exec_target.
3510 (exec_open, exec_close_1, exec_get_section_table)
3511 (exec_xfer_partial, exec_files_info, exec_has_memory)
3512 (exec_make_note_section): Refactor as exec_target methods.
3513 (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
3514 Delete.
3515 (exec_target::find_memory_regions): New.
3516 (_initialize_exec): Don't call init_exec_ops.
3517 * gdbcore.h (exec_file_clear): Delete.
3518
3519 * corefile.c (core_target): Delete.
3520 (core_file_command): Adjust.
3521 * corelow.c (core_target): New class.
3522 (the_core_target): New.
3523 (core_close): Remove target_ops parameter.
3524 (core_close_cleanup): Adjust.
3525 (core_target::close): New.
3526 (core_open, core_detach, get_core_registers, core_files_info)
3527 (core_xfer_partial, core_thread_alive, core_read_description)
3528 (core_pid_to_str, core_thread_name, core_has_memory)
3529 (core_has_stack, core_has_registers, core_info_proc): Rework as
3530 core_target methods.
3531 (ignore, core_remove_breakpoint, init_core_ops): Delete.
3532 (_initialize_corelow): Initialize the_core_target.
3533 * gdbcore.h (core_target): Delete.
3534 (the_core_target): New.
3535
3536 * ctf.c: (ctf_target): New class.
3537 (ctf_ops): Now a ctf_target.
3538 (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
3539 (ctf_xfer_partial, ctf_get_trace_state_variable_value)
3540 (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
3541 methods.
3542 (init_ctf_ops): Delete.
3543 (_initialize_ctf): Don't call it.
3544 * tracefile-tfile.c (tfile_target): New class.
3545 (tfile_ops): Now a tfile_target.
3546 (tfile_open, tfile_close, tfile_files_info)
3547 (tfile_get_tracepoint_status, tfile_trace_find)
3548 (tfile_fetch_registers, tfile_xfer_partial)
3549 (tfile_get_trace_state_variable_value, tfile_traceframe_info):
3550 Refactor as tfile_target methods.
3551 (tfile_xfer_partial_features): Remove target_ops parameter.
3552 (init_tfile_ops): Delete.
3553 (_initialize_tracefile_tfile): Don't call it.
3554 * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
3555 (tracefile_has_stack, tracefile_has_registers)
3556 (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
3557 tracefile_target methods.
3558 (init_tracefile_ops): Delete.
3559 (tracefile_target::tracefile_target): New.
3560 * tracefile.h: Include "target.h".
3561 (tracefile_target): New class.
3562 (init_tracefile_ops): Delete.
3563
3564 * spu-multiarch.c (spu_multiarch_target): New class.
3565 (spu_ops): Now a spu_multiarch_target.
3566 (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
3567 (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
3568 (spu_search_memory, spu_mourn_inferior): Refactor as
3569 spu_multiarch_target methods.
3570 (init_spu_ops): Delete.
3571 (_initialize_spu_multiarch): Remove references to init_spu_ops,
3572 complete_target_initialization.
3573
3574 * ravenscar-thread.c (ravenscar_thread_target): New class.
3575 (ravenscar_ops): Now a ravenscar_thread_target.
3576 (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
3577 (ravenscar_thread_alive, ravenscar_pid_to_str)
3578 (ravenscar_fetch_registers, ravenscar_store_registers)
3579 (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
3580 (ravenscar_stopped_by_hw_breakpoint)
3581 (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
3582 (ravenscar_mourn_inferior, ravenscar_core_of_thread)
3583 (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
3584 methods.
3585 (init_ravenscar_thread_ops): Delete.
3586 (_initialize_ravenscar): Remove references to
3587 init_ravenscar_thread_ops and complete_target_initialization.
3588
3589 * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
3590 (bsd_uthread_target): New class.
3591 (bsd_uthread_ops): Now a bsd_uthread_target.
3592 (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
3593 (bsd_uthread_close, bsd_uthread_mourn_inferior)
3594 (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
3595 (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
3596 (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
3597 (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
3598 (bsd_uthread_target): Delete function.
3599 (_initialize_bsd_uthread): Remove reference to
3600 complete_target_initialization.
3601
3602 * bfd-target.c (target_bfd_data): Delete. Fields folded into ...
3603 (target_bfd): ... this new class.
3604 (target_bfd_xfer_partial, target_bfd_get_section_table)
3605 (target_bfd_close): Refactor as target_bfd methods.
3606 (target_bfd::~target_bfd): New.
3607 (target_bfd_reopen): Adjust.
3608 (target_bfd::close): New.
3609
3610 * record-btrace.c (record_btrace_target): New class.
3611 (record_btrace_ops): Now a record_btrace_target.
3612 (record_btrace_open, record_btrace_stop_recording)
3613 (record_btrace_disconnect, record_btrace_close)
3614 (record_btrace_async, record_btrace_info)
3615 (record_btrace_insn_history, record_btrace_insn_history_range)
3616 (record_btrace_insn_history_from, record_btrace_call_history)
3617 (record_btrace_call_history_range)
3618 (record_btrace_call_history_from, record_btrace_record_method)
3619 (record_btrace_is_replaying, record_btrace_will_replay)
3620 (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
3621 (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
3622 (record_btrace_store_registers, record_btrace_prepare_to_store)
3623 (record_btrace_to_get_unwinder)
3624 (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
3625 (record_btrace_commit_resume, record_btrace_wait)
3626 (record_btrace_stop, record_btrace_can_execute_reverse)
3627 (record_btrace_stopped_by_sw_breakpoint)
3628 (record_btrace_supports_stopped_by_sw_breakpoint)
3629 (record_btrace_stopped_by_hw_breakpoint)
3630 (record_btrace_supports_stopped_by_hw_breakpoint)
3631 (record_btrace_update_thread_list, record_btrace_thread_alive)
3632 (record_btrace_goto_begin, record_btrace_goto_end)
3633 (record_btrace_goto, record_btrace_stop_replaying_all)
3634 (record_btrace_execution_direction)
3635 (record_btrace_prepare_to_generate_core)
3636 (record_btrace_done_generating_core): Refactor as
3637 record_btrace_target methods.
3638 (init_record_btrace_ops): Delete.
3639 (_initialize_record_btrace): Remove reference to
3640 init_record_btrace_ops.
3641 * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
3642 the execution_direction global.
3643 (record_full_base_target, record_full_target)
3644 (record_full_core_target): New classes.
3645 (record_full_ops): Now a record_full_target.
3646 (record_full_core_ops): Now a record_full_core_target.
3647 (record_full_target::detach, record_full_target::disconnect)
3648 (record_full_core_target::disconnect)
3649 (record_full_target::mourn_inferior, record_full_target::kill):
3650 New.
3651 (record_full_open, record_full_close, record_full_async): Refactor
3652 as methods of the record_full_base_target class.
3653 (record_full_resume, record_full_commit_resume): Refactor
3654 as methods of the record_full_target class.
3655 (record_full_wait, record_full_stopped_by_watchpoint)
3656 (record_full_stopped_data_address)
3657 (record_full_stopped_by_sw_breakpoint)
3658 (record_full_supports_stopped_by_sw_breakpoint)
3659 (record_full_stopped_by_hw_breakpoint)
3660 (record_full_supports_stopped_by_hw_breakpoint): Refactor as
3661 methods of the record_full_base_target class.
3662 (record_full_store_registers, record_full_xfer_partial)
3663 (record_full_insert_breakpoint, record_full_remove_breakpoint):
3664 Refactor as methods of the record_full_target class.
3665 (record_full_can_execute_reverse, record_full_get_bookmark)
3666 (record_full_goto_bookmark, record_full_execution_direction)
3667 (record_full_record_method, record_full_info, record_full_delete)
3668 (record_full_is_replaying, record_full_will_replay)
3669 (record_full_goto_begin, record_full_goto_end, record_full_goto)
3670 (record_full_stop_replaying): Refactor as methods of the
3671 record_full_base_target class.
3672 (record_full_core_resume, record_full_core_kill)
3673 (record_full_core_fetch_registers)
3674 (record_full_core_prepare_to_store)
3675 (record_full_core_store_registers, record_full_core_xfer_partial)
3676 (record_full_core_insert_breakpoint)
3677 (record_full_core_remove_breakpoint)
3678 (record_full_core_has_execution): Refactor
3679 as methods of the record_full_core_target class.
3680 (record_full_base_target::supports_delete_record): New.
3681 (init_record_full_ops): Delete.
3682 (init_record_full_core_ops): Delete.
3683 (record_full_save): Refactor as method of the
3684 record_full_base_target class.
3685 (_initialize_record_full): Remove references to
3686 init_record_full_ops and init_record_full_core_ops.
3687
3688 * remote.c (remote_target, extended_remote_target): New classes.
3689 (remote_ops): Now a remote_target.
3690 (extended_remote_ops): Now an extended_remote_target.
3691 (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
3692 (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
3693 (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
3694 (remote_pass_signals, remote_set_syscall_catchpoint)
3695 (remote_program_signals, )
3696 (remote_thread_always_alive): Remove target_ops parameter.
3697 (remote_thread_alive, remote_thread_name)
3698 (remote_update_thread_list, remote_threads_extra_info)
3699 (remote_static_tracepoint_marker_at)
3700 (remote_static_tracepoint_markers_by_strid)
3701 (remote_get_ada_task_ptid, remote_close, remote_start_remote)
3702 (remote_open): Refactor as methods of remote_target.
3703 (extended_remote_open, extended_remote_detach)
3704 (extended_remote_attach, extended_remote_post_attach):
3705 (extended_remote_supports_disable_randomization)
3706 (extended_remote_create_inferior): : Refactor as method of
3707 extended_remote_target.
3708 (remote_set_permissions, remote_open_1, remote_detach)
3709 (remote_follow_fork, remote_follow_exec, remote_disconnect)
3710 (remote_resume, remote_commit_resume, remote_stop)
3711 (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
3712 (remote_terminal_ours, remote_wait, remote_fetch_registers)
3713 (remote_prepare_to_store, remote_store_registers)
3714 (remote_flash_erase, remote_flash_done, remote_files_info)
3715 (remote_kill, remote_mourn, remote_insert_breakpoint)
3716 (remote_remove_breakpoint, remote_insert_watchpoint)
3717 (remote_watchpoint_addr_within_range)
3718 (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
3719 (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
3720 (remote_supports_stopped_by_sw_breakpoint)
3721 (remote_stopped_by_hw_breakpoint)
3722 (remote_supports_stopped_by_hw_breakpoint)
3723 (remote_stopped_by_watchpoint, remote_stopped_data_address)
3724 (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
3725 (remote_verify_memory): Refactor as methods of remote_target.
3726 (remote_write_qxfer, remote_read_qxfer): Remove target_ops
3727 parameter.
3728 (remote_xfer_partial, remote_get_memory_xfer_limit)
3729 (remote_search_memory, remote_rcmd, remote_memory_map)
3730 (remote_pid_to_str, remote_get_thread_local_address)
3731 (remote_get_tib_address, remote_read_description): Refactor as
3732 methods of remote_target.
3733 (remote_target::fileio_open, remote_target::fileio_pwrite)
3734 (remote_target::fileio_pread, remote_target::fileio_close): New.
3735 (remote_hostio_readlink, remote_hostio_fstat)
3736 (remote_filesystem_is_local, remote_can_execute_reverse)
3737 (remote_supports_non_stop, remote_supports_disable_randomization)
3738 (remote_supports_multi_process, remote_supports_cond_breakpoints)
3739 (remote_supports_enable_disable_tracepoint)
3740 (remote_supports_string_tracing)
3741 (remote_can_run_breakpoint_commands, remote_trace_init)
3742 (remote_download_tracepoint, remote_can_download_tracepoint)
3743 (remote_download_trace_state_variable, remote_enable_tracepoint)
3744 (remote_disable_tracepoint, remote_trace_set_readonly_regions)
3745 (remote_trace_start, remote_get_trace_status)
3746 (remote_get_tracepoint_status, remote_trace_stop)
3747 (remote_trace_find, remote_get_trace_state_variable_value)
3748 (remote_save_trace_data, remote_get_raw_trace_data)
3749 (remote_set_disconnected_tracing, remote_core_of_thread)
3750 (remote_set_circular_trace_buffer, remote_traceframe_info)
3751 (remote_get_min_fast_tracepoint_insn_len)
3752 (remote_set_trace_buffer_size, remote_set_trace_notes)
3753 (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
3754 (remote_disable_btrace, remote_teardown_btrace)
3755 (remote_read_btrace, remote_btrace_conf)
3756 (remote_augmented_libraries_svr4_read, remote_load)
3757 (remote_pid_to_exec_file, remote_can_do_single_step)
3758 (remote_execution_direction, remote_thread_handle_to_thread_info):
3759 Refactor as methods of remote_target.
3760 (init_remote_ops, init_extended_remote_ops): Delete.
3761 (remote_can_async_p, remote_is_async_p, remote_async)
3762 (remote_thread_events, remote_upload_tracepoints)
3763 (remote_upload_trace_state_variables): Refactor as methods of
3764 remote_target.
3765 (_initialize_remote): Remove references to init_remote_ops and
3766 init_extended_remote_ops.
3767
3768 * remote-sim.c (gdbsim_target): New class.
3769 (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
3770 (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
3771 (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
3772 (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
3773 (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
3774 (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
3775 Refactor as methods of gdbsim_target.
3776 (gdbsim_ops): Now a gdbsim_target.
3777 (init_gdbsim_ops): Delete.
3778 (gdbsim_cntrl_c): Adjust.
3779 (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
3780
3781 * amd64-linux-nat.c (amd64_linux_nat_target): New class.
3782 (the_amd64_linux_nat_target): New.
3783 (amd64_linux_fetch_inferior_registers)
3784 (amd64_linux_store_inferior_registers): Refactor as methods of
3785 amd64_linux_nat_target.
3786 (_initialize_amd64_linux_nat): Adjust. Set linux_target.
3787 * i386-linux-nat.c: Don't include "linux-nat.h".
3788 (i386_linux_nat_target): New class.
3789 (the_i386_linux_nat_target): New.
3790 (i386_linux_fetch_inferior_registers)
3791 (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
3792 as methods of i386_linux_nat_target.
3793 (_initialize_i386_linux_nat): Adjust. Set linux_target.
3794 * inf-child.c (inf_child_ops): Delete.
3795 (inf_child_fetch_inferior_registers)
3796 (inf_child_store_inferior_registers): Delete.
3797 (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
3798 methods of inf_child_target.
3799 (inf_child_target::supports_terminal_ours)
3800 (inf_child_target::terminal_init)
3801 (inf_child_target::terminal_inferior)
3802 (inf_child_target::terminal_ours_for_output)
3803 (inf_child_target::terminal_ours, inf_child_target::interrupt)
3804 (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
3805 New.
3806 (inf_child_open, inf_child_disconnect, inf_child_close)
3807 (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
3808 (inf_child_post_startup_inferior, inf_child_can_run)
3809 (inf_child_pid_to_exec_file): Refactor as methods of
3810 inf_child_target.
3811 (inf_child_follow_fork): Delete.
3812 (inf_child_target::can_create_inferior)
3813 (inf_child_target::can_attach): New.
3814 (inf_child_target::has_all_memory, inf_child_target::has_memory)
3815 (inf_child_target::has_stack, inf_child_target::has_registers)
3816 (inf_child_target::has_execution): New.
3817 (inf_child_fileio_open, inf_child_fileio_pwrite)
3818 (inf_child_fileio_pread, inf_child_fileio_fstat)
3819 (inf_child_fileio_close, inf_child_fileio_unlink)
3820 (inf_child_fileio_readlink, inf_child_use_agent)
3821 (inf_child_can_use_agent): Refactor as methods of
3822 inf_child_target.
3823 (return_zero, inf_child_target): Delete.
3824 (inf_child_target::inf_child_target): New.
3825 * inf-child.h: Include "target.h".
3826 (inf_child_target): Delete function prototype.
3827 (inf_child_target): New class.
3828 (inf_child_open_target, inf_child_mourn_inferior)
3829 (inf_child_maybe_unpush_target): Delete.
3830 * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
3831 (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
3832 (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
3833 (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
3834 (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
3835 (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
3836 (inf_ptrace_wait, inf_ptrace_xfer_partial)
3837 (inf_ptrace_thread_alive, inf_ptrace_files_info)
3838 (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
3839 methods of inf_ptrace_target.
3840 (inf_ptrace_target): Delete function.
3841 * inf-ptrace.h: Include "inf-child.h".
3842 (inf_ptrace_target): Delete function declaration.
3843 (inf_ptrace_target): New class.
3844 (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
3845 * linux-nat.c (linux_target): New.
3846 (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
3847 (linux_nat_target::~linux_nat_target): New.
3848 (linux_child_post_attach, linux_child_post_startup_inferior)
3849 (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
3850 (linux_child_remove_fork_catchpoint)
3851 (linux_child_insert_vfork_catchpoint)
3852 (linux_child_remove_vfork_catchpoint)
3853 (linux_child_insert_exec_catchpoint)
3854 (linux_child_remove_exec_catchpoint)
3855 (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
3856 (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
3857 (linux_nat_resume, linux_nat_stopped_by_watchpoint)
3858 (linux_nat_stopped_data_address)
3859 (linux_nat_stopped_by_sw_breakpoint)
3860 (linux_nat_supports_stopped_by_sw_breakpoint)
3861 (linux_nat_stopped_by_hw_breakpoint)
3862 (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
3863 (linux_nat_kill, linux_nat_mourn_inferior)
3864 (linux_nat_xfer_partial, linux_nat_thread_alive)
3865 (linux_nat_update_thread_list, linux_nat_pid_to_str)
3866 (linux_nat_thread_name, linux_child_pid_to_exec_file)
3867 (linux_child_static_tracepoint_markers_by_strid)
3868 (linux_nat_is_async_p, linux_nat_can_async_p)
3869 (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
3870 (linux_nat_supports_multi_process)
3871 (linux_nat_supports_disable_randomization, linux_nat_async)
3872 (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
3873 (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
3874 (linux_nat_fileio_open, linux_nat_fileio_readlink)
3875 (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
3876 methods of linux_nat_target.
3877 (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
3878 (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
3879 parameter.
3880 (check_stopped_by_watchpoint): Adjust.
3881 (linux_xfer_partial): Delete.
3882 (linux_target_install_ops, linux_target, linux_nat_add_target):
3883 Delete.
3884 (linux_nat_target::linux_nat_target): New.
3885 * linux-nat.h: Include "inf-ptrace.h".
3886 (linux_nat_target): New.
3887 (linux_target, linux_target_install_ops, linux_nat_add_target):
3888 Delete function declarations.
3889 (linux_target): Declare global.
3890 * linux-thread-db.c (thread_db_target): New.
3891 (thread_db_target::thread_db_target): New.
3892 (thread_db_ops): Delete.
3893 (the_thread_db_target): New.
3894 (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
3895 (thread_db_update_thread_list, thread_db_pid_to_str)
3896 (thread_db_extra_thread_info)
3897 (thread_db_thread_handle_to_thread_info)
3898 (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
3899 (thread_db_resume): Refactor as methods of thread_db_target.
3900 (init_thread_db_ops): Delete.
3901 (_initialize_thread_db): Remove reference to init_thread_db_ops.
3902 * x86-linux-nat.c: Don't include "linux-nat.h".
3903 (super_post_startup_inferior): Delete.
3904 (x86_linux_nat_target::~x86_linux_nat_target): New.
3905 (x86_linux_child_post_startup_inferior)
3906 (x86_linux_read_description, x86_linux_enable_btrace)
3907 (x86_linux_disable_btrace, x86_linux_teardown_btrace)
3908 (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
3909 methods of x86_linux_nat_target.
3910 (x86_linux_create_target): Delete. Bits folded ...
3911 (x86_linux_add_target): ... here. Now takes a linux_nat_target
3912 pointer.
3913 * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
3914 (x86_linux_nat_target): New class.
3915 (x86_linux_create_target): Delete.
3916 (x86_linux_add_target): Now takes a linux_nat_target pointer.
3917 * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
3918 (x86_region_ok_for_watchpoint, x86_stopped_data_address)
3919 (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
3920 (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
3921 (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
3922 make extern.
3923 (x86_use_watchpoints): Delete.
3924 * x86-nat.h: Include "breakpoint.h" and "target.h".
3925 (x86_use_watchpoints): Delete.
3926 (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
3927 (x86_stopped_by_watchpoint, x86_stopped_data_address)
3928 (x86_insert_watchpoint, x86_remove_watchpoint)
3929 (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
3930 (x86_stopped_by_hw_breakpoint): New declarations.
3931 (x86_nat_target): New template class.
3932
3933 * ppc-linux-nat.c (ppc_linux_nat_target): New class.
3934 (the_ppc_linux_nat_target): New.
3935 (ppc_linux_fetch_inferior_registers)
3936 (ppc_linux_can_use_hw_breakpoint)
3937 (ppc_linux_region_ok_for_hw_watchpoint)
3938 (ppc_linux_ranged_break_num_registers)
3939 (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
3940 (ppc_linux_insert_mask_watchpoint)
3941 (ppc_linux_remove_mask_watchpoint)
3942 (ppc_linux_can_accel_watchpoint_condition)
3943 (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
3944 (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
3945 (ppc_linux_watchpoint_addr_within_range)
3946 (ppc_linux_masked_watch_num_registers)
3947 (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
3948 (ppc_linux_read_description): Refactor as methods of
3949 ppc_linux_nat_target.
3950 (_initialize_ppc_linux_nat): Adjust. Set linux_target.
3951
3952 * procfs.c (procfs_xfer_partial): Delete forward declaration.
3953 (procfs_target): New class.
3954 (the_procfs_target): New.
3955 (procfs_target): Delete function.
3956 (procfs_auxv_parse, procfs_attach, procfs_detach)
3957 (procfs_fetch_registers, procfs_store_registers, procfs_wait)
3958 (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
3959 (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
3960 (procfs_create_inferior, procfs_update_thread_list)
3961 (procfs_thread_alive, procfs_pid_to_str)
3962 (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
3963 (procfs_stopped_data_address, procfs_insert_watchpoint)
3964 (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
3965 (proc_find_memory_regions, procfs_info_proc)
3966 (procfs_make_note_section): Refactor as methods of procfs_target.
3967 (_initialize_procfs): Adjust.
3968 * sol-thread.c (sol_thread_target): New class.
3969 (sol_thread_ops): Now a sol_thread_target.
3970 (sol_thread_detach, sol_thread_resume, sol_thread_wait)
3971 (sol_thread_fetch_registers, sol_thread_store_registers)
3972 (sol_thread_xfer_partial, sol_thread_mourn_inferior)
3973 (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
3974 (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
3975 (init_sol_thread_ops): Delete.
3976 (_initialize_sol_thread): Adjust. Remove references to
3977 init_sol_thread_ops and complete_target_initialization.
3978
3979 * windows-nat.c (windows_nat_target): New class.
3980 (windows_fetch_inferior_registers)
3981 (windows_store_inferior_registers, windows_resume, windows_wait)
3982 (windows_attach, windows_detach, windows_pid_to_exec_file)
3983 (windows_files_info, windows_create_inferior)
3984 (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
3985 (windows_close, windows_pid_to_str, windows_xfer_partial)
3986 (windows_get_tib_address, windows_get_ada_task_ptid)
3987 (windows_thread_name, windows_thread_alive): Refactor as
3988 windows_nat_target methods.
3989 (do_initial_windows_stuff): Adjust.
3990 (windows_target): Delete function.
3991 (_initialize_windows_nat): Adjust.
3992
3993 * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
3994 (darwin_mourn_inferior, darwin_kill_inferior)
3995 (darwin_create_inferior, darwin_attach, darwin_detach)
3996 (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
3997 (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
3998 (darwin_supports_multi_process): Refactor as darwin_nat_target
3999 methods.
4000 (darwin_resume_to, darwin_files_info): Delete.
4001 (_initialize_darwin_inferior): Rename to ...
4002 (_initialize_darwin_nat): ... this. Adjust to C++ification.
4003 * darwin-nat.h: Include "inf-child.h".
4004 (darwin_nat_target): New class.
4005 (darwin_complete_target): Delete.
4006 * i386-darwin-nat.c (i386_darwin_nat_target): New class.
4007 (darwin_target): New.
4008 (i386_darwin_fetch_inferior_registers)
4009 (i386_darwin_store_inferior_registers): Refactor as methods of
4010 darwin_nat_target.
4011 (darwin_complete_target): Delete, with ...
4012 (_initialize_i386_darwin_nat): ... bits factored out here.
4013
4014 * alpha-linux-nat.c (alpha_linux_nat_target): New class.
4015 (the_alpha_linux_nat_target): New.
4016 (alpha_linux_register_u_offset): Refactor as
4017 alpha_linux_nat_target method.
4018 (_initialize_alpha_linux_nat): Adjust.
4019 * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
4020 (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
4021 (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
4022 methods of linux_nat_trad_target.
4023 (linux_trad_target): Delete.
4024 * linux-nat-trad.h (linux_trad_target): Delete function.
4025 (linux_nat_trad_target): New class.
4026 * mips-linux-nat.c (mips_linux_nat_target): New class.
4027 (super_fetch_registers, super_store_registers, super_close):
4028 Delete.
4029 (the_mips_linux_nat_target): New.
4030 (mips64_linux_regsets_fetch_registers)
4031 (mips64_linux_regsets_store_registers)
4032 (mips64_linux_fetch_registers, mips64_linux_store_registers)
4033 (mips_linux_register_u_offset, mips_linux_read_description)
4034 (mips_linux_can_use_hw_breakpoint)
4035 (mips_linux_stopped_by_watchpoint)
4036 (mips_linux_stopped_data_address)
4037 (mips_linux_region_ok_for_hw_watchpoint)
4038 (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
4039 (mips_linux_close): Refactor as methods of mips_linux_nat.
4040 (_initialize_mips_linux_nat): Adjust to C++ification.
4041
4042 * aix-thread.c (aix_thread_target): New class.
4043 (aix_thread_ops): Now an aix_thread_target.
4044 (aix_thread_detach, aix_thread_resume, aix_thread_wait)
4045 (aix_thread_fetch_registers, aix_thread_store_registers)
4046 (aix_thread_xfer_partial, aix_thread_mourn_inferior)
4047 (aix_thread_thread_alive, aix_thread_pid_to_str)
4048 (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
4049 Refactor as methods of aix_thread_target.
4050 (init_aix_thread_ops): Delete.
4051 (_initialize_aix_thread): Remove references to init_aix_thread_ops
4052 and complete_target_initialization.
4053 * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
4054 (rs6000_nat_target): New class.
4055 (the_rs6000_nat_target): New.
4056 (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
4057 (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
4058 (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
4059 (super_create_inferior): Delete.
4060 (_initialize_rs6000_nat): Adjust to C++ification.
4061
4062 * arm-linux-nat.c (arm_linux_nat_target): New class.
4063 (the_arm_linux_nat_target): New.
4064 (arm_linux_fetch_inferior_registers)
4065 (arm_linux_store_inferior_registers, arm_linux_read_description)
4066 (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
4067 (arm_linux_remove_hw_breakpoint)
4068 (arm_linux_region_ok_for_hw_watchpoint)
4069 (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
4070 (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
4071 (arm_linux_watchpoint_addr_within_range): Refactor as methods of
4072 arm_linux_nat_target.
4073 (_initialize_arm_linux_nat): Adjust to C++ification.
4074
4075 * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
4076 (the_aarch64_linux_nat_target): New.
4077 (aarch64_linux_fetch_inferior_registers)
4078 (aarch64_linux_store_inferior_registers)
4079 (aarch64_linux_child_post_startup_inferior)
4080 (aarch64_linux_read_description)
4081 (aarch64_linux_can_use_hw_breakpoint)
4082 (aarch64_linux_insert_hw_breakpoint)
4083 (aarch64_linux_remove_hw_breakpoint)
4084 (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
4085 (aarch64_linux_region_ok_for_hw_watchpoint)
4086 (aarch64_linux_stopped_data_address)
4087 (aarch64_linux_stopped_by_watchpoint)
4088 (aarch64_linux_watchpoint_addr_within_range)
4089 (aarch64_linux_can_do_single_step): Refactor as methods of
4090 aarch64_linux_nat_target.
4091 (super_post_startup_inferior): Delete.
4092 (_initialize_aarch64_linux_nat): Adjust to C++ification.
4093
4094 * hppa-linux-nat.c (hppa_linux_nat_target): New class.
4095 (the_hppa_linux_nat_target): New.
4096 (hppa_linux_fetch_inferior_registers)
4097 (hppa_linux_store_inferior_registers): Refactor as methods of
4098 hppa_linux_nat_target.
4099 (_initialize_hppa_linux_nat): Adjust to C++ification.
4100
4101 * ia64-linux-nat.c (ia64_linux_nat_target): New class.
4102 (the_ia64_linux_nat_target): New.
4103 (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
4104 (ia64_linux_stopped_data_address)
4105 (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
4106 (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
4107 ia64_linux_nat_target methods.
4108 (super_xfer_partial): Delete.
4109 (_initialize_ia64_linux_nat): Adjust to C++ification.
4110
4111 * m32r-linux-nat.c (m32r_linux_nat_target): New class.
4112 (the_m32r_linux_nat_target): New.
4113 (m32r_linux_fetch_inferior_registers)
4114 (m32r_linux_store_inferior_registers): Refactor as
4115 m32r_linux_nat_target methods.
4116 (_initialize_m32r_linux_nat): Adjust to C++ification.
4117
4118 * m68k-linux-nat.c (m68k_linux_nat_target): New class.
4119 (the_m68k_linux_nat_target): New.
4120 (m68k_linux_fetch_inferior_registers)
4121 (m68k_linux_store_inferior_registers): Refactor as
4122 m68k_linux_nat_target methods.
4123 (_initialize_m68k_linux_nat): Adjust to C++ification.
4124
4125 * s390-linux-nat.c (s390_linux_nat_target): New class.
4126 (the_s390_linux_nat_target): New.
4127 (s390_linux_fetch_inferior_registers)
4128 (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
4129 (s390_insert_watchpoint, s390_remove_watchpoint)
4130 (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
4131 (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
4132 (s390_auxv_parse, s390_read_description): Refactor as methods of
4133 s390_linux_nat_target.
4134 (_initialize_s390_nat): Adjust to C++ification.
4135
4136 * sparc-linux-nat.c (sparc_linux_nat_target): New class.
4137 (the_sparc_linux_nat_target): New.
4138 (_initialize_sparc_linux_nat): Adjust to C++ification.
4139 * sparc-nat.c (sparc_fetch_inferior_registers)
4140 (sparc_store_inferior_registers): Remove target_ops parameter.
4141 * sparc-nat.h (sparc_fetch_inferior_registers)
4142 (sparc_store_inferior_registers): Remove target_ops parameter.
4143 * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
4144 (the_sparc64_linux_nat_target): New.
4145 (_initialize_sparc64_linux_nat): Adjust to C++ification.
4146
4147 * spu-linux-nat.c (spu_linux_nat_target): New class.
4148 (the_spu_linux_nat_target): New.
4149 (spu_child_post_startup_inferior, spu_child_post_attach)
4150 (spu_child_wait, spu_fetch_inferior_registers)
4151 (spu_store_inferior_registers, spu_xfer_partial)
4152 (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
4153 methods.
4154 (_initialize_spu_nat): Adjust to C++ification.
4155
4156 * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
4157 (the_tilegx_linux_nat_target): New.
4158 (fetch_inferior_registers, store_inferior_registers):
4159 Refactor as methods.
4160 (_initialize_tile_linux_nat): Adjust to C++ification.
4161
4162 * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
4163 (the_xtensa_linux_nat_target): New.
4164 (xtensa_linux_fetch_inferior_registers)
4165 (xtensa_linux_store_inferior_registers): Refactor as
4166 xtensa_linux_nat_target methods.
4167 (_initialize_xtensa_linux_nat): Adjust to C++ification.
4168
4169 * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
4170 (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
4171 (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
4172 (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
4173 (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
4174 (fbsd_stopped_by_sw_breakpoint)
4175 (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
4176 (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
4177 (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
4178 (fbsd_post_startup_inferior, fbsd_post_attach)
4179 (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
4180 (fbsd_set_syscall_catchpoint)
4181 (super_xfer_partial, super_resume, super_wait)
4182 (fbsd_supports_stopped_by_hw_breakpoint): Delete.
4183 (fbsd_handle_debug_trap): Remove target_ops parameter.
4184 (fbsd_nat_add_target): Delete.
4185 * fbsd-nat.h: Include "inf-ptrace.h".
4186 (fbsd_nat_add_target): Delete.
4187 (USE_SIGTRAP_SIGINFO): Define.
4188 (fbsd_nat_target): New class.
4189
4190 * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
4191 (amd64bsd_store_inferior_registers): Remove target_ops parameter.
4192 (amd64bsd_target): Delete.
4193 * amd64-bsd-nat.h: New file.
4194 * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
4195 "x86-bsd-nat.h".
4196 (amd64_fbsd_nat_target): New class.
4197 (the_amd64_fbsd_nat_target): New.
4198 (amd64fbsd_read_description): Refactor as method of
4199 amd64_fbsd_nat_target.
4200 (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
4201 (_initialize_amd64fbsd_nat): Adjust to C++ification.
4202 * amd64-nat.h (amd64bsd_target): Delete function declaration.
4203 * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
4204 (i386bsd_store_inferior_registers): Remove target_ops parameter.
4205 (i386bsd_target): Delete.
4206 * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
4207 (i386bsd_fetch_inferior_registers)
4208 (i386bsd_store_inferior_registers): Declare.
4209 (i386_bsd_nat_target): New class.
4210 * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
4211 (the_i386_fbsd_nat_target): New.
4212 (i386fbsd_resume, i386fbsd_read_description): Refactor as
4213 i386_fbsd_nat_target methods.
4214 (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
4215 (_initialize_i386fbsd_nat): Adjust to C++ification.
4216 * x86-bsd-nat.c (super_mourn_inferior): Delete.
4217 (x86bsd_mourn_inferior, x86bsd_target): Delete.
4218 (_initialize_x86_bsd_nat): Adjust to C++ification.
4219 * x86-bsd-nat.h: Include "x86-nat.h".
4220 (x86bsd_target): Delete declaration.
4221 (x86bsd_nat_target): New class.
4222
4223 * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
4224 (the_aarch64_fbsd_nat_target): New.
4225 (aarch64_fbsd_fetch_inferior_registers)
4226 (aarch64_fbsd_store_inferior_registers): Refactor as methods of
4227 aarch64_fbsd_nat_target.
4228 (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
4229 * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
4230 (the_alpha_bsd_nat_target): New.
4231 (alphabsd_fetch_inferior_registers)
4232 (alphabsd_store_inferior_registers): Refactor as
4233 alpha_bsd_nat_target methods.
4234 (_initialize_alphabsd_nat): Refactor as methods of
4235 alpha_bsd_nat_target.
4236 * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
4237 (the_amd64_nbsd_nat_target): New.
4238 (_initialize_amd64nbsd_nat): Adjust to C++ification.
4239 * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
4240 (the_amd64_obsd_nat_target): New.
4241 (_initialize_amd64obsd_nat): Adjust to C++ification.
4242 * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
4243 (the_arm_fbsd_nat_target): New.
4244 (arm_fbsd_fetch_inferior_registers)
4245 (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
4246 (_initialize_arm_fbsd_nat): Refactor as methods of
4247 arm_fbsd_nat_target.
4248 (_initialize_arm_fbsd_nat): Adjust to C++ification.
4249 * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
4250 (the_arm_netbsd_nat_target): New.
4251 (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
4252 arm_netbsd_nat_target.
4253 (_initialize_arm_netbsd_nat): Adjust to C++ification.
4254 * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
4255 (the_hppa_nbsd_nat_target): New.
4256 (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
4257 hppa_nbsd_nat_target methods.
4258 (_initialize_hppanbsd_nat): Adjust to C++ification.
4259 * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
4260 (the_hppa_obsd_nat_target): New.
4261 (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
4262 methods of hppa_obsd_nat_target.
4263 (_initialize_hppaobsd_nat): Adjust to C++ification. Use
4264 add_target.
4265 * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
4266 (_initialize_i386nbsd_nat): Adjust to C++ification. Use
4267 add_target.
4268 * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
4269 (_initialize_i386obsd_nat): Use add_target.
4270 * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
4271 (the_m68k_bsd_nat_target): New.
4272 (m68kbsd_fetch_inferior_registers)
4273 (m68kbsd_store_inferior_registers): Refactor as methods of
4274 m68k_bsd_nat_target.
4275 (_initialize_m68kbsd_nat): Adjust to C++ification.
4276 * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
4277 (the_mips_fbsd_nat_target): New.
4278 (mips_fbsd_fetch_inferior_registers)
4279 (mips_fbsd_store_inferior_registers): Refactor as methods of
4280 mips_fbsd_nat_target.
4281 (_initialize_mips_fbsd_nat): Adjust to C++ification. Use
4282 add_target.
4283 * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
4284 (the_mips_nbsd_nat_target): New.
4285 (mipsnbsd_fetch_inferior_registers)
4286 (mipsnbsd_store_inferior_registers): Refactor as methods of
4287 mips_nbsd_nat_target.
4288 (_initialize_mipsnbsd_nat): Adjust to C++ification.
4289 * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
4290 (the_mips64_obsd_nat_target): New.
4291 (mips64obsd_fetch_inferior_registers)
4292 (mips64obsd_store_inferior_registers): Refactor as methods of
4293 mips64_obsd_nat_target.
4294 (_initialize_mips64obsd_nat): Adjust to C++ification. Use
4295 add_target.
4296 * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
4297 nbsd_nat_target.
4298 * nbsd-nat.h: Include "inf-ptrace.h".
4299 (nbsd_nat_target): New class.
4300 * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
4301 (obsd_wait): Refactor as methods of obsd_nat_target.
4302 (obsd_add_target): Delete.
4303 * obsd-nat.h: Include "inf-ptrace.h".
4304 (obsd_nat_target): New class.
4305 * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
4306 (the_ppc_fbsd_nat_target): New.
4307 (ppcfbsd_fetch_inferior_registers)
4308 (ppcfbsd_store_inferior_registers): Refactor as methods of
4309 ppc_fbsd_nat_target.
4310 (_initialize_ppcfbsd_nat): Adjust to C++ification. Use
4311 add_target.
4312 * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
4313 (the_ppc_nbsd_nat_target): New.
4314 (ppcnbsd_fetch_inferior_registers)
4315 (ppcnbsd_store_inferior_registers): Refactor as methods of
4316 ppc_nbsd_nat_target.
4317 (_initialize_ppcnbsd_nat): Adjust to C++ification.
4318 * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
4319 (the_ppc_obsd_nat_target): New.
4320 (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
4321 methods of ppc_obsd_nat_target.
4322 (_initialize_ppcobsd_nat): Adjust to C++ification. Use
4323 add_target.
4324 * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
4325 (the_sh_nbsd_nat_target): New.
4326 (shnbsd_fetch_inferior_registers)
4327 (shnbsd_store_inferior_registers): Refactor as methods of
4328 sh_nbsd_nat_target.
4329 (_initialize_shnbsd_nat): Adjust to C++ification.
4330 * sparc-nat.c (sparc_xfer_wcookie): Make extern.
4331 (inf_ptrace_xfer_partial): Delete.
4332 (sparc_xfer_partial, sparc_target): Delete.
4333 * sparc-nat.h (sparc_fetch_inferior_registers)
4334 (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
4335 (sparc_target): Delete function declaration.
4336 (sparc_target): New template class.
4337 * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
4338 (_initialize_sparcnbsd_nat): Adjust to C++ification.
4339 * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
4340 (_initialize_sparc64fbsd_nat): Adjust to C++ification. Use
4341 add_target.
4342 * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
4343 (_initialize_sparc64nbsd_nat): Adjust to C++ification.
4344 * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
4345 (_initialize_sparc64obsd_nat): Adjust to C++ification. Use
4346 add_target.
4347 * vax-bsd-nat.c (vax_bsd_nat_target): New class.
4348 (the_vax_bsd_nat_target): New.
4349 (vaxbsd_fetch_inferior_registers)
4350 (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
4351 methods.
4352 (_initialize_vaxbsd_nat): Adjust to C++ification.
4353
4354 * bsd-kvm.c (bsd_kvm_target): New class.
4355 (bsd_kvm_ops): Now a bsd_kvm_target.
4356 (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
4357 (bsd_kvm_files_info, bsd_kvm_fetch_registers)
4358 (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
4359 bsd_kvm_target.
4360 (bsd_kvm_return_one): Delete.
4361 (bsd_kvm_add_target): Adjust to C++ification.
4362
4363 * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
4364 (nto_procfs_target_procfs): New classes.
4365 (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
4366 (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
4367 (procfs_post_attach, procfs_wait, procfs_fetch_registers)
4368 (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
4369 (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
4370 (procfs_remove_hw_breakpoint, procfs_resume)
4371 (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
4372 (procfs_kill_inferior, procfs_store_registers)
4373 (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
4374 as methods of nto_procfs_target.
4375 (nto_procfs_ops): Now an nto_procfs_target_procfs.
4376 (nto_native_ops): Delete.
4377 (procfs_open, procfs_native_open): Delete.
4378 (nto_native_ops): Now an nto_procfs_target_native.
4379 (init_procfs_targets): Adjust to C++ification.
4380 (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
4381 (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
4382 Refactor as methods of nto_procfs_target.
4383
4384 * go32-nat.c (go32_nat_target): New class.
4385 (the_go32_nat_target): New.
4386 (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
4387 (go32_store_registers, go32_xfer_partial, go32_files_info)
4388 (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
4389 (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
4390 (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
4391 (go32_pid_to_str): Refactor as methods of go32_nat_target.
4392 (go32_target): Delete.
4393 (_initialize_go32_nat): Adjust to C++ification.
4394
4395 * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
4396 (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
4397 (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
4398 (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
4399 gnu_nat_target.
4400 (gnu_target): Delete.
4401 * gnu-nat.h (gnu_target): Delete.
4402 (gnu_nat_target): New class.
4403 * i386-gnu-nat.c (gnu_base_target): New.
4404 (i386_gnu_nat_target): New class.
4405 (the_i386_gnu_nat_target): New.
4406 (_initialize_i386gnu_nat): Adjust to C++ification.
4407
4408 2018-05-02 Pedro Alves <palves@redhat.com>
4409
4410 * bfd-target.c (target_bfd_xclose): Rename to ...
4411 (target_bfd_close): ... this.
4412 (target_bfd_reopen): Adjust.
4413 * target.c (target_close): Remove references to to_xclose.
4414 * target.h (target_ops::to_xclose): Delete.
4415 (target_ops::to_close): Update comments.
4416
4417 2018-05-02 Pedro Alves <palves@redhat.com>
4418
4419 * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
4420 "linux-nat.h".
4421 * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
4422 * inf-ptrace.c (inf_ptrace_register_u_offset)
4423 (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
4424 (inf_ptrace_store_register, inf_ptrace_store_registers)
4425 (inf_ptrace_trad_target): Move to ...
4426 * linux-nat-trad.c: ... this new file.
4427 * linux-nat-trad.h: New file.
4428 * linux-nat.c (linux_target_install_ops): Make extern.
4429 (linux_trad_target): Delete.
4430 * linux-nat.h (linux_trad_target): Delete declaration.
4431 (linux_target_install_ops): Declare.
4432 * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
4433 "linux-nat.h".
4434
4435 2018-05-02 Pedro Alves <palves@redhat.com>
4436
4437 * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
4438 procfs_target/add_target here.
4439 * procfs.c (procfs_target): Make static.
4440 (_initialize_procfs): Call add_target here.
4441 * procfs.h (struct target_ops): Remove forward declaration.
4442 (procfs_target): Remove declaration.
4443 * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
4444
4445 2018-05-02 Pedro Alves <palves@redhat.com>
4446
4447 * procfs.c (procfs_stopped_by_watchpoint)
4448 (procfs_insert_watchpoint, procfs_remove_watchpoint)
4449 (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
4450 Forward declare.
4451 (procfs_use_watchpoints): Delete, move contents...
4452 (procfs_target): ... here.
4453 * procfs.h (procfs_use_watchpoints): Delete declaration.
4454 * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
4455 procfs_use_watchpoints.
4456 * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
4457 procfs_use_watchpoints.
4458
4459 2018-05-02 Tom Tromey <tom@tromey.com>
4460
4461 PR python/20084:
4462 * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
4463 and var_zuinteger_unlimited.
4464 * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
4465 and PARAM_ZUINTEGER_UNLIMITED.
4466 (set_parameter_value): Handle var_zuinteger and
4467 var_zuinteger_unlimited.
4468 (add_setshow_generic): Likewise.
4469 (parmpy_init): Likewise.
4470
4471 2018-04-28 Dan Robertson <danlrobertson89@gmail.com>
4472
4473 PR rust/23124
4474 * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
4475 pointer is not null before dereferencing it.
4476
4477 2018-04-30 Tom Tromey <tom@tromey.com>
4478
4479 * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
4480 is_mi_like_p.
4481
4482 2018-04-30 Tom Tromey <tom@tromey.com>
4483
4484 * breakpoint.c (mention): Remove use of is_mi_like_p.
4485 (print_mention_ranged_breakpoint): Likewise.
4486 * break-catch-throw.c (print_it_exception_catchpoint): Remove use
4487 of is_mi_like_p.
4488
4489 2018-04-30 Tom Tromey <tom@tromey.com>
4490
4491 * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
4492
4493 2018-04-30 Tom Tromey <tom@tromey.com>
4494
4495 * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
4496 (info_spu_event_command): Remove some uses of is_mi_like_p.
4497
4498 2018-04-30 Tom Tromey <tom@tromey.com>
4499
4500 * python/py-framefilter.c (py_print_single_arg)
4501 (enumerate_locals, py_print_args, py_print_frame): Remove some
4502 uses of is_mi_like_p.
4503
4504 2018-04-30 Tom Tromey <tom@tromey.com>
4505
4506 * ui-out.c: Update.
4507 * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
4508 * ui-out.h (ui_out::is_mi_like_p): Now const.
4509 (ui_out::do_is_mi_like_p): Now const.
4510 * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
4511
4512 2018-04-30 Tom Tromey <tom@tromey.com>
4513
4514 * varobj.c (varobj_set_visualizer): Use new_reference.
4515 * python/python.c (gdbpy_decode_line): Use new_reference.
4516 * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
4517 new_reference.
4518
4519 2018-04-30 Tom Tromey <tom@tromey.com>
4520
4521 * varobj.c (install_new_value): Use new_reference.
4522 * value.h (value_incref): Return void. Swap intro comment with
4523 value_decref.
4524 * value.c (set_value_parent): Use new_reference.
4525 (value_incref): Return void. Update intro comment.
4526 (release_value): Use new_reference.
4527 * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
4528
4529 2018-04-30 Tom Tromey <tom@tromey.com>
4530
4531 * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
4532 * gdb_bfd.h (new_bfd_ref): Remove.
4533 (gdb_bfd_open): Update comment.
4534 * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
4535 (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
4536 (gdb_bfd_fdopenr): Use new_reference.
4537 * exec.c (exec_file_attach): Use new_reference.
4538
4539 2018-04-30 Tom Tromey <tom@tromey.com>
4540
4541 * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
4542 method.
4543
4544 2018-04-30 Tom Tromey <tom@tromey.com>
4545
4546 * jit.c (jit_read_code_entry): Use type_align.
4547 * i386-tdep.c (i386_gdbarch_init): Don't call
4548 set_gdbarch_long_long_align_bit.
4549 * gdbarch.sh: Remove long_long_align_bit.
4550 * gdbarch.c, gdbarch.h: Rebuild.
4551 * arc-tdep.c (arc_type_align): New function.
4552 (arc_gdbarch_init): Use arc_type_align. Don't call
4553 set_gdbarch_long_long_align_bit.
4554
4555 2018-04-30 Tom Tromey <tom@tromey.com>
4556
4557 * rust-lang.c (rust_type_alignment): Remove.
4558 (rust_composite_type): Use type_align.
4559
4560 2018-04-30 Tom Tromey <tom@tromey.com>
4561
4562 * NEWS: Mention Type.align.
4563 * python/py-type.c (typy_get_alignof): New function.
4564 (type_object_getset): Add "alignof".
4565
4566 2018-04-30 Tom Tromey <tom@tromey.com>
4567
4568 PR exp/17095:
4569 * NEWS: Update.
4570 * std-operator.def (UNOP_ALIGNOF): New operator.
4571 * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
4572 New.
4573 * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
4574 * c-lang.c (c_op_print_tab): Add alignof.
4575 * c-exp.y (ALIGNOF): New token.
4576 (exp): Add "ALIGNOF" production.
4577 (ident_tokens): Add _Alignof and alignof.
4578
4579 2018-04-30 Tom Tromey <tom@tromey.com>
4580
4581 * i386-tdep.c (i386_type_align): New function.
4582 (i386_gdbarch_init): Update.
4583 * gdbarch.sh (type_align): New method.
4584 * gdbarch.c, gdbarch.h: Rebuild.
4585 * arch-utils.h (default_type_align): Declare.
4586 * arch-utils.c (default_type_align): New function.
4587 * gdbtypes.h (TYPE_ALIGN_BITS): New define.
4588 (struct type) <align_log2>: New field.
4589 <instance_flags>: Now a bitfield.
4590 (TYPE_RAW_ALIGN): New macro.
4591 (type_align, type_raw_align, set_type_align): Declare.
4592 * gdbtypes.c (type_align, type_raw_align, set_type_align): New
4593 functions.
4594 * dwarf2read.c (quirk_rust_enum): Set type alignment.
4595 (get_alignment, maybe_set_alignment): New functions.
4596 (read_structure_type, read_enumeration_type, read_array_type)
4597 (read_set_type, read_tag_pointer_type, read_tag_reference_type)
4598 (read_subrange_type, read_base_type): Set type alignment.
4599
4600 2018-04-30 Simon Marchi <simon.marchi@ericsson.com>
4601
4602 * dwarf2read.c (read_index_from_section): Use bool.
4603
4604 2018-04-29 Fabian Groffen <grobian@gentoo.org>
4605
4606 PR gdb/22950
4607 * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
4608 with #ifdef.
4609
4610 2018-04-29 John Reiser <jreiser@BitWagon.com>
4611
4612 PR build/22873
4613 * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
4614 last step, and do it atomically.
4615
4616 2018-04-27 Alexandre Oliva <aoliva@redhat.com>
4617
4618 * compile/compile-c-types.c (convert_int, convert_float):
4619 Update for C FE v1.
4620
4621 2018-04-27 Tom Tromey <tom@tromey.com>
4622
4623 PR rust/22545:
4624 * rust-lang.c (rust_inclusive_range_type_p): New function.
4625 (rust_range): Handle inclusive ranges.
4626 (rust_compute_range): Likewise.
4627 * rust-exp.y (struct rust_op) <inclusive>: New field.
4628 (DOTDOTEQ): New constant.
4629 (range_expr): Add "..=" productions.
4630 (operator_tokens): Add "..=" token.
4631 (ast_range): Add "inclusive" parameter.
4632 (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
4633 ranges.
4634 * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
4635 bounds values.
4636 * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
4637 LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
4638 Update comments.
4639 * expprint.c (print_subexp_standard): Handle new bounds values.
4640 (dump_subexp_body_standard): Likewise.
4641
4642 2018-04-27 Tom Tromey <tom@tromey.com>
4643
4644 * configure: Rebuild.
4645 * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
4646 * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
4647 "OVERRIDE".
4648 (class symbol_needs_eval_context): Likewise.
4649 * dwarf2read.c (mock_mapped_index::symbol_name_count)
4650 (mock_mapped_index::symbol_name_at): Use "override". Remove
4651 "virtual".
4652 * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
4653 "override".
4654 (class dwarf_expr_executor): Use "override", not "OVERRIDE".
4655 * aarch64-tdep.c (instruction_reader::read): Use "override".
4656 (instruction_reader_test::read): Likewise.
4657 * arm-tdep.c (instruction_reader::read): Use "override".
4658 (instruction_reader_thumb::read): Likewise.
4659
4660 2018-04-26 Andrzej Kaczmarek <andrzej.kaczmarek@codecoup.pl>
4661
4662 PR remote/9665
4663 * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
4664 instead of remote_send.
4665 (remote_send): Remove.
4666
4667 2018-04-26 Pedro Alves <palves@redhat.com>
4668
4669 * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
4670 find_function_start_sal instead of find_pc_line.
4671
4672 2018-04-26 Pedro Alves <palves@redhat.com>
4673
4674 * breakpoint.c (set_breakpoint_location_function): Handle
4675 mst_data_gnu_ifunc.
4676 * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
4677 * elfread.c (elf_symtab_read): Give data symbols with
4678 BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
4679 (elf_rel_plt_read): Update comment.
4680 * linespec.c (convert_linespec_to_sals): Handle
4681 mst_data_gnu_ifunc.
4682 (minsym_found): Handle mst_data_gnu_ifunc.
4683 * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
4684 (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
4685 * parse.c (find_minsym_type_and_address): Handle
4686 mst_data_gnu_ifunc.
4687 * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
4688 * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
4689 * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
4690 comment.
4691 <mst_data_gnu_ifunc>: New enumerator.
4692
4693 2018-04-26 Pedro Alves <palves@redhat.com>
4694
4695 * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
4696 (lookup_minimal_symbol_by_pc_section): ... this. Replace
4697 'want_trampoline' parameter by a lookup_msym_prefer parameter.
4698 Handle it.
4699 (lookup_minimal_symbol_by_pc_section): Delete old implementation.
4700 (lookup_minimal_symbol_by_pc): Adjust.
4701 (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
4702 (lookup_solib_trampoline_symbol_by_pc): Adjust.
4703 * minsyms.h (lookup_msym_prefer): New enum.
4704 (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
4705 parameter by a lookup_msym_prefer parameter.
4706
4707 2018-04-26 Pedro Alves <palves@redhat.com>
4708
4709 * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
4710 ends in "@plt" instead of looking at the symbol's section.
4711
4712 2018-04-26 Pedro Alves <palves@redhat.com>
4713
4714 * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete. Remove
4715 all references.
4716 (find_pc_partial_function_gnu_ifunc): Rename to ...
4717 (find_pc_partial_function): ... this, and remove references to
4718 'is_gnu_ifunc_p'.
4719 (find_pc_partial_function): Delete old implementation.
4720 * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
4721
4722 2018-04-26 Pedro Alves <palves@redhat.com>
4723
4724 * linespec.c (struct bound_minimal_symbol_search_key): New.
4725 (convert_linespec_to_sals): Sort minimal symbols earlier. Don't
4726 skip first line if we found a GNU ifunc minimal symbol by name.
4727 (compare_msymbols): Change parameters to work with a destructured
4728 lhs minsym.
4729 (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
4730 functions.
4731
4732 2018-04-26 Pedro Alves <palves@redhat.com>
4733
4734 * breakpoint.c (set_breakpoint_location_function): Don't resolve
4735 ifunc targets here. Instead, if we have an ifunc minsym, use its
4736 address/name.
4737 (add_location_to_breakpoint): Store the minsym and the objfile in
4738 the breakpoint location.
4739 * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
4740 * linespec.c (minsym_found): Resolve GNU ifunc targets here.
4741 Record the minsym in the sal.
4742 * symtab.h (symtab_and_line) <msymbol>: New field.
4743
4744 2018-04-26 Pedro Alves <palves@redhat.com>
4745
4746 * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
4747 unless we actually resolved the ifunc.
4748
4749 2018-04-26 Pedro Alves <palves@redhat.com>
4750
4751 * c-exp.y (variable production): Prefer ifunc minsyms over
4752 regular function symbols.
4753 * symtab.c (find_gnu_ifunc): New function.
4754 * minsyms.h (lookup_msym_prefer): New enum.
4755 (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
4756 parameter by a lookup_msym_prefer parameter.
4757 * symtab.h (find_gnu_ifunc): New declaration.
4758
4759 2018-04-26 Pedro Alves <palves@redhat.com>
4760
4761 * blockframe.c (find_gnu_ifunc_target_type): New function.
4762 (find_function_type): New.
4763 * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
4764 return a value with a memory address.
4765 (eval_call): For calls to GNU ifunc functions, try to find the
4766 type of the target function from the type that the resolver
4767 returns.
4768 * gdbtypes.c (objfile_type): Don't install a return type for ifunc
4769 symbols.
4770 * infcall.c (find_function_return_type): Delete.
4771 (find_function_addr): Add 'function_type' parameter. For calls to
4772 GNU ifunc functions, try to find the type of the target function
4773 from the type that the resolver returns, and return it via
4774 FUNCTION_TYPE.
4775 (call_function_by_hand_dummy): Adjust to use the function type
4776 returned by find_function_addr.
4777 (find_function_addr): Add 'function_type' parameter and move
4778 description here.
4779 * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
4780 declarations.
4781
4782 2018-04-26 Pedro Alves <palves@redhat.com>
4783
4784 * c-exp.y (variable production): Skip finding an alias for ifunc
4785 symbols.
4786
4787 2018-04-26 Pedro Alves <palves@redhat.com>
4788
4789 * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
4790
4791 2018-04-25 Pedro Alves <palves@redhat.com>
4792
4793 * infcmd.c (kill_command): Print the pid as string, not the whole
4794 thread's ptid. Add comment. s/has been killed/killed/ in output
4795 message.
4796 * remote.c (remote_detach_1): Print the pid as string, not the
4797 whole thread's ptid.
4798
4799 2018-04-24 Jan Kratochvil <jan.kratochvil@redhat.com>
4800 Sergio Durigan Junior <sergiodj@redhat.com>
4801 Pedro Alves <palves@redhat.com>
4802
4803 * infcmd.c (kill_command): Print message when inferior has
4804 been killed.
4805 * inferior.c (print_inferior_events): Remove 'static'. Set as
4806 '1'.
4807 (add_inferior): Improve message printed when
4808 'print_inferior_events' is on.
4809 (exit_inferior): Remove message printed when
4810 'print_inferior_events' is on.
4811 (detach_inferior): Improve message printed when
4812 'print_inferior_events' is on.
4813 (initialize_inferiors): Use 'add_inferior_silent' to set
4814 'current_inferior_'.
4815 * inferior.h (print_inferior_events): Declare here as
4816 'extern'.
4817 * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
4818 '[Detaching...]' messages when 'print_inferior_events' is on.
4819 Use 'add_thread_silent' instead of 'add_thread'. Add '[' and ']'
4820 as prefix/suffix for messages. Remove periods. Fix erroneous
4821 'Detaching after fork from child...', replace it by '... from
4822 parent...'.
4823 (handle_vfork_child_exec_or_exit): Add '[' and ']' as
4824 prefix/suffix when printing 'Detaching...' messages. Print
4825 them when 'print_inferior_events' is on.
4826 * remote.c (remote_detach_1): Print message when detaching
4827 from inferior and '!is_fork_parent'.
4828
4829 2018-04-24 Tom Tromey <tom@tromey.com>
4830
4831 * cli-out.h: Reindent.
4832
4833 2018-04-24 Tom Tromey <tom@tromey.com>
4834
4835 * cli-out.c (cli_ui_out::out_field_fmt): Remove.
4836 (cli_ui_out::do_field_string): Use fputs_filtered.
4837 * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
4838
4839 2018-04-23 Tom Tromey <tom@tromey.com>
4840
4841 * guile/scm-frame.c (gdbscm_frame_read_var): Use
4842 gdb::unique_xmalloc_ptr.
4843
4844 2018-04-23 Tom Tromey <tom@tromey.com>
4845
4846 * configure: Rebuild.
4847
4848 2018-04-22 Rajendra SY <rajendra.sy@gmail.com>
4849
4850 PR gdb/23095
4851 * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
4852 prepare_for_testing. Set normal_bp to r_debug_state if target
4853 is bsd.
4854
4855 2018-04-21 Pedro Alves <palves@redhat.com>
4856 Rajendra SY <rajendra.sy@gmail.com>
4857
4858 * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
4859 * remote.c (extended_remote_attach): In all-stop mode, mark the
4860 thread as executing.
4861
4862 2018-04-19 Philippe Waroquiers <philippe.waroquiers@skynet.be>
4863
4864 * thread.c (thread_apply_all_command): Fix comment.
4865 (thread_command): Fix comment.
4866
4867 2018-04-10 Alan Hayward <alan.hayward@arm.com>
4868
4869 * common/tdesc.h (tdesc_create_feature): Remove xml filename
4870 parameter.
4871 * features/aarch64-core.c (create_feature_aarch64_core):
4872 Regenerate.
4873 * features/aarch64-fpu.c (create_feature_aarch64_fpu):
4874 Likewise.
4875 * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
4876 Likewise.
4877 * features/i386/32bit-avx512.c
4878 (create_feature_i386_32bit_avx512): Likewise.
4879 * features/i386/32bit-core.c (create_feature_i386_32bit_core):
4880 Likewise.
4881 * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
4882 Likewise.
4883 * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
4884 Likewise.
4885 * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
4886 Likewise.
4887 * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
4888 Likewise.
4889 * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
4890 Likewise.
4891 * features/i386/64bit-avx512.c
4892 (create_feature_i386_64bit_avx512): Likewise.
4893 * features/i386/64bit-core.c (create_feature_i386_64bit_core):
4894 Likewise.
4895 * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
4896 Likewise.
4897 * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
4898 Likewise.
4899 * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
4900 Likewise.
4901 * features/i386/64bit-segments.c
4902 (create_feature_i386_64bit_segments): Likewise.
4903 * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
4904 Likewise.
4905 * features/i386/x32-core.c
4906 (create_feature_i386_x32_core): Likewise.
4907 * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
4908 * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
4909 * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
4910 * target-descriptions.c: In generated code, don't pass xml
4911 filename.
4912
4913 2018-04-18 Alan Hayward <alan.hayward@arm.com>
4914
4915 * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
4916 (print_xml_feature::visit_post): Likewise.
4917 (print_xml_feature::visit): Likewise.
4918 * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
4919 (print_xml_feature): Add new class.
4920 * regformats/regdat.sh: Null xmltarget on feature targets.
4921 * target-descriptions.c (struct target_desc): Add xmltarget.
4922 (maintenance_check_tdesc_xml_convert): Add unittest function.
4923 (tdesc_get_features_xml): Add function to get xml.
4924 (maintenance_check_xml_descriptions): Test xml generation.
4925 * xml-tdesc.c (string_read_description_xml): Add function.
4926 * xml-tdesc.h (string_read_description_xml): Add declaration.
4927
4928 2018-04-18 Alan Hayward <alan.hayward@arm.com>
4929
4930 * features/Makefile: Add feature marker to targets with new style
4931 target descriptions.
4932 * regformats/aarch64.dat: Regenerate.
4933 * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
4934 * regformats/i386/amd64-avx-linux.dat: Likewise.
4935 * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
4936 * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
4937 * regformats/i386/amd64-linux.dat: Likewise.
4938 * regformats/i386/amd64-mpx-linux.dat: Likewise.
4939 * regformats/i386/amd64.dat: Likewise.
4940 * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
4941 * regformats/i386/i386-avx-linux.dat: Likewise.
4942 * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
4943 * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
4944 * regformats/i386/i386-linux.dat: Likewise.
4945 * regformats/i386/i386-mmx-linux.dat: Likewise.
4946 * regformats/i386/i386-mpx-linux.dat: Likewise.
4947 * regformats/i386/i386.dat: Likewise.
4948 * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
4949 * regformats/i386/x32-avx-linux.dat: Likewise.
4950 * regformats/i386/x32-linux.dat: Likewise.
4951 * regformats/tic6x-c62x-linux.dat: Likewise.
4952 * regformats/tic6x-c64x-linux.dat: Likewise.
4953 * regformats/tic6x-c64xp-linux.dat: Likewise.
4954 * regformats/regdat.sh: Parse feature marker.
4955
4956 2018-04-18 Alan Hayward <alan.hayward@arm.com>
4957
4958 * common/tdesc.h (tdesc_architecture_name): Add new declaration.
4959 (tdesc_osabi_name): Likewise.
4960 * target-descriptions.c (tdesc_architecture_name): Add new
4961 function.
4962 (tdesc_osabi_name): Likewise.
4963
4964 2018-04-18 Alan Hayward <alan.hayward@arm.com>
4965
4966 * common/tdesc.c (tdesc_predefined_type): Move to here.
4967 (tdesc_named_type): Likewise.
4968 (tdesc_create_vector): Likewise.
4969 (tdesc_create_struct): Likewise.
4970 (tdesc_set_struct_size): Likewise.
4971 (tdesc_create_union): Likewise.
4972 (tdesc_create_flags): Likewise.
4973 (tdesc_create_enum): Likewise.
4974 (tdesc_add_field): Likewise.
4975 (tdesc_add_typed_bitfield): Likewise.
4976 (tdesc_add_bitfield): Likewise.
4977 (tdesc_add_flag): Likewise.
4978 (tdesc_add_enum_value): Likewise.
4979 * common/tdesc.h (struct tdesc_type_builtin): Likewise.
4980 (struct tdesc_type_vector): Likewise.
4981 (struct tdesc_type_field): Likewise.
4982 (struct tdesc_type_with_fields): Likewise.
4983 (tdesc_create_enum): Add declaration.
4984 (tdesc_add_typed_bitfield): Likewise.
4985 (tdesc_add_enum_value): Likewise.
4986 * target-descriptions.c (tdesc_type_field): Move from here.
4987 (tdesc_type_builtin): Likewise.
4988 (tdesc_type_vector): Likewise.
4989 (tdesc_type_with_fields): Likewise.
4990 (tdesc_predefined_types): Likewise.
4991 (tdesc_named_type): Likewise.
4992 (tdesc_create_vector): Likewise.
4993 (tdesc_create_struct): Likewise.
4994 (tdesc_set_struct_size): Likewise.
4995 (tdesc_create_union): Likewise.
4996 (tdesc_create_flags): Likewise.
4997 (tdesc_create_enum): Likewise.
4998 (tdesc_add_field): Likewise.
4999 (tdesc_add_typed_bitfield): Likewise.
5000 (tdesc_add_bitfield): Likewise.
5001 (tdesc_add_flag): Likewise.
5002 (tdesc_add_enum_value): Likewise.
5003 * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
5004 (tdesc_add_typed_bitfield): Likewise.
5005 (tdesc_add_enum_value): Likewise.
5006
5007 2018-04-18 Alan Hayward <alan.hayward@arm.com>
5008
5009 * common/tdesc.c (tdesc_feature::accept): Move to here.
5010 (tdesc_feature::operator==): Likewise.
5011 (tdesc_create_reg): Likewise.
5012 * common/tdesc.h (tdesc_type_kind): Likewise.
5013 (struct tdesc_type): Likewise.
5014 (struct tdesc_feature): Likewise.
5015 * regformats/regdat.sh: Create a feature.
5016 * target-descriptions.c (tdesc_type_kind): Move from here.
5017 (tdesc_type): Likewise.
5018 (tdesc_type_up): Likewise.
5019 (tdesc_feature): Likewise.
5020 (tdesc_create_reg): Likewise.
5021
5022 2018-04-18 Alan Hayward <alan.hayward@arm.com>
5023
5024 * Makefile.in: Add arch/tdesc.c
5025 * common/tdesc.c: New file.
5026 * common/tdesc.h (tdesc_element_visitor): Move to here.
5027 (tdesc_element): Likewise.
5028 (tdesc_reg): Likewise.
5029 (tdesc_reg_up): Likewise.
5030 * regformats/regdef.h (reg): Add offset to constructors.
5031 * target-descriptions.c (tdesc_element_visitor): Move from here.
5032 (tdesc_element): Likewise.
5033 (tdesc_reg): Likewise.
5034 (tdesc_reg_up): Likewise.
5035
5036 2018-04-17 Tom Tromey <tom@tromey.com>
5037
5038 * dwarf2read.c (quirk_rust_enum): Conditionally drop the
5039 discriminant field.
5040
5041 2018-04-17 Tom Tromey <tom@tromey.com>
5042
5043 * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
5044
5045 2018-04-17 Andreas Arnez <arnez@linux.vnet.ibm.com>
5046
5047 * symtab.c (print_symbol_info): Skip printing filename and line
5048 number when `last' is NULL.
5049 (symtab_symbol_info): Use empty string instead of NULL for first
5050 invocation of print_symbol_info.
5051 (rbreak_command): Pass NULL to `last' parameter of
5052 print_symbol_info.
5053
5054 2018-04-16 Simon Marchi <simon.marchi@ericsson.com>
5055
5056 * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
5057 instead of nullptr.
5058
5059 2018-04-16 Pedro Alves <palves@redhat.com>
5060
5061 * MAINTAINERS (sh): Remove.
5062 * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
5063 (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
5064 (ALLDEPFILES): Remove sh64-tdep.c.
5065 * NEWS: Mentions that support for SH-5/SH64 is removed.
5066 * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
5067 (sh*-*-openbsd*): Ditto.
5068 (sh64-*-elf*): Remove.
5069 (sh*): Remove.
5070 * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
5071 * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
5072 * sh-tdep.c: No longer include "sh64-tdep.h".
5073 (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
5074 * sh64-tdep.c, sh64-tdep.h: Remove files.
5075
5076 2018-04-16 Pedro Alves <palves@redhat.com>
5077
5078 * MAINTAINERS: Remove m88k.
5079 * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
5080 (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
5081 (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
5082 * NEWS: Mention that support for m88k was removed.
5083 * configure.host (m88*-*-*): Remove support.
5084 * configure.nat (m88k-*-*): Remove support.
5085 * configure.tgt (m88*-*-openbsd*): Remove.
5086 * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
5087
5088 2018-04-15 Simon Marchi <simon.marchi@polymtl.ca>
5089
5090 * configure.tgt (x86_tobjs): New variable.
5091 (amd64_tobjs, i386_tobjs): Use it.
5092
5093 2018-04-13 Andreas Arnez <arnez@linux.vnet.ibm.com>
5094
5095 * symtab.c (print_symbol_info): Precede the symbol definition by
5096 the line number when available.
5097 * NEWS: Advertise this enhancement.
5098
5099 2018-04-13 Markus Metzger <markus.t.metzger@intel.com>
5100
5101 * NEWS (New options): announce set/show record btrace cpu.
5102 * btrace.c: Include record-btrace.h.
5103 (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
5104 the vendor is unknown.
5105 (btrace_compute_ftrace_1): Add cpu parameter. Update callers.
5106 Maybe overwrite the btrace configuration's cpu.
5107 (btrace_compute_ftrace): Add cpu parameter. Update callers.
5108 (btrace_fetch): Add cpu parameter. Update callers.
5109 (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
5110 Maybe overwrite the btrace configuration's cpu. Skip enabling
5111 errata workarounds if the vendor is unknown.
5112 * python/py-record-btrace.c: Include record-btrace.h.
5113 (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
5114 (recpy_bt_function_call_history): Call record_btrace_get_cpu.
5115 * record-btrace.c (record_btrace_cpu_state_kind): New.
5116 (record_btrace_cpu): New.
5117 (set_record_btrace_cpu_cmdlist): New.
5118 (record_btrace_get_cpu): New.
5119 (require_btrace_thread, record_btrace_info)
5120 (record_btrace_resume_thread): Call record_btrace_get_cpu.
5121 (cmd_set_record_btrace_cpu_none): New.
5122 (cmd_set_record_btrace_cpu_auto): New.
5123 (cmd_set_record_btrace_cpu): New.
5124 (cmd_show_record_btrace_cpu): New.
5125 (_initialize_record_btrace): Initialize set/show record btrace cpu
5126 commands.
5127 * record-btrace.h (record_btrace_get_cpu): New.
5128
5129 2018-04-13 Markus Metzger <markus.t.metzger@intel.com>
5130
5131 * record.c (set_record_command): Fix typo in message.
5132
5133 2018-04-13 Markus Metzger <markus.t.metzger@intel.com>
5134
5135 * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
5136
5137 2018-04-13 Markus Metzger <markus.t.metzger@intel.com>
5138
5139 * infrun.c (process_event_stop_test): Call
5140 gdbarch_in_indirect_branch_thunk.
5141 * gdbarch.sh (in_indirect_branch_thunk): New.
5142 * gdbarch.c: Regenerated.
5143 * gdbarch.h: Regenerated.
5144 * x86-tdep.h: New.
5145 * x86-tdep.c: New.
5146 * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
5147 (HFILES_NO_SRCDIR): Add x86-tdep.h.
5148 (ALLDEPFILES): Add x86-tdep.c.
5149 * arch-utils.h (default_in_indirect_branch_thunk): New.
5150 * arch-utils.c (default_in_indirect_branch_thunk): New.
5151 * i386-tdep: Include x86-tdep.h.
5152 (i386_in_indirect_branch_thunk): New.
5153 (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
5154 function.
5155 * amd64-tdep: Include x86-tdep.h.
5156 (amd64_in_indirect_branch_thunk): New.
5157 (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
5158
5159 2018-04-12 Jan Kratochvil <jan.kratochvil@redhat.com>
5160
5161 PR gdb/23053
5162 * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
5163 (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
5164 (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
5165 regression.
5166
5167 2018-04-12 Tom Tromey <tom@tromey.com>
5168
5169 * rust-lang.c (rust_print_struct_def): Remove univariant code.
5170 (rust_evaluate_subexp): Likewise.
5171
5172 2018-04-12 Pedro Alves <palves@redhat.com>
5173
5174 * procfs.c (procfs_detach): Make forward declaration's prototype
5175 match definition's protototype.
5176 (proc_get_LDT_entry): Remove stale do_cleanups call.
5177
5178 2018-04-12 Pedro Alves <palves@redhat.com>
5179
5180 * target.h (target_ops::to_has_exited): Delete.
5181 (target_has_exited): Delete.
5182 * target-delegates.c: Regenerate.
5183
5184 2018-04-11 Pedro Alves <palves@redhat.com>
5185
5186 * target.c (fileio_fh_t::t): Add comment.
5187 (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
5188 (target_fileio_close): Handle a NULL target.
5189 (invalidate_fileio_fh): New.
5190 (target_close): Call it.
5191 * remote.c (remote_hostio_send_command): No longer check whether
5192 remote_desc is open.
5193
5194 2018-04-11 Pedro Alves <palves@redhat.com>
5195
5196 * target.c (fileio_fh_t): Make it a named struct instead of a
5197 typedef.
5198 (fileio_fh_t::is_closed): New method.
5199 (DEF_VEC_O (fileio_fh_t)): Remove.
5200 (fileio_fhandles): Now a std::vector.
5201 (is_closed_fileio_fh): Delete.
5202 (acquire_fileio_fd): Adjust. Rename parameters.
5203 (release_fileio_fd): Adjust.
5204 (fileio_fd_to_fh): Reimplement as a function instead of a macro.
5205 (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
5206 (target_fileio_close): Adjust.
5207
5208 2018-04-10 Simon Marchi <simon.marchi@ericsson.com>
5209
5210 * auto-load.c (auto_load_safe_path_vec_update): Iterate by
5211 index.
5212
5213 2018-04-10 Pedro Alves <palves@redhat.com>
5214
5215 * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
5216 (scoped_finish_thread_state): New class.
5217 * infcmd.c (run_command_1): Use it instead of finish_thread_state
5218 cleanup.
5219 * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
5220 (fetch_inferior_event, normal_stop): Likewise.
5221 * thread.c (finish_thread_state_cleanup): Delete.
5222
5223 2018-04-09 Simon Marchi <simon.marchi@polymtl.ca>
5224 Pedro Alves <palves@redhat.com>
5225
5226 * value.c: Include "selftest.h" and "common/array-view.h".
5227 (struct range) <operator ==>: New.
5228 (test_ranges_contain): New.
5229 (check_ranges_vector): New.
5230 (test_insert_into_bit_range_vector): New.
5231 (_initialize_values): Register selftests.
5232 * common/array-view.h (operator==, operator!=): New.
5233
5234 2018-04-09 Simon Marchi <simon.marchi@polymtl.ca>
5235
5236 * common/gdb_vecs.h (unordered_remove): Add overload that takes
5237 an iterator.
5238 * inline-frame.c: Include <algorithm>.
5239 (struct inline_state): Add constructor.
5240 (inline_state_s): Remove.
5241 (DEF_VEC_O(inline_state_s)): Remove.
5242 (inline_states): Change type to std::vector.
5243 (find_inline_frame_state): Adjust to std::vector.
5244 (allocate_inline_frame_state): Remove.
5245 (clear_inline_frame_state): Adjust to std::vector.
5246 (skip_inline_frames): Adjust to std::vector.
5247
5248 2018-04-09 Simon Marchi <simon.marchi@polymtl.ca>
5249
5250 * tracepoint.h (struct trace_state_variable): Add constructor.
5251 <name>: Change type to std::string.
5252 * tracepoint.c (tsv_s): Remove.
5253 (DEF_VEC_O(tsv_s)): Remove.
5254 (tvariables): Change to std::vector.
5255 (create_trace_state_variable): Adjust to std::vector.
5256 (find_trace_state_variable): Likewise.
5257 (find_trace_state_variable_by_number): Likewise.
5258 (delete_trace_state_variable): Likewise.
5259 (trace_variable_command): Adjust to std::string.
5260 (delete_trace_variable_command): Likewise.
5261 (tvariables_info_1): Adjust to std::vector.
5262 (save_trace_state_variables): Likewise.
5263 (start_tracing): Likewise.
5264 (merge_uploaded_trace_state_variables): Adjust to std::vector
5265 and std::string.
5266 * target.h (struct target_ops)
5267 <to_download_trace_state_variable>: Pass reference to
5268 trace_state_variable.
5269 * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
5270 * target-delegates.c: Re-generate.
5271 * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
5272 (mi_tsv_deleted): Likewise.
5273 * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
5274 * remote.c (remote_download_trace_state_variable): Change
5275 pointer to reference and adjust.
5276 * make-target-delegates (parse_argtypes): Handle references.
5277 (write_function_header): Likewise.
5278 (munge_type): Likewise.
5279
5280 2018-04-09 Simon Marchi <simon.marchi@polymtl.ca>
5281
5282 * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5283 string_view-selftests.c.
5284 * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
5285 testsuite.
5286 * unittests/basic_string_view/cons/char/1.cc: Likewise.
5287 * unittests/basic_string_view/cons/char/2.cc: Likewise.
5288 * unittests/basic_string_view/cons/char/3.cc: Likewise.
5289 * unittests/basic_string_view/element_access/char/1.cc:
5290 Likewise.
5291 * unittests/basic_string_view/element_access/char/empty.cc:
5292 Likewise.
5293 * unittests/basic_string_view/element_access/char/front_back.cc:
5294 Likewise.
5295 * unittests/basic_string_view/inserters/char/2.cc: Likewise.
5296 * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
5297 Likewise.
5298 * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
5299 Likewise.
5300 * unittests/basic_string_view/modifiers/swap/char/1.cc:
5301 Likewise.
5302 * unittests/basic_string_view/operations/compare/char/1.cc:
5303 Likewise.
5304 * unittests/basic_string_view/operations/compare/char/13650.cc:
5305 Likewise.
5306 * unittests/basic_string_view/operations/copy/char/1.cc:
5307 Likewise.
5308 * unittests/basic_string_view/operations/data/char/1.cc:
5309 Likewise.
5310 * unittests/basic_string_view/operations/find/char/1.cc:
5311 Likewise.
5312 * unittests/basic_string_view/operations/find/char/2.cc:
5313 Likewise.
5314 * unittests/basic_string_view/operations/find/char/3.cc:
5315 Likewise.
5316 * unittests/basic_string_view/operations/find/char/4.cc:
5317 Likewise.
5318 * unittests/basic_string_view/operations/rfind/char/1.cc:
5319 Likewise.
5320 * unittests/basic_string_view/operations/rfind/char/2.cc:
5321 Likewise.
5322 * unittests/basic_string_view/operations/rfind/char/3.cc:
5323 Likewise.
5324 * unittests/basic_string_view/operations/substr/char/1.cc:
5325 Likewise.
5326 * unittests/basic_string_view/operators/char/2.cc: Likewise.
5327 * unittests/string_view-selftests.c: New file.
5328
5329 2018-04-09 Simon Marchi <simon.marchi@polymtl.ca>
5330
5331 * unittests/basic_string_view/capacity/1.cc: New file.
5332 * unittests/basic_string_view/capacity/empty_neg.cc: New file.
5333 * unittests/basic_string_view/cons/char/1.cc: New file.
5334 * unittests/basic_string_view/cons/char/2.cc: New file.
5335 * unittests/basic_string_view/cons/char/3.cc: New file.
5336 * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
5337 * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
5338 * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
5339 * unittests/basic_string_view/element_access/char/1.cc: New file.
5340 * unittests/basic_string_view/element_access/char/2.cc: New file.
5341 * unittests/basic_string_view/element_access/char/empty.cc: New file.
5342 * unittests/basic_string_view/element_access/char/front_back.cc: New file.
5343 * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
5344 * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
5345 * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
5346 * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
5347 * unittests/basic_string_view/include.cc: New file.
5348 * unittests/basic_string_view/inserters/char/1.cc: New file.
5349 * unittests/basic_string_view/inserters/char/2.cc: New file.
5350 * unittests/basic_string_view/inserters/char/3.cc: New file.
5351 * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
5352 * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
5353 * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
5354 * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
5355 * unittests/basic_string_view/literals/types.cc: New file.
5356 * unittests/basic_string_view/literals/values.cc: New file.
5357 * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
5358 * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
5359 * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
5360 * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
5361 * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
5362 * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
5363 * unittests/basic_string_view/operations/compare/char/1.cc: New file.
5364 * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
5365 * unittests/basic_string_view/operations/compare/char/2.cc: New file.
5366 * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
5367 * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
5368 * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
5369 * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
5370 * unittests/basic_string_view/operations/copy/char/1.cc: New file.
5371 * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
5372 * unittests/basic_string_view/operations/data/char/1.cc: New file.
5373 * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
5374 * unittests/basic_string_view/operations/find/char/1.cc: New file.
5375 * unittests/basic_string_view/operations/find/char/2.cc: New file.
5376 * unittests/basic_string_view/operations/find/char/3.cc: New file.
5377 * unittests/basic_string_view/operations/find/char/4.cc: New file.
5378 * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
5379 * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
5380 * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
5381 * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
5382 * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
5383 * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
5384 * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
5385 * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
5386 * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
5387 * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
5388 * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
5389 * unittests/basic_string_view/operations/substr/char/1.cc: New file.
5390 * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
5391 * unittests/basic_string_view/operators/char/2.cc: New file.
5392 * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
5393 * unittests/basic_string_view/range_access/char/1.cc: New file.
5394 * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
5395 * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
5396 * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
5397 * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
5398 * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
5399 * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
5400 * unittests/basic_string_view/requirements/typedefs.cc: New file.
5401 * unittests/basic_string_view/typedefs.cc: New file.
5402 * unittests/basic_string_view/types/1.cc: New file.
5403
5404 2018-04-09 Simon Marchi <simon.marchi@polymtl.ca>
5405
5406 * common/gdb_string_view.h: Remove libstdc++ implementation
5407 details, adjust to gdb reality.
5408 * common/gdb_string_view.tcc: Likewise.
5409 * cli/cli-script.c (struct string_view): Remove.
5410 (user_args) <m_args>: Change element type to gdb::string_view.
5411 (user_args::insert_args): Adjust.
5412
5413 2018-04-09 Simon Marchi <simon.marchi@polymtl.ca>
5414
5415 * common/gdb_string_view.h: New file.
5416 * common/gdb_string_view.tcc: New file.
5417
5418 2018-04-09 Simon Marchi <simon.marchi@polymtl.ca>
5419
5420 * ax_cxx_compile_stdcxx.m4: Sync with upstream.
5421 * configure: Re-generate.
5422
5423 2018-04-09 Pedro Alves <palves@redhat.com>
5424
5425 * gdbarch.sh: Include "observable.h" instead of "observer.h".
5426 (set_target_gdbarch): Call
5427 gdb::observers::architecture_changed.notify instead of
5428 observer_notify_architecture_changed.
5429
5430 2018-04-07 Simon Marchi <simon.marchi@polymtl.ca>
5431
5432 * tracepoint.c (struct current_traceframe_cleanup): Remove.
5433 (do_restore_current_traceframe_cleanup): Remove.
5434 (restore_current_traceframe_cleanup_dtor): Remove.
5435 (make_cleanup_restore_current_traceframe): Remove.
5436 (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
5437 New.
5438 * tracepoint.h (struct scoped_restore_current_traceframe): New.
5439 * infrun.c (fetch_inferior_event): Use
5440 scoped_restore_current_traceframe.
5441
5442 2018-04-07 Simon Marchi <simon.marchi@polymtl.ca>
5443
5444 * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
5445 Remove.
5446 <n_allocated_type_units>: Remove.
5447 <all_type_units>: Change to std::vector.
5448 * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
5449 to std::vector change.
5450 (dwarf2_per_objfile::get_cutu): Likewise.
5451 (dwarf2_per_objfile::get_tu): Likewise.
5452 (create_signatured_type_table_from_index): Likewise.
5453 (create_signatured_type_table_from_debug_names): Likewise.
5454 (dw2_symtab_iter_next): Likewise.
5455 (dw2_print_stats): Likewise.
5456 (dw2_expand_all_symtabs): Likewise.
5457 (dw2_expand_marked_cus): Likewise.
5458 (dw2_debug_names_iterator::next): Likewise.
5459 (dwarf2_initialize_objfile): Likewise.
5460 (add_signatured_type_cu_to_table): Likewise.
5461 (create_all_type_units): Likewise.
5462 (add_type_unit): Likewise.
5463 (struct tu_abbrev_offset): Add constructor.
5464 (build_type_psymtabs_1): Adjust to std::vector change.
5465 (print_tu_stats): Likewise.
5466 * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
5467 (write_debug_names): Likewise.
5468
5469 2018-04-07 Simon Marchi <simon.marchi@polymtl.ca>
5470
5471 * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
5472 Make an std::vector.
5473 <n_comp_units>: Remove.
5474 * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
5475 to std::vector change.
5476 (dwarf2_per_objfile::get_cutu): Likewise.
5477 (dwarf2_per_objfile::get_cu): Likewise.
5478 (create_cus_from_index): Likewise.
5479 (create_addrmap_from_index): Likewise.
5480 (create_addrmap_from_aranges): Likewise.
5481 (dwarf2_read_index): Likewise.
5482 (dw2_find_last_source_symtab): Likewise.
5483 (dw2_map_symtabs_matching_filename): Likewise.
5484 (dw2_symtab_iter_next): Likewise.
5485 (dw2_print_stats): Likewise.
5486 (dw2_expand_all_symtabs): Likewise.
5487 (dw2_expand_symtabs_with_fullname): Likewise.
5488 (dw2_expand_marked_cus): Likewise.
5489 (dw2_map_symbol_filenames): Likewise.
5490 (create_cus_from_debug_names): Likewise.
5491 (dwarf2_read_debug_names): Likewise.
5492 (dw2_debug_names_iterator::next): Likewise.
5493 (dwarf2_initialize_objfile): Likewise.
5494 (set_partial_user): Likewise.
5495 (dwarf2_build_psymtabs_hard): Likewise.
5496 (read_comp_units_from_section): Remove arguments, adjust to
5497 std::vector change.
5498 (create_all_comp_units): Adjust to std::vector and
5499 read_comp_units_from_section changes.
5500 (dwarf2_find_containing_comp_unit): Adjust to std::vector
5501 change.
5502 * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
5503 (psyms_seen_size): Likewise.
5504 (write_gdbindex): Likewise.
5505 (write_debug_names): Likewise.
5506
5507 2018-04-07 Simon Marchi <simon.marchi@polymtl.ca>
5508
5509 * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
5510 with dwarf2_per_objfile.
5511 (create_cus_from_index): Likewise.
5512 (create_signatured_type_table_from_index): Likewise.
5513 (dwarf2_read_index): Likewise.
5514 (dwarf2_initialize_objfile): Likewise.
5515 (dwarf2_fetch_die_loc_sect_off): Get dwarf2_per_objfile from
5516 per_cu rather than get_dwarf2_per_objfile.
5517
5518 2018-04-07 Simon Marchi <simon.marchi@polymtl.ca>
5519
5520 * dwarf2read.h (struct signatured_type): Forward declare.
5521 (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
5522 New methods.
5523 * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
5524 (dw2_get_cutu): ...this.
5525 (dwarf2_per_objfile::get_cu): Rename from...
5526 (dw2_get_cu): ...this.
5527 (dwarf2_per_objfile::get_tu): New.
5528 (create_addrmap_from_index): Adjust.
5529 (create_addrmap_from_aranges): Adjust.
5530 (dw2_find_last_source_symtab): Adjust.
5531 (dw2_map_symtabs_matching_filename): Adjust.
5532 (dw2_symtab_iter_next): Adjust.
5533 (dw2_print_stats): Adjust.
5534 (dw2_expand_all_symtabs): Adjust.
5535 (dw2_expand_symtabs_with_fullname): Adjust.
5536 (dw2_expand_marked_cus): Adjust.
5537 (dw_expand_symtabs_matching_file_matcher): Adjust.
5538 (dw2_map_symbol_filenames): Adjust.
5539 (dw2_debug_names_iterator::next): Adjust.
5540 (dwarf2_initialize_objfile): Adjust.
5541 (set_partial_user): Adjust.
5542 (dwarf2_build_psymtabs_hard): Adjust.
5543
5544 2018-04-07 Simon Marchi <simon.marchi@polymtl.ca>
5545
5546 * dwarf2read.c (create_signatured_type_table_from_debug_names):
5547 Remove unused variables.
5548 (dw2_map_symtabs_matching_filename): Likewise.
5549 (dwarf2_record_block_ranges): Likewise.
5550 (dwarf2_read_addr_index): Likewise.
5551 (follow_die_offset): Likewise.
5552
5553 2018-04-07 Simon Marchi <simon.marchi@polymtl.ca>
5554
5555 * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
5556 to symbol_file_add_main.
5557
5558 2018-04-07 Simon Marchi <simon.marchi@polymtl.ca>
5559
5560 PR mi/22299
5561 * mi/mi-console.c (do_fputc_async_safe): New.
5562 (mi_console_file::write_async_safe): New.
5563 (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
5564 * mi/mi-console.h (class mi_console_file) <write_async_safe>:
5565 New.
5566 * ui-file.c (ui_file::putstrn): Adjust call to
5567 fputstrn_unfiltered.
5568 * utils.c (printchar): Replace do_fputs and do_fprintf
5569 parameters by do_fputc.
5570 (fputstr_filtered): Adjust call to printchar.
5571 (fputstr_unfiltered): Likewise.
5572 (fputstrn_filtered): Likewise.
5573 (fputstrn_unfiltered): Add do_fputc parameter, pass to
5574 printchar.
5575 * utils.h (do_fputc_ftype): New typedef.
5576 (fputstrn_unfiltered): Add do_fputc parameter.
5577
5578 2018-04-07 Simon Marchi <simon.marchi@polymtl.ca>
5579
5580 * regformats/i386/i386-avx.dat: Remove.
5581
5582 2018-04-07 Simon Marchi <simon.marchi@ericsson.com>
5583
5584 PR gdb/22979
5585 * amd64-tdep.c (amd64_none_init_abi): New function.
5586 (amd64_x32_none_init_abi): New function.
5587 (_initialize_amd64_tdep): Register handlers for x86-64 and
5588 x64_32 with GDB_OSABI_NONE.
5589 * osabi.c (gdbarch_init_osabi): Allow running handlers for the
5590 GDB_OSABI_NONE osabi.
5591
5592 2018-04-07 Simon Marchi <simon.marchi@ericsson.com>
5593
5594 PR gdb/22980
5595 * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
5596 GDB_OSABI_NONE.
5597 * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
5598 * osabi.c (gdb_osabi_names): Add "unknown" entry.
5599
5600 2018-04-07 Simon Marchi <simon.marchi@ericsson.com>
5601
5602 * common/byte-vector.h (char_vector): New type.
5603 * target.h (target_read_alloc): Return
5604 gdb::optional<byte_vector>.
5605 (target_read_stralloc): Return gdb::optional<char_vector>.
5606 (target_get_osdata): Return gdb::optional<char_vector>.
5607 * target.c (target_read_alloc_1): Templatize. Replacement
5608 manual memory management with vector.
5609 (target_read_alloc): Change return type, adjust.
5610 (target_read_stralloc): Change return type, adjust.
5611 (target_get_osdata): Change return type, adjust.
5612 * auxv.c (struct auxv_info) <length>: Remove.
5613 <data>: Change type to gdb::optional<byte_vector>.
5614 (auxv_inferior_data_cleanup): Free auxv_info with delete.
5615 (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
5616 (target_auxv_search): Adjust.
5617 (fprint_target_auxv): Adjust.
5618 * avr-tdep.c (avr_io_reg_read_command): Adjust.
5619 * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
5620 (linux_make_corefile_notes): Adjust.
5621 * osdata.c (get_osdata): Adjust.
5622 * remote.c (remote_get_threads_with_qxfer): Adjust.
5623 (remote_memory_map): Adjust.
5624 (remote_traceframe_info): Adjust.
5625 (btrace_read_config): Adjust.
5626 (remote_read_btrace): Adjust.
5627 (remote_pid_to_exec_file): Adjust.
5628 * solib-aix.c (solib_aix_get_library_list): Adjust.
5629 * solib-dsbt.c (decode_loadmap): Don't free buf.
5630 (dsbt_get_initial_loadmaps): Adjust.
5631 * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
5632 * solib-target.c (solib_target_current_sos): Adjust.
5633 * tracepoint.c (sdata_make_value): Adjust.
5634 * xml-support.c (xinclude_start_include): Adjust.
5635 (xml_fetch_content_from_file): Adjust.
5636 * xml-support.h (xml_fetch_another): Change return type.
5637 (xml_fetch_content_from_file): Change return type.
5638 * xml-syscall.c (xml_init_syscalls_info): Adjust.
5639 * xml-tdesc.c (file_read_description_xml): Adjust.
5640 (fetch_available_features_from_target): Change return type.
5641 (target_fetch_description_xml): Adjust.
5642 (target_read_description_xml): Adjust.
5643
5644 2018-04-06 Tom Tromey <tom@tromey.com>
5645
5646 * value.c (~value): Update.
5647 (struct value) <contents>: Now unique_xmalloc_ptr.
5648 (value_contents_bits_eq, allocate_value_contents)
5649 (value_contents_raw, value_contents_all_raw)
5650 (value_contents_for_printing, value_contents_for_printing_const)
5651 (set_value_enclosing_type): Update.
5652
5653 2018-04-06 Tom Tromey <tom@tromey.com>
5654
5655 * value.c (range_s): Remove typedef, VEC.
5656 (struct range): Add operator<.
5657 (range_lessthan): Remove.
5658 (ranges_contain): Change type.
5659 (~value): Update.
5660 (struct value) <unavailable, optimized_out>: Now std::vector.
5661 (value_entirely_available)
5662 (value_entirely_covered_by_range_vector)
5663 (value_entirely_unavailable, value_entirely_optimized_out):
5664 Update.
5665 (insert_into_bit_range_vector): Change argument type.
5666 (find_first_range_overlap): Likewise.
5667 (struct ranges_and_idx, value_contents_bits_eq)
5668 (require_not_optimized_out, require_available): Update.
5669 (ranges_copy_adjusted): Change argument types.
5670 (value_optimized_out, value_copy, value_fetch_lazy): Update.
5671
5672 2018-04-06 Tom Tromey <tom@tromey.com>
5673
5674 * value.c (~value): Update.
5675 (struct value) <parent>: Now a value_ref_ptr.
5676 (value_parent, set_value_parent, value_address, value_copy):
5677 Update.
5678
5679 2018-04-06 Tom Tromey <tom@tromey.com>
5680
5681 * value.c (struct value): Add constructor, destructor, and member
5682 initializers.
5683 (allocate_value_lazy, value_decref): Update.
5684
5685 2018-04-06 Tom Tromey <tom@tromey.com>
5686
5687 * value.c (struct value) <released, next>: Remove.
5688 (all_values): Now a std::vector.
5689 (allocate_value_lazy): Update.
5690 (value_next): Remove.
5691 (value_mark, value_free_to_mark, release_value)
5692 (value_release_to_mark): Update.
5693
5694 2018-04-06 Tom Tromey <tom@tromey.com>
5695
5696 * value.h (fetch_subexp_value, value_release_to_mark): Update.
5697 (free_value_chain): Remove.
5698 * value.c (free_value_chain): Remove.
5699 (value_release_to_mark): Return a std::vector.
5700 * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
5701 std::vector.
5702 (check_condition): Update.
5703 * eval.c (fetch_subexp_value): Change "val_chain" to a
5704 std::vector.
5705 * breakpoint.c (update_watchpoint): Update.
5706 (can_use_hardware_watchpoint): Change "vals" to a std::vector.
5707
5708 2018-04-06 Tom Tromey <tom@tromey.com>
5709
5710 * value.h (free_all_values): Remove.
5711 * value.c (free_all_values): Remove.
5712
5713 2018-04-06 Tom Tromey <tom@tromey.com>
5714
5715 * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
5716 (value_history_chain, value_history_count): Remove.
5717 (value_history): New global.
5718 (record_latest_value, access_value_history, show_values)
5719 (preserve_values): Update.
5720
5721 2018-04-06 Tom Tromey <tom@tromey.com>
5722
5723 * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
5724 * varobj.c (varobj_set_display_format, varobj_set_value)
5725 (install_default_visualizer, construct_visualizer)
5726 (install_new_value, ~varobj, varobj_get_value_type)
5727 (my_value_of_variable, varobj_editable_p): Update.
5728 * c-varobj.c (c_describe_child, c_value_of_variable)
5729 (cplus_number_of_children, cplus_describe_child): Update.
5730 * ada-varobj.c (ada_number_of_children, ada_name_of_child)
5731 (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
5732 (ada_value_of_variable, ada_value_is_changeable_p): Update.
5733
5734 2018-04-06 Tom Tromey <tom@tromey.com>
5735
5736 * printcmd.c (last_examine_address): Change type to
5737 value_ref_ptr.
5738 (do_examine, x_command): Update.
5739
5740 2018-04-06 Tom Tromey <tom@tromey.com>
5741
5742 * value.c (release_value): Update.
5743 * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
5744 (struct bpstats) <val>: Now a value_ref_ptr.
5745 * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
5746 (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
5747 (~watchpoint, print_it_watchpoint, watch_command_1)
5748 (invalidate_bp_value_on_memory_change): Update.
5749
5750 2018-04-06 Tom Tromey <tom@tromey.com>
5751
5752 * varobj.c (varobj_clear_saved_item)
5753 (update_dynamic_varobj_children, install_new_value, ~varobj):
5754 Update.
5755 * value.h (value_incref): Move declaration earlier.
5756 (value_decref): Rename from value_free.
5757 (struct value_ref_policy): New.
5758 (value_ref_ptr): New typedef.
5759 (struct value_deleter): Remove.
5760 (gdb_value_up): Remove typedef.
5761 (release_value): Change return type.
5762 (release_value_or_incref): Remove.
5763 * value.c (set_value_parent): Update.
5764 (value_incref): Change return type.
5765 (value_decref): Rename from value_free.
5766 (value_free_to_mark, free_all_values, free_value_chain): Update.
5767 (release_value): Return value_ref_ptr.
5768 (release_value_or_incref): Remove.
5769 (record_latest_value, set_internalvar, clear_internalvar):
5770 Update.
5771 * stack.c (info_frame_command): Don't call value_free.
5772 * python/py-value.c (valpy_dealloc, valpy_new)
5773 (value_to_value_object): Update.
5774 * printcmd.c (do_examine): Update.
5775 * opencl-lang.c (lval_func_free_closure): Update.
5776 * mi/mi-main.c (register_changed_p): Don't call value_free.
5777 * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
5778 * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
5779 * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
5780 value_free.
5781 * guile/scm-value.c (vlscm_free_value_smob)
5782 (vlscm_scm_from_value): Update.
5783 * frame.c (frame_register_unwind, frame_unwind_register_signed)
5784 (frame_unwind_register_unsigned, get_frame_register_bytes)
5785 (put_frame_register_bytes): Don't call value_free.
5786 * findvar.c (address_from_register): Don't call value_free.
5787 * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
5788 * dwarf2loc.c (entry_data_value_free_closure)
5789 (value_of_dwarf_reg_entry, free_pieced_value_closure)
5790 (dwarf2_evaluate_loc_desc_full): Update.
5791 * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
5792 (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
5793 (~watchpoint, watch_command_1)
5794 (invalidate_bp_value_on_memory_change): Update.
5795 * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
5796
5797 2018-04-06 Simon Marchi <simon.marchi@polymtl.ca>
5798
5799 PR gdb/23022
5800 * warning.m4: Add -Wno-error=deprecated-register.
5801 * configure: Re-generate.
5802
5803 2018-04-05 Tom Tromey <tom@tromey.com>
5804
5805 * linespec.h: Remove include of "vec.h".
5806
5807 2018-04-05 Tom Tromey <tom@tromey.com>
5808
5809 * linespec.c (typep): Remove typedef.
5810 (find_methods, find_superclass_methods): Take a std::vector.
5811 (find_method): Use std::vector.
5812
5813 2018-04-05 Tom Tromey <tom@tromey.com>
5814
5815 * utils.c (compare_strings): Remove.
5816 * utils.h (compare_strings): Remove.
5817 * objc-lang.h (find_imps): Update.
5818 * objc-lang.c (find_methods): Take a std::vector.
5819 (uniquify_strings, find_imps): Likewise.
5820 * linespec.c (find_methods): Take a std::vector.
5821 (decode_objc): Use std::vector.
5822 (add_all_symbol_names_from_pspace, find_superclass_methods): Take
5823 a std::vector.
5824 (find_method, find_function_symbols): Use std::vector.
5825
5826 2018-04-05 Tom Tromey <tom@tromey.com>
5827
5828 * completer.c (completion_tracker::completion_tracker): Remove
5829 cast.
5830 (completion_tracker::discard_completions): Likewise.
5831 * breakpoint.c (ambiguous_names_p): Remove cast.
5832 * ada-lang.c (_initialize_ada_language): Remove cast.
5833 * utils.h (streq): Update.
5834 (streq_hash): Add new declaration.
5835 * utils.c (streq): Return bool.
5836 (streq_hash): New function.
5837
5838 2018-04-05 Tom Tromey <tom@tromey.com>
5839
5840 * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
5841 Remove a string copy.
5842
5843 2018-04-05 Tom Tromey <tom@tromey.com>
5844
5845 * linespec.c (filter_results): Use std::vector.
5846 (decode_line_2, decode_line_full): Update.
5847
5848 2018-04-05 Tom Tromey <tom@tromey.com>
5849
5850 * linespec.c (canonical_to_fullform): Return std::string.
5851 (filter_results): Update.
5852 (struct decode_line_2_item): Add constructor.
5853 <fullform, displayform>: Now std::string.
5854 (decode_line_2_compare_items): Now a std::sort comparator.
5855 (decode_line_2): Update.
5856
5857 2018-04-05 Tom Tromey <tom@tromey.com>
5858
5859 * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
5860 (unexpected_linespec_error): Update.
5861 (linespec_parse_basic, parse_linespec): Update.
5862
5863 2018-04-05 Tom Tromey <tom@tromey.com>
5864
5865 * linespec.c (linespec_parse_basic): Reindent.
5866
5867 2018-04-05 Tom Tromey <tom@tromey.com>
5868
5869 * minsyms.h (iterate_over_minimal_symbols): Update.
5870 * minsyms.c (iterate_over_minimal_symbols): Take a
5871 gdb::function_view.
5872 * linespec.c (struct collect_minsyms): Remove.
5873 (compare_msyms): Now a std::sort comparator.
5874 (add_minsym): Add parameters.
5875 (search_minsyms_for_name): Update. Use std::vector.
5876
5877 2018-04-03 Tom Tromey <tom@tromey.com>
5878
5879 * mipsread.c (read_alphacoff_dynamic_symtab): Use
5880 gdb::byte_vector.
5881
5882 2018-04-02 Weimin Pan <weimin.pan@oracle.com>
5883
5884 * MAINTAINERS (Write After Approval): Add Weimin Pan.
5885
5886 2018-04-02 Weimin Pan <weimin.pan@oracle.com>
5887
5888 PR gdb/16959
5889 * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when
5890 printing static type.
5891
5892 2018-04-01 Tom Tromey <tom@tromey.com>
5893
5894 * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
5895 (rs6000_xfer_shared_libraries): Update.
5896
5897 2018-04-01 Simon Marchi <simon.marchi@polymtl.ca>
5898
5899 * common/gdb_vecs.h (char_ptr): Remove.
5900 * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
5901
5902 2018-03-30 Simon Marchi <simon.marchi@polymtl.ca>
5903
5904 * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
5905 with std::vector.
5906 * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
5907
5908 2018-03-30 Simon Marchi <simon.marchi@polymtl.ca>
5909
5910 * tracepoint.h (struct uploaded_tp): Initialize fields.
5911 <actions, step_actions, cmd_strings>: Change type to
5912 std::vector<char *>.
5913 * tracepoint.c (get_uploaded_tp): Allocate with new.
5914 (free_uploaded_tps): Free with delete.
5915 (parse_tracepoint_definition): Adjust to std::vector change.
5916 * breakpoint.c (read_uploaded_action): Likewise.
5917 (create_tracepoint_from_upload): Likewise.
5918 * ctf.c (ctf_write_uploaded_tp): Likewise.
5919 (SET_ARRAY_FIELD): Likewise.
5920 * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
5921
5922 2018-03-30 Tom Tromey <tom@tromey.com>
5923
5924 * solib-svr4.c (lm_info_read): Use gdb::byte_vector. Return
5925 std::unique_ptr.
5926 (svr4_keep_data_in_core): Update.
5927 (svr4_read_so_list): Update.
5928
5929 2018-03-30 Tom Tromey <tom@tromey.com>
5930
5931 * windows-nat.c (handle_output_debug_string, handle_exception):
5932 Update.
5933 * target.h (target_read_string): Update.
5934 * target.c (target_read_string): Change "string" to
5935 unique_xmalloc_ptr.
5936 * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
5937 Update.
5938 * solib-frv.c (frv_current_sos): Update.
5939 * solib-dsbt.c (dsbt_current_sos): Update.
5940 * solib-darwin.c (darwin_current_sos): Update.
5941 * linux-thread-db.c (inferior_has_bug): Update.
5942 * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
5943 Update. Remove alloca.
5944 * ada-lang.c (ada_main_name): Update.
5945
5946 2018-03-30 Tom Tromey <tom@tromey.com>
5947
5948 * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
5949 (struct dwo_file_deleter): New.
5950 (dwo_file_up): New typedef.
5951 (open_and_init_dwo_file): Use dwo_file_up.
5952 (free_dwo_file_cleanup): Remove.
5953
5954 2018-03-30 Tom Tromey <tom@tromey.com>
5955
5956 * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
5957 (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
5958
5959 2018-03-30 Tom Tromey <tom@tromey.com>
5960
5961 * dwarf2read.c (class free_cached_comp_units): New class.
5962 (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
5963 (free_cached_comp_units): Remove function.
5964
5965 2018-03-30 Tom Tromey <tom@tromey.com>
5966
5967 * utils.h (make_cleanup_unpush_target): Remove.
5968 * inf-ptrace.c (struct target_unpusher): New.
5969 (target_unpush_up) New typedef.
5970 (inf_ptrace_create_inferior, inf_ptrace_attach): Use
5971 target_unpush_up.
5972 * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
5973
5974 2018-03-27 Tom Tromey <tom@tromey.com>
5975
5976 * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
5977
5978 2018-03-27 Pedro Alves <palves@redhat.com>
5979 Tom Tromey <tom@tromey.com>
5980
5981 * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
5982 destructor. Now a class.
5983 (gdb_readline_wrapper_cleanup): Remove function.
5984 (gdb_readline_wrapper): Remove cleanups.
5985
5986 2018-03-27 Tom Tromey <tom@tromey.com>
5987
5988 * typeprint.h (struct type_print_options) <local_typedefs,
5989 global_typedefs>: Remove "struct" keyword.
5990 (class typedef_hash_table): New class.
5991 (recursively_update_typedef_hash, add_template_parameters)
5992 (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
5993 (find_typedef_in_hash): Don't declare.
5994 * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
5995 (typedef_hash_table::recursively_update): Rename from
5996 recursively_update_typedef_hash. Now a member.
5997 (typedef_hash_table::add_template_parameters): Rename from
5998 add_template_parameters. Now a member.
5999 (typedef_hash_table::typedef_hash_table): Now a constructor;
6000 rename from create_typedef_hash.
6001 (typedef_hash_table::~typedef_hash_table): Now a destructor;
6002 rename from free_typedef_hash.
6003 (do_free_typedef_hash, make_cleanup_free_typedef_hash)
6004 (do_free_global_table): Remove.
6005 (typedef_hash_table::typedef_hash_table): New constructor; renamed
6006 from copy_type_recursive.
6007 (create_global_typedef_table): Remove.
6008 (typedef_hash_table::find_global_typedef): Now a member of
6009 typedef_hash_table.
6010 (typedef_hash_table::find_typedef): Rename from
6011 find_typedef_in_hash; now a member.
6012 (whatis_exp): Update.
6013 * extension.h (struct ext_lang_type_printers): Add constructor and
6014 destructor.
6015 (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
6016 declare.
6017 * extension.c (ext_lang_type_printers::ext_lang_type_printers):
6018 Now a constructor; rename from start_ext_lang_type_printers.
6019 (ext_lang_type_printers): Now a destructor; rename from
6020 free_ext_lang_type_printers.
6021 * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
6022 Update.
6023 (c_type_print_base_struct_union): Update. Remove cleanups.
6024
6025 2018-03-27 Tom Tromey <tom@tromey.com>
6026
6027 * dwarf-index-write.c: Include <cmath>.
6028
6029 2018-03-27 Joel Brobecker <brobecker@adacore.com>
6030
6031 * NEWS: Add entry describing new "set|show varsize-limit" command.
6032 * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
6033 command.
6034 * printcmd.c (_initialize_printcmd): Add "set var" alias of
6035 "set variable".
6036
6037 2018-03-27 Simon Marchi <simon.marchi@ericsson.com>
6038
6039 * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
6040 dwarf-index-write.c
6041 (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
6042 * dwarf-index-common.c: New file.
6043 * dwarf-index-common.h: New file.
6044 * dwarf-index-write.c: New file.
6045 * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
6046 (struct dwarf2_section_info): Move from here.
6047 (dwarf2_section_info_def): Likewise.
6048 (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
6049 (offset_type): Likewise.
6050 (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
6051 (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
6052 (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
6053 (byte_swap): Likewise.
6054 (MAYBE_SWAP): Likewise.
6055 (dwarf2_per_cu_ptr): Likewise.
6056 (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
6057 (struct tu_stats): Likewise.
6058 (struct dwarf2_per_objfile): Likewise.
6059 (struct dwarf2_per_cu_data): Likewise.
6060 (struct signatured_type): Likewise.
6061 (sig_type_ptr): Likewise.
6062 (DEF_VEC_P (sig_type_ptr)): Likewise.
6063 (INDEX4_SUFFIX): Likewise.
6064 (INDEX5_SUFFIX): Likewise.
6065 (DEBUG_STR_SUFFIX): Likewise.
6066 (dwarf2_read_section): Make non-static.
6067 (mapped_index_string_hash): Move from here.
6068 (dwarf5_djb_hash): Likewise.
6069 (file_write): Likewise.
6070 (class data_buf): Likewise.
6071 (struct symtab_index_entry): Likewise.
6072 (struct mapped_symtab): Likewise.
6073 (find_slot): Likewise.
6074 (hash_expand): Likewise.
6075 (add_index_entry): Likewise.
6076 (uniquify_cu_indices): Likewise.
6077 (class c_str_view): Likewise.
6078 (class c_str_view_hasher): Likewise.
6079 (class vector_hasher): Likewise.
6080 (write_hash_table): Likewise.
6081 (psym_index_map): Likewise.
6082 (struct addrmap_index_data): Likewise.
6083 (add_address_entry): Likewise.
6084 (add_address_entry_worker): Likewise.
6085 (write_address_map): Likewise.
6086 (symbol_kind): Likewise.
6087 (write_psymbols): Likewise.
6088 (struct signatured_type_index_data): Likewise.
6089 (write_one_signatured_type): Likewise.
6090 (recursively_count_psymbols): Likewise.
6091 (recursively_write_psymbols): Likewise.
6092 (class debug_names): Likewise.
6093 (check_dwarf64_offsets): Likewise.
6094 (psyms_seen_size): Likewise.
6095 (write_gdbindex): Likewise.
6096 (write_debug_names): Likewise.
6097 (assert_file_size): Likewise.
6098 (write_psymtabs_to_index): Likewise.
6099 (save_gdb_index_command): Likewise.
6100 (_initialize_dwarf2_read): Don't register the "save gdb-index"
6101 command.
6102 * dwarf2read.h: New file.
6103
6104 2018-03-27 Joel Brobecker <brobecker@adacore.com>
6105
6106 PR gdb/22670
6107 * dwarf2read.c (dwarf2_physname): Do not return the demangled
6108 symbol name if the CU's language stores symbol names in linkage
6109 format.
6110 * language.h (struct language_defn)
6111 <la_store_sym_names_in_linkage_form_p>: New field. Adjust
6112 all instances of this struct.
6113
6114 2018-03-26 Tom Tromey <tom@tromey.com>
6115
6116 * stack.c (backtrace_command_1): Remove verbose code.
6117
6118 2018-03-26 Tom Tromey <tom@tromey.com>
6119
6120 * python/py-framefilter.c (py_print_type): Don't catch
6121 exceptions. Return void.
6122 (py_print_value): Likewise.
6123 (py_print_single_arg): Likewise.
6124 (enumerate_args): Don't catch exceptions.
6125 (py_print_args): Likewise.
6126 (py_print_frame): Likewise.
6127 (gdbpy_apply_frame_filter): Catch exceptions here.
6128
6129 2018-03-26 Tom Tromey <tom@tromey.com>
6130
6131 * stack.c (_initialize_stack): Remove trailing newlines from help
6132 text. Add "Usage" line to "backtrace" help.
6133
6134 2018-03-26 Tom Tromey <tom@tromey.com>
6135
6136 PR python/16486:
6137 * python/py-framefilter.c (py_print_args): Call wrap_hint.
6138
6139 2018-03-26 Tom Tromey <tom@tromey.com>
6140
6141 * python/py-framefilter.c (py_print_single_arg): Return
6142 EXT_LANG_BT_ERROR from catch.
6143
6144 2018-03-26 Tom Tromey <tom@tromey.com>
6145
6146 PR backtrace/15584:
6147 * stack.c (backtrace_command_1): Move some code into no-filters
6148 "if".
6149
6150 2018-03-26 Tom Tromey <tom@tromey.com>
6151
6152 * python/py-framefilter.c (throw_quit_or_print_exception): New
6153 function.
6154 (gdbpy_apply_frame_filter): Use it.
6155
6156 2018-03-26 Tom Tromey <tom@tromey.com>
6157
6158 PR cli/17716:
6159 * python/py-framefilter.c (py_print_type, py_print_value)
6160 (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
6161 RETURN_MASK_ERROR.
6162
6163 2018-03-26 Tom Tromey <tom@tromey.com>
6164
6165 * python/py-framefilter.c (enumerate_args): Use
6166 gdb::unique_xmalloc_ptr.
6167
6168 2018-03-26 Tom Tromey <tom@tromey.com>
6169
6170 * python/py-framefilter.c (py_print_frame): Return
6171 EXT_LANG_BT_OK.
6172 (gdbpy_apply_frame_filter): Update comment.
6173 * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
6174 Remove.
6175 <EXT_LANG_BT_NO_FILTERS>: Change value.
6176
6177 2018-03-26 Tom Tromey <tom@tromey.com>
6178
6179 PR backtrace/15582:
6180 * stack.c (backtrace_command): Parse "hide" argument.
6181 * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
6182 * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
6183 constant.
6184
6185 2018-03-26 Tom Tromey <tom@tromey.com>
6186
6187 * stack.c (backtrace_command_1): Remove "show_locals" parameter,
6188 add "flags".
6189 (backtrace_command): Remove "fulltrace", add "flags".
6190
6191 2018-03-26 Tom Tromey <tom@tromey.com>
6192
6193 * stack.c (backtrace_command): Rewrite command line parsing.
6194
6195 2018-03-26 Simon Marchi <simon.marchi@ericsson.com>
6196
6197 * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
6198
6199 2018-03-26 Simon Marchi <simon.marchi@ericsson.com>
6200
6201 * filename-seen-cache.h: Add include guard.
6202
6203 2018-03-26 Keith Seitz <keiths@redhat.com>
6204
6205 * symfile.c (place_section): Remove "struct" from section_addr_info
6206 in comment.
6207 * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
6208 "struct" keyword from section_addr_info.
6209
6210 2018-03-26 Alan Hayward <alan.hayward@arm.com>
6211
6212 * regformats/regdef.h (reg): Add constructors.
6213
6214 2018-03-25 Pedro Alves <palves@redhat.com>
6215
6216 * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
6217 if then/else bodies in var_func_name extraction.
6218
6219 2018-03-23 Weimin Pan <weimin.pan@oracle.com>
6220
6221 * minsyms.c (lookup_minimal_symbol_and_objfile): Use
6222 lookup_minimal_symbol() to find symbol entry.
6223 * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
6224
6225 2018-03-23 Keith Seitz <keiths@redhat.com>
6226
6227 PR c++/22968
6228 * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
6229 nested type definitions for C++, too.
6230
6231 2018-03-23 Tom Tromey <tom@tromey.com>
6232
6233 * machoread.c (struct oso_el): Add a constructor. Don't define as
6234 a typedef.
6235 (macho_register_oso): Remove.
6236 (macho_symtab_read): Take a std::vector.
6237 (oso_el_compare_name): Now a std::sort comparator.
6238 (macho_symfile_read_all_oso): Take a std::vector.
6239 (macho_symfile_read): Use std::vector. Remove cleanups.
6240
6241 2018-03-22 Tom Tromey <tom@tromey.com>
6242
6243 * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
6244 (record_full_goto_bookmark): Use std::string.
6245
6246 2018-03-22 Pedro Franco de Carvalho <pedromfc@linux.vnet.ibm.com>
6247
6248 PR tdep/18295
6249 * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
6250 a single mask.
6251
6252 2018-03-22 Pedro Franco de Carvalho <pedromfc@linux.vnet.ibm.com>
6253
6254 * rs6000-tdep.c (store_insn_p): New function.
6255 (skip_prologue): New variable alloca_reg_offset. Set lr_reg
6256 and cr_reg to their unshifted values. Use store_insn_p to
6257 match LR saves using either R1 or fdata->alloca_reg. Use
6258 store_insn_p to match CR saves. Set alloca_reg_offset
6259 when alloca_reg and framep are set. Remove lr_reg shift
6260 when assigning to fdata->lr_register.
6261
6262 2018-03-22 Andreas Arnez <arnez@linux.vnet.ibm.com>
6263
6264 * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
6265 command line args instead of emitting a warning.
6266
6267 2018-03-22 Simon Marchi <simon.marchi@polymtl.ca>
6268
6269 * tracepoint.h (struct static_tracepoint_marker): Initialize
6270 fields, define default constructor, move constructor and move
6271 assignment, disable the rest.
6272 <str_id, extra>: Make std::string.
6273 (release_static_tracepoint_marker): Remove.
6274 (free_current_marker): Remove.
6275 * tracepoint.c (free_current_marker): Remove.
6276 (parse_static_tracepoint_marker_definition): Adjust to
6277 std::string, use new hex2str overload.
6278 (release_static_tracepoint_marker): Remove.
6279 (print_one_static_tracepoint_marker): Get marker by reference
6280 and adjust to std::string.
6281 (info_static_tracepoint_markers_command): Adjust to std::vector
6282 changes
6283 * target.h (static_tracepoint_marker_p): Remove typedef.
6284 (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
6285 (struct target_ops) <to_static_tracepoint_marker_at>: Return
6286 bool.
6287 <to_static_tracepoint_markers_by_strid>: Return std::vector.
6288 * target-debug.h
6289 (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
6290 (target_debug_print_std_vector_static_tracepoint_marker): New.
6291 (target_debug_print_struct_static_tracepoint_marker_p): Rename
6292 to...
6293 (target_debug_print_static_tracepoint_marker_p): ... this.
6294 * target-delegates.c: Re-generate.
6295 * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
6296 Make std::string.
6297 * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
6298 (decode_static_tracepoint_spec): Adjust to std::vector.
6299 (tracepoint_print_one_detail): Adjust to std::string.
6300 (strace_marker_decode_location): Adjust to std::string.
6301 (update_static_tracepoint): Adjust to std::string, remove call
6302 to release_static_tracepoint_marker.
6303 * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
6304 Adjust to std::vector.
6305 * remote.c (remote_static_tracepoint_marker_at): Return bool.
6306 (remote_static_tracepoint_markers_by_strid): Adjust to
6307 std::vector.
6308 * common/rsp-low.h (hex2str): New overload with explicit count
6309 of bytes.
6310 * common/rsp-low.c (hex2str): New overload with explicit count
6311 of bytes.
6312 * unittests/rsp-low-selftests.c (test_hex2str): New function.
6313 (_initialize_rsp_low_selftests): Add test_hex2str test.
6314 * unittests/tracepoint-selftests.c
6315 (test_parse_static_tracepoint_marker_definition): Adjust to
6316 std::string.
6317
6318 2018-03-22 Simon Marchi <simon.marchi@polymtl.ca>
6319
6320 * tracepoint.c (parse_static_tracepoint_marker_definition):
6321 Consider case where the definition is followed by more
6322 definitions.
6323 * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
6324 tracepoint-selftests.c.
6325 * unittests/tracepoint-selftests.c: New.
6326
6327 2018-03-21 Pedro Franco de Carvalho <pedromfc@linux.vnet.ibm.com>
6328
6329 * MAINTAINERS (Write After Approval): Add Pedro Franco de
6330 Carvalho.
6331
6332 2018-03-20 Stephen Roberts <stephen.roberts@arm.com>
6333
6334 * symtab.c (find_pc_sect_line): fixed indentation.
6335
6336 2018-03-20 Stephen Roberts <stephen.roberts@arm.com>
6337
6338 * symtab.c (find_pc_sect_line): now uses binary search.
6339
6340 2018-03-19 Tom Tromey <tom@tromey.com>
6341
6342 * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
6343 "IDENT" production.
6344
6345 2018-03-19 Pedro Alves <palves@redhat.com>
6346 Tom Tromey <tom@tromey.com>
6347
6348 * unittests/observable-selftests.c: New file.
6349 * common/observable.h: New file.
6350 * observable.h: New file.
6351 * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
6352 arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
6353 breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
6354 corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
6355 extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
6356 infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
6357 linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
6358 mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
6359 ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
6360 python/py-breakpoint.c, python/py-finishbreakpoint.c,
6361 python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
6362 record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
6363 riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
6364 spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
6365 symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
6366 tui/tui-interp.c, valops.c: Update all users.
6367 * tui/tui-hooks.c (tui_bp_created_observer)
6368 (tui_bp_deleted_observer, tui_bp_modified_observer)
6369 (tui_inferior_exit_observer, tui_before_prompt_observer)
6370 (tui_normal_stop_observer, tui_register_changed_observer):
6371 Remove.
6372 (tui_observers_token): New global.
6373 (attach_or_detach, tui_attach_detach_observers): New functions.
6374 (tui_install_hooks, tui_remove_hooks): Use
6375 tui_attach_detach_observers.
6376 * record-btrace.c (record_btrace_thread_observer): Remove.
6377 (record_btrace_thread_observer_token): New global.
6378 * observer.sh: Remove.
6379 * observer.c: Rename to observable.c.
6380 * observable.c (namespace gdb_observers): Define new objects.
6381 (observer_debug): Move into gdb_observers namespace.
6382 (struct observer, struct observer_list, xalloc_observer_list_node)
6383 (xfree_observer_list_node, generic_observer_attach)
6384 (generic_observer_detach, generic_observer_notify): Remove.
6385 (_initialize_observer): Update.
6386 Don't include observer.inc.
6387 * Makefile.in (generated_files): Remove observer.h, observer.inc.
6388 (clean mostlyclean): Likewise.
6389 (observer.h, observer.inc): Remove targets.
6390 (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
6391 (COMMON_SFILES): Use observable.c, not observer.c.
6392 * .gitignore: Remove observer.h.
6393
6394 2018-03-18 Tom Tromey <tom@tromey.com>
6395
6396 * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
6397 gdb::def_vector.
6398 (bfd_lookup_symbol_from_dyn_symtab): Likewise.
6399
6400 2018-03-17 Tom Tromey <tom@tromey.com>
6401
6402 * auto-load.c (auto_load_objfile_script_1): Use std::string.
6403
6404 2018-03-17 Tom Tromey <tom@tromey.com>
6405
6406 * target.c (class scoped_target_fd): New.
6407 (target_fileio_close_cleanup): Remove.
6408 (target_fileio_read_alloc_1): Use scoped_target_fd.
6409
6410 2018-03-16 Simon Marchi <simon.marchi@polymtl.ca>
6411
6412 * silent-rules.mk: New.
6413 * Makefile.in: Include silent-rules.mk
6414 (srcdir, VPATH, top_srcdir): Move up.
6415 (COMPILE): Add ECHO_CXX.
6416 (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
6417 (init.c): Add ECHO_INIT_C.
6418 (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
6419 (version.c): Add ECHO_GEN.
6420 (printcmd.o): Add ECHO_CXX.
6421 (target-float.o): Add ECHO_CXX.
6422 (ada-exp.o): Add ECHO_CXX.
6423 (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
6424 (insight$(EXEEXT)): Add ECHO_CXXLD.
6425 * gnulib/configure.ac: Add AM_SILENT_RULES.
6426 * gnulib/aclocal.m4: Re-generate.
6427 * gnulib/configure: Re-generate.
6428 * gnulib/import/Makefile.in: Re-generate.
6429
6430 2018-03-16 Tom Tromey <tom@tromey.com>
6431
6432 * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
6433 * utils.h (make_cleanup_free_section_addr_info): Don't declare.
6434 * utils.c (do_free_section_addr_info)
6435 (make_cleanup_free_section_addr_info): Remove.
6436 * symfile.h (struct other_sections): Add constructor.
6437 (struct section_addr_info): Remove.
6438 (section_addr_info): New typedef.
6439 (struct sym_fns) <sym_offsets>: Change type of parameter.
6440 (build_section_addr_info_from_objfile)
6441 (relative_addr_info_to_section_offsets, addr_info_make_relative)
6442 (default_symfile_offsets, symbol_file_add)
6443 (symbol_file_add_from_bfd)
6444 (build_section_addr_info_from_section_table): Update.
6445 (alloc_section_addr_info, free_section_addr_info): Don't declare.
6446 * symfile.c (alloc_section_addr_info): Remove.
6447 (build_section_addr_info_from_section_table): Change return type.
6448 Update.
6449 (build_section_addr_info_from_bfd)
6450 (build_section_addr_info_from_objfile): Likewise.
6451 (free_section_addr_info): Remove.
6452 (relative_addr_info_to_section_offsets): Change type of "addrs".
6453 (addrs_section_compar): Now a std::sort comparator.
6454 (addrs_section_sort): Change return type.
6455 (addr_info_make_relative): Change type of "addrs". Update.
6456 (default_symfile_offsets, syms_from_objfile_1)
6457 (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
6458 (symbol_file_add_separate): Update.
6459 (symbol_file_add): Change type of "addrs". Update.
6460 (add_symbol_file_command): Update. Remove cleanups.
6461 * symfile-mem.c (symbol_file_add_from_memory): Update. Remove
6462 cleanups.
6463 * symfile-debug.c (debug_sym_offsets): Change type of "info".
6464 * solib.c (solib_read_symbols): Update.
6465 * objfiles.c (objfile_relocate): Update. Remove cleanups.
6466 * machoread.c (macho_symfile_offsets): Update.
6467 * jit.c (jit_bfd_try_read_symtab): Update.
6468
6469 2018-03-15 Simon Marchi <simon.marchi@polymtl.ca>
6470
6471 * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
6472 unittests/utils-selftests.c.
6473 * unittests/utils-selftests.c: New file.
6474
6475 2018-03-14 Tom Tromey <tom@tromey.com>
6476
6477 PR cli/14977:
6478 * printcmd.c (printf_c_string, printf_wide_c_string): Special case
6479 for NULL.
6480
6481 2018-03-14 Tom Tromey <tom@tromey.com>
6482
6483 PR cli/19918:
6484 * printcmd.c (printf_pointer): Allow "-" in format.
6485
6486 2018-03-14 Tom Tromey <tom@tromey.com>
6487
6488 * printcmd.c (_initialize_printcmd): Add usage to printf.
6489
6490 2018-03-14 Yao Qi <qiyao@sourceware.org>
6491
6492 * MAINTAINERS: Update my email address.
6493
6494 2018-03-13 Tom Tromey <tom@tromey.com>
6495
6496 * machoread.c (macho_check_dsym): Change filenamep to a
6497 std::string*.
6498 (macho_symfile_read): Update.
6499 * symfile.c (load_command): Use std::string.
6500
6501 2018-03-12 Andrew Burgess <andrew.burgess@embecosm.com>
6502
6503 * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
6504 to error message string.
6505 (riscv_register_name): Use xsnprintf instead of sprintf.
6506 (riscv_insn::fetch_instruction): Use gdb_assert instead of
6507 internal_error.
6508 (riscv_print_arg_location): Use gdb_assert_not_reached instead of
6509 error.
6510 (riscv_push_dummy_call): Likewise.
6511
6512 2018-03-12 Tom Tromey <tom@tromey.com>
6513
6514 * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
6515 Use gdb::byte_vector.
6516 * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
6517
6518 2018-03-12 Yao Qi <yao.qi@linaro.org>
6519
6520 * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
6521 parameter type to readable_regcache.
6522 * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
6523 the declaration.
6524
6525 2018-03-11 Tom Tromey <tom@tromey.com>
6526
6527 * dwarf2read.c (struct nextfield): Add initializers.
6528 (struct nextfnfield): Remove.
6529 (struct fnfieldlist): Add initializers. Remove "length" and
6530 "head", use std::vector.
6531 (struct decl_field_list): Remove.
6532 (struct field_info): Add initializers.
6533 <fields, baseclasses>: Now std::vector.
6534 <nbaseclasses, nfnfields, typedef_field_list_count,
6535 nested_types_list_count>: Remove.
6536 (dwarf2_add_field, dwarf2_add_type_defn)
6537 (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
6538 (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
6539 (process_structure_scope): Update.
6540
6541 2018-03-11 Tom Tromey <tom@tromey.com>
6542
6543 * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
6544 for use by std::sort.
6545 (build_type_psymtabs_1): Use std::vector.
6546
6547 2018-03-09 Eli Zaretskii <eliz@gnu.org>
6548
6549 * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
6550 and LIBMPFR in the printed configuration.
6551
6552 2018-03-08 Tom Tromey <tom@tromey.com>
6553
6554 * source.c (get_filename_and_charpos): Use scoped_fd.
6555 * nto-procfs.c (procfs_open_1): Use scoped_fd.
6556 (procfs_pidlist): Likewise.
6557 * procfs.c (proc_get_LDT_entry): Use scoped_fd.
6558 (iterate_over_mappings): Likewise.
6559
6560 2018-03-08 Tom Tromey <tom@tromey.com>
6561
6562 * infcall.c (struct call_return_meta_info)
6563 <stack_temporaries_enabled>: Remove.
6564 (get_call_return_value, call_function_by_hand_dummy): Update.
6565 * thread.c (disable_thread_stack_temporaries): Remove.
6566 (enable_thread_stack_temporaries): Remove.
6567 (thread_stack_temporaries_enabled_p): Return bool.
6568 (push_thread_stack_temporary, value_in_thread_stack_temporaries)
6569 (get_last_thread_stack_temporary): Update.
6570 * eval.c (evaluate_subexp): Update.
6571 * gdbthread.h (class enable_thread_stack_temporaries): Now a
6572 class, not a function.
6573 (value_ptr, value_vec): Remove typedefs.
6574 (class thread_info) <stack_temporaries_enabled>: Now bool.
6575 <stack_temporaries>: Now a std::vector.
6576 (thread_stack_temporaries_enabled_p)
6577 (value_in_thread_stack_temporaries): Return bool.
6578
6579 2018-03-08 Simon Marchi <simon.marchi@ericsson.com>
6580
6581 * remote.c (putpkt_binary): Fix omitted bytes reporting.
6582 (getpkt_or_notif_sane_1): Likewise.
6583
6584 2018-03-08 Simon Marchi <simon.marchi@polymtl.ca>
6585
6586 * build-id.c (build_id_to_debug_bfd): Use std::string.
6587
6588 2018-03-08 Simon Marchi <simon.marchi@polymtl.ca>
6589
6590 * build-id.c (find_separate_debug_file_by_buildid): Return
6591 std::string.
6592 * build-id.h (find_separate_debug_file_by_buildid): Return
6593 std::string.
6594 * coffread.c (coff_symfile_read): Adjust to std::string.
6595 * elfread.c (elf_symfile_read): Adjust to std::string.
6596 * symfile.c (separate_debug_file_exists): Change parameter to
6597 std::string.
6598 (find_separate_debug_file): Return std::string.
6599 (find_separate_debug_file_by_debuglink): Return std::string.
6600 * symfile.h (find_separate_debug_file_by_debuglink): Return
6601 std::string.
6602
6603 2018-03-08 Simon Marchi <simon.marchi@polymtl.ca>
6604
6605 * common/xml-utils.c (xml_escape_text): Move code to...
6606 (xml_escape_text_append): ... this new function.
6607 * common/xml-utils.h (xml_escape_text_append): New declaration.
6608 * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
6609 New function.
6610 (_initialize_xml_utils): register test_xml_escape_text_append as
6611 a selftest.
6612
6613 2018-03-07 Alan Hayward <alan.hayward@arm.com>
6614
6615 * defs.h: Remove MAX_REGISTER_SIZE.
6616 * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
6617 asserts.
6618 * python/py-unwind.c (pyuw_sniffer): Likewise.
6619
6620 2018-03-07 Tom Tromey <tom@tromey.com>
6621
6622 * linux-tdep.c (linux_info_proc): Update.
6623 * target.h (struct target_ops) <to_fileio_readlink>: Return
6624 optional<string>.
6625 (target_fileio_readlink): Return optional<string>.
6626 * remote.c (remote_hostio_readlink): Return optional<string>.
6627 * inf-child.c (inf_child_fileio_readlink): Return
6628 optional<string>.
6629 * target.c (target_fileio_readlink): Return optional<string>.
6630
6631 2018-03-07 Andrew Burgess <andrew.burgess@embecosm.com>
6632
6633 * regcache.c (cooked_read_test): Add riscv to the list of
6634 architectures that have a save_reggroup.
6635
6636 2018-03-07 Andreas Arnez <arnez@linux.vnet.ibm.com>
6637
6638 * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
6639 value is not a dynamic class object.
6640
6641 2018-03-06 Tom Tromey <tom@tromey.com>
6642
6643 * rust-exp.y: Formatting fixes.
6644
6645 2018-03-06 Andrew Burgess <andrew.burgess@embecosm.com>
6646
6647 * riscv-tdep.c (riscv_register_name): Remove target description
6648 support.
6649 (riscv_gdbarch_init): Remove target description check.
6650
6651 2018-03-06 Andrew Burgess <andrew.burgess@embecosm.com>
6652
6653 * riscv-tdep.c: Remove 'Contributed by ...' lines from header
6654 comment.
6655 * riscv-tdep.h: Likewise.
6656
6657 2018-03-06 Andrew Burgess <andrew.burgess@embecosm.com>
6658
6659 * riscv-tdep.c (riscv_pseudo_register_read): Delete.
6660 (riscv_pseudo_register_write): Delete.
6661 (riscv_gdbarch_init): Remove all use of pseudo registers.
6662
6663 2018-03-06 Simon Marchi <simon.marchi@polymtl.ca>
6664
6665 * record-btrace.c (btrace_print_lines): Replace cleanup
6666 parameter with RAII equivalents.
6667 (btrace_insn_history): Replace cleanup with RAII equivalents.
6668 * ui-out.h (make_cleanup_ui_out_list_begin_end,
6669 make_cleanup_ui_out_tuple_begin_end): Remove.
6670 * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
6671 make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
6672 make_cleanup_ui_out_list_begin_end): Remove.
6673
6674 2018-03-06 Simon Marchi <simon.marchi@polymtl.ca>
6675
6676 * record-btrace.c (record_btrace_maybe_mark_async_event): Change
6677 parameter types to std::vector. Use bool.
6678 (record_btrace_wait): Replace VEC(tp_t) with
6679 std::vector<thread_info *>.
6680 * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
6681
6682 2018-03-06 Simon Marchi <simon.marchi@polymtl.ca>
6683
6684 * record-btrace.c (record_btrace_disable_callback): Remove.
6685 (struct scoped_btrace_disable): New.
6686 (record_btrace_open): Use scoped_btrace_disable.
6687
6688 2018-03-06 Andrew Burgess <andrew.burgess@embecosm.com>
6689
6690 * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
6691 reading values from registers.
6692
6693 2018-03-06 Andrew Burgess <andrew.burgess@embecosm.com>
6694
6695 * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
6696 where appropriate.
6697
6698 2018-03-06 Andrew Burgess <andrew.burgess@embecosm.com>
6699
6700 * riscv-tdep.c (riscv_print_arg_location): Add header comment,
6701 change parameter type. Use GDB's print functions, and use
6702 core_addr_to_string where appropriate.
6703 (riscv_push_dummy_call): Use core_addr_to_string where
6704 appropriate, update call to riscv_print_arg_location, and reindent
6705 a few lines.
6706 (riscv_return_value): Update call to riscv_print_arg_location.
6707
6708 2018-03-06 Andrew Burgess <andrew.burgess@embecosm.com>
6709 Tim Newsome <tim@sifive.com>
6710 Albert Ou <a0u@eecs.berkeley.edu>
6711 Darius Rad <darius@bluespec.com>
6712
6713 * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
6714 (HFILES_NO_SRCDIR): Add riscv-tdep.h.
6715 (ALLDEPFILES): Add riscv-tdep.c
6716 * configure.tgt: Add riscv support.
6717 * riscv-tdep.c: New file.
6718 * riscv-tdep.h: New file.
6719 * NEWS: Mention new target.
6720 * MAINTAINERS: Add entry for riscv.
6721
6722 2018-03-06 Andrew Burgess <andrew.burgess@embecosm.com>
6723
6724 * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
6725 fields within aggregates.
6726
6727 2018-03-04 Simon Marchi <simon.marchi@polymtl.ca>
6728
6729 * record-btrace.c (btrace_print_lines): Change type of flags to
6730 gdb_disassembly_flags.
6731
6732 2018-03-04 John Baldwin <jhb@FreeBSD.org>
6733
6734 * fbsd-nat.c: Include "inf-ptrace.h".
6735 (USE_SIGTRAP_SIGINFO): Conditionally define.
6736 [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
6737 (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
6738 [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
6739 function.
6740 [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
6741 Likewise.
6742 [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
6743 Likewise.
6744 (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
6745 "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
6746 "supports_stopped_by_hw_breakpoint" target methods.
6747
6748 2018-03-04 John Baldwin <jhb@FreeBSD.org>
6749
6750 * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
6751 * fbsd-nat.c (debug_fbsd_nat): New variable.
6752 (show_fbsd_nat_debug): New function.
6753 (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
6754 (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
6755
6756 2018-03-04 John Baldwin <jhb@FreeBSD.org>
6757
6758 * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
6759 * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
6760 prototype.
6761 * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
6762 (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
6763 method.
6764
6765 2018-03-02 Simon Marchi <simon.marchi@polymtl.ca>
6766
6767 * common/gdb_vecs.c (free_char_ptr_vec): Remove.
6768 * common/gdb_vecs.h (free_char_ptr_vec): Remove.
6769
6770 2018-03-02 Simon Marchi <simon.marchi@polymtl.ca>
6771
6772 * charset.c (struct charset_vector): New.
6773 (charsets): Change type to charset_vector.
6774 (find_charset_names): Adjust.
6775 (add_one): Adjust.
6776 (_initialize_charset): Adjust.
6777
6778 2018-03-02 Simon Marchi <simon.marchi@polymtl.ca>
6779
6780 * progspace.h (struct program_space) <deleted_solibs>: Change
6781 type to std::vector<std::string>.
6782 * progspace.c (clear_program_space_solib_cache): Adjust.
6783 * breakpoint.c (print_solib_event): Adjust.
6784 (check_status_catch_solib): Adjust.
6785 * solib.c (update_solib_list): Adjust.
6786 * ui-out.h (class ui_out) <field_string>: New overload.
6787 * ui-out.c (ui_out::field_string): New overload.
6788
6789 2018-03-02 Simon Marchi <simon.marchi@polymtl.ca>
6790
6791 * progspace.h (struct program_space): Add constructor and
6792 destructor, initialize fields.
6793 (add_program_space): Remove.
6794 * progspace.c (add_program_space): Rename to...
6795 (program_space::program_space): ... this.
6796 (release_program_space): Rename to...
6797 (program_space::~program_space): ... this.
6798 (delete_program_space): Use delete to delete program_space.
6799 (initialize_progspace): Use new to allocate program_space.
6800 * inferior.c (add_inferior_with_spaces): Likewise.
6801 (clone_inferior_command): Likewise.
6802 * infrun.c (follow_fork_inferior): Likewise.
6803 (handle_vfork_child_exec_or_exit): Likewise.
6804
6805 2018-03-02 Simon Marchi <simon.marchi@polymtl.ca>
6806
6807 * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
6808 (delim_string_to_char_ptr_vec): Return std::vector of
6809 gdb::unique_xmalloc_ptr.
6810 (dirnames_to_char_ptr_vec_append): Take std::vector of
6811 gdb::unique_xmalloc_ptr.
6812 (dirnames_to_char_ptr_vec): Return std::vector of
6813 gdb::unique_xmalloc_ptr.
6814 * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
6815 Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
6816 (delim_string_to_char_ptr_vec): Return an std::vector of
6817 gdb::unique_xmalloc_ptr, adjust the code.
6818 (dirnames_to_char_ptr_vec_append): Take an std::vector of
6819 gdb::unique_xmalloc_ptr, adjust the code.
6820 (dirnames_to_char_ptr_vec): Return an std::vector of
6821 gdb::unique_xmalloc_ptr, adjust the code.
6822 * auto-load.c (auto_load_safe_path_vec): Change type to
6823 std::vector of gdb::unique_xmalloc_ptr.
6824 (auto_load_expand_dir_vars): Return an std::vector of
6825 gdb::unique_xmalloc_ptr, adjust the code.
6826 (auto_load_safe_path_vec_update): Adjust.
6827 (filename_is_in_auto_load_safe_path_vec): Adjust.
6828 (auto_load_objfile_script_1): Adjust.
6829 * build-id.c (build_id_to_debug_bfd): Adjust.
6830 * linux-thread-db.c (thread_db_load_search): Adjust.
6831 * source.c (add_path): Adjust.
6832 (openp): Adjust.
6833 * symfile.c (find_separate_debug_file): Adjust.
6834 * utils.c (do_free_char_ptr_vec): Remove.
6835 (make_cleanup_free_char_ptr_vec): Remove.
6836
6837 2018-03-01 Sergio Durigan Junior <sergiodj@redhat.com>
6838
6839 PR gdb/22907
6840 * common/pathstuff.c: Conditionally include "<windows.h>".
6841
6842 2018-03-01 Georg Sauthoff <mail@georg.so>
6843
6844 PR gdb/22888
6845 * gcore.in: Quote variables and switch interpreter to bash.
6846
6847 2018-03-01 Tom Tromey <tom@tromey.com>
6848
6849 * dwarf2read.c (alloc_discriminant_info): Fix default_index
6850 assertion. Add assertion for discriminant_index.
6851 (quirk_rust_enum): Use correct base type name in univariant case.
6852
6853 2018-03-01 Simon Marchi <simon.marchi@ericsson.com>
6854
6855 * record.c (get_call_history_modifiers): Return a
6856 record_print_flags.
6857 (cmd_record_call_history): Adjust.
6858 * record-btrace.c (record_btrace_call_history): Adjust.
6859 (record_btrace_call_history_range): Adjust.
6860 (record_btrace_call_history_from): Adjust.
6861 * target-debug.h (target_debug_print_record_print_flags): New.
6862 * target-delegates.c: Re-generate.
6863 * target.c (target_call_history): Change flags type.
6864 (target_call_history_from): Likewise.
6865 (target_call_history_range): Likewise.
6866 * target.h (struct target_ops) <target_call_history>: Likewise.
6867 (target_call_history_from): Likewise.
6868 (target_call_history_range): Likewise.
6869
6870 2018-02-28 Sergio Durigan Junior <sergiodj@redhat.com>
6871 Simon Marchi <simon.marchi@polymtl.ca>
6872
6873 * common/common-utils.c: Include "sys/stat.h".
6874 (is_regular_file): Move here from "source.c"; change return
6875 type to "bool".
6876 * common/common-utils.h (is_regular_file): New prototype.
6877 * common/pathstuff.c (contains_dir_separator): New function.
6878 * common/pathstuff.h (contains_dir_separator): New prototype.
6879 * source.c: Don't include "sys/stat.h".
6880 (is_regular_file): Move to "common/common-utils.c".
6881
6882 2018-02-28 Sergio Durigan Junior <sergiodj@redhat.com>
6883
6884 * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
6885 (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
6886 * auto-load.c: Include "common/pathstuff.h".
6887 * common/common-def.h (current_directory): Move here.
6888 * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
6889 function.
6890 * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
6891 prototype.
6892 * common/pathstuff.c: New file.
6893 * common/pathstuff.h: New file.
6894 * compile/compile.c: Include "common/pathstuff.h".
6895 * defs.h (current_directory): Move to "common/common-defs.h".
6896 * dwarf2read.c: Include "common/pathstuff.h".
6897 * exec.c: Likewise.
6898 * guile/scm-safe-call.c: Likewise.
6899 * linux-thread-db.c: Likewise.
6900 * main.c: Likewise.
6901 * nto-tdep.c: Likewise.
6902 * objfiles.c: Likewise.
6903 * source.c: Likewise.
6904 * symtab.c: Likewise.
6905 * utils.c: Include "common/pathstuff.h".
6906 (gdb_realpath): Move to "common/pathstuff.c".
6907 (gdb_realpath_keepfile): Likewise.
6908 (gdb_abspath): Likewise.
6909 * utils.h (gdb_realpath): Move to "common/pathstuff.h".
6910 (gdb_realpath_keepfile): Likewise.
6911 (gdb_abspath): Likewise.
6912
6913 2018-02-28 John Baldwin <jhb@FreeBSD.org>
6914
6915 * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
6916 wildcard process pid for super_resume for kernels with a
6917 specific bug.
6918
6919 2018-02-27 Phil Muldoon <pmuldoon@redhat.com>
6920
6921 * compile/compile.c (get_args): Add additional comments
6922 explaining function.
6923
6924 2018-02-27 Simon Marchi <simon.marchi@polymtl.ca>
6925 Tom Tromey <tom@tromey.com>
6926
6927 * target.h (memory_write_request_s): Remove typedef. Don't define
6928 VEC.
6929 (target_write_memory_blocks): Change argument to std::vector.
6930 (struct memory_write_request): Add constructor.
6931 * target-memory.c (compare_block_starting_address): Return bool.
6932 Change argument types.
6933 (claim_memory): Change arguments to use std::vector.
6934 (split_regular_and_flash_blocks, blocks_to_erase)
6935 (compute_garbled_blocks): Likewise.
6936 (cleanup_request_data, cleanup_write_requests_vector): Remove.
6937 (target_write_memory_blocks): Change argument to std::vector.
6938 * symfile.c (struct load_section_data): Add constructor and
6939 destructor. Use std::vector for "requests".
6940 (struct load_progress_data): Add initializers.
6941 (load_section_callback): Update. Use "new".
6942 (clear_memory_write_data): Remove.
6943 (generic_load): Update.
6944
6945 2018-02-27 Alan Hayward <alan.hayward@arm.com>
6946
6947 * arch/aarch64.h: Use common/tdesc.h.
6948
6949 2018-02-26 Maciej W. Rozycki <macro@mips.com>
6950
6951 * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
6952 architecture with a 64-bit ABI.
6953
6954 2018-02-26 Maciej W. Rozycki <macro@mips.com>
6955
6956 * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
6957 ahead of target description loading.
6958
6959 2018-02-26 Tom Tromey <tom@tromey.com>
6960
6961 * stack.c (backtrace_command_1): Update.
6962 * python/python-internal.h (gdbpy_apply_frame_filter): Change type
6963 of "flags".
6964 * python/py-framefilter.c (py_print_frame)
6965 (gdbpy_apply_frame_filter): Change type of "flags".
6966 * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
6967 of "flags".
6968 (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
6969 (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
6970 * extension.h (enum frame_filter_flag): Rename from
6971 frame_filter_flags.
6972 (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
6973 (apply_ext_lang_frame_filter): Change type of "flags".
6974 * extension.c (apply_ext_lang_frame_filter): Change type of
6975 "flags".
6976 * extension-priv.h (struct extension_language_ops)
6977 <apply_frame_filter>: Change type of "flags".
6978
6979 2018-02-26 Tom Tromey <tom@tromey.com>
6980
6981 PR python/16497:
6982 * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag. Fix
6983 off-by-one in py_end computation.
6984 * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
6985 PRINT_MORE_FRAMES.
6986 * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
6987 constant.
6988
6989 2018-02-26 Tom Tromey <tom@tromey.com>
6990
6991 * dwarf2read.c (struct variant_field): New.
6992 (struct nextfield) <variant>: New field.
6993 (dwarf2_add_field): Handle DW_TAG_variant_part.
6994 (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
6995 discriminated union.
6996 (read_structure_type): Handle DW_TAG_variant_part.
6997 (handle_struct_member_die): New function, extracted from
6998 process_structure_scope. Handle DW_TAG_variant.
6999 (process_structure_scope): Handle discriminated unions. Call
7000 handle_struct_member_die.
7001
7002 2018-02-26 Tom Tromey <tom@tromey.com>
7003
7004 * rust-lang.h (rust_last_path_segment): Declare.
7005 * rust-lang.c (rust_last_path_segment): Now public. Change
7006 contract.
7007 (struct disr_info): Remove.
7008 (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
7009 (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
7010 (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
7011 (rust_enum_p, rust_enum_variant): New function.
7012 (rust_underscore_fields): Remove "offset" parameter.
7013 (rust_print_enum): New function.
7014 (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
7015 <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
7016 (rust_print_struct_def): Add "for_rust_enum" parameter. Handle
7017 enums.
7018 (rust_internal_print_type): New function, from rust_print_type.
7019 Remove enum code.
7020 (rust_print_type): Call rust_internal_print_type.
7021 (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
7022 Update enum handling.
7023 * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
7024 (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
7025 (rust_union_quirks): New functions.
7026 (process_full_comp_unit, process_full_type_unit): Call
7027 rust_union_quirks.
7028 (process_structure_scope): Update rust_unions if necessary.
7029
7030 2018-02-26 Tom Tromey <tom@tromey.com>
7031
7032 * value.h (value_union_variant): Declare.
7033 * valops.c (value_union_variant): New function.
7034 * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
7035 (struct discriminant_info): New.
7036 (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
7037 enumerator.
7038 (struct main_type) <flag_discriminated_union>: New field.
7039
7040 2018-02-26 Tom Tromey <tom@tromey.com>
7041
7042 * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
7043 unittests/unpack-selftests.c.
7044 * unittests/unpack-selftests.c: New file.
7045 * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
7046
7047 2018-02-26 Yao Qi <yao.qi@linaro.org>
7048
7049 * dwarf2read.c (struct partial_die_info) <read>: New method.
7050 (read_partial_die): Remove the declaration.
7051 (load_partial_dies): Update.
7052 (partial_die_info::partial_die_info):
7053 (read_partial_die): Change it to partial_die_info::read.
7054
7055 2018-02-26 Yao Qi <yao.qi@linaro.org>
7056
7057 * dwarf2read.c (struct partial_die_info) <fixup>: New method.
7058 (fixup_partial_die): Remove declaration.
7059 (scan_partial_symbols): Update.
7060 (partial_die_parent_scope): Likewise.
7061 (partial_die_full_name): Likewise.
7062 (fixup_partial_die): Change it to partial_die_info::fixup.
7063
7064 2018-02-26 Yao Qi <yao.qi@linaro.org>
7065
7066 * dwarf2read.c (read_partial_die): Update the declaration.
7067 (load_partial_dies): Caller update.
7068 (read_partial_die): Remove one argument abbrev_len.
7069
7070 2018-02-26 Yao Qi <yao.qi@linaro.org>
7071
7072 * dwarf2read.c (struct partial_die_info): Add ctor, delete
7073 assignment operator.
7074 (load_partial_dies): Use ctor and copy ctor.
7075 (read_partial_die): Update.
7076 (dwarf2_cu::find_partial_die): Use ctor.
7077
7078 2018-02-26 Yao Qi <yao.qi@linaro.org>
7079
7080 * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
7081 (find_partial_die_in_comp_unit): Change it to
7082 dwarf2_cu::find_partial_die.
7083 (find_partial_die): Update.
7084
7085 2018-02-26 Yao Qi <yao.qi@linaro.org>
7086
7087 * dwarf2read.c (read_partial_die): Remove the code checking abbrev
7088 is NULL.
7089
7090 2018-02-26 Yao Qi <yao.qi@linaro.org>
7091
7092 * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
7093
7094 2018-02-26 Alan Hayward <alan.hayward@arm.com>
7095
7096 * arch/amd64.h: Use common/tdesc.h.
7097 * arch/i386.c: Likewise.
7098 * arch/i386.h: Likewise.
7099 * arch/tic6x.c: Likewise.
7100 * arch/tdesc.h: Move file from here...
7101 * common/tdesc.h: ...to here.
7102 * features/aarch64-core.c: Regenerate.
7103 * features/aarch64-fpu.c: Regenerate.
7104 * features/i386/32bit-avx.c: Regenerate.
7105 * features/i386/32bit-avx512.c: Regenerate.
7106 * features/i386/32bit-core.c: Regenerate.
7107 * features/i386/32bit-linux.c: Regenerate.
7108 * features/i386/32bit-mpx.c: Regenerate.
7109 * features/i386/32bit-pkeys.c: Regenerate.
7110 * features/i386/32bit-sse.c: Regenerate.
7111 * features/i386/64bit-avx.c: Regenerate.
7112 * features/i386/64bit-avx512.c: Regenerate.
7113 * features/i386/64bit-core.c: Regenerate.
7114 * features/i386/64bit-linux.c: Regenerate.
7115 * features/i386/64bit-mpx.c: Regenerate.
7116 * features/i386/64bit-pkeys.c: Regenerate.
7117 * features/i386/64bit-segments.c: Regenerate.
7118 * features/i386/64bit-sse.c: Regenerate.
7119 * features/i386/x32-core.c: Regenerate.
7120 * features/tic6x-c6xp.c: Regenerate.
7121 * features/tic6x-core.c: Regenerate.
7122 * features/tic6x-gp.c: Regenerate.
7123 * target-descriptions.c: Use common/tdesc.h.
7124 * target-descriptions.h: Likewise.
7125
7126 2018-02-24 Tom Tromey <tom@tromey.com>
7127
7128 * linux-thread-db.c (try_thread_db_load_from_pdir_1)
7129 (try_thread_db_load_from_dir, thread_db_load_search): Use
7130 std::string.
7131 (info_auto_load_libthread_db_compare): Return bool. Change
7132 argument types.
7133 (info_auto_load_libthread_db): Use std::vector, std::string.
7134 Remove cleanups.
7135
7136 2018-02-24 Tom Tromey <tom@tromey.com>
7137
7138 * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
7139 std::string.
7140 * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
7141 std::string*.
7142 * gdbarch.c: Rebuild.
7143 * gdbarch.h: Rebuild.
7144 * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
7145 * arch-utils.h (default_fast_tracepoint_valid_at): Update.
7146 * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
7147 std::string*.
7148
7149 2018-02-23 Simon Marchi <simon.marchi@polymtl.ca>
7150
7151 * gdbtypes.h (sect_offset): Change type to uint64_t.
7152 (sect_offset_str): New function.
7153 * dwarf2read.c (create_addrmap_from_aranges): Use
7154 sect_offset_str.
7155 (error_check_comp_unit_head): Likewise.
7156 (create_debug_type_hash_table): Likewise.
7157 (read_cutu_die_from_dwo): Likewise.
7158 (init_cutu_and_read_dies): Likewise.
7159 (init_cutu_and_read_dies_no_follow): Likewise.
7160 (process_psymtab_comp_unit_reader): Likewise.
7161 (partial_die_parent_scope): Likewise.
7162 (peek_die_abbrev): Likewise.
7163 (process_queue): Likewise.
7164 (dwarf2_physname): Likewise.
7165 (read_namespace_alias): Likewise.
7166 (read_import_statement): Likewise.
7167 (create_dwo_cu_reader): Likewise.
7168 (create_cus_hash_table): Likewise.
7169 (lookup_dwo_cutu): Likewise.
7170 (inherit_abstract_dies): Likewise.
7171 (read_func_scope): Likewise.
7172 (read_call_site_scope): Likewise.
7173 (dwarf2_add_member_fn): Likewise.
7174 (read_common_block): Likewise.
7175 (read_module_type): Likewise.
7176 (read_typedef): Likewise.
7177 (read_subrange_type): Likewise.
7178 (load_partial_dies): Likewise.
7179 (read_partial_die): Likewise.
7180 (find_partial_die): Likewise.
7181 (read_str_index): Likewise.
7182 (dwarf2_string_attr): Likewise.
7183 (build_error_marker_type): Likewise.
7184 (lookup_die_type): Likewise.
7185 (dump_die_shallow): Likewise.
7186 (follow_die_ref): Likewise.
7187 (dwarf2_fetch_die_loc_sect_off): Likewise.
7188 (dwarf2_fetch_constant_bytes): Likewise.
7189 (follow_die_sig): Likewise.
7190 (get_signatured_type): Likewise.
7191 (get_DW_AT_signature_type): Likewise.
7192 (dwarf2_find_containing_comp_unit): Likewise.
7193 (set_die_type): Likewise.
7194
7195 2018-02-21 John Baldwin <jhb@FreeBSD.org>
7196
7197 * arch/aarch64.c: Include "common-defs.h".
7198 * arch/amd64.c: Likewise.
7199 * arch/i386.c: Likewise.
7200
7201 2018-02-21 Tom Tromey <tom@tromey.com>
7202
7203 * value.h: (extract_field_op): Update.
7204 * eval.c (extract_field_op): Return a const char *.
7205 * expression.h (parse_expression_for_completion): Update.
7206 * completer.c (complete_expression): Update.
7207 (add_struct_fields): Make fieldname const.
7208 * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
7209 (mark_completion_tag, parse_exp_in_context_1): Update.
7210 (parse_expression_for_completion): Change "name" to
7211 unique_xmalloc_ptr*.
7212
7213 2018-02-21 Tom Tromey <tom@tromey.com>
7214
7215 * infcall.c (call_function_by_hand_dummy): Use std::vector.
7216
7217 2018-02-21 Yao Qi <yao.qi@linaro.org>
7218
7219 * avr-tdep.c (avr_read_pc): Change parameter type to
7220 readable_regcache.
7221 * gdbarch.sh (read_pc): Likewise.
7222 * gdbarch.c: Re-generated.
7223 * gdbarch.h: Re-generated.
7224 * hppa-tdep.c (hppa_read_pc): Change parameter type to
7225 readable_regcache.
7226 * ia64-tdep.c (ia64_read_pc): Likewise.
7227 * mips-tdep.c (mips_read_pc): Likewise.
7228 * spu-tdep.c (spu_read_pc): Likewise.
7229
7230 2018-02-21 Yao Qi <yao.qi@linaro.org>
7231
7232 * Makefile.in (COMMON_SFILES): Add regcache-dump.c
7233 * regcache-dump.c: New file.
7234 * regcache.c: Move register_dump to regcache-dump.c.
7235 (maintenance_print_registers): Likewise.
7236 (maintenance_print_raw_registers): Likewise.
7237 (maintenance_print_cooked_registers): Likewise.
7238 (maintenance_print_register_groups): Likewise.
7239 (maintenance_print_remote_registers): Likewise.
7240 (_initialize_regcache): Likewise.
7241 * regcache.h (register_dump): Moved from regcache.c.
7242
7243 2018-02-21 Yao Qi <yao.qi@linaro.org>
7244
7245 * regcache.c (regcache::regcache): Update.
7246 (regcache::invalidate): Move it to detached_regcache::invalidate.
7247 (get_thread_arch_aspace_regcache): Update.
7248 (regcache::raw_update): Update.
7249 (regcache::cooked_read): Remove some code.
7250 (regcache::cooked_read_value): Likewise.
7251 (regcache::raw_write): Remove assert on m_readonly_p.
7252 (regcache::raw_supply_integer): Move it to
7253 detached_regcache::raw_supply_integer.
7254 (regcache::raw_supply_zeroed): Likewise.
7255 * regcache.h (detached_regcache) <raw_supply_integer>: New
7256 declaration.
7257 <raw_supply_zeroed, invalidate>: Likewise.
7258 (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
7259 <invalidate>: Likewise.
7260 <m_readonly_p>: Removed.
7261
7262 2018-02-21 Yao Qi <yao.qi@linaro.org>
7263
7264 * infcmd.c (get_return_value): Let stop_regs point to
7265 get_current_regcache.
7266 * regcache.c (regcache::regcache): Remove.
7267 (register_dump_reg_buffer): New class.
7268 (regcache_print): Adjust.
7269 * regcache.h (regcache): Remove constructors.
7270
7271 2018-02-21 Yao Qi <yao.qi@linaro.org>
7272
7273 * regcache.c (class register_dump): New class.
7274 (register_dump_regcache, register_dump_none): New class.
7275 (register_dump_remote, register_dump_groups): New class.
7276 (regcache_print): Update.
7277 * regcache.h (regcache_dump_what): Move it to regcache.c.
7278 (regcache) <dump>: Remove.
7279
7280 2018-02-21 Yao Qi <yao.qi@linaro.org>
7281
7282 * jit.c (struct jit_unwind_private) <regcache>: Change its type to
7283 reg_buffer_rw *.
7284 (jit_unwind_reg_set_impl): Call raw_supply.
7285 (jit_frame_sniffer): Use reg_buffer_rw.
7286 * record-full.c (record_full_core_regbuf): Change its type.
7287 (record_full_core_open_1): Use reg_buffer_rw.
7288 (record_full_close): Likewise.
7289 (record_full_core_fetch_registers): Use regcache->raw_supply.
7290 (record_full_core_store_registers): Likewise.
7291 * regcache.c (regcache::get_register_status): Move it to
7292 reg_buffer.
7293 (regcache_raw_set_cached_value): Remove.
7294 (regcache::raw_set_cached_value): Remove.
7295 (regcache::raw_write): Call raw_supply.
7296 (regcache::raw_supply): Move it to reg_buffer_rw.
7297 * regcache.h (regcache_raw_set_cached_value): Remove.
7298 (reg_buffer_rw): New class.
7299
7300 2018-02-21 Yao Qi <yao.qi@linaro.org>
7301
7302 * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
7303 readonly_detached_regcache.
7304 (dummy_frame_prev_register): Use regcache->cooked_read.
7305 * frame.c (frame_save_as_regcache): Change return type.
7306 (frame_pop): Update.
7307 * frame.h (frame_save_as_regcache): Update declaration.
7308 * inferior.h (get_infcall_suspend_state_regcache): Update
7309 declaration.
7310 * infrun.c (infcall_suspend_state) <registers>: use
7311 readonly_detached_regcache.
7312 (save_infcall_suspend_state): Don't use regcache_dup.
7313 (get_infcall_suspend_state_regcache): Change return type.
7314 * linux-fork.c (struct fork_info) <savedregs>: Change to
7315 readonly_detached_regcache.
7316 <pc>: New field.
7317 (fork_save_infrun_state): Don't use regcache_dup.
7318 (info_checkpoints_command): Adjust.
7319 * mi/mi-main.c (register_changed_p): Update declaration.
7320 (mi_cmd_data_list_changed_registers): Use
7321 readonly_detached_regcache.
7322 (register_changed_p): Change parameter type to
7323 readonly_detached_regcache.
7324 * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
7325 readonly_detached_regcache.
7326 (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
7327 * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
7328 New.
7329 (regcache::save): Move it to reg_buffer.
7330 (regcache::restore): Change parameter type.
7331 (regcache_dup): Remove.
7332 * regcache.h (reg_buffer) <save>: New method.
7333 (readonly_detached_regcache): New class.
7334 * spu-tdep.c (spu2ppu_cache) <regcache>: Use
7335 readonly_detached_regcache.
7336 (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
7337
7338 2018-02-21 Yao Qi <yao.qi@linaro.org>
7339
7340 * frame.c (frame_save_as_regcache): Use regcache method save.
7341 (frame_pop): Use regcache method restore.
7342 * infrun.c (restore_infcall_suspend_state): Likewise.
7343 * linux-fork.c (fork_load_infrun_state): Likewise.
7344 * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
7345 save.
7346 * regcache.c (regcache_save): Remove.
7347 (regcache::restore): More asserts.
7348 (regcache_cpy): Remove.
7349 * regcache.h (regcache_save): Remove the declaration.
7350 (regcache::restore): Move from private to public.
7351 Remove the friend declaration of regcache_cpy.
7352 (regcache_cpy): Remove declaration.
7353
7354 2018-02-21 Yao Qi <yao.qi@linaro.org>
7355
7356 * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
7357 parameter type to 'readable_regcache *'.
7358 * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
7359 * arm-tdep.c (arm_neon_quad_read): Likewise.
7360 (arm_pseudo_read): Likewise.
7361 * avr-tdep.c (avr_pseudo_register_read): Likewise.
7362 * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
7363 * frv-tdep.c (frv_pseudo_register_read): Likewise.
7364 * gdbarch.c: Re-generated.
7365 * gdbarch.h: Re-generated.
7366 * gdbarch.sh (pseudo_register_read): Change parameter type to
7367 'readable_regcache *'.
7368 (pseudo_register_read_value): Likewise.
7369 * h8300-tdep.c (pseudo_from_raw_register): Likewise.
7370 (h8300_pseudo_register_read): Likewise.
7371 * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
7372 * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
7373 (i386_pseudo_register_read_into_value): Likewise.
7374 (i386_pseudo_register_read_value): Likewise.
7375 * i386-tdep.h (i386_pseudo_register_read_into_value): Update
7376 declaration.
7377 * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
7378 * m32c-tdep.c (m32c_raw_read): Likewise.
7379 (m32c_read_flg): Likewise.
7380 (m32c_banked_register): Likewise.
7381 (m32c_banked_read): Likewise.
7382 (m32c_sb_read): Likewise.
7383 (m32c_part_read): Likewise.
7384 (m32c_cat_read): Likewise.
7385 (m32c_r3r2r1r0_read): Likewise.
7386 (m32c_pseudo_register_read): Likewise.
7387 * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
7388 * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
7389 (mep_pseudo_cr64_read): Likewise.
7390 (mep_pseudo_register_read): Likewise.
7391 * mips-tdep.c (mips_pseudo_register_read): Likewise.
7392 * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
7393 * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
7394 * regcache.c (regcache::raw_read): Move it to readable_regcache.
7395 (regcache::cooked_read): Likewise.
7396 (regcache::cooked_read_value): Likewise.
7397 (regcache_cooked_read_signed):
7398 (regcache::cooked_read): Likewise.
7399 * regcache.h (readable_regcache): New class.
7400 (regcache): Inherit readable_regcache. Move some methods to
7401 readable_regcache.
7402 * rl78-tdep.c (rl78_pseudo_register_read): Change
7403 parameter type to 'readable_regcache *'.
7404 * rs6000-tdep.c (do_regcache_raw_read): Remove.
7405 (e500_pseudo_register_read): Change parameter type to
7406 'readable_regcache *'.
7407 (dfp_pseudo_register_read): Likewise.
7408 (vsx_pseudo_register_read): Likewise.
7409 (efpr_pseudo_register_read): Likewise.
7410 * s390-tdep.c (s390_pseudo_register_read): Likewise.
7411 * sh-tdep.c (sh_pseudo_register_read): Likewise.
7412 * sh64-tdep.c (pseudo_register_read_portions): Likewise.
7413 (sh64_pseudo_register_read): Likewise.
7414 * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
7415 * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
7416 * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
7417 (spu_pseudo_register_read): Likewise.
7418 * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
7419 (xtensa_pseudo_register_read): Likewise.
7420
7421 2018-02-21 Yao Qi <yao.qi@linaro.org>
7422
7423 * regcache.c (regcache::regcache): Call reg_buffer ctor.
7424 (regcache::arch): Move it to reg_buffer::arch.
7425 (regcache::register_buffer): Likewise.
7426 (regcache::assert_regnum): Likewise.
7427 (regcache::num_raw_registers): Likewise.
7428 * regcache.h (reg_buffer): New class.
7429 (regcache): Inherit reg_buffer.
7430
7431 2018-02-20 Simon Marchi <simon.marchi@ericsson.com>
7432
7433 * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
7434 gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
7435
7436 2018-02-20 Markus Metzger <markus.t.metzger@intel.com>
7437
7438 * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
7439
7440 2018-02-19 Alan Hayward <alan.hayward@arm.com>
7441
7442 * Makefile.in: (COMMON_SFILES): Add common/*.c files.
7443 (SFILES): Remove common/*.c files.
7444 (COMMON_OBS): Remove some *.o files built from common/*.c files.
7445 * common/common.host: Add common reference.
7446 * configure.ac: Likewise.
7447 * configure: Regenerate.
7448
7449 2018-02-16 Yao Qi <yao.qi@linaro.org>
7450
7451 * block.c (block_namespace_info): Inherit allocate_on_obstack.
7452 (block_initialize_namespace): Use new.
7453 * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
7454 (dwarf2_free_objfile): Use delete.
7455 * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
7456 (copy_type_recursive): Use new.
7457 * gdb_obstack.h (allocate_on_obstack): New.
7458
7459 2018-02-15 Yao Qi <yao.qi@linaro.org>
7460
7461 PR gdb/22849
7462 * inferior.c (exit_inferior_1): Reset inf->control.
7463
7464 2018-02-15 Joel Brobecker <brobecker@adacore.com>
7465
7466 * ada-lang.c (ada_to_fixed_value_create): Delete advance
7467 declaration.
7468
7469 2018-02-14 Pedro Alves <palves@redhat.com>
7470
7471 * frame-unwind.c (frame_unwind_try_unwinder): Always call
7472 frame_cleanup_after_sniffer on exception.
7473
7474 2018-02-14 Tom Tromey <tom@tromey.com>
7475
7476 * solist.h (struct target_so_ops) <bfd_open>: Make pathname
7477 const.
7478 (solib_bfd_open): Make pathname const.
7479 * solib.c (solib_bfd_open): Make pathname const.
7480 * solib-spu.c (spu_bfd_fopen): Make name const.
7481 (spu_bfd_open): Make pathname const.
7482 * solib-darwin.c (darwin_bfd_open): Make pathname const.
7483 * solib-aix.c (solib_aix_bfd_open): Make pathname const.
7484
7485 2018-02-14 Tom Tromey <tom@tromey.com>
7486
7487 * symfile.c (symfile_bfd_open): Update.
7488 * source.h (openp, source_full_path_of, find_and_open_source):
7489 Change argument type to unique_xmalloc_ptr.
7490 * source.c (openp): Take a unique_xmalloc_ptr.
7491 (source_full_path_of, find_and_open_source): Likewise.
7492 (open_source_file, symtab_to_fullname): Update.
7493 * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
7494 unique_xmalloc_ptr.
7495 * solib.c (solib_find_1): Use unique_xmalloc_ptr.
7496 (exec_file_find): Update.
7497 * psymtab.c (psymtab_to_fullname): Update.
7498 * nto-tdep.h (nto_find_and_open_solib): Update.
7499 * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
7500 unique_xmalloc_ptr.
7501 * exec.c (exec_file_attach): Update.
7502 * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
7503 * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
7504
7505 2018-02-14 Tom Tromey <tom@tromey.com>
7506
7507 * solib.c: Include source.h.
7508 * nto-tdep.c: Include source.h.
7509 * mi/mi-cmd-env.c: Include source.h.
7510 * infcmd.c: Include source.h.
7511 * exec.c: Include source.h.
7512 * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
7513 (add_path, directory_switch, source_path, init_source_path): Move
7514 declarations...
7515 * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
7516 (add_path, directory_switch, source_path, init_source_path):
7517 ...here.
7518
7519 2018-02-14 Tom Tromey <tom@tromey.com>
7520
7521 * solist.h (exec_file_find, solib_find): Return
7522 unique_xmalloc_ptr.
7523 (solib_bfd_fopen): Take a const char *.
7524 * solib.c (solib_find_1): Return unique_xmalloc_ptr.
7525 (exec_file_find, solib_find): Likewise.
7526 (solib_bfd_fopen): Do not take ownership of "pathname".
7527 (solib_bfd_open): Use unique_xmalloc_ptr.
7528 * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
7529 * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
7530 * infrun.c (follow_exec): Use unique_xmalloc_ptr.
7531 * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
7532
7533 2018-02-14 Joel Brobecker <brobecker@adacore.com>
7534
7535 * ada-lang.c (name_match_type_from_name): Remove reference to
7536 ada_name_for_lookup in function's documentation.
7537 * ada-lang.h (ada_name_for_lookup): Delete declaration.
7538
7539 2018-02-13 Simon Marchi <simon.marchi@polymtl.ca>
7540
7541 * defs.h (enum openp_flags): New enum.
7542 (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
7543 Move to enum openp_flags.
7544 (openp_flags): New enum flags.
7545 (openp): Change parameter type to openp_flags.
7546 * source.c (openp): Change parameter type to openp_flags.
7547 * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
7548 * dwarf2read.c (try_open_dwop_file): Use openp_flags.
7549
7550 2018-02-13 Simon Marchi <simon.marchi@polymtl.ca>
7551
7552 * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
7553 per-command.
7554
7555 2018-02-12 Andrew Burgess <andrew.burgess@embecosm.com>
7556
7557 * dwarf2read.c (dwarf2_release_queue): Delete function, move body
7558 into...
7559 (class dwarf2_queue_guard): ...the destructor of this new class.
7560 (dw2_do_instantiate_symtab): Create instance of the new class
7561 dwarf2_queue_guard, remove cleanup.
7562
7563 2018-02-09 Tom Tromey <tom@tromey.com>
7564
7565 * source.c (find_source_lines): Don't reference past the end of
7566 the vector.
7567
7568 2018-02-09 Markus Metzger <markus.t.metzger@intel.com>
7569
7570 * remote.c (remote_btrace_maybe_reopen): Change error message.
7571 * btrace.c (btrace_enable): Likewise.
7572 (parse_xml_btrace): Likewise.
7573 (parse_xml_btrace_conf): Likewise.
7574
7575 2018-02-09 Markus Metzger <markus.t.metzger@intel.com>
7576
7577 * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
7578 (linux_enable_pt, linux_enable_bts): Call
7579 diagnose_perf_event_open_fail.
7580
7581 2018-02-09 Markus Metzger <markus.t.metzger@intel.com>
7582
7583 * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
7584 Remove parameter and change return type. Update callers. Move it.
7585 (linux_enable_bts, linux_enable_pt): Improve error message.
7586 (linux_enable_pt): Remove zero buffer size check.
7587 (linux_enable_btrace): Improve error messages. Remove NULL return
7588 check.
7589
7590 2018-02-09 Markus Metzger <markus.t.metzger@intel.com>
7591
7592 * btrace.c (btrace_enable): Remove target_supports_btrace call.
7593 * nat/linux-btrace.c (perf_event_pt_event_type): Move.
7594 (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
7595 (linux_supports_pt, linux_supports_btrace): Remove.
7596 (linux_enable_bts): Call cpu_supports_bts.
7597 * nat/linux-btrace.h (linux_supports_btrace): Remove.
7598 * remote.c (remote_supports_btrace): Remove.
7599 (init_remote_ops): Remove remote_supports_btrace.
7600 * target-delegates.c: Regenerated.
7601 * target.c (target_supports_btrace): Remove.
7602 * target.h (target_ops) <to_supports_btrace>: Remove
7603 (target_supports_btrace): Remove.
7604 * x86-linux-nat.c (x86_linux_create_target): Remove
7605 linux_supports_btrace.
7606
7607 2018-02-09 Markus Metzger <markus.t.metzger@intel.com>
7608
7609 * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
7610 btrace failed.
7611 * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
7612 exception and use message in own exception.
7613
7614 2018-02-09 Markus Metzger <markus.t.metzger@intel.com>
7615
7616 * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
7617 (perf_event_pt_event_type): Use gdb_file_up.
7618 (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
7619 scoped_fd, and scoped_mmap.
7620
7621 2018-02-09 Markus Metzger <markus.t.metzger@intel.com>
7622
7623 * common/scoped_mmap.h: New.
7624 * unittests/scoped_mmap-selftest.c: New.
7625 * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
7626 unittests/scoped_mmap-selftest.c.
7627
7628 2018-02-09 Markus Metzger <markus.t.metzger@intel.com>
7629
7630 * common/scoped_fd.h: New.
7631 * unittests/scoped_fd-selftest.c: New.
7632 * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
7633 unittests/scoped_fd-selftest.c.
7634
7635 2018-02-09 Tom Tromey <tom@tromey.com>
7636
7637 * auto-load.c (auto_load_section_scripts): Use
7638 gdb::unique_xmalloc_ptr.
7639
7640 2018-02-09 Tom Tromey <tom@tromey.com>
7641
7642 * auto-load.c (execute_script_contents): Use std::string.
7643
7644 2018-02-09 Joel Brobecker <brobecker@adacore.com>
7645
7646 * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
7647 Python function, rather than a new command.
7648
7649 2018-02-08 Tom Tromey <tom@tromey.com>
7650
7651 * solib.c (solib_find_1): Use std::string.
7652 (solib_bfd_fopen): Use unique_xmalloc_ptr.
7653
7654 2018-02-08 Tom Tromey <tom@tromey.com>
7655
7656 * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
7657
7658 2018-02-08 Tom Tromey <tom@tromey.com>
7659
7660 * source.c (find_source_lines): Use gdb::def_vector.
7661
7662 2018-02-08 Tom Tromey <tom@tromey.com>
7663
7664 * macrocmd.c (struct temporary_macro_definition): New.
7665 (macro_define_command): Use temporary_macro_definition. Remove
7666 cleanups.
7667 (free_macro_definition_ptr): Remove.
7668
7669 2018-02-08 Tom Tromey <tom@tromey.com>
7670
7671 * macroexp.c (maybe_expand): Use std::string.
7672
7673 2018-02-08 Tom Tromey <tom@tromey.com>
7674
7675 * macroexp.c (struct macro_buffer): Add initializers for some
7676 members.
7677 (init_buffer, init_shared_buffer, free_buffer)
7678 (free_buffer_return_text): Remove.
7679 (macro_buffer): New constructors.
7680 (~macro_buffer): New destructor.
7681 (macro_buffer::set_shared): New method.
7682 (macro_buffer::resize_buffer, macro_buffer::appendc)
7683 (macro_buffer::appendmem): Now methods, not free functions.
7684 (set_token, append_tokens_without_splicing, stringify)
7685 (macro_stringify): Update.
7686 (gather_arguments): Change return type. Remove argc_p argument,
7687 add args_ptr argument. Use std::vector.
7688 (substitute_args): Remove argc argument. Accept std::vector.
7689 (expand): Update. Use std::vector.
7690 (scan, macro_expand, macro_expand_next): Update.
7691
7692 2018-02-08 Tom Tromey <tom@tromey.com>
7693
7694 * symtab.c (default_collect_symbol_completion_matches_break_on):
7695 Use unique_xmalloc_ptr.
7696 * macroscope.h: (sal_macro_scope, user_macro_scope)
7697 (default_macro_scope): Return unique_xmalloc_ptr.
7698 * macroscope.c (sal_macro_scope, user_macro_scope)
7699 (default_macro_scope): Return unique_xmalloc_ptr.
7700 * macroexp.h (macro_expand, macro_expand_once): Return
7701 unique_xmalloc_ptr.
7702 * macroexp.c (macro_expand, macro_expand_once): Return
7703 unique_xmalloc_ptr.
7704 * macrocmd.c (macro_expand_command, macro_expand_once_command)
7705 (info_macro_command, info_macros_command): Use
7706 unique_xmalloc_ptr.
7707 * compile/compile-c-support.c (write_macro_definitions): Use
7708 unique_xmalloc_ptr.
7709 * c-exp.y (c_parse): Use unique_xmalloc_ptr.
7710
7711 2018-02-07 Simon Marchi <simon.marchi@ericsson.com>
7712
7713 * value.c (value_static_field): Assign field type instead of
7714 containing type when returning an optimized out value.
7715
7716 2018-02-06 Yao Qi <yao.qi@linaro.org>
7717
7718 * ft32-tdep.c (ft32_read_pc): Remove.
7719 (ft32_write_pc): Remove.
7720 (ft32_gdbarch_init): Update.
7721 * m32r-tdep.c (m32r_read_pc): Remove.
7722 (m32r_gdbarch_init): Update.
7723 * mep-tdep.c (mep_read_pc): Remove.
7724 (mep_gdbarch_init): Update.
7725 * microblaze-tdep.c (microblaze_write_pc): Remove.
7726 (microblaze_gdbarch_init): Update.
7727 * mn10300-tdep.c (mn10300_read_pc): Remove.
7728 (mn10300_write_pc): Remove.
7729 (mn10300_gdbarch_init): Update.
7730 * moxie-tdep.c (moxie_read_pc): Remove.
7731 (moxie_write_pc): Remove.
7732 (moxie_gdbarch_init): Update.
7733
7734 2018-02-06 Yao Qi <yao.qi@linaro.org>
7735
7736 * expprint.c (print_subexp_standard): Handle
7737 OP_F77_UNDETERMINED_ARGLIST.
7738 (dump_subexp_body_standard): Likewise.
7739
7740 2018-02-05 Alan Hayward <alan.hayward@arm.com>
7741
7742 * target-descriptions.c (tdesc_element_visitor) Add empty
7743 implementations.
7744 (tdesc_type): Move make_gdb_type from here.
7745 (tdesc_type_builtin): Likewise.
7746 (tdesc_type_vector): Likewise.
7747 (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
7748 (make_gdb_type_struct): Move from tdesc_type_with_fields.
7749 (make_gdb_type_union): Likewise.
7750 (make_gdb_type_flags): Likewise.
7751 (make_gdb_type_enum): Likewise.
7752 (make_gdb_type): New function.
7753 (tdesc_register_type): Use static make_gdb_type.
7754
7755 2018-02-05 Ruslan Kabatsayev <b7.10110111@gmail.com>
7756
7757 * infcmd.c (default_print_one_register_info): Align natural-format
7758 column values consistently one under another.
7759 (pad_to_column): New function.
7760
7761 2018-02-05 Joel Brobecker <brobecker@adacore.com>
7762
7763 * dwarf2read.c (dwarf2_physname): Move commment.
7764
7765 2018-02-01 Leszek Swirski <leszeks@google.com>
7766
7767 * varobj.c (varobj_formatted_print_options): Allow recursive
7768 pretty printing if pretty printing is enabled.
7769
7770 2018-02-01 Leszek Swirski <leszeks@google.com>
7771
7772 * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
7773 names after a structop as a filename.
7774
7775 2018-02-01 Yao Qi <yao.qi@linaro.org>
7776
7777 * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
7778 (arm_record_coproc_data_proc): Likewise.
7779
7780 2018-02-01 Yao Qi <yao.qi@linaro.org>
7781
7782 * arm-tdep.c (arm_record_extension_space): Change ret to signed.
7783
7784 2018-01-31 Nikola Prica <nikola.prica@rt-rk.com>
7785
7786 * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
7787 assign shifted lr_reg to fdata->lr_register when lr_reg is set.
7788
7789 2018-01-31 Pedro Alves <palves@redhat.com>
7790
7791 * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
7792 * inflow.c (child_terminal_save_inferior): Wrap reference to
7793 tcgetpgrp in HAVE_TERMIOS_H.
7794 (child_interrupt, child_pass_ctrlc): Wrap references to signal in
7795 _WIN32.
7796 * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
7797 always iterate over all inferiors.
7798 (gdbsim_cntrl_c): Adjust.
7799 * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
7800
7801 2018-01-31 Joel Brobecker <brobecker@adacore.com>
7802
7803 * gdbtypes.c (lookup_array_range_type): Make sure the array's
7804 index type is objfile-owned if the element type is as well.
7805
7806 2018-01-31 Joel Brobecker <brobecker@adacore.com>
7807
7808 GDB 8.1 released.
7809
7810 2018-01-30 Philipp Rudo <prudo@linux.vnet.ibm.com>
7811
7812 * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
7813 "features/s390x-linux64.c".
7814 (_initialize_s390_linux_tdep): Remove initialization of tdescs
7815 s390_linux32 and s390x_linux64.
7816 (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
7817 default tdesc.
7818 * s390-tdep.c: Include "features/s390-linux32.c" and
7819 "features/s390x-linux64.c".
7820 (s390_tdesc_valid): Add check for tdesc_has_registers.
7821 (s390_gdbarch_init): Make sure there is always a valid tdesc.
7822 (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
7823 tdesc_s390x_linux64.
7824 * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
7825 tdesc_s390x_linux64 to...
7826 * s390-tdep.h: ...here.
7827
7828 2018-01-30 Pedro Alves <palves@redhat.com>
7829
7830 PR gdb/13211
7831 * config.in, configure: Regenerate.
7832 * configure.ac: Check for getpgid.
7833 * go32-nat.c (go32_pass_ctrlc): New.
7834 (go32_target): Install it.
7835 * inf-child.c (inf_child_target): Install
7836 child_terminal_save_inferior, child_pass_ctrlc and
7837 child_interrupt.
7838 * inf-ptrace.c (inf_ptrace_interrupt): Delete.
7839 (inf_ptrace_target): No longer install it.
7840 * infcmd.c (interrupt_target_1): Adjust.
7841 * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
7842 (child_interrupt): Declare.
7843 (inferior::terminal_state): New.
7844 * inflow.c (struct terminal_info): Update comments.
7845 (inferior_process_group): Delete.
7846 (terminal_is_ours): Delete.
7847 (gdb_tty_state): New.
7848 (child_terminal_init): Adjust.
7849 (is_gdb_terminal, sharing_input_terminal_1)
7850 (sharing_input_terminal): New functions.
7851 (child_terminal_inferior): Adjust. Use sharing_input_terminal.
7852 Set the process's actual process group in the foreground if
7853 possible. Handle is_ours_for_output/is_ours distinction. Don't
7854 mark terminal as the inferior's if not sharing GDB's terminal.
7855 Don't check attach_flag.
7856 (child_terminal_ours_for_output, child_terminal_ours): Adjust to
7857 pass down a target_terminal_state.
7858 (child_terminal_save_inferior): New, factored out from ...
7859 (child_terminal_ours_1): ... this. Handle
7860 target_terminal_state::is_ours_for_output.
7861 (child_interrupt, child_pass_ctrlc): New.
7862 (inflow_inferior_exit): Clear the inferior's terminal_state.
7863 (copy_terminal_info): Copy the inferior's terminal state.
7864 (_initialize_inflow): Remove reference to terminal_is_ours.
7865 * inflow.h (inferior_process_group): Delete.
7866 * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
7867 * procfs.c (procfs_target): Don't install procfs_interrupt.
7868 (procfs_interrupt): Delete.
7869 * remote.c (remote_serial_quit_handler): Adjust.
7870 (remote_interrupt): Remove ptid parameter. Adjust.
7871 * target-delegates.c: Regenerate.
7872 * target.c: Include "terminal.h".
7873 (target_terminal::terminal_state): Rename to ...
7874 (target_terminal::m_terminal_state): ... this.
7875 (target_terminal::init): Adjust.
7876 (target_terminal::inferior): Adjust to per-inferior
7877 terminal_state.
7878 (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
7879 (target_terminal::ours, target_terminal::ours_for_output): Use
7880 target_terminal_is_ours_kind.
7881 (target_interrupt): Remove ptid parameter. Adjust.
7882 (default_target_pass_ctrlc): Adjust.
7883 * target.h (target_ops::to_terminal_save_inferior): New field.
7884 (target_ops::to_interrupt): Remove ptid_t parameter.
7885 (target_interrupt): Remove ptid_t parameter. Update comment.
7886 (target_pass_ctrlc): Update comment.
7887 * target/target.h (target_terminal_state): New scoped enum,
7888 factored out of ...
7889 (target_terminal::terminal_state): ... here.
7890 (target_terminal::inferior): Update comments.
7891 (target_terminal::restore_inferior): New.
7892 (target_terminal::is_inferior, target_terminal::is_ours)
7893 (target_terminal::is_ours_for_output): Adjust.
7894 (target_terminal::scoped_restore_terminal_state): Adjust to
7895 rename, and call restore_inferior() instead of inferior().
7896 (target_terminal::scoped_restore_terminal_state::m_state): Change
7897 type.
7898 (target_terminal::terminal_state): Rename to ...
7899 (target_terminal::m_terminal_state): ... this and change type.
7900
7901 2018-01-30 Pedro Alves <palves@redhat.com>
7902
7903 * linux-nat.c (wait_for_signal): New function.
7904 (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
7905 directly.
7906 (async_terminal_is_ours)
7907 (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
7908 (linux_nat_add_target): Don't override
7909 to_terminal_inferior/to_terminal_ours.
7910
7911 2018-01-29 Sergio Durigan Junior <sergiodj@redhat.com>
7912
7913 * remote.c (remote_follow_fork): Don't call "detach_inferior".
7914
7915 2018-01-28 Simon Marchi <simon.marchi@ericsson.com>
7916
7917 * dwarf2read.c (free_dwo_files): Add forward-declaration.
7918 (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
7919 dwarf2_per_objfile_free here.
7920 (dwarf2_per_objfile_free): Remove.
7921 (_initialize_dwarf2_read): Don't register
7922 dwarf2_per_objfile_free as a registry cleanup.
7923
7924 2018-01-27 Eli Zaretskii <eliz@gnu.org>
7925
7926 Avoid compilation errors in MinGW native builds
7927
7928 The error is triggered by including python-internal.h, and the
7929 error message is:
7930
7931 In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
7932 from build-gnulib/import/math.h:27,
7933 from d:/usr/Python26/include/pyport.h:235,
7934 from d:/usr/Python26/include/Python.h:58,
7935 from python/python-internal.h:94,
7936 from python/py-arch.c:24:
7937 d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
7938 using ::hypot;
7939 ^~~~~
7940
7941 This happens because Python headers define 'hypot' to expand t
7942 '_hypot' in the Windows builds.
7943 * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
7944 'hypoth'. This avoids a compilation error.
7945
7946 2018-01-26 Alan Hayward <alan.hayward@arm.com>
7947
7948 * MAINTAINERS (Write After Approval): Fix ordering.
7949
7950 2018-01-26 Alan Hayward <alan.hayward@arm.com>
7951
7952 * MAINTAINERS (Write After Approval): Add Alan Hayward.
7953
7954 2018-01-26 Alan Modra <amodra@gmail.com>
7955
7956 * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
7957 (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
7958 Remove nop. Make const. Comment.
7959 (powerpc32_plt_stub_so_2): New.
7960 (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
7961 Correct count. Update uses.
7962 (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
7963 Move common code reading PLT entry word. Correct
7964 powerpc32_plt_stub PLT address calculation.
7965 * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
7966 (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
7967 (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
7968 (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
7969 (ppc64_standard_linkage8): Likewise.
7970 * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
7971 Correct insns description.
7972 * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
7973
7974 2018-01-24 Pedro Alves <palves@redhat.com>
7975
7976 GCC PR libstdc++/83906
7977 * gdbtypes.c (operator==(const dynamic_prop &,
7978 const dynamic_prop &)): New.
7979 (operator==(const range_bounds &, const range_bounds &)): New.
7980 (check_types_equal): Use them instead of memcmp.
7981 * gdbtypes.h (operator==(const dynamic_prop &,
7982 const dynamic_prop &)): Declare.
7983 (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
7984 (operator==(const range_bounds &, const range_bounds &)): Declare.
7985 (operator!=(const range_bounds &, const range_bounds &)): Declare.
7986
7987 2018-01-23 Philipp Rudo <prudo@linux.vnet.ibm.com>
7988
7989 * s390-linux-tdep.c (s390_record_address_mask)
7990 (s390_record_calc_disp_common, s390_record_calc_disp)
7991 (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
7992 (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
7993 (s390_process_record): Move to s390-tdep.c.
7994 (s390_linux_init_abi_any): Adjust.
7995 * s390-tdep.c (s390_record_address_mask)
7996 (s390_record_calc_disp_common, s390_record_calc_disp)
7997 (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
7998 (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
7999 (s390_process_record): Moved from s390-linux-tdep.c
8000 (s390_gdbarch_init): Adjust.
8001
8002 2018-01-23 Philipp Rudo <prudo@linux.vnet.ibm.com>
8003
8004 * s390-linux-nat.c (s390-tdep.h): New include.
8005 * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
8006 (HFILES_NO_SRCDIR): Add s390-tdep.h.
8007 (ALLDEPFILES): Add s390-tdep.c.
8008 * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
8009 * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
8010 * s390-tdep.h: ...this. New file.
8011 * s390-linux-tdep.c (s390-tdep.h): New include.
8012 (_initialize_s390_tdep): Rename to...
8013 (_initialize_s390_linux_tdep): ...this and adjust.
8014 (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
8015 (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
8016 s390-tdep.h.
8017 (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
8018 (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
8019 (s390_is_partial_instruction, s390_software_single_step)
8020 (is_non_branch_ril, s390_displaced_step_copy_insn)
8021 (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
8022 (s390_prologue_data, s390_addr, s390_store, s390_load)
8023 (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
8024 (s390_register_call_saved, s390_guess_tracepoint_registers)
8025 (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
8026 (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
8027 (s390_pseudo_register_name, s390_pseudo_register_type)
8028 (s390_pseudo_register_read, s390_pseudo_register_write)
8029 (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
8030 (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
8031 (s390_addr_bits_remove, s390_address_class_type_flags)
8032 (s390_address_class_type_flags_to_name)
8033 (s390_address_class_name_to_type_flags, s390_effective_inner_type)
8034 (s390_function_arg_float, s390_function_arg_vector)
8035 (is_power_of_two, s390_function_arg_integer, s390_arg_state)
8036 (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
8037 (s390_frame_align, s390_register_return_value, s390_return_value)
8038 (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
8039 (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
8040 (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
8041 (s390_trad_frame_prev_register, s390_unwind_cache)
8042 (s390_prologue_frame_unwind_cache)
8043 (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
8044 (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
8045 (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
8046 (s390_stub_frame_this_id, s390_stub_frame_prev_register)
8047 (s390_stub_frame_sniffer, s390_stub_frame_unwind)
8048 (s390_frame_base_address, s390_local_base_address)
8049 (s390_frame_base, s390_gcc_target_options)
8050 (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
8051 (s390_validate_reg_range, s390_tdesc_valid)
8052 (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
8053 * s390-tdep.c: ...this. New file.
8054
8055 2018-01-23 Philipp Rudo <prudo@linux.vnet.ibm.com>
8056
8057 * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
8058 (s390_process_record, s390_gdbarch_tdep_alloc)
8059 (s390_linux_init_abi_any): Use/set new hook.
8060
8061 2018-01-23 Philipp Rudo <prudo@linux.vnet.ibm.com>
8062
8063 * s390-linux-tdep.c (osabi.h): New include.
8064 (s390_linux_init_abi_31, s390_linux_init_abi_64)
8065 (s390_linux_init_abi_any): New functions.
8066 (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
8067
8068 2018-01-23 Philipp Rudo <prudo@linux.vnet.ibm.com>
8069
8070 * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
8071 tdesc_has_registers check
8072
8073 2018-01-23 Philipp Rudo <prudo@linux.vnet.ibm.com>
8074
8075 * s390-linux-tdep.c (s390_tdesc_valid): New function.
8076 (s390_validate_reg_range): New macro.
8077 (s390_gdbarch_init): Adjust.
8078
8079 2018-01-23 Philipp Rudo <prudo@linux.vnet.ibm.com>
8080
8081 * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
8082 (s390_gdbarch_tdep_alloc): Adjust.
8083 (s390_gdbarch_init): Adjust.
8084
8085 2018-01-23 Philipp Rudo <prudo@linux.vnet.ibm.com>
8086
8087 * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
8088 <have_tdb>: Change type to bool.
8089 (s390_gdbarch_tdep_alloc): Adjust.
8090 (s390_gdbarch_init): Adjust.
8091
8092 2018-01-23 Philipp Rudo <prudo@linux.vnet.ibm.com>
8093
8094 * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
8095 (gdbarch_tdep) <have_upper, have_vx>: New fields.
8096 (s390_gdbarch_tdep_alloc): New function.
8097 (s390_gdbarch_init): Allocate tdep at start and use its fields
8098 instead of separate variables.
8099
8100 2018-01-23 Philipp Rudo <prudo@linux.vnet.ibm.com>
8101
8102 * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
8103 when looking for cached gdbarch and add comment for remaining.
8104
8105 2018-01-22 Pedro Alves <palves@redhat.com>
8106 Sergio Durigan Junior <sergiodj@redhat.com>
8107
8108 * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
8109 case.
8110
8111 2018-01-22 Maciej W. Rozycki <macro@mips.com>
8112
8113 * MAINTAINERS: Update my company e-mail address.
8114
8115 2018-01-22 Yao Qi <yao.qi@linaro.org>
8116
8117 * regcache.c (cooked_write_test): New function.
8118 (_initialize_regcache): Register the test.
8119
8120 2018-01-22 Yao Qi <yao.qi@linaro.org>
8121
8122 * ia64-tdep.c (ia64_pseudo_register_read): Call
8123 regcache->cooked_read instead of regcache_cooked_read_unsigned.
8124 * m32c-tdep.c (m32c_cat_read): Likewise.
8125 (m32c_r3r2r1r0_read): Likewise.
8126 * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
8127 * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
8128
8129 2018-01-22 Yao Qi <yao.qi@linaro.org>
8130
8131 * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
8132 method raw_read instead of regcache_raw_read.
8133 * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
8134 * arm-tdep.c (arm_neon_quad_read): Likewise.
8135 * avr-tdep.c (avr_pseudo_register_read): Likewise.
8136 * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
8137 * frv-tdep.c (frv_pseudo_register_read): Likewise.
8138 * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
8139 * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
8140 (i386_pseudo_register_read_into_value): Likewise.
8141 * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
8142 * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
8143 * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
8144 * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
8145 * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
8146 * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
8147 * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
8148 * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
8149 * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
8150
8151 2018-01-22 Yao Qi <yao.qi@linaro.org>
8152
8153 * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
8154 * configure.tgt: Remove target mt.
8155 * mt-tdep.c: Remove.
8156 * regcache.c (cooked_read_test): Remove the check for mt.
8157
8158 2018-01-22 Yao Qi <yao.qi@linaro.org>
8159
8160 * jit.c (jit_frame_prev_register): Call regcache::cooked_read
8161 instead of gdbarch_pseudo_register_read_value.
8162
8163 2018-01-22 Joel Brobecker <brobecker@adacore.com>
8164
8165 * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
8166 language is Ada.
8167
8168 2018-01-22 Joel Brobecker <brobecker@adacore.com>
8169
8170 * linespec.c (create_sals_line_offset): Remove code that preserved
8171 the symtab_and_line's line number.
8172
8173 2018-01-21 Andrew Burgess <andrew.burgess@embecosm.com>
8174
8175 * varobj.c (varobj_create): Don't set valid_block when creating a
8176 floating varobj.
8177
8178 2018-01-21 Andrew Burgess <andrew.burgess@embecosm.com>
8179
8180 * varobj.c (varobj_create): Remove out of date comment.
8181
8182 2018-01-21 Andrew Burgess <andrew.burgess@embecosm.com>
8183
8184 PR mi/20395
8185 * ada-exp.y (write_var_from_sym): Pass extra parameter when
8186 updating innermost block.
8187 * parse.c (innermost_block_tracker::update): Take extra type
8188 parameter, and check types match before updating innermost block.
8189 (write_dollar_variable): Update innermost block for registers.
8190 * parser-defs.h (enum innermost_block_tracker_type): New enum.
8191 (innermost_block_tracker::innermost_block_tracker): Initialise
8192 m_types member.
8193 (innermost_block_tracker::reset): Take type parameter.
8194 (innermost_block_tracker::update): Take type parameter, and pass
8195 type through as needed.
8196 (innermost_block_tracker::m_types): New member.
8197 * varobj.c (varobj_create): Pass type when reseting innermost
8198 block.
8199
8200 2018-01-21 Andrew Burgess <andrew.burgess@embecosm.com>
8201
8202 * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
8203 * ada-lang.c (resolve_subexp): Likewise.
8204 * breakpoint.c (set_breakpoint_condition) Likewise.
8205 (watch_command_1) Likewise.
8206 * c-exp.y (variable): Likewise.
8207 * d-exp.y (PrimaryExpression): Likewise.
8208 * f-exp.y (variable): Likewise.
8209 * go-exp.y (variable): Likewise.
8210 * m2-exp.y (variable): Likewise.
8211 * objfiles.c (objfile::~objfile): Likewise.
8212 * p-exp.y (variable): Likewise.
8213 * parse.c (innermost_block): Change type.
8214 * parser-defs.h (class innermost_block_tracker): New.
8215 (innermost_block): Change to innermost_block_tracker.
8216 * printcmd.c (display_command): Switch to innermost_block API.
8217 (do_one_display): Likewise.
8218 * rust-exp.y (do_one_display): Likewise.
8219 * symfile.c (clear_symtab_users): Likewise.
8220 * varobj.c (varobj_create): Switch to innermost_block API, replace
8221 use of innermost_block with block stored on varobj object.
8222
8223 2018-01-21 Andrew Burgess <andrew.burgess@embecosm.com>
8224
8225 * expression.h (innermost_block): Remove declaration.
8226 * varobj.c: Add 'parser-defs.h' include.
8227
8228 2018-01-19 Tom Tromey <tom@tromey.com>
8229
8230 * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
8231 symbols in the static and global blocks.
8232
8233 2018-01-19 James Clarke <jrtc27@jrtc27.com>
8234
8235 * nat/linux-ptrace.c: Remove unnecessary reinclusion of
8236 gdb_ptrace.h, and move including gdb_wait.h ...
8237 * nat/linux-ptrace.h: ... to here.
8238
8239 2018-01-19 Simon Marchi <simon.marchi@ericsson.com>
8240
8241 * inf-ptrace.c (inf_ptrace_detach): Adjust call to
8242 inf_ptrace_detach_success.
8243 (inf_ptrace_detach_success): Add inferior parameter, use it
8244 instead of inferior_ptid, pass it to detach_inferior.
8245 * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
8246 parameter.
8247 * inferior.c (detach_inferior): Add overload that takes an
8248 inferior object.
8249 * inferior.h (detach_inferior): Likewise.
8250 * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
8251 use inferior_ptid, adjust call to inf_ptrace_detach_success.
8252 * linux-thread-db.c (thread_db_detach): Use inf parameter.
8253
8254 2018-01-19 Simon Marchi <simon.marchi@ericsson.com>
8255
8256 * target.h (struct target_ops) <to_detach>: Add inferior
8257 parameter.
8258 (target_detach): Likewise.
8259 * target.c (dispose_inferior): Pass inferior down.
8260 (target_detach): Pass inferior down. Assert that it is equal to
8261 the current inferior.
8262 * aix-thread.c (aix_thread_detach): Pass inferior down.
8263 * corefile.c (core_file_command): Pass current_inferior() down.
8264 * corelow.c (core_detach): Add inferior parameter.
8265 * darwin-nat.c (darwin_detach): Likewise.
8266 * gnu-nat.c (gnu_detach): Likewise.
8267 * inf-ptrace.c (inf_ptrace_detach): Likewise.
8268 * infcmd.c (detach_command): Pass current_inferior() down to
8269 target_detach.
8270 * infrun.c (follow_fork_inferior): Pass parent_inf to
8271 target_detach.
8272 (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
8273 target_detach.
8274 * linux-nat.c (linux_nat_detach): Add inferior parameter.
8275 * linux-thread-db.c (thread_db_detach): Likewise.
8276 * nto-procfs.c (procfs_detach): Likewise.
8277 * procfs.c (procfs_detach): Likewise.
8278 * record.c (record_detach): Likewise.
8279 * record.h (struct inferior): Forward-declare.
8280 (record_detach): Add inferior parameter.
8281 * remote-sim.c (gdbsim_detach): Likewise.
8282 * remote.c (remote_detach_1): Likewise.
8283 (remote_detach): Likewise.
8284 (extended_remote_detach): Likewise.
8285 * sol-thread.c (sol_thread_detach): Likewise.
8286 * target-debug.h (target_debug_print_inferior_p): New macro.
8287 * target-delegates.c: Re-generate.
8288 * top.c (kill_or_detach): Pass inferior down to target_detach.
8289 * windows-nat.c (windows_detach): Add inferior parameter.
8290
8291 2018-01-19 Simon Marchi <simon.marchi@ericsson.com>
8292
8293 * target.h (struct target_ops) <to_detach>: Remove args
8294 parameter.
8295 (target_detach): Likewise.
8296 * target.c (dispose_inferior): Adjust.
8297 (target_detach): Remove args parameter, adjust.
8298 * aix-thread.c (aix_thread_detach): Adjust.
8299 * corefile.c (core_file_command): Adjust.
8300 * corelow.c (core_detach): Adjust.
8301 * darwin-nat.c (darwin_detach): Adjust.
8302 * gnu-nat.c (gnu_detach): Adjust.
8303 * inf-ptrace.c (inf_ptrace_detach): Adjust.
8304 * infcmd.c (detach_command): Adjust
8305 * infrun.c (follow_fork_inferior): Adjust.
8306 (handle_vfork_child_exec_or_exit): Adjust.
8307 * linux-fork.c (linux_fork_detach): Remove args parameter.
8308 * linux-fork.h (linux_fork_detach): Likewise.
8309 * linux-nat.c (linux_nat_detach): Likewise, and adjust.
8310 * linux-thread-db.c (thread_db_detach): Likewise.
8311 * nto-procfs.c (procfs_detach): Likewise.
8312 * procfs.c (procfs_detach): Likewise.
8313 (do_detach): Remove signo parameter.
8314 * record.c (record_detach): Remove args parameter.
8315 * record.h (record_detach): Likewise.
8316 * remote-sim.c (gdbsim_detach): Likewise.
8317 * remote.c (remote_detach_1): Likewise.
8318 (remote_detach): Likewise.
8319 (extended_remote_detach): Likewise.
8320 * sol-thread.c (sol_thread_detach): Likewise.
8321 * target-delegates.c: Re-generate.
8322 * top.c (struct qt_args) <args>: Remove field.
8323 (kill_or_detach): Don't pass args.
8324 (quit_force): Don't set args.
8325 * windows-nat.c (windows_detach): Remove args parameter.
8326
8327 2018-01-19 Yao Qi <yao.qi@linaro.org>
8328
8329 * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
8330 (arm_linux_init_abi): Install it.
8331
8332 2018-01-19 Yao Qi <yao.qi@linaro.org>
8333
8334 * osabi.c (gdb_osabi_names): Extend the regexp for
8335 arm-linux-gnueabihf.
8336
8337 2018-01-18 Yao Qi <yao.qi@linaro.org>
8338
8339 * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
8340 m_abbrevs.
8341 (abbrev_table::add_abbrev): Update.
8342 (abbrev_table::lookup_abbrev): Update.
8343
8344 2018-01-18 Yao Qi <yao.qi@linaro.org>
8345
8346 * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
8347
8348 2018-01-17 Sergio Durigan Junior <sergiodj@redhat.com>
8349
8350 * compile/compile.c (compile_to_object): Convert "triplet_rx"
8351 to "std::string".
8352
8353 2018-01-17 Tom Tromey <tom@tromey.com>
8354
8355 * dwarf2read.c (symbolp): Remove typedef. Don't instantiate VEC.
8356
8357 2018-01-17 Tom Tromey <tom@tromey.com>
8358
8359 * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
8360 * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
8361 (create_array_type_with_stride): Update.
8362 * dwarf2read.c (set_die_type): Update.
8363
8364 2018-01-17 Tom Tromey <tom@tromey.com>
8365
8366 * dwarf2read.c (delayed_method_info): Remove typedef.
8367 (dwarf2_cu::method_info): Now a std::vector.
8368 (add_to_method_list): Update.
8369 (free_delayed_list): Remove.
8370 (compute_delayed_physnames): Update.
8371 (process_full_comp_unit, process_full_type_unit): Clear the method
8372 list. Remove cleanups.
8373 (psymtab_include_file_name): Add name_holder parameter. Use
8374 unique_xmalloc_ptr.
8375 (dwarf_decode_lines): Update.
8376
8377 2018-01-17 Tom Tromey <tom@tromey.com>
8378 Simon Marchi <simon.marchi@ericsson.com>
8379
8380 * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
8381 (dwarf2_per_objfile::free_cached_comp_units)
8382 (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
8383 (init_cutu_and_read_dies_no_follow): Update.
8384 (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
8385 (dwarf2_cu::~dwarf2_cu): New.
8386 (free_heap_comp_unit, free_stack_comp_unit): Remove.
8387 (age_cached_comp_units, free_one_cached_comp_unit): Update.
8388
8389 2018-01-17 Tom Tromey <tom@tromey.com>
8390 Simon Marchi <simon.marchi@ericsson.com>
8391
8392 * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
8393 (struct die_reader_specs) <abbrev_table>: New member.
8394 (struct abbrev_table): Add constructor.
8395 <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
8396 <abbrev_obstack>: Now an auto_obstack.
8397 (abbrev_table_up): New typedef.
8398 (init_cu_die_reader): Add abbrev_table parameter.
8399 (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
8400 Add result_dwo_abbrev_table.
8401 (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
8402 (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
8403 Update.
8404 (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
8405 parameter.
8406 (skip_children): Update.
8407 (abbrev_table::alloc_abbrev): Rename from
8408 abbrev_table_alloc_abbrev.
8409 (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
8410 (abbrev_table::lookup_abbrev): Rename from
8411 abbrev_table_lookup_abbrev.
8412 (abbrev_table_read_table): Return abbrev_table_up.
8413 (abbrev_table_free, abbrev_table_free_cleanup)
8414 (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
8415 (load_partial_dies): Update.
8416
8417 2018-01-17 Tom Tromey <tom@tromey.com>
8418
8419 * dwarf2read.c (dwarf2_compute_name): Update comment.
8420 (read_func_scope, read_variable): Update.
8421 (new_symbol): Remove.
8422 (new_symbol_full): Rename to new_symbol.
8423
8424 2018-01-17 Mike Gulick <mgulick@mathworks.com>
8425
8426 PR gdb/16577
8427 * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
8428 a warning instead of throwing an error, set section size to 0 and return
8429 NULL.
8430 * gdb_bfd.h (gdb_bfd_map_section): Update description.
8431
8432 2018-01-17 Simon Marchi <simon.marchi@ericsson.com>
8433
8434 * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
8435 std::string.
8436 (linux_ptrace_attach_fail_reason_string): Likewise.
8437 * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
8438 Likewise.
8439 (linux_ptrace_attach_fail_reason_string): Likewise.
8440 * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
8441
8442 2018-01-17 Simon Marchi <simon.marchi@ericsson.com>
8443
8444 * linux-nat.c (linux_nat_attach): Remove xstrdup.
8445
8446 2018-01-17 Eldar Abusalimov <eldar.abusalimov@jetbrains.com>
8447
8448 PR gdb/21559
8449 * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
8450 checking for fs_base/gs_base fields in struct user_regs_struct.
8451 * configure: Regenerate.
8452
8453 2018-01-17 Yao Qi <yao.qi@linaro.org>
8454
8455 * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
8456 function.
8457 (aarch64_linux_init_abi): Install it to gdbarch hook
8458 gcc_target_options.
8459
8460 2018-01-15 Pedro Alves <palves@redhat.com>
8461
8462 * common/signals-state-save-restore.c
8463 (save_original_signals_state): Fix typos.
8464
8465 2017-01-12 Tom Tromey <tom@tromey.com>
8466 Sergio Durigan Junior <sergiodj@redhat.com>
8467
8468 * Makefile.in (install-only): Install gdb-add-index.
8469
8470 2018-01-12 John Baldwin <jhb@FreeBSD.org>
8471
8472 * fbsd-tdep.c (KVE_PROTECTION): Correct value.
8473
8474 2018-01-12 Andreas Arnez <arnez@linux.vnet.ibm.com>
8475
8476 * infrun.c (keep_going_pass_signal): Clear step-over info when
8477 insert_breakpoints fails.
8478
8479 2018-01-11 Pedro Alves <palves@redhat.com>
8480
8481 PR gdb/22583
8482 * infrun.c (resume): Rename to ...
8483 (resume_1): ... this.
8484 (resume): Reimplement as wrapper around resume_1.
8485
8486 2018-01-11 Pedro Alves <palves@redhat.com>
8487
8488 PR remote/22597
8489 * remote.c (remote_parse_stop_reply): Default to the last-set
8490 general thread instead of to 'magic_null_ptid'.
8491
8492 2018-01-10 Pedro Alves <palves@redhat.com>
8493
8494 * language.h (language_get_symbol_name_matcher): Rename ...
8495 (get_symbol_name_matcher): ... this.
8496 * language.c (language_get_symbol_name_matcher): Ditto.
8497 * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
8498 callers adjusted.
8499
8500 2018-01-10 Pedro Alves <palves@redhat.com>
8501
8502 PR gdb/22670
8503 * dwarf2read.c
8504 (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
8505 Adjust to use language_get_symbol_name_matcher instead of
8506 language_defn::la_get_symbol_name_matcher.
8507 * language.c (language_get_symbol_name_matcher): If in Ada mode
8508 and the lookup name is a verbatim match, return Ada's matcher.
8509 * language.h (language_get_symbol_name_matcher): Adjust comment.
8510 (ada_lookup_name_info::verbatim_p):: New method.
8511
8512 2018-01-10 Pedro Alves <palves@redhat.com>
8513
8514 PR gdb/22670
8515 * ada-lang.c (ada_collect_symbol_completion_matches): If the
8516 minsym's language is language_auto or language_cplus, pass down
8517 language_ada instead.
8518 * symtab.c (compare_symbol_name): Don't frob symbol language here.
8519
8520 2018-01-10 Pedro Alves <palves@redhat.com>
8521
8522 PR gdb/22670
8523 * minsyms.c (linkage_name_str): New function.
8524 (iterate_over_minimal_symbols): Use it.
8525
8526 2018-01-09 John Baldwin <jhb@FreeBSD.org>
8527
8528 * NEWS: Document that 'info proc' now works on FreeBSD.
8529
8530 2018-01-09 John Baldwin <jhb@FreeBSD.org>
8531
8532 * configure.ac: Check for kinfo_getfile in libutil.
8533 * configure: Regenerate.
8534 * config.in: Regenerate.
8535 * fbsd-nat.c: Include "fbsd-tdep.h".
8536 (fbsd_fetch_cmdline): New.
8537 (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
8538 rather than calling error.
8539 (fbsd_info_proc): New.
8540 (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
8541 (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
8542 (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
8543
8544 2018-01-09 John Baldwin <jhb@FreeBSD.org>
8545
8546 * fbsd-nat.c (struct free_deleter): Remove.
8547 (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
8548
8549 2018-01-09 John Baldwin <jhb@FreeBSD.org>
8550
8551 * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
8552 NULL for an empty pathname.
8553
8554 2018-01-09 John Baldwin <jhb@FreeBSD.org>
8555
8556 * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
8557 (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
8558 (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
8559 (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
8560 (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
8561 (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
8562 (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
8563 (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
8564 (kinfo_proc_layout_32, kinfo_proc_layout_i386)
8565 (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
8566 (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
8567 (fbsd_core_fetch_timeval, fbsd_print_sigset)
8568 (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
8569 (fbsd_init_abi): Install gdbarch "core_info_proc" method.
8570 * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
8571
8572 2018-01-08 Samuel Thibault <samuel.thibault@ens-lyon.org>
8573
8574 * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
8575 (gnu_xfer_auxv): New function.
8576 (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
8577 TARGET_OBJECT_AUXV.
8578
8579 2018-01-08 Yao Qi <yao.qi@linaro.org>
8580 Simon Marchi <simon.marchi@ericsson.com>
8581
8582 * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
8583 common/selftest.c.
8584 (COMMON_OBS): Remove selftest.o.
8585 * configure.ac: Append selftest-arch.c and common/selftest.c to
8586 CONFIG_SRCS. Append selftest-arch.o and selftest.o to COMMON_OBS.
8587 * configure: Re-generated.
8588 * maint.c (maintenance_selftest): Wrap selftests::run_tests with
8589 GDB_SELF_TEST.
8590 (maintenance_info_selftests): Likewise.
8591
8592 2018-01-08 Xavier Roirand <roirand@adacore.com>
8593
8594 * ada-valprint.c (val_print_packed_array_elements): Use
8595 proper number of elements when printing an array indexed
8596 by an enumeration type.
8597
8598 2018-01-07 Simon Marchi <simon.marchi@polymtl.ca>
8599
8600 * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
8601 (dw2_get_file_names_reader): Adjust.
8602 (lookup_dwo_signatured_type): Adjust.
8603 (lookup_dwp_signatured_type): Adjust.
8604 (lookup_signatured_type): Adjust.
8605 (create_type_unit_group): Adjust.
8606 (get_type_unit_group): Adjust.
8607 (process_psymtab_comp_unit_reader): Adjust.
8608 (build_type_psymtabs_reader): Adjust.
8609 (scan_partial_symbols): Adjust.
8610 (add_partial_symbol): Adjust.
8611 (add_partial_subprogram): Adjust.
8612 (peek_die_abbrev): Adjust.
8613 (fixup_go_packaging): Adjust.
8614 (process_imported_unit_die): Adjust.
8615 (dwarf2_compute_name): Adjust.
8616 (dwarf2_physname): Adjust.
8617 (read_import_statement): Adjust.
8618 (handle_DW_AT_stmt_list): Adjust.
8619 (read_file_scope): Adjust.
8620 (read_func_scope): Adjust.
8621 (read_lexical_block_scope): Adjust.
8622 (read_call_site_scope): Adjust.
8623 (read_variable): Adjust.
8624 (dwarf2_rnglists_process): Adjust.
8625 (dwarf2_ranges_process): Adjust.
8626 (dwarf2_ranges_read): Adjust.
8627 (dwarf2_get_pc_bounds): Adjust.
8628 (dwarf2_record_block_ranges): Adjust.
8629 (dwarf2_add_field): Adjust.
8630 (dwarf2_add_member_fn): Adjust.
8631 (read_structure_type): Adjust.
8632 (process_structure_scope): Adjust.
8633 (read_enumeration_type): Adjust.
8634 (read_array_type): Adjust.
8635 (mark_common_block_symbol_computed): Adjust.
8636 (read_common_block): Adjust.
8637 (read_namespace_type): Adjust.
8638 (read_namespace): Adjust.
8639 (read_module_type): Adjust.
8640 (read_tag_pointer_type): Adjust.
8641 (read_tag_ptr_to_member_type): Adjust.
8642 (read_tag_string_type): Adjust.
8643 (read_subroutine_type): Adjust.
8644 (read_typedef): Adjust.
8645 (read_base_type): Adjust.
8646 (attr_to_dynamic_prop): Adjust.
8647 (read_subrange_type): Adjust.
8648 (read_unspecified_type): Adjust.
8649 (dwarf2_read_abbrevs): Adjust.
8650 (load_partial_dies): Adjust.
8651 (read_partial_die): Adjust.
8652 (find_partial_die): Adjust.
8653 (guess_partial_die_structure_name): Adjust.
8654 (fixup_partial_die): Adjust.
8655 (read_attribute_value): Adjust.
8656 (read_addr_index): Adjust.
8657 (read_addr_index_from_leb128): Adjust.
8658 (read_str_index): Adjust.
8659 (dwarf2_string_attr): Adjust.
8660 (get_debug_line_section): Adjust.
8661 (dwarf_decode_line_header): Adjust.
8662 (lnp_state_machine::check_line_address): Adjust.
8663 (dwarf_decode_lines_1): Adjust.
8664 (dwarf_decode_lines): Adjust.
8665 (dwarf2_start_symtab): Adjust.
8666 (var_decode_location): Adjust.
8667 (new_symbol_full): Adjust.
8668 (dwarf2_const_value_data): Adjust.
8669 (dwarf2_const_value_attr): Adjust.
8670 (dwarf2_const_value): Adjust.
8671 (die_type): Adjust.
8672 (die_containing_type): Adjust.
8673 (build_error_marker_type): Adjust.
8674 (lookup_die_type): Adjust.
8675 (guess_full_die_structure_name): Adjust.
8676 (anonymous_struct_prefix): Adjust.
8677 (determine_prefix): Adjust.
8678 (dwarf2_name): Adjust.
8679 (follow_die_ref_or_sig): Adjust.
8680 (follow_die_offset): Adjust.
8681 (follow_die_ref): Adjust.
8682 (follow_die_sig_1): Adjust.
8683 (follow_die_sig): Adjust.
8684 (get_signatured_type): Adjust.
8685 (get_DW_AT_signature_type): Adjust.
8686 (decode_locdesc): Adjust.
8687 (dwarf_decode_macros): Adjust.
8688 (cu_debug_loc_section): Adjust.
8689 (fill_in_loclist_baton): Adjust.
8690 (dwarf2_symbol_mark_computed): Adjust.
8691 (init_one_comp_unit): Don't assign
8692 dwarf2_cu::dwarf2_per_objfile.
8693 (set_die_type): Adjust.
8694
8695 2018-01-07 Simon Marchi <simon.marchi@ericsson.com>
8696
8697 * dwarf2read.c (struct mapped_debug_names): Add constructor.
8698 <dwarf2_per_objfile>: New field.
8699 (dwarf2_per_objfile): Remove global.
8700 (get_dwarf2_per_objfile): New function.
8701 (set_dwarf2_per_objfile): New function.
8702 (dwarf2_build_psymtabs_hard): Change objfile parameter to
8703 dwarf2_per_objfile.
8704 (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
8705 (read_abbrev_offset): Likewise.
8706 (read_indirect_string): Likewise.
8707 (read_indirect_line_string): Likewise.
8708 (read_indirect_string_at_offset): Likewise.
8709 (read_indirect_string_from_dwz): Likewise.
8710 (dwarf2_find_containing_comp_unit): Change objfile parameter to
8711 dwarf2_per_objfile.
8712 (age_cached_comp_units): Add dwarf2_per_objfile parameter.
8713 (create_all_comp_units): Change objfile parameter to
8714 dwarf2_per_objfile.
8715 (create_all_type_units): Likewise.
8716 (process_queue): Add dwarf2_per_objfile parameter.
8717 (read_and_check_comp_unit_head): Likewise.
8718 (lookup_dwo_unit_in_dwp): Likewise.
8719 (get_dwp_file): Likewise.
8720 (process_cu_includes): Likewise.
8721 (struct free_dwo_file_cleanup_data): New struct.
8722 (dwarf2_has_info): Use get_dwarf2_per_objfile and
8723 set_dwarf2_per_objfile.
8724 (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
8725 (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
8726 context, adjust calls.
8727 (dw2_instantiate_symtab): Likewise.
8728 (dw2_get_cutu): Add dwarf2_per_objfile parameter.
8729 (dw2_get_cu): Likewise.
8730 (create_cu_from_index_list): Change objfile parameter to
8731 dwarf2_per_objfile.
8732 (create_cus_from_index_list): Get dwarf2_per_objfile from
8733 context, adjust calls.
8734 (create_cus_from_index): Likewise.
8735 (create_signatured_type_table_from_index): Change objfile
8736 parameter to dwarf2_per_objfile.
8737 (create_signatured_type_table_from_debug_names): Change objfile
8738 parameter to dwarf2_per_objfile.
8739 (create_addrmap_from_index): Likewise.
8740 (create_addrmap_from_aranges): Likewise.
8741 (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
8742 (dw2_setup): Remove.
8743 (dw2_get_file_names_reader): Get dwarf2_per_objfile from
8744 context.
8745 (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
8746 get_dwarf2_per_objfile.
8747 (dw2_forget_cached_source_info): Likewise.
8748 (dw2_map_symtabs_matching_filename): Likewise.
8749 (struct dw2_symtab_iterator) <index>: Remove.
8750 <dwarf2_per_objfile>: New field.
8751 (dw2_symtab_iter_init): Replace index parameter with
8752 dwarf2_per_objfile.
8753 (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
8754 (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
8755 (dw2_print_stats): Likewise.
8756 (dw2_dump): Likewise.
8757 (dw2_expand_symtabs_for_function): Likewise.
8758 (dw2_expand_all_symtabs): Likewise.
8759 (dw2_expand_symtabs_with_fullname): Likewise.
8760 (dw2_expand_marked_cus): Replace index and objfile parameters
8761 with dwarf2_per_objfile.
8762 (dw_expand_symtabs_matching_file_matcher): Add
8763 dwarf2_per_objfile parameter and adjust calls.
8764 (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
8765 adjust calls.
8766 (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
8767 (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
8768 adjust calls.
8769 (create_cus_from_debug_names_list): Replace objfile parameter
8770 with dwarf2_per_objfile and adjust calls.
8771 (create_cus_from_debug_names): Likewise.
8772 (dwarf2_read_debug_names): Likewise.
8773 (mapped_debug_names::namei_to_name): Adjust call.
8774 (dw2_debug_names_iterator::next): Likewise.
8775 (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
8776 (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
8777 (dw2_debug_names_dump): Likewise.
8778 (dw2_debug_names_expand_symtabs_for_function): Likewise.
8779 (dw2_debug_names_expand_symtabs_matching): Likewise.
8780 (dwarf2_initialize_objfile): Likewise.
8781 (dwarf2_build_psymtabs): Likewise.
8782 (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
8783 this_cu.
8784 (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
8785 (read_and_check_comp_unit_head): Likewise.
8786 (read_abbrev_offset): Likewise.
8787 (create_debug_type_hash_table): Likewise.
8788 (create_debug_types_hash_table): Likewise.
8789 (create_all_type_units): Replace objfile parameter with
8790 dwarf2_per_objfile.
8791 (add_type_unit): Add dwarf2_per_objfile parameter.
8792 (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
8793 with dwarf2_per_objfile.
8794 (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
8795 (lookup_dwp_signatured_type): Likewise.
8796 (lookup_signatured_type): Likewise.
8797 (read_cutu_die_from_dwo): Likewise.
8798 (init_tu_and_read_dwo_dies): Likewise.
8799 (init_cutu_and_read_dies): Likewise.
8800 (init_cutu_and_read_dies_no_follow): Likewise.
8801 (allocate_type_unit_groups_table): Add objfile parameter.
8802 (create_type_unit_group): Use dwarf2_per_objfile from cu.
8803 (get_type_unit_group): Likewise.
8804 (process_psymtab_comp_unit): Update call.
8805 (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
8806 (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
8807 (print_tu_stats): Likewise.
8808 (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
8809 in void* parameter.
8810 (build_type_psymtabs): Change objfile parameter to
8811 dwarf2_per_objfile.
8812 (process_skeletonless_type_unit): Use dwarf2_per_objfile
8813 passed in void* parameter.
8814 (process_skeletonless_type_units): Change objfile parameter to
8815 dwarf2_per_objfile.
8816 (set_partial_user): Likewise.
8817 (dwarf2_build_psymtabs_hard): Likewise.
8818 (read_comp_units_from_section): Likewise.
8819 (create_all_comp_units): Likewise.
8820 (scan_partial_symbols): Update calls.
8821 (add_partial_symbol): Likewise.
8822 (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
8823 (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
8824 (process_queue): Add dwarf2_per_objfile parameter.
8825 (get_compunit_symtab): Use dwarf2_per_objfile from cu.
8826 (compute_compunit_symtab_includes): Likewise.
8827 (process_cu_includes): Add dwarf2_per_objfile parameter.
8828 (process_full_comp_unit): Use dwarf2_per_objfile from cu.
8829 (process_full_type_unit): Likewise.
8830 (process_imported_unit_die): Update call.
8831 (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
8832 (read_file_scope): Likewise.
8833 (allocate_dwo_file_hash_table): Add objfile parameter.
8834 (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
8835 (create_cus_hash_table): Likewise.
8836 (create_dwp_hash_table): Likewise.
8837 (create_dwo_unit_in_dwp_v1): Likewise.
8838 (create_dwp_v2_section): Likewise.
8839 (create_dwo_unit_in_dwp_v2): Likewise.
8840 (lookup_dwo_unit_in_dwp): Likewise.
8841 (try_open_dwop_file): Likewise.
8842 (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
8843 (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
8844 cleanup to include a reference to dwarf2_per_objfile.
8845 (open_dwp_file): Add dwarf2_per_objfile parameter.
8846 (open_and_init_dwp_file): Likewise.
8847 (get_dwp_file): Likewise.
8848 (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
8849 (queue_and_load_all_dwo_tus): Update call.
8850 (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
8851 data.
8852 (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
8853 (dwarf2_ranges_process): Likewise.
8854 (dwarf2_get_pc_bounds): Likewise.
8855 (mark_common_block_symbol_computed): Likewise.
8856 (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
8857 (dwarf2_read_abbrevs): Update call.
8858 (read_partial_die): Use dwarf2_per_objfile from cu.
8859 (find_partial_die): Likewise.
8860 (fixup_partial_die): Likewise.
8861 (read_attribute_value): Likewise.
8862 (read_indirect_string_at_offset_from): Add objfile parameter.
8863 (read_indirect_string_at_offset): Add dwarf2_per_objfile
8864 parameter.
8865 (read_indirect_string_from_dwz): Add objfile parameter.
8866 (read_indirect_string): Add objfile parameter.
8867 (read_addr_index_1): Add dwarf2_per_objfile parameter.
8868 (read_addr_index): Use dwarf2_per_objfile from cu.
8869 (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
8870 call dw2_setup.
8871 (read_str_index): Use dwarf2_per_objfile from cu.
8872 (get_debug_line_section): Likewise.
8873 (read_formatted_entries): Add dwarf2_per_objfile parameter.
8874 (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
8875 (new_symbol_full): Use dwarf2_per_objfile from cu.
8876 (build_error_marker_type): Likewise.
8877 (lookup_die_type): Likewise.
8878 (determine_prefix): Likewise.
8879 (follow_die_offset): Likewise.
8880 (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
8881 (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
8882 (dwarf2_fetch_die_type_sect_off): Likewise.
8883 (dwarf2_get_die_type): Likewise.
8884 (follow_die_sig_1): Use dwarf2_per_objfile from cu.
8885 (get_signatured_type): Likewise.
8886 (get_DW_AT_signature_type): Likewise.
8887 (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
8888 (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
8889 (cu_debug_loc_section): Likewise.
8890 (fill_in_loclist_baton): Likewise.
8891 (dwarf2_symbol_mark_computed): Likewise.
8892 (dwarf2_find_containing_comp_unit): Change objfile parameter to
8893 dwarf2_per_objfile.
8894 (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
8895 parameter.
8896 (age_cached_comp_units): Add dwarf2_per_objfile parameter.
8897 (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
8898 (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
8899 (set_die_type): Use dwarf2_free_objfile from cu.
8900 (get_die_type_at_offset): Likewise.
8901 (dwarf2_per_objfile_free): Don't assign global variable.
8902 (debug_names) <constructor>: Add dwarf2_per_objfile
8903 parameter, update m_debugstrlookup construction.
8904 (debug_names::debug_str_lookup): Add dwarf2_per_objfile
8905 parameter.
8906 <m_dwarf2_per_objfile>: New field.
8907 <lookup>: Use m_dwarf2_per_objfile.
8908 (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
8909 (psyms_seen_size): Likewise.
8910 (write_gdbindex): Replace objfile parameter with
8911 dwarf2_per_objfile.
8912 (write_debug_names): Likewise.
8913 (write_psymtabs_to_index): Likewise.
8914 (save_gdb_index_command): Use get_dwarf2_per_objfile, update
8915 calls.
8916
8917 2018-01-07 Simon Marchi <simon.marchi@ericsson.com>
8918
8919 * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
8920 <dwarf2_per_objfile>: New field.
8921 (struct dwarf2_per_cu_data) <objfile>: Remove.
8922 <dwarf2_per_objfile>: New field.
8923 (create_cu_from_index_list): Assign dwarf2_per_objfile instead
8924 of objfile.
8925 (create_signatured_type_table_from_index): Likewise.
8926 (create_debug_type_hash_table): Likewise.
8927 (fill_in_sig_entry_from_dwo_entry): Likewise.
8928 (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
8929 (create_type_unit_group): Assign dwarf2_per_objfile instead of
8930 objfile.
8931 (create_partial_symtab): Access objfile through
8932 dwarf2_per_objfile.
8933 (process_psymtab_comp_unit_reader): Likewise.
8934 (read_comp_units_from_section): Likewise.
8935 (scan_partial_symbols): Likewise.
8936 (add_partial_symbol): Likewise.
8937 (add_partial_subprogram): Likewise.
8938 (peek_die_abbrev): Likewise.
8939 (fixup_go_packaging): Likewise.
8940 (process_full_comp_unit): Likewise.
8941 (process_full_type_unit): Likewise.
8942 (process_imported_unit_die): Likewise.
8943 (dwarf2_compute_name): Likewise.
8944 (dwarf2_physname): Likewise.
8945 (read_import_statement): Likewise.
8946 (create_cus_hash_table): Assign dwarf2_physname instead of
8947 objfile.
8948 (read_func_scope): Access objfile through dwarf2_per_objfile.
8949 (read_lexical_block_scope): Likewise.
8950 (read_call_site_scope): Likewise.
8951 (read_variable): Likewise.
8952 (dwarf2_rnglists_process): Likewise.
8953 (dwarf2_ranges_process): Likewise.
8954 (dwarf2_ranges_read): Likewise.
8955 (dwarf2_record_block_ranges): Likewise.
8956 (dwarf2_add_field): Likewise.
8957 (dwarf2_add_member_fn): Likewise.
8958 (read_structure_type): Likewise.
8959 (process_structure_scope): Likewise.
8960 (read_enumeration_type): Likewise.
8961 (read_array_type): Likewise.
8962 (read_common_block): Likewise.
8963 (read_namespace_type): Likewise.
8964 (read_namespace): Likewise.
8965 (read_module_type): Likewise.
8966 (read_tag_pointer_type): Likewise.
8967 (read_tag_ptr_to_member_type): Likewise.
8968 (read_tag_string_type): Likewise.
8969 (read_subroutine_type): Likewise.
8970 (read_typedef): Likewise.
8971 (read_base_type): Likewise.
8972 (attr_to_dynamic_prop): Likewise.
8973 (read_subrange_type): Likewise.
8974 (read_unspecified_type): Likewise.
8975 (load_partial_dies): Likewise.
8976 (read_partial_die): Likewise.
8977 (find_partial_die): Likewise.
8978 (guess_partial_die_structure_name): Likewise.
8979 (fixup_partial_die): Likewise.
8980 (read_attribute_value): Likewise.
8981 (read_addr_index_from_leb128): Likewise.
8982 (dwarf2_read_addr_index): Likewise.
8983 (dwarf2_string_attr): Likewise.
8984 (lnp_state_machine::check_line_address): Likewise.
8985 (dwarf_decode_lines_1): Likewise.
8986 (dwarf_decode_lines): Likewise.
8987 (dwarf2_start_symtab): Likewise.
8988 (var_decode_location): Likewise.
8989 (new_symbol_full): Likewise.
8990 (dwarf2_const_value_data): Likewise.
8991 (dwarf2_const_value_attr): Likewise.
8992 (dwarf2_const_value): Likewise.
8993 (die_type): Likewise.
8994 (die_containing_type): Likewise.
8995 (lookup_die_type): Likewise.
8996 (guess_full_die_structure_name): Likewise.
8997 (anonymous_struct_prefix): Likewise.
8998 (dwarf2_name): Likewise.
8999 (follow_die_ref_or_sig): Likewise.
9000 (follow_die_offset): Likewise.
9001 (follow_die_ref): Likewise.
9002 (dwarf2_fetch_die_loc_sect_off): Likewise.
9003 (dwarf2_fetch_constant_bytes): Likewise.
9004 (dwarf2_fetch_die_type_sect_off): Likewise.
9005 (dwarf2_get_die_type): Likewise.
9006 (follow_die_sig): Likewise.
9007 (decode_locdesc): Likewise.
9008 (dwarf2_per_cu_objfile): Likewise.
9009 (dwarf2_per_cu_text_offset): Likewise.
9010 (init_one_comp_unit): Assign dwarf2_per_objfile instead of
9011 objfile.
9012 (set_die_type): Access objfile through
9013 dwarf2_per_objfile.
9014
9015 2018-01-07 Simon Marchi <simon.marchi@ericsson.com>
9016
9017 * valprint.c (converted_character_d): Remove typedef.
9018 (DEF_VEC_O (converted_character_d)): Remove.
9019 (count_next_character): Use std::vector.
9020 (print_converted_chars_to_obstack): Likewise.
9021 (generic_printstr): Likewise.
9022
9023 2018-01-07 Simon Marchi <simon.marchi@polymtl.ca>
9024
9025 * xml-support.h (struct gdb_xml_value): Add constructor.
9026 <value>: Change type to unique_xmalloc_ptr.
9027 (gdb_xml_value_s): Remove typedef.
9028 (DEF_VEC_O (gdb_xml_value_s)): Remove.
9029 (gdb_xml_element_start_handler): Change parameter type to
9030 std::vector.
9031 (xml_find_attribute): Likewise.
9032 * xml-support.c (xml_find_attribute): Change parameter type to
9033 std::vector and adjust.
9034 (gdb_xml_values_cleanup): Remove.
9035 (gdb_xml_parser::start_element): Adjust to std::vector.
9036 (xinclude_start_include): Change paraeter type to std::vector
9037 and adjust.
9038 * btrace.c (check_xml_btrace_version): Likewise.
9039 (parse_xml_btrace_block): Likewise.
9040 (parse_xml_btrace_pt_config_cpu): Likewise.
9041 (parse_xml_btrace_pt): Likewise.
9042 (parse_xml_btrace_conf_bts): Likewise.
9043 (parse_xml_btrace_conf_pt): Likewise.
9044 * memory-map.c (memory_map_start_memory): Likewise.
9045 (memory_map_start_property): Likewise.
9046 * osdata.c (osdata_start_osdata): Likewise.
9047 (osdata_start_item): Likewise.
9048 (osdata_start_column): Likewise.
9049 * remote.c (start_thread): Likewise.
9050 * solib-aix.c (library_list_start_library): Likewise.
9051 (library_list_start_list): Likewise.
9052 * solib-svr4.c (library_list_start_library): Likewise.
9053 (svr4_library_list_start_list): Likewise.
9054 * solib-target.c (library_list_start_segment): Likewise.
9055 (library_list_start_section): Likewise.
9056 (library_list_start_library): Likewise.
9057 (library_list_start_list): Likewise.
9058 * tracepoint.c (traceframe_info_start_memory): Likewise.
9059 (traceframe_info_start_tvar): Likewise.
9060 * xml-syscall.c (syscall_start_syscall): Likewise.
9061 * xml-tdesc.c (tdesc_start_target): Likewise.
9062 (tdesc_start_feature): Likewise.
9063 (tdesc_start_reg): Likewise.
9064 (tdesc_start_union): Likewise.
9065 (tdesc_start_struct): Likewise.
9066 (tdesc_start_flags): Likewise.
9067 (tdesc_start_enum): Likewise.
9068 (tdesc_start_field): Likewise.
9069 (tdesc_start_enum_value): Likewise.
9070 (tdesc_start_vector): Likewise.
9071
9072 2018-01-07 Simon Marchi <simon.marchi@polymtl.ca>
9073
9074 * extension.h (struct xmethod_worker) <clone>: Remove.
9075 * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
9076 Remove.
9077 (python_xmethod_worker::clone): Remove.
9078 * valops.c (find_overload_match): Use std::move instead of
9079 clone.
9080
9081 2018-01-07 Simon Marchi <simon.marchi@polymtl.ca>
9082
9083 * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
9084 (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
9085 <free_xmethod_worker_data>: Remove.
9086 <get_matching_xmethod_workers>: Chance VEC to std::vector.
9087 <get_xmethod_arg_types>: Remove.
9088 <get_xmethod_result_type>: Remove.
9089 <invoke_xmethod>: Remove.
9090 * extension.c (new_xmethod_worker): Remove.
9091 (clone_xmethod_worker): Remove.
9092 (get_matching_xmethod_workers): Return void, pass std::vector by
9093 pointer.
9094 (get_xmethod_arg_types): Rename to...
9095 (xmethod_worker::get_arg_types): ... this, and adjust.
9096 (get_xmethod_result_type): Rename to...
9097 (xmethod_worker::get_result_type): ... this, and adjust.
9098 (invoke_xmethod): Remove.
9099 (free_xmethod_worker): Remove.
9100 (free_xmethod_worker_vec): Remove.
9101 * extension.h (enum ext_lang_rc): Move here from
9102 extension-priv.h.
9103 (struct xmethod_worker): Add constructor and destructor.
9104 <data>: Remove.
9105 <value>: Remove.
9106 <invoke, clone, do_get_result_type, do_get_arg_types>: New
9107 virtual pure methods.
9108 <get_arg_types, get_result_type>: New methods.
9109 (xmethod_worker_ptr): Remove typedef.
9110 (DEF_VEC_P (xmethod_worker_ptr)): Remove.
9111 (xmethod_worker_vec): Remove typedef.
9112 (xmethod_worker_up): New typedef.
9113 (invoke_xmethod): Remove.
9114 (clone_xmethod_worker): Remove.
9115 (free_xmethod_worker): Remove.
9116 (free_xmethod_worker_vec): Remove.
9117 (get_xmethod_arg_types): Remove.
9118 (get_xmethod_result_type): Remove.
9119 * valops.c (find_method_list): Use std::vector, don't use
9120 intermediate vector.
9121 (value_find_oload_method_list): Use std::vector.
9122 (find_overload_match): Use std::vector.
9123 (find_oload_champ): Use std::vector.
9124 * value.c (value_free): Use operator delete.
9125 (value_of_xmethod): Rename to...
9126 (value_from_xmethod): ... this. Don't assign
9127 xmethod_worker::value, take rvalue-reference.
9128 (result_type_of_xmethod): Adjust.
9129 (call_xmethod): Adjust.
9130 * value.h: Include extension.h.
9131 (struct xmethod_worker): Don't forward-declare.
9132 (value_of_xmethod): Rename to...
9133 (value_from_xmethod): ... this, take rvalue-reference.
9134 * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
9135 (struct python_xmethod_worker): ... this, add constructor and
9136 destructor.
9137 <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
9138 (gdbpy_free_xmethod_worker_data): Rename to...
9139 (python_xmethod_worker::~python_xmethod_worker): ... this and
9140 adjust.
9141 (gdbpy_clone_xmethod_worker_data): Rename to...
9142 (python_xmethod_worker::clone): ... this and adjust.
9143 (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
9144 temporary vector.
9145 (gdbpy_get_xmethod_arg_types): Rename to...
9146 (python_xmethod_worker::do_get_arg_types): ... this and adjust.
9147 (gdbpy_get_xmethod_result_type): Rename to...
9148 (python_xmethod_worker::do_get_result_type): ... this and
9149 adjust.
9150 (gdbpy_invoke_xmethod): Rename to...
9151 (python_xmethod_worker::invoke): ... this and adjust.
9152 (new_python_xmethod_worker): Rename to...
9153 (python_xmethod_worker::python_xmethod_worker): ... this and
9154 adjust.
9155 * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
9156 Remove.
9157 (gdbpy_free_xmethod_worker_data): Remove.
9158 (gdbpy_get_matching_xmethod_workers): Use std::vector.
9159 (gdbpy_get_xmethod_arg_types): Remove.
9160 (gdbpy_get_xmethod_result_type): Remove.
9161 (gdbpy_invoke_xmethod): Remove.
9162 * python/python.c (python_extension_ops): Remove obsolete
9163 callbacks.
9164
9165 2018-01-05 Pedro Alves <palves@redhat.com>
9166
9167 PR gdb/18653
9168 * common/signals-state-save-restore.c
9169 (save_original_signals_state): New parameter 'quiet'. Warn if we
9170 find a custom handler preinstalled, instead of internal erroring.
9171 But only warn if !quiet.
9172 * common/signals-state-save-restore.h
9173 (save_original_signals_state): New parameter 'quiet'.
9174 * main.c (captured_main_1): Move save_original_signals_state call
9175 after option handling, and pass QUIET.
9176
9177 2018-01-05 Pedro Alves <palves@redhat.com>
9178
9179 * spu-tdep.c (spu_catch_start): Pass
9180 symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
9181
9182 2018-01-05 Pedro Alves <palves@redhat.com>
9183
9184 PR gdb/22670
9185 * ada-lang.c (literal_symbol_name_matcher): New function.
9186 (ada_get_symbol_name_matcher): Use it for
9187 symbol_name_match_type::SEARCH_NAME.
9188 * block.c (block_lookup_symbol): New parameter 'match_type'. Pass
9189 it down instead of assuming symbol_name_match_type::FULL.
9190 * block.h (block_lookup_symbol): New parameter 'match_type'.
9191 * c-valprint.c (print_unpacked_pointer): Use
9192 lookup_symbol_search_name instead of lookup_symbol.
9193 * compile/compile-object-load.c (get_out_value_type): Pass down
9194 symbol_name_match_type::SEARCH_NAME.
9195 * cp-namespace.c (cp_basic_lookup_symbol): Pass down
9196 symbol_name_match_type::FULL.
9197 * cp-support.c (cp_get_symbol_name_matcher): Handle
9198 symbol_name_match_type::SEARCH_NAME.
9199 * infrun.c (insert_exception_resume_breakpoint): Use
9200 lookup_symbol_search_name.
9201 * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
9202 * psymtab.c (maintenance_check_psymtabs): Use
9203 symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
9204 * stack.c (print_frame_args): Use lookup_symbol_search_name and
9205 SYMBOL_SEARCH_NAME.
9206 * symtab.c (lookup_local_symbol): Don't demangle the lookup name
9207 if symbol_name_match_type::SEARCH_NAME.
9208 (lookup_symbol_in_language): Pass down
9209 symbol_name_match_type::FULL.
9210 (lookup_symbol_search_name): New.
9211 (lookup_language_this): Pass down
9212 symbol_name_match_type::SEARCH_NAME.
9213 (lookup_symbol_aux, lookup_local_symbol): New parameter
9214 'match_type'. Pass it down.
9215 * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
9216 (lookup_symbol_search_name): New declaration.
9217 (lookup_symbol_in_block): New 'match_type' parameter.
9218
9219 2018-01-05 Pedro Alves <palves@redhat.com>
9220
9221 PR gdb/22670
9222 * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
9223 ada_lookup_symbol.
9224 (ada_lookup_symbol): Reimplement in terms of
9225 ada_lookup_symbol_list, bits factored out from
9226 ada_lookup_encoded_symbol.
9227
9228 2018-01-05 Joel Brobecker <brobecker@adacore.com>
9229
9230 * ada-exp.y (write_object_renaming): When subscripting an array
9231 using a symbol as the index, pass the block in call to
9232 ada_lookup_encoded_symbol when looking that symbol up.
9233
9234 2018-01-05 Jerome Guitton <guitton@adacore.com>
9235
9236 * ada-lang.c (ada_array_length): Use ada_index_type instead of
9237 TYPE_INDEX_TYPE.
9238
9239 2018-01-05 Joel Brobecker <brobecker@adacore.com>
9240
9241 * ada-lang.c (ada_to_fixed_value_create): Add handling of
9242 the case where VALUE_LVAL (val0) is not lval_memory.
9243
9244 2018-01-05 Xavier Roirand <roirand@adacore.com>
9245
9246 * ada-valprint.c (print_optional_low_bound): Handle
9247 character-indexed array printing like boolean-indexed array
9248 printing.
9249
9250 2018-01-05 Joel Brobecker <brobecker@adacore.com>
9251
9252 * NEWS: Create a new section for the next release branch.
9253 Rename the section of the current branch, now that it has
9254 been cut.
9255
9256 2018-01-05 Joel Brobecker <brobecker@adacore.com>
9257
9258 GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
9259 * version.in: Bump version to 8.1.50.DATE-git.
9260
9261 2018-01-03 Xavier Roirand <roirand@adacore.com>
9262
9263 * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
9264 Add field.
9265 * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
9266 Add field.
9267 (default_exception_support_info) <catch_handlers_sym>: Add field.
9268 (exception_support_info_fallback) <catch_handlers_sym>: Add field.
9269 (ada_exception_name_addr_1): Add "catch handlers" handling.
9270 (ada_exception_catchpoint_cond_string) <ex>: New parameter.
9271 Update all callers.
9272 (create_excep_cond_exprs) <ex>: Add parameter.
9273 (re_set_exception): Update create_excep_cond_exprs call.
9274 (print_it_exception, print_one_exception, print_mention_exception)
9275 (print_recreate_exception): Add "catch handler" handling.
9276 (allocate_location_catch_handlers, re_set_catch_handlers)
9277 (check_status_catch_handlers, print_it_catch_handlers)
9278 (print_one_catch_handlers, print_mention_catch_handlers)
9279 (print_recreate_catch_handlers): New function.
9280 (catch_handlers_breakpoint_ops): New variable.
9281 (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
9282 Add parameter. Add "catch handler" handling.
9283 (ada_exception_sym_name, ada_exception_breakpoint_ops):
9284 Add "catch handler" handling.
9285 (ada_exception_catchpoint_cond_string): Add "catch handler"
9286 handling.
9287 (create_ada_exception_catchpoint): Update create_excep_cond_exprs
9288 call.
9289 (catch_ada_handlers_command): New function.
9290 (initialize_ada_catchpoint_ops): Initialize "catch handlers"
9291 operations structure.
9292 (_initialize_ada_language): Add "catch handlers" command entry.
9293 * NEWS: Document "catch handlers" feature.
9294
9295 2018-01-02 Joel Brobecker <brobecker@adacore.com>
9296
9297 * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
9298 account when creating the array type of the slice.
9299 (ada_value_slice): Likewise.
9300
9301 2018-01-02 Joel Brobecker <brobecker@adacore.com>
9302
9303 * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
9304 New enum value.
9305 (create_array_type_with_stride): Add byte_stride_prop parameter.
9306 * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
9307 New parameter. Update all callers in this file.
9308 (array_type_has_dynamic_stride): New function.
9309 (is_dynamic_type_internal, resolve_dynamic_array): Add handling
9310 of arrays with dynamic byte strides.
9311 * dwarf2read.c (read_array_type): Add support for dynamic
9312 DW_AT_byte_stride attributes.
9313
9314 2018-01-02 Joel Brobecker <brobecker@adacore.com>
9315
9316 * dwarf2read.c (read_unspecified_type): Treat
9317 DW_TAG_enumeration_type DIEs from Ada units as stubs.
9318
9319 2018-01-01 Joel Brobecker <brobecker@adacore.com>
9320
9321 Update copyright year range in all GDB files.
9322
9323 2018-01-01 Joel Brobecker <brobecker@adacore.com>
9324
9325 * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
9326 and gdb/testsuite/gdb.base/step-line.c.
9327
9328 2018-01-01 Joel Brobecker <brobecker@adacore.com>
9329
9330 * copyright.py (main): Dump the contents of
9331 MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
9332 even if BY_HAND is empty.
9333
9334 2018-01-01 Joel Brobecker <brobecker@adacore.com>
9335
9336 * top.c (print_gdb_version): Update Copyright year in version
9337 message.
9338
9339 2018-01-01 Joel Brobecker <brobecker@adacore.com>
9340
9341 * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
9342
9343 For older changes see ChangeLog-2017.
9344 \f
9345 Local Variables:
9346 mode: change-log
9347 left-margin: 8
9348 fill-column: 74
9349 version-control: never
9350 coding: utf-8
9351 End:
This page took 0.234393 seconds and 4 git commands to generate.