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