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