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