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