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