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