invoke_xmethod & array_view
[external/binutils.git] / gdb / ChangeLog
1 2018-11-21  Pedro Alves  <palves@redhat.com>
2
3         * common/array-view.h (array_view::splice(size_type, size_t)): New.
4         (array_view::splice(size_type)): New.
5         * eval.c (eval_call, evaluate_funcall): Adjust to use array_view.
6         * extension.c (xmethod_worker::get_arg_types): Adjust to return an
7         std::vector.
8         (xmethod_worker::get_result_type): Adjust to use gdb::array_view.
9         * extension.h: Include "common/array-view.h".
10         (xmethod_worker::invoke): Adjust to use gdb::array_view.
11         (xmethod_worker::get_arg_types): Adjust to return an std::vector.
12         (xmethod_worker::get_result_type): Adjust to use gdb::array_view.
13         (xmethod_worker::do_get_arg_types): Adjust to use std::vector.
14         (xmethod_worker::do_get_result_type): Adjust to use
15         gdb::array_view.
16         * gdbtypes.c (rank_function): Adjust to use gdb::array_view.
17         * gdbtypes.h: Include "common/array-view.h".
18         (rank_function): Adjust to use gdb::array_view.
19         * python/py-xmethods.c (python_xmethod_worker::invoke)
20         (python_xmethod_worker::do_get_arg_types)
21         (python_xmethod_worker::do_get_result_type)
22         (python_xmethod_worker::invoke): Adjust to new interfaces.
23         * valarith.c (value_user_defined_cpp_op, value_user_defined_op)
24         (value_x_binop, value_x_unop): Adjust to use gdb::array_view.
25         * valops.c (find_overload_match, find_oload_champ_namespace)
26         (find_oload_champ_namespace_loop, find_oload_champ): Adjust to use
27         gdb:array_view and the new xmethod_worker interfaces.
28         * value.c (result_type_of_xmethod, call_xmethod): Adjust to use
29         gdb::array_view.
30         * value.h (find_overload_match, result_type_of_xmethod)
31         (call_xmethod): Adjust to use gdb::array_view.
32         * unittests/array-view-selftests.c: Add slicing tests.
33
34 2018-11-21  Pedro Alves  <palves@redhat.com>
35
36         * ada-lang.c (ada_evaluate_subexp): Adjust to pass an array_view.
37         * common/array-view.h (make_array_view): New.
38         * compile/compile-object-run.c (compile_object_run): Adjust to
39         pass an array_view.
40         * elfread.c (elf_gnu_ifunc_resolve_addr): Adjust.
41         * eval.c (eval_call): Adjust to pass an array_view.
42         (evaluate_subexp_standard): Adjust to pass an array_view.
43         * gcore.c (call_target_sbrk): Adjust to pass an array_view.
44         * guile/scm-value.c (gdbscm_value_call): Likewise.
45         * infcall.c (push_dummy_code): Replace pointer + size parameters
46         with an array_view parameter.
47         (call_function_by_hand, call_function_by_hand_dummy): Likewise and
48         adjust.
49         * infcall.h: Include "common/array-view.h".
50         (call_function_by_hand, call_function_by_hand_dummy): Replace
51         pointer + size parameters with an array_view parameter.
52         * linux-fork.c (inferior_call_waitpid): Adjust to use array_view.
53         * linux-tdep.c (linux_infcall_mmap): Likewise.
54         * objc-lang.c (lookup_objc_class, lookup_child_selector)
55         (value_nsstring, print_object_command): Likewise.
56         * python/py-value.c (valpy_call): Likewise.
57         * rust-lang.c (rust_evaluate_funcall): Likewise.
58         * spu-tdep.c (flush_ea_cache): Likewise.
59         * valarith.c (value_x_binop, value_x_unop): Likewise.
60         * valops.c (value_allocate_space_in_inferior): Likewise.
61         * unittests/array-view-selftests.c (run_tests): Add
62         gdb::make_array_view test.
63
64 2018-11-20  Andrew Burgess  <andrew.burgess@embecosm.com>
65
66         * cli-out.c (cli_ui_out::do_field_int): Use string_printf rather
67         than a fixed size buffer.
68
69 2018-11-20  Andrew Burgess  <andrew.burgess@embecosm.com>
70
71         * breakpoint.c (print_one_breakpoint_location): Reduce whitespace,
72         and remove insertion of extra spaces in GDB's output.
73         * cli-out.c (cli_ui_out::do_field_fmt): Update header comment.
74         Layout field into a temporary buffer, and then output it as a
75         string field.
76
77 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
78
79         * NEWS: Document the language choice done by
80         'info [types|functions|variables]|rbreak'.
81
82 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
83
84         * symtab.c (treg_matches_sym_type_name): Use
85         scoped_switch_to_sym_language_if_auto instead of local logic.
86         (print_symbol_info): Use scoped_switch_to_sym_language_if_auto
87         to switch to SYM language when language mode is auto.
88
89 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
90
91         * language.h (scoped_switch_to_sym_language_if_auto): New class.
92
93 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
94
95         * symtab.c (search_symbols): Properly check absence of type regexp
96         before entering the loop scanning the minimal symbols.
97
98 2018-11-20  John Darrington  <john@darrington.wattle.id.au>
99
100         * s12z-tdep.c (s12z_extract_return_value): New function.
101         (inv_reg_perm) New array.
102         (s12z_return_value): Populate readbuf if non-null.
103
104 2018-11-20  Eli Zaretskii  <eliz@gnu.org>
105
106         * common/filestuff.c (gdb_fopen_cloexec): Disable use of "e" mode
107         with 'fopen' also if O_CLOEXEC is equal to O_NOINHERIT, to cater
108         to MinGW fixed by Gnulib.
109         (O_NOINHERIT): Define if not defined.
110
111 2018-11-19  John Darrington  <john@darrington.wattle.id.au>
112
113         * s12z-tdep.c (s12z_frame_cache): Add an assertion.
114
115 2018-11-19  Simon Marchi  <simon.marchi@polymtl.ca>
116
117         * infrun.c (displaced_step_inferior_state) <next>: Remove.
118
119 2018-11-19  Tom Tromey  <tom@tromey.com>
120
121         * source.c (get_filename_and_charpos): Return void.
122
123 2018-11-19  Simon Marchi  <simon.marchi@polymtl.ca>
124
125         * skip.c (_initialize_step_skip): Fix "info skip" help.
126
127 2018-11-16  Tom Tromey  <tom@tromey.com>
128
129         PR rust/23625:
130         * rust-lang.c (rust_internal_print_type): Handle TYPE_CODE_PTR.
131
132 2018-11-19  Simon Marchi  <simon.marchi@ericsson.com>
133
134         * infrun.c (displaced_step_inferior_states): Change type to
135         std::forward_list.
136         (get_displaced_stepping_state): Adjust.
137         (displaced_step_in_progress_any_inferior): Adjust.
138         (add_displaced_stepping_state): Adjust.
139         (remove_displaced_stepping_state): Adjust.
140
141 2018-11-18  Tom Tromey  <tom@tromey.com>
142
143         PR build/23814:
144         * target-delegates.c: Rebuild.
145         * ia64-linux-nat.c (class ia64_linux_nat_target)
146         <have_steppable_watchpoint>: Use override.  Return true, not 1.
147         (ia64_linux_nat_target::can_use_hw_breakpoint): Rename.  Remove
148         "self" argument.
149         (ia64_linux_nat_target::low_new_thread): Rename.
150         (class ia64_linux_nat_target) <read_description>: Don't declare.
151         * target.h (struct target_ops) <have_steppable_watchpoint>: Return
152         bool.
153
154 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
155
156         PR gdb/22736:
157         * aarch64-tdep.c (aarch64_push_dummy_call): Remove
158         lang_struct_return code.
159
160 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
161
162         * aarch64-tdep.c (aarch64_push_dummy_call): Replace arg with
163         return_method.
164         * alpha-tdep.c (alpha_push_dummy_call): Likewise.
165         * amd64-tdep.c (amd64_push_arguments): Likewise.
166         (amd64_push_dummy_call): Likewise.
167         * amd64-windows-tdep.c (amd64_windows_push_arguments): Likewise.
168         * arc-tdep.c (arc_push_dummy_call): Likewise.
169         * arm-tdep.c (arm_push_dummy_call): Likewise.
170         * avr-tdep.c (avr_push_dummy_call): Likewise.
171         * bfin-tdep.c (bfin_push_dummy_call): Likewise.
172         * cris-tdep.c (cris_push_dummy_call): Likewise.
173         * csky-tdep.c (csky_push_dummy_call): Likewise.
174         * frv-tdep.c (frv_push_dummy_call): Likewise.
175         * gdbarch.c: Regenerate.
176         * gdbarch.h: Regenerate.
177         * gdbarch.sh (gdbarch_push_dummy_call): Replace arg with
178         return_method.
179         * h8300-tdep.c (h8300_push_dummy_call): Likewise.
180         * hppa-tdep.c (hppa32_push_dummy_call): Likewise.
181         (hppa64_push_dummy_call): Likewise.
182         * i386-darwin-tdep.c (i386_darwin_push_dummy_call): Likewise.
183         * i386-tdep.c (i386_push_dummy_call): Likewise.
184         * ia64-tdep.c (ia64_push_dummy_call): Likewise.
185         * infcall.c (call_function_by_hand_dummy): Likewise.
186         * iq2000-tdep.c (iq2000_push_dummy_call): Likewise.
187         * lm32-tdep.c (lm32_push_dummy_call): Likewise.
188         * m32c-tdep.c (m32c_push_dummy_call): Likewise.
189         * m32r-tdep.c (m32r_push_dummy_call): Likewise.
190         * m68hc11-tdep.c (m68hc11_push_dummy_call): Likewise.
191         * m68k-tdep.c (m68k_push_dummy_call): Likewise.
192         * mep-tdep.c (mep_push_dummy_call): Likewise.
193         * mips-tdep.c (mips_eabi_push_dummy_call): Likewise.
194         (mips_n32n64_push_dummy_call): Likewise.
195         (mips_o32_push_dummy_call): Likewise.
196         (mips_o64_push_dummy_call): Likewise.
197         * mn10300-tdep.c (mn10300_push_dummy_call): Likewise.
198         * msp430-tdep.c (msp430_push_dummy_call): Likewise.
199         * nds32-tdep.c (nds32_push_dummy_call): Likewise.
200         * nios2-tdep.c (nios2_push_dummy_call): Likewise.
201         * or1k-tdep.c (or1k_push_dummy_call): Likewise.
202         * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Likewise.
203         (ppc64_sysv_abi_push_dummy_call): Likewise.
204         * ppc-tdep.h (ppc_sysv_abi_push_dummy_call): Likewise.
205         (ppc64_sysv_abi_push_dummy_call): Likewise.
206         * riscv-tdep.c (riscv_push_dummy_call): Likewise.
207         * rl78-tdep.c (rl78_push_dummy_call): Likewise.
208         * rs6000-aix-tdep.c (rs6000_push_dummy_call): Likewise.
209         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Likewise.
210         * rx-tdep.c (rx_push_dummy_call): Likewise.
211         * s390-tdep.c (s390_push_dummy_call): Likewise.
212         * score-tdep.c (score_push_dummy_call): Likewise.
213         * sh-tdep.c (sh_push_dummy_call_fpu): Likewise.
214         (sh_push_dummy_call_nofpu): Likewise.
215         * sparc-tdep.c (sparc32_store_arguments): Likewise.
216         (sparc32_push_dummy_call): Likewise.
217         * sparc64-tdep.c (sparc64_store_arguments): Likewise.
218         (sparc64_push_dummy_call): Likewise.
219         * spu-tdep.c (spu_push_dummy_call): Likewise.
220         * tic6x-tdep.c (tic6x_push_dummy_call): Likewise.
221         * tilegx-tdep.c (tilegx_push_dummy_call): Likewise.
222         * v850-tdep.c (v850_push_dummy_call): Likewise.
223         * vax-tdep.c (vax_push_dummy_call): Likewise.
224         * xstormy16-tdep.c (xstormy16_push_dummy_call): Likewise.
225         * xtensa-tdep.c (xtensa_push_dummy_call): Likewise.
226
227 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
228
229         * gdbarch.sh (enum function_call_return_method): Add enum.
230         * gdbarch.h: Regenerate.
231         * infcall.c (call_function_by_hand_dummy): Replace vars with enum.
232
233 2018-11-15  Joel Brobecker  <brobecker@adacore.com>
234
235         * unittests/copy_bitwise-selftests.c: New file.
236         * utils.c (selftests::bits_to_str, selftests::check_copy_bitwise)
237         (selftests::copy_bitwise_tests): Delete, moving this code to
238         unittests/copy_bitwise-selftests.c instead.
239         (_initialize_utils): Do not register copy_bitwise tests.
240         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
241         unittests/copy_bitwise-selftests.c.
242
243 2018-11-14  Joel Brobecker  <brobecker@adacore.com>
244
245         * ada-lang.c (move_bits): Delete. Update all callers to use
246         copy_bitwise instead.
247         * dwarf2loc.c (copy_bitwise, bits_to_str::bits_to_str)
248         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
249         Move from here to utils.c.
250         (_initialize_dwarf2loc): Remove call to register copy_bitwise
251         selftests.
252         * utils.h (copy_bitwise): Add declaration.
253         * utils.c (copy_bitwise, bits_to_str::bits_to_str)
254         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
255         Moved here from dwarf2loc.c.
256         (_initialize_utils): Register copy_bitwise selftests.
257
258 2018-11-14  Jim Wilson  <jimw@sifive.com>
259
260         * riscv-tdep.c (struct riscv_arg_info): New field is_unnamed.
261         (riscv_call_arg_scalar_int): If unnamed arg with twice xlen alignment,
262         then increment next_regnum if odd.
263         (riscv_arg_location): New arg is_unnamed.  Set ainfo->is_unnamed.
264         (riscv_push_dummy_call): New local ftype.  Call check_typedef to set
265         function type.  Pass new arg to riscv_arg_location based on function
266         type.
267         (riscv_return_value): Pass new arg to riscv_arg_location.
268
269         * riscv-tdep.c (BIGGEST_ALIGNMENT): New.
270         (riscv_type_alignment) <TYPE_CODE_ARRAY>: If TYPE_VECTOR, return min
271         of TYPE_LENGTH and BIGGEST_ALIGNMENT.
272
273         * riscv-tdep.c (riscv_call_arg_scalar_int): Use std::min when
274         setting len.  New local align, set to max of arg align and xlen,
275         and pass to first riscv_assign_stack_location call.
276
277 2018-11-12  Simon Marchi  <simon.marchi@polymtl.ca>
278
279         * skip.c (complete_skip_number): New function.
280         (_initialize_step_skip): Add completers to some skip commands.
281
282 2018-11-09  Tom Tromey  <tom@tromey.com>
283
284         * remote.c (remote_g_packet_guess_s): Remove typedef and DEF_VEC.
285         (struct remote_g_packet_data): Derive from allocate_on_obstack.
286         <guesses>: Now a std::vector.
287         (remote_g_packet_data_init, register_remote_g_packet_guess):
288         Update.
289         (remote_read_description_p): Update.  Return bool.
290         (remote_target::read_description): Update.
291         (struct remote_g_packet_guess): Add constructor.
292
293 2018-11-09  Tom Tromey  <tom@tromey.com>
294
295         * common/scoped_fd.h (class scoped_fd): Add move constructor and
296         move assignment operator.
297         * psymtab.c (psymtab_to_fullname): Update.
298         * source.h (open_source_file): Return scoped_fd.
299         (find_and_open_source): Likewise.
300         * source.c (open_source_file): Return scoped_fd.
301         (get_filename_and_charpos): Update.
302         (print_source_lines_base): Update.  Use scoped_fd::to_file.
303         (forward_search_command): Likewise.
304         (reverse_search_command): Likewise.
305         (find_and_open_source): Return scoped_fd.
306         * tui/tui-source.c (tui_set_source_content): Update.  Use
307         gdb_file_up.
308
309 2018-11-09  John Baldwin  <jhb@FreeBSD.org>
310
311         * minsyms.c (minimal_symbol_reader::install): Fix unsigned
312         overflow.
313
314 2018-11-09  Hafiz Abid Qadeer  <abidh@codesourcery.com>
315
316         * configure: Regenerate.
317
318 2018-11-09  Tom de Vries  <tdevries@suse.de>
319
320         * symtab.c (symbol_set_names): Call symbol_find_demangled_name
321         unconditionally, to set the language of the symbol.  Manage freeing
322         returned pointer using gdb::unique_xmalloc_ptr.
323
324 2018-11-08  Tom Tromey  <tom@tromey.com>
325
326         * record.c (require_record_target): Upper-case "<TAB>".
327
328 2018-11-08  Tom Tromey  <tom@tromey.com>
329
330         * python/lib/gdb/command/pretty_printers.py
331         (InfoPrettyPrinter.invoke): Don't indent "objfile" heading.
332
333 2018-11-08  Tom Tromey  <tom@tromey.com>
334
335         PR gdb/23555:
336         PR gdb/23838:
337         * target.h (target_supports_terminal_ours): Return bool.
338         * target.c (target_supports_terminal_ours): Handle case where
339         current_top_target returns nullptr.  Return bool.
340
341 2018-11-08  Joel Brobecker  <brobecker@adacore.com>
342
343         * aarch64-tdep.c (aapcs_is_vfp_call_or_return_candidate_1):
344         return the correct count for potential HFAs.
345
346 2018-11-08  Jan Beulich  <jbeulich@suse.com>
347
348         * i387-tdep.c (i387_supply_xsave): Split handling of
349         X86_XSTATE_ZMM_H and X86_XSTATE_ZMM.
350         (i387_collect_xsave): Likewise.
351
352 2018-11-08  Andrew Burgess  <andrew.burgess@embecosm.com>
353
354         * riscv-tdep.c (riscv_insn::decode): Update header comment.
355         (riscv_frame_this_id): Catch errors thrown while building the
356         frame cache, leave the frame id as the default, which is the outer
357         frame id.
358
359 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
360
361         * ada-lang.c (read_atcb): Only set task_info->called_task if
362         task_info->state == Entry_Caller_Sleep.
363         (print_ada_task_info): Do not check task_info->state before
364         checking task_info->called_task.
365         (info_task): Likewise.
366
367 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
368
369         * ada-tasks.c (read_atcb): Clear task_info before computing
370         the value of each of its fields.
371
372 2018-11-07  Andrew Burgess  <andrew.burgess@embecosm.com>
373
374         * dwarf2read.c (dwarf2_init_integer_type): Check for name being
375         NULL before dereferencing it.
376
377 2018-11-06  Tom de Vries  <tdevries@suse.de>
378
379         * linux-tdep.c (linux_vsyscall_range_raw): Use xmalloc to allocate
380         program headers.
381
382 2018-11-06  Max Filippov  <jcmvbkbc@gmail.com>
383
384         * configure.tgt (xtensa*-*-linux*): Change to xtensa*-*-*linux*
385         so that it applies to uclinux as well.
386
387 2018-11-06  Marius Muench  <marius.muench@eurecom.fr>
388
389         * arm-tdep.c (arm_scan_prologue): Don't dereference FP reg
390         when on AAPCS.
391
392 2018-11-06  John Baldwin  <jhb@FreeBSD.org>
393
394         * riscv-fbsd-nat.c (getregs_supplies): Return true for
395         RISCV_CSR_SSTATUS_REGNUM.
396
397 2018-11-04  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
398
399         * source.c (open_source_file): Fix leak by transferring the
400         current s->fullname to the unique_xmalloc_ptr fullname given
401         to find_and_open_source.
402
403 2018-11-04  Tom Tromey  <tom@tromey.com>
404
405         * varobj.c (install_default_visualizer): Update.
406         * python/python-internal.h (gdbpy_get_varobj_pretty_printer):
407         Return gdbpy_ref.
408         * python/py-prettyprint.c (search_pp_list): Return gdbpy_ref.
409         (find_pretty_printer_from_progspace)
410         (find_pretty_printer_from_gdb, find_pretty_printer)
411         (gdbpy_get_varobj_pretty_printer): Return gdbpy_ref.
412         (gdbpy_get_varobj_pretty_printer, gdbpy_default_visualizer):
413         Update.
414
415 2018-11-04  Tom Tromey  <tom@tromey.com>
416
417         * python/python.c (gdbpy_parameter_value): Update.
418         * python/python-internal.h (python_string_to_unicode)
419         (python_string_to_target_python_string)
420         (host_string_to_python_string): Return gdbpy_ref.
421         * python/py-utils.c (python_string_to_unicode)
422         (unicode_to_encoded_python_string)
423         (unicode_to_target_python_string)
424         (python_string_to_target_string)
425         (python_string_to_target_python_string): Return gdbpy_ref.
426         (python_string_to_host_string): Update.
427         (host_string_to_python_string): Return gdbpy_ref.
428         * python/py-symtab.c (stpy_get_filename, stpy_get_producer)
429         (stpy_fullname): Update.
430         * python/py-progspace.c (pspy_get_filename, pspy_solib_name):
431         Update.
432         * python/py-prettyprint.c (print_string_repr): Update.
433         * python/py-objfile.c (objfpy_get_filename, objfpy_get_username)
434         (objfpy_get_build_id): Update.
435         * python/py-breakpoint.c (bppy_get_location)
436         (bppy_get_expression, bppy_get_condition, bppy_get_commands):
437         Update.
438
439 2018-11-04  Tom Tromey  <tom@tromey.com>
440
441         * python/python-internal.h (gdb_py_object_from_longest)
442         (gdb_py_object_from_ulongest): Return gdbpy_ref.
443         * python/py-value.c (valpy_int): Update.
444         * python/py-utils.c (gdb_py_object_from_longest): Return
445         gdbpy_ref.
446         (gdb_py_object_from_ulongest): Likewise.
447         * python/py-type.c (typy_get_alignof): Update.
448         * python/py-linetable.c (ltpy_get_all_source_lines)
449         (ltpy_entry_get_line, ltpy_entry_get_pc): Update.
450         * python/py-block.c (blpy_get_start, blpy_get_end): Update.
451
452 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
453
454         * ada-lang.c (_initialize_ada_language): Fix typo.
455
456 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
457
458         * language.c (type): Remove.
459         (_initialize_language): Remove assignment to type.
460
461 2018-11-02  Joel Brobecker  <brobecker@adacore.com>
462
463         * aarch64-ravenscar-thread.h, aarch64-ravenscar-thread.c: New files.
464         * aarch64-tdep.c: #include "aarch64-ravenscar-thread.h".
465         (aarch64_gdbarch_init): Add call to register_aarch64_ravenscar_ops.
466         * Makefile.in (ALL_64_TARGET_OBS): Add aarch64-ravenscar-thread.o.
467         (HFILES_NO_SRCDIR): Add aarch64-ravenscar-thread.h.
468         (ALLDEPFILES): Add aarch64-ravenscar-thread.c.
469         * configure.tgt (cpu_obs) [aarch64*-*-*]: Add ravenscar-thread.o
470         and aarch64-ravenscar-thread.o.
471         * NEWS: Add entry documenting Ravenscar tasking support
472         on AArch64 ELF.
473
474 2018-11-02  Matthew Malcomson  <matthew.malcomson@arm.com>
475
476         * symtab.c (info_functions_command): Initialize quiet flag.
477         * stack.c (info_args_command): Likewise.
478
479 2018-11-01  Jim Wilson  <jimw@sifive.com>
480
481         * riscv-tdep.c (riscv_breakpoint_kind_from_pc): New local unaligned_p.
482         Set if pcptr if unaligned.  Return 2 if unaligned_p true.  Update
483         debugging messages.
484
485 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
486
487         * ada-lang.c (ada_watch_location_expression): New function.
488         (ada_language_defn): Set la_watch_location_expression to
489         ada_watch_location_expression.
490
491 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
492
493         * print-utils.c (int_string): Remove unnecessary trailing spaces.
494
495 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
496
497         * rs6000-tdep.c (skip_prologue): Fix potential negative left
498         shifting.
499
500 2018-11-01  Jerome Guitton  <guitton@adacore.com>
501             Joel Brobecker  <brobecker@adacore.com>
502
503         * defs.h (enum gdb_osabi): Add GDB_OSABI_PIKEOS.
504         * osabi.c (gdb_osabi_names): Add name for GDB_OSABI_PIKEOS.
505         * arm-pikeos-tdep.c: New file.
506         * configure.tgt: Add arm-pikeos-tdep.o to the case of ARM
507         embedded system.
508         * Makefile.in (ALL_TARGET_OBS): Add arm-pikeos-tdep.o.
509
510 2018-11-01  Simon Marchi  <simon.marchi@ericsson.com>
511
512         * common/pathstuff.c (get_standard_temp_dir): New.
513         * common/pathstuff.h (get_standard_temp_dir): New.
514         * config.in: Re-generate.
515         * configure: Re-generate.
516         * configure.ac: Don't check for mkdtemp.
517         * gnulib/aclocal-m4-deps.mk: Re-generate.
518         * gnulib/aclocal.m4: Re-generate.
519         * gnulib/config.in: Re-generate.
520         * gnulib/configure: Re-generate.
521         * gnulib/import/Makefile.am: Re-generate.
522         * gnulib/import/Makefile.in: Re-generate.
523         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
524         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
525         * gnulib/import/m4/mkdtemp.m4: New file.
526         * gnulib/import/mkdtemp.c: New file.
527         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES):
528         Add mkdtemp module.
529         * unittests/mkdir-recursive-selftests.c (test): Use
530         get_standard_temp_dir.
531         (_initialize_mkdir_recursive_selftests): Remove HAVE_MKDTEMP
532         ifdef.
533         * compile/compile.c (get_compile_file_tempdir): Likewise.
534
535 2018-11-01  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
536
537         * rs6000-aix-tdep.c: Include "trad-frame.h" and "frame-unwind.h".
538         (SIG_FRAME_LR_OFFSET64): New define.
539         (SIG_FRAME_FP_OFFSET64): New define.
540         (aix_sighandle_frame_cache): New Function.
541         (aix_sighandle_frame_this_id): New Function.
542         (aix_sighandle_frame_prev_register): New Function.
543         (aix_sighandle_frame_sniffer): New Function.
544         (aix_sighandle_frame_unwind): New global variable.
545         (rs6000_aix_init_osabi): Install new frame unwinder.
546
547 2018-10-31  Sergio Durigan Junior  <sergiodj@redhat.com>
548
549         PR gdb/23835
550         * common/common-defs.h: Don't redefine _FORTIFY_SOURCE if it's
551         already defined.
552
553 2018-10-31  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
554
555         * ppc-linux-nat.c: Include nat/linux-ptrace.h.
556
557 2018-10-31  Andrew Burgess  <andrew.burgess@embecosm.com>
558
559         * dwarf2read.c (struct dwarf2_cu): Add producer_is_icc field.
560         (producer_is_icc): New function.
561         (check_producer): Set producer_is_icc field on dwarf2_cu.
562         (dwarf2_init_integer_type): New function.
563         (read_base_type): Call dwarf2_init_integer_type instead of
564         init_integer_type in all cases.
565         (dwarf2_cu::dwarf2_cu): Initialise producer_is_icc field.
566         * valprint.c (maybe_negate_by_bytes): Add an assertion that the
567         LEN is greater than 0.
568
569 2018-10-30  Tom Tromey  <tom@tromey.com>
570
571         * main.c (captured_main_1): Check return value of bfd_init.
572
573 2018-10-29  Sergio Durigan Junior  <sergiodj@redhat.com>
574
575         * common/offset-type.h (DEFINE_OFFSET_REL_OP): Delete.
576         Adjust comments.
577
578 2018-10-29  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
579
580         * procfs.c: Include common/pathstuff.h.
581
582 2018-10-28  Andrew Burgess  <andrew.burgess@embecosm.com>
583
584         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
585         Add missing braces.  No functional change.
586
587 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
588
589         * macrocmd.c (info_macro_command): Use report_unrecognized_option_error
590         to report a bad option and fix indentation.
591         * demangle.c (demangle_command): Use report_unrecognized_option_error
592         to report a bad option and correctly report the bad option.
593
594 2018-10-27  Tom Tromey  <tom@tromey.com>
595
596         PR cli/23364:
597         * darwin-nat.c (copied_shell): New global.
598         (may_have_sip): Rename from should_disable_startup_with_shell.
599         (copy_shell_to_cache, maybe_cache_shell): New functions.
600         (darwin_nat_target::create_inferior): Update.  Use
601         copied_shell.
602
603 2018-10-27  Tom Tromey  <tom@tromey.com>
604
605         * unittests/scoped_fd-selftests.c (test_to_file): New function.
606         (run_tests): Call test_to_file.
607         * dwarf-index-write.c (write_psymtabs_to_index): Do not reopen
608         temporary files.
609         * common/scoped_fd.h (scoped_fd::to_file): New method.
610
611 2018-10-27  Tom Tromey  <tom@tromey.com>
612
613         * unittests/scoped_mmap-selftests.c (test_normal): Use
614         gdb_mkostemp_cloexec.
615         * unittests/scoped_fd-selftests.c (test_destroy, test_release):
616         Use gdb_mkostemp_cloexec.
617         * gnulib/aclocal-m4-deps.mk, gnulib/aclocal.m4,
618         gnulib/config.in, gnulib/configure,
619         gnulib/import/Makefile.am, gnulib/import/Makefile.in,
620         gnulib/import/m4/gnulib-cache.m4,
621         gnulib/import/m4/gnulib-comp.m4: Update.
622         * gnulib/import/m4/mkostemp.m4: New file.
623         * gnulib/import/m4/mkstemp.m4: Remove.
624         * gnulib/import/mkostemp.c: New file.
625         * gnulib/import/mkstemp.m4: Remove.
626         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Remove
627         mkstemp, add mkostemp.  Apply new patch.
628         * gnulib/import/stdlib.in.h: Apply patch.
629         * gnulib/patches/0002-mkostemp-mkostemps-Fix-compilation-error-in-C-mode-o.patch:
630         New file.
631         * dwarf-index-write.c (write_psymtabs_to_index): Use
632         gdb_mkostemp_cloexec.
633         * common/filestuff.h (gdb_mkostemp_cloexec): New function.
634
635 2018-10-27  Tom Tromey  <tom@tromey.com>
636
637         * unittests/mkdir-recursive-selftests.c: New file.
638         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
639         unittests/mkdir-recursive-selftests.c.
640         * dwarf-index-cache.c (mkdir_recursive): Move to
641         common/filestuff.c.
642         (index_cache::store): Check return value of mkdir_recursive.
643         (create_dir_and_check, test_mkdir_recursive): Move to new file.
644         (_initialize_index_cache): Don't register test.
645         * common/filestuff.h (mkdir_recursive): Declare.
646         * common/filestuff.c (mkdir_recursive): Move from
647         dwarf-index-cache.c.  Return bool.
648
649 2018-10-27  Tom Tromey  <tom@tromey.com>
650
651         * dwarf-index-write.c (write_psymtabs_to_index): Move
652         make_temp_filename to common/pathstuff.c.
653         * common/pathstuff.h (make_temp_filename): Declare.
654         * common/pathstuff.c (make_temp_filename): New function, moved
655         from dwarf-index-write.c.
656
657 2018-10-27  Tom Tromey  <tom@tromey.com>
658
659         * procfs.c (procfs_target::create_inferior): Use get_shell.
660         * cli/cli-cmds.c (shell_escape): Use get_shell.
661         * windows-nat.c (windows_nat_target::create_inferior): Use
662         get_shell.
663         * common/pathstuff.c (get_shell): New function.
664         * nat/fork-inferior.c (SHELL_FILE, get_startup_shell): Remove.
665         (fork_inferior): Use get_shell.
666         * common/pathstuff.h (get_shell): Declare.
667
668 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
669
670         * NEWS: Mention changes to 'info [args|functions|locals|variables]'
671
672 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
673
674         * stack.c (print_variable_and_value_data): Add preg and treg.
675         (print_frame_local_vars): Add quiet, regexp and t_regexp arguments,
676         and update callers.
677         (print_frame_arg_vars): Likewise.
678         (prepare_reg): New function.
679         (info_locals_command): Extract info print args and use them.
680         (info_args_command): Likewise.
681         (_initialize_stack): Modify on-line help.
682         * symtab.c (treg_matches_sym_type_name): New function.
683         (search_symbols): New arg t_regexp.
684         (symtab_symbol_info): New args quiet, regexp, t_regexp.
685         (info_variables_command): Extract info print args and use them.
686         (info_functions_command): Likewise.
687         (info_types_command): Update call to symtab_symbol_info.
688         (_initialize_symtab): Modify on-line help.
689         * symtab.h (treg_matches_sym_type_name): New function.
690         (search_symbols): New t_regexp arg.
691
692 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
693
694         * cli-utils.c (extract_arg_maybe_quoted): New function.
695         (extract_info_print_args): New function.
696         (info_print_args_help): New function.
697         (report_unrecognized_option_error): New function.
698         * cli-utils.h (extract_arg_maybe_quoted): New function.
699         (extract_info_print_args): New function.
700         (info_print_args_help): New function.
701         (report_unrecognized_option_error): New function.
702
703 2018-10-26  Tom Tromey  <tom@tromey.com>
704
705         * dwarf2read.c (recursively_compute_inclusions): Use std::vector.
706         (compute_compunit_symtab_includes): Update.
707         * symtab.h: (symtab_ptr): Remove typedef.  Don't define a VEC.
708         (compunit_symtab_ptr): Likewise.
709
710 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
711
712         * fbsd-tdep.c (fbsd_print_auxv_entry): Only use
713         default_print_auxv_entry for specific tag values.
714
715 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
716
717         * fbsd-tdep.c (fbsd_print_auxv_entry): Handle AT_FREEBSD_HWCAP2.
718
719 2018-10-26  Jim Wilson  <jimw@sifive.com>
720
721         * riscv-linux-tdep.c: Include tramp-frame.h and trad-frame.h.
722         (riscv_linux_sigframe_init): Declare.
723         (RISCV_INST_LI_A7_SIGRETURN, RISCV_INT_ECALL): New.
724         (riscv_linux_sigframe): New.
725         (SIGFRAME_SIGINFO_SIZE, UCONTEXT_MCONTEXT_OFFSET): New.
726         (riscv_linux_sigframe_init): Define.
727         (riscv_linux_init_abi): Call tramp_frame_prepend_unwinder.
728
729         * riscv-tdep.c (riscv_isa_xlen): Refer to riscv-tdep.h comment.
730         (riscv_isa_flen): Likewise.  Drop static.
731         * riscv-tdep.h (riscv_isa_xlen): Move riscv-tdep.c comment to here.
732         (riscv_isa_flen): Likewise.  Declare.
733
734 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
735             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
736
737         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_htm_vsx32l)
738         (tdesc_powerpc_isa207_htm_vsx64l): Declare.
739         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TM_SPRREGSET)
740         (PPC32_LINUX_SIZEOF_CGPRREGSET, PPC64_LINUX_SIZEOF_CGPRREGSET)
741         (PPC_LINUX_SIZEOF_CFPRREGSET, PPC_LINUX_SIZEOF_CVMXREGSET)
742         (PPC_LINUX_SIZEOF_CVSXREGSET, PPC_LINUX_SIZEOF_CPPRREGSET)
743         (PPC_LINUX_SIZEOF_CDSCRREGSET, PPC_LINUX_SIZEOF_CTARREGSET):
744         Define.
745         (struct ppc_linux_features) <htm>: New field.
746         (ppc_linux_no_features): Add initializer for htm field.
747         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
748         new tdescs.
749         * nat/ppc-linux.h (PPC_FEATURE2_HTM, NT_PPC_TM_CGPR)
750         (NT_PPC_TM_CFPR, NT_PPC_TM_CVMX, NT_PPC_TM_CVSX)
751         (NT_PPC_TM_SPR, NT_PPC_TM_CTAR, NT_PPC_TM_CPPR, NT_PPC_TM_CDSCR):
752         Define if not already defined.
753         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-htm-vsx32l
754         and rs6000/powerpc-isa207-htm-vsx64l.
755         (XMLTOC): Add rs6000/powerpc-isa207-htm-vsx32l.xml and
756         rs6000/powerpc-isa207-htm-vsx64l.xml.
757         * features/rs6000/power-htm-spr.xml: New file.
758         * features/rs6000/power-htm-core.xml: New file.
759         * features/rs6000/power64-htm-core.xml: New file.
760         * features/rs6000/power-htm-fpu.xml: New file.
761         * features/rs6000/power-htm-altivec.xml: New file.
762         * features/rs6000/power-htm-vsx.xml: New file.
763         * features/rs6000/power-htm-ppr.xml: New file.
764         * features/rs6000/power-htm-dscr.xml: New file.
765         * features/rs6000/power-htm-tar.xml: New file.
766         * features/rs6000/powerpc-isa207-htm-vsx32l.xml: New file.
767         * features/rs6000/powerpc-isa207-htm-vsx64l.xml: New file.
768         * features/rs6000/powerpc-isa207-htm-vsx32l.c: Generate.
769         * features/rs6000/powerpc-isa207-htm-vsx64l.c: Generate.
770         * regformats/rs6000/powerpc-isa207-htm-vsx32l.dat: Generate.
771         * regformats/rs6000/powerpc-isa207-htm-vsx64l.dat: Generate.
772         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
773         fetch_regset with HTM regsets.
774         (store_register, store_ppc_registers): Call store_regset with HTM
775         regsets.
776         (ppc_linux_nat_target::read_description): Set htm field in the
777         features struct if needed.
778         * ppc-linux-tdep.c: Include
779         features/rs6000/powerpc-isa207-htm-vsx32l.c and
780         features/rs6000/powerpc-isa207-htm-vsx64l.c.
781         (ppc32_regmap_tm_spr, ppc32_regmap_cgpr, ppc64_le_regmap_cgpr)
782         (ppc64_be_regmap_cgpr, ppc32_regmap_cfpr, ppc32_le_regmap_cvmx)
783         (ppc32_be_regmap_cvmx, ppc32_regmap_cvsx, ppc32_regmap_cppr)
784         (ppc32_regmap_cdscr, ppc32_regmap_ctar): New globals.
785         (ppc32_linux_tm_sprregset, ppc32_linux_cgprregset)
786         (ppc64_be_linux_cgprregset, ppc64_le_linux_cgprregset)
787         (ppc32_linux_cfprregset, ppc32_le_linux_cvmxregset)
788         (ppc32_be_linux_cvmxregset, ppc32_linux_cvsxregset)
789         (ppc32_linux_cpprregset, ppc32_linux_cdscrregset)
790         (ppc32_linux_ctarregset): New globals.
791         (ppc_linux_cgprregset, ppc_linux_cvmxregset): New functions.
792         (ppc_linux_collect_core_cpgrregset): New function.
793         (ppc_linux_iterate_over_regset_sections): Call back with the htm
794         regsets.
795         (ppc_linux_core_read_description): Check if the tm spr section is
796         present and set htm in the features struct.
797         (_initialize_ppc_linux_tdep): Call
798         initialize_tdesc_powerpc_isa207_htm_vsx32l and
799         initialize_tdesc_powerpc_isa207_htm_vsx64l.
800         * ppc-linux-tdep.h (ppc_linux_cgprregset, ppc_linux_cvmxregset):
801         Declare.
802         (ppc32_linux_tm_sprregset, ppc32_linux_cfprregset)
803         (ppc32_linux_cvsxregset, ppc32_linux_cpprregset)
804         (ppc32_linux_cdscrregset, ppc32_linux_ctarregset): Declare.
805         * ppc-tdep.h (struct gdbarch_tdep) <have_htm_spr, have_htm_core>:
806         New fields.
807         <have_htm_fpu, have_htm_altivec, have_htm_vsx>:
808         Likewise.
809         <ppc_cppr_regnum, ppc_cdscr_regnum, ppc_ctar_regnum>: Likewise.
810         <ppc_cdl0_regnum, ppc_cvsr0_regnum, ppc_cefpr0_regnum>: Likewise.
811         (enum) <PPC_TFHAR_REGNUM, PPC_TEXASR_REGNUM, PPC_TFIAR_REGNUM>:
812         New enum fields.
813         <PPC_CR0_REGNUM, PPC_CCR_REGNUM, PPC_CXER_REGNUM>: Likewise.
814         <PPC_CLR_REGNUM, PPC_CCTR_REGNUM, PPC_CF0_REGNUM>: Likewise.
815         <PPC_CFPSCR_REGNUM, PPC_CVR0_REGNUM, PPC_CVSCR_REGNUM>: Likewise.
816         <PPC_CVRSAVE_REGNUM, PPC_CVSR0_UPPER_REGNUM>: Likewise.
817         <PPC_CPPR_REGNUM, PPC_CDSCR_REGNUM>: Likewise.
818         <PPC_CTAR_REGNUM>: Likewise.
819         (PPC_IS_TMSPR_REGNUM, PPC_IS_CKPTGP_REGNUM, PPC_IS_CKPTFP_REGNUM)
820         (PPC_IS_CKPTVMX_REGNUM, PPC_IS_CKPTVSX_REGNUM): Define.
821         * rs6000-tdep.c (IS_CDFP_PSEUDOREG, IS_CVSX_PSEUDOREG)
822         (IS_CEFP_PSEUDOREG): Define.
823         (rs6000_register_name): Hide the upper halves of checkpointed VSX
824         registers.  Return names for the checkpointed DFP, VSX, and EFP
825         pseudo registers.
826         (rs6000_pseudo_register_type): Remove initial assert and raise an
827         internal error in the else clause instead.  Return types for the
828         checkpointed DFP, VSX, and EFP pseudo registers.
829         (dfp_pseudo_register_read, dfp_pseudo_register_write): Handle
830         checkpointed DFP pseudo registers.
831         (vsx_pseudo_register_read, vsx_pseudo_register_write): Handle
832         checkpointed VSX pseudo registers.
833         (efp_pseudo_register_read, efp_pseudo_register_write): Rename
834         from efpr_pseudo_register_read and
835         efpr_pseudo_register_write.  Handle checkpointed EFP pseudo
836         registers.
837         (rs6000_pseudo_register_read, rs6000_pseudo_register_write):
838         Handle checkpointed DFP, VSX, and EFP registers.
839         (dfp_ax_pseudo_register_collect, vsx_ax_pseudo_register_collect)
840         (efp_ax_pseudo_register_collect): New functions.
841         (rs6000_ax_pseudo_register_collect): Move DFP, VSX and EFP pseudo
842         register logic to new functions.  Handle checkpointed DFP, VSX,
843         and EFP pseudo registers.
844         (rs6000_gdbarch_init): Look for and validate the htm features.
845         Include checkpointed DFP, VSX and EFP pseudo-registers.
846         * NEWS: Mention access to PPR, DSCR, TAR, EBB/PMU registers and
847         HTM registers.
848
849 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
850
851         * rs6000-tdep.c (rs6000_gdbarch_init): Reject tdescs with vsx but
852         without altivec or fpu.
853
854 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
855             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
856
857         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_EBBREGSET)
858         (PPC_LINUX_SIZEOF_PMUREGSET): Declare.
859         * nat/ppc-linux.h (PPC_FEATURE2_EBB, NT_PPC_EBB, NT_PPC_PMU):
860         Define if not already defined.
861         * features/rs6000/power-ebb.xml: New file.
862         * features/rs6000/power-linux-pmu.xml: New file.
863         * features/rs6000/powerpc-isa207-vsx32l.xml: Include ebb and pmu
864         features.
865         * features/rs6000/powerpc-isa207-vsx64l.xml: Likewise.
866         * features/rs6000/powerpc-isa207-vsx32l.c: Re-generate.
867         * features/rs6000/powerpc-isa207-vsx64l.c: Re-generate.
868         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Re-generate.
869         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Re-generate.
870         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
871         fetch_regset with ebb and pmu regsets.
872         (store_register, store_ppc_registers): Call store_regset with ebb
873         and pmu regsets.
874         (ppc_linux_nat_target::read_description): Set isa207 field in the
875         features struct if ebb and pmu are avaiable.
876         * ppc-linux-tdep.c (ppc32_regmap_ebb, ppc32_regmap_pmu)
877         (ppc32_linux_ebbregset, ppc32_linux_pmuregset): New globals.
878         (ppc_linux_iterate_over_regset_sections): Call back with the ebb
879         and pmu regsets.
880         (ppc_linux_core_read_description): Check if the pmu section is
881         present and set isa207 in the features struct.
882         * ppc-linux-tdep.h (ppc32_linux_ebbregset)
883         (ppc32_linux_pmuregset): Declare.
884         * ppc-tdep.h (struct gdbarch_tdep) <ppc_mmcr0_regnum>: New field.
885         <ppc_mmcr2_regnum, ppc_siar_regnum, ppc_sdar_regnum>: New fields.
886         <ppc_sier_regnum>: New field.
887         (enum): <PPC_BESCR_REGNUM, PPC_EBBHR_REGNUM, PPC_EBBRR_REGNUM>:
888         New enum values.
889         <PPC_MMCR0_REGNUM, PPC_MMCR2_REGNUM, PPC_SIAR_REGNUM>: New enum
890         values.
891         <PPC_SDAR_REGNUM, PPC_SIER_REGNUM>: New enum values.
892         (PPC_IS_EBB_REGNUM, PPC_IS_PMU_REGNUM): Define.
893         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate the
894         ebb and pmu features.
895
896 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
897             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
898
899         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_vsx32l)
900         (tdesc_powerpc_isa207_vsx64l): Declare.
901         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TARREGSET): Define.
902         (struct ppc_linux_features) <isa207>: New field.
903         (ppc_linux_no_features): Add initializer for isa207 field.
904         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
905         new tdescs.
906         * nat/ppc-linux.h (PPC_FEATURE2_ARCH_2_07, PPC_FEATURE2_TAR)
907         (NT_PPC_TAR): Define if not already defined.
908         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-vsx32l and
909         rs6000/powerpc-isa207-vsx64l.
910         (XMLTOC): Add rs6000/powerpc-isa207-vsx32l.xml and
911         rs6000/powerpc-isa207-vsx64l.xml.
912         * features/rs6000/power-tar.xml: New file.
913         * features/rs6000/powerpc-isa207-vsx32l.xml: New file.
914         * features/rs6000/powerpc-isa207-vsx64l.xml: New file.
915         * features/rs6000/powerpc-isa207-vsx32l.c: Generate.
916         * features/rs6000/powerpc-isa207-vsx64l.c: Generate.
917         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Generate.
918         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Generate.
919         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
920         fetch_regset with the TAR regset.
921         (store_register, store_ppc_registers): Call store_regset with the
922         TAR regset.
923         (ppc_linux_nat_target::read_description): Set isa207 field in the
924         features struct if needed.
925         * ppc-linux-tdep.c: Include
926         features/rs6000/powerpc-isa207-vsx32l.c and
927         features/rs6000/powerpc-isa207-vsx64l.c.
928         (ppc32_regmap_tar, ppc32_linux_tarregset): New globals.
929         (ppc_linux_iterate_over_regset_sections): Call back with the tar
930         regset.
931         (ppc_linux_core_read_description): Check if the tar section is
932         present and set isa207 in the features struct.
933         (_initialize_ppc_linux_tdep): Call
934         initialize_tdesc_powerpc_isa207_vsx32l and
935         initialize_tdesc_powerpc_isa207_vsx64l.
936         * ppc-linux-tdep.h (ppc32_linux_tarregset): Declare.
937         * ppc-tdep.h (gdbarch_tdep) <ppc_tar_regnum>: New field.
938         (enum) <PPC_TAR_REGNUM>: New enum value.
939         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate tar
940         feature.
941         (ppc_process_record_op31): Record changes to TAR.
942
943 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
944             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
945
946         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa205_ppr_dscr_vsx32l)
947         (tdesc_powerpc_isa205_ppr_dscr_vsx64l): Declare.
948         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_PPRREGSET)
949         (PPC_LINUX_SIZEOF_DSCRREGSET): Define.
950         (struct ppc_linux_features) <ppr_dscr>: New field.
951         (ppc_linux_no_features): Add initializer for ppr_dscr field.
952         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
953         new tdescs.
954         * nat/ppc-linux.h (PPC_FEATURE2_DSCR, NT_PPC_PPR, NT_PPC_DSCR):
955         Define if not already defined.
956         * features/Makefile (WHICH): Add
957         rs6000/powerpc-isa205-ppr-dscr-vsx32l and
958         rs6000/powerpc-isa205-ppr-dscr-vsx64l.
959         (XMLTOC): Add rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml and
960         rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml.
961         * features/rs6000/power-dscr.xml: New file.
962         * features/rs6000/power-ppr.xml: New file.
963         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml: New file.
964         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml: New file.
965         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c: Generate.
966         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c: Generate.
967         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx32l.dat: Generate.
968         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx64l.dat: Generate.
969         * ppc-linux-nat.c: Include <sys/uio.h>.
970         (fetch_regset, store_regset, check_regset): New functions.
971         (fetch_register, fetch_ppc_registers): Call fetch_regset with
972         DSCR and PPR regsets.
973         (store_register, store_ppc_registers): Call store_regset with
974         DSCR and PPR regsets.
975         (ppc_linux_get_hwcap2): New function.
976         (ppc_linux_nat_target::read_description): Call
977         ppc_linux_get_hwcap2 and check_regset, set ppr_dscr field in the
978         features struct if needed.
979         * ppc-linux-tdep.c: Include
980         features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c and
981         features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c.
982         (ppc32_regmap_ppr, ppc32_regmap_dscr, ppc32_linux_pprregset)
983         (ppc32_linux_dscrregset): New globals.
984         (ppc_linux_iterate_over_regset_sections): Call back with the ppr
985         and dscr regsets.
986         (ppc_linux_core_read_description): Check if the ppr and dscr
987         sections are present and set ppr_dscr in the features struct.
988         (_initialize_ppc_linux_tdep): Call
989         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx32l and
990         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx64l.
991         * ppc-linux-tdep.h (ppc32_linux_pprregset)
992         (ppc32_linux_dscrregset): Declare.
993         * ppc-tdep.h (struct gdbarch_tdep) <ppc_ppr_regnum>: New field.
994         <ppc_dscr_regnum>: New field.
995         (enum) <PPC_PPR_REGNUM, PPC_DSCR_REGNUM>: New enum values.
996         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate ppr
997         and dscr features.
998         (ppc_process_record_op31): Record changes to PPR and DSCR.
999
1000 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1001
1002         * rs6000-tdep.c (rs6000_gdbarch_init): Replace line wrapping by a
1003         second initializer line for the have_* variables.  Initialize
1004         have_fpu to 0 instead of 1.
1005
1006 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1007
1008         * arch/ppc-linux-common.c (ppc_linux_match_description):
1009         Parenthesize tdesc assignements and indent them properly.
1010
1011 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1012
1013         * ppc-linux-nat.c (fetch_register): Change if statement to else
1014         if.
1015         (store_register): Likewise.
1016
1017 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1018
1019         * rs6000-tdep.c: Remove reggroups.h include.
1020         (rs6000_pseudo_register_reggroup_p): Remove.
1021         (rs6000_gdbarch_init): Remove call to
1022         set_tdesc_pseudo_register_reggroup_p.
1023
1024 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1025
1026         * reggroups.c (default_register_reggroup_p): Return true for
1027         decfloat registers and float_reggroup.
1028
1029 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1030
1031         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): Remove.
1032         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): Replace
1033         ppc_linux_collect_vrregset by regcache_collect_regset.
1034
1035 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1036
1037         * linux-tdep.c (linux_collect_regset_section_cb): Use
1038         std::vector<gdb_byte> instead of char * and malloc for buf.
1039         Remove xfree.
1040
1041 2018-10-26  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
1042
1043         * xcoffread.c (read_xcoff_symtab): Pass deduced language to
1044         symtab_start instead of always using language_unknown.
1045
1046 2018-10-26  Andrew Burgess  <andrew.burgess@embecosm.com>
1047
1048         * riscv-tdep.c (riscv_read_misa_reg): Update comment, remove
1049         READ_P parameter, catch and ignore register access errors from
1050         either the old or new MISA location.
1051         (riscv_has_feature): Update call to riscv_read_misa_reg.
1052
1053 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
1054
1055         * python/py-function.c (convert_values_to_python): Return
1056         gdbpy_ref<>.  Add header comment.
1057         (fnpy_call): Adjust.
1058
1059 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
1060
1061         * python/py-cmd.c (cmdpy_completer_helper): Return gdbpy_ref<>.
1062         (cmdpy_completer_handle_brkchars): Adjust.
1063         (cmdpy_completer): Adjust.
1064
1065 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
1066
1067         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
1068         Pass correct regnum to raw_supply_zeroed.
1069
1070 2018-10-23  Hafiz Abid Qadeer  <abidh@codesourcery.com>
1071
1072         * regcache.c (cooked_read_test): Add CSKY to the list of
1073         architectures with a save_reggroup
1074
1075 2018-10-23  Simon Marchi  <simon.marchi@polymtl.ca>
1076
1077         PR gdb/23368
1078         * infrun.c (follow_exec): In the follow_exec_mode_new case,
1079         transfer terminal state from old new new inferior.
1080         * terminal.h (swap_terminal_info): New function.
1081         * inflow.c (swap_terminal_info): New function.
1082
1083 2018-10-23  Tom Tromey  <tom@tromey.com>
1084
1085         * record-btrace.c (get_thread_current_frame_id): Rename from
1086         get_thread_current_frame.  Return a frame_id.
1087         (record_btrace_start_replaying): Update.
1088
1089 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
1090
1091         * riscv-tdep.c (riscv_register_name): Use the user-friendly names
1092         for CSRs.
1093
1094 2018-10-23  Joel Brobecker  <brobecker@adacore.com>
1095
1096         * riscv-tdep.c (riscv_gdbarch_init): Set the gdbarch's
1097         have_nonsteppable_watchpoint attribute to 1.
1098
1099 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
1100
1101         * riscv-tdep.c (riscv_gdb_reg_names): Update comment, and all
1102         register names.
1103         (struct register_alias): Rename to...
1104         (struct riscv_register_alias): ...this, and update comment.
1105         (riscv_register_aliases): Update type, and alias names.  Remove
1106         CSR names from this list.
1107         (riscv_register_name): Use riscv_gdb_reg_names for int and float
1108         register names.  Add an extra assertion.
1109         (riscv_is_regnum_a_named_csr): New function.
1110         (riscv_register_reggroup_p): Use riscv_is_regnum_a_named_csr.
1111
1112 2018-10-23  John Darrington  <john@darrington.wattle.id.au>
1113
1114         * configure.tgt: Add configuration for s12z.
1115         * s12z-tdep.c:  New file.
1116         * NEWS: Mention new target.
1117
1118 2018-10-22  Jim Wilson  <jimw@sifive.com>
1119
1120         * riscv-tdep.c (riscv_push_dummy_call) <in_reg>: Check for value in
1121         FP reg smaller than FP reg size, and fill with -1 instead of 0.
1122
1123         * riscv-tdep.c (riscv_fpreg_d_type, riscv_fpreg_q_type): New.
1124         (riscv_register_type): Use them.
1125         (riscv_print_one_register_info): Handle union of floats same as float.
1126         * riscv-tdep.h (struct gdbarch_tdep): Add riscv_fpreg_d_type and
1127         riscv_fpreg_q_type fields.
1128
1129 2018-10-21  Simon Marchi  <simon.marchi@ericsson.com>
1130
1131         * gdbarch.sh (gdbarch_num_cooked_regs): New.
1132         * gdbarch.h: Re-generate.
1133         * ax-gdb.c (gen_expr): Use gdbarch_num_cooked_regs.
1134         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
1135         * eval.c (evaluate_subexp_standard): Likewise.
1136         * findvar.c (value_of_register): Likewise.
1137         (value_of_register_lazy): Likewise.
1138         (address_from_register): Likewise.
1139         * frame.c (get_frame_register_bytes): Likewise.
1140         * gdbarch-selftests.c (register_to_value_test): Likewise.
1141         * h8300-tdep.c (h8300_register_type): Likewise.
1142         * i386-tdep.c (i386_dbx_reg_to_regnum): Likewise.
1143         (i386_svr4_reg_to_regnum): Likewise.
1144         * infcmd.c (default_print_registers_info): Likewise.
1145         (registers_info): Likewise.
1146         (print_vector_info): Likewise.
1147         (default_print_float_info): Likewise.
1148         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
1149         * mdebugread.c (mdebug_reg_to_regnum): Likewise.
1150         * mi/mi-main.c (mi_cmd_data_list_register_names): Likewise.
1151         (mi_cmd_data_list_changed_registers): Likewise.
1152         (mi_cmd_data_list_register_values): Likewise.
1153         (mi_cmd_data_write_register_values): Likewise.
1154         (mi_cmd_trace_frame_collected): Likewise.
1155         * mips-tdep.c (print_gp_register_row): Likewise.
1156         (mips_print_registers_info): Likewise.
1157         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
1158         * regcache.c (init_regcache_descr): Likewise.
1159         (register_size): Likewise.
1160         (register_dump::dump): Likewise.
1161         (cooked_read_test): Likewise.
1162         (cooked_write_test): Likewise.
1163         * rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
1164         (rs6000_gdbarch_init): Likewise.
1165         * stabsread.c (stab_reg_to_regnum): Likewise.
1166         * stack.c (info_frame_command): Likewise.
1167         * target-descriptions.c (tdesc_register_name): Likewise.
1168         * trad-frame.c (trad_frame_alloc_saved_regs): Likewise.
1169         * tui/tui-regs.c (tui_show_register_group): Likewise.
1170         * user-regs.c (user_reg_map_name_to_regnum): Likewise.
1171         (user_reg_map_regnum_to_name): Likewise.
1172         (value_of_user_reg): Likewise.
1173         (maintenance_print_user_registers): Likewise.
1174         * xtensa-tdep.c (xtensa_find_register_by_name): Likewise.
1175         (xtensa_register_name): Likewise.
1176         (xtensa_register_type): Likewise.
1177         (xtensa_reg_to_regnum): Likewise.
1178         (xtensa_pseudo_register_read): Likewise.
1179         (xtensa_pseudo_register_write): Likewise.
1180
1181 2018-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
1182
1183         * amd64-tdep.c (amd64_pseudo_register_read_value): Use
1184         correctly-sized buffer with raw_read.
1185         (amd64_pseudo_register_write): Use correctly-sized buffer for
1186         raw_read/raw_write.
1187
1188 2018-10-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1189
1190         * typeprint.c (_initialize_typeprint): Fix wrong prefixname arg
1191         in add_prefix_cmd of set print type.
1192
1193 2018-10-19  Tom Tromey  <tom@tromey.com>
1194
1195         PR tui/18388:
1196         * NEWS: Mention tabset deprecation.
1197         * tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
1198         (update_tab_width): New function.
1199         (tui_set_tab_width, tui_show_tab_width): New functions.
1200         (tui_set_tab_width_command): Use update_tab_width.
1201         (_initialize_tui_win): Move to end of file.  Deprecate "tabset".
1202         Add new "set tui tab-width" command.
1203         * tui/tui-source.c (tui_set_source_content): Update.
1204         * tui/tui-disasm.c (tui_set_disassem_content): Update.
1205         * tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
1206         Don't declare.
1207         (tui_tab_width): Declare.
1208         * tui/tui-data.c (default_tab_len, tui_default_tab_len)
1209         (tui_set_default_tab_len): Remove.
1210
1211 2018-10-19  Tom Tromey  <tom@tromey.com>
1212
1213         * tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
1214         (key_is_backspace, tui_getc): Don't declare.
1215         * tui/tui-io.c (key_is_start_sequence): Now static.
1216         (key_is_end_sequence, key_is_backspace): Remove.
1217         (tui_getc): Now static.
1218
1219 2018-10-19  Tom Tromey  <tom@tromey.com>
1220
1221         * symfile.c (reread_symbols): Clear "static_links".
1222
1223 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
1224
1225         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
1226         define.
1227         (aarch64_linux_sigframe_init): Extra boundary checks.
1228
1229 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
1230
1231         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
1232         the possibly non-existent tdesc type 'vec128', but the type of raw
1233         register v16 instead.
1234
1235 2018-10-19  Gary Benson <gbenson@redhat.com>
1236
1237         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
1238
1239 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
1240
1241         PR cli/23785
1242         * cli/cli-dump.c (restore_binary_file): Check if "file" is
1243         NULL.
1244
1245 2018-10-17  Paul Koning  <paul_koning@dell.com>
1246
1247         * charset.c (convert_between_encodings): Fix unsigned overflow.
1248
1249 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
1250
1251         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
1252         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
1253         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
1254         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
1255         New functions.
1256         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
1257         and fbsd_info_proc_mappings_header.
1258         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
1259         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
1260         New.
1261
1262 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
1263
1264         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
1265         Solaris Maintainer.
1266
1267 2018-10-15  Tom Tromey  <tom@tromey.com>
1268
1269         * tui/tui.c (strcat_to_buf): Remove casts.
1270         * tui/tui-winsource.c (tui_show_source_line)
1271         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
1272         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
1273         * tui/tui-windata.c (tui_first_data_item_displayed)
1274         (tui_delete_data_content_windows, tui_erase_data_content)
1275         (tui_display_all_data, tui_display_data_from)
1276         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
1277         * tui/tui-win.c (tui_set_win_height)
1278         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
1279         casts.
1280         * tui/tui-win.c (tui_resize_all): Remove casts.
1281         (tui_scroll_backward_command, tui_set_focus)
1282         (tui_set_tab_width_command): Likewise.
1283         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
1284         * tui/tui-regs.c (tui_show_register_group): Remove cast.
1285         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
1286         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
1287         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
1288         Remove casts.
1289
1290 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
1291
1292         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
1293         AArch64/ARM maintainer.
1294
1295 2018-10-11  Gary Benson <gbenson@redhat.com>
1296
1297         * interps.h (interp::m_name): Make private and mutable.
1298         * interps.c (interp::~interp): Free m_name.
1299
1300 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
1301             Simon Marchi <simark@simark.ca>
1302
1303         * README (`configure' options): Add documentation for new
1304         "--enable-unit-tests" option.
1305         * acinclude.m4: Include "selftest.m4".
1306         * configure: Regenerate.
1307         * configure.ac: Use "GDB_AC_SELFTEST".
1308         * maint.c (maintenance_selftest): Update message informing
1309         that selftests have been disabled.
1310         (maintenance_info_selftests): Likewise.
1311         * selftest.m4: New file.
1312
1313 2018-10-10  Gary Benson <gbenson@redhat.com>
1314
1315         * remote.c (remote_target::remote_send_printf): Add
1316         missing va_end found by Coverity.
1317
1318 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
1319
1320         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
1321
1322 2018-10-09  Tom Tromey  <tom@tromey.com>
1323
1324         * configure: Rebuild.
1325         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
1326         * NEWS: Update --enable-ubsan documentation.
1327
1328 2018-10-09  Gary Benson <gbenson@redhat.com>
1329
1330         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
1331         found by Coverity.
1332
1333 2018-10-08  Tom Tromey  <tom@tromey.com>
1334
1335         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
1336         variable.
1337         (riscv_fbsd_init_abi): Likewise.
1338
1339 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
1340         * valops.c (value_struct_elt_for_reference): Rename local variable
1341         to work around the shadowing a previous local warning.
1342
1343 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
1344
1345         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
1346         * NEWS: Mention new FreeBSD/riscv native configuration.
1347         * configure.host: Add riscv*-*-freebsd*.
1348         * configure.nat: Likewise.
1349         * riscv-fbsd-nat.c: New file.
1350
1351 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
1352
1353         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
1354         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
1355         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
1356         * NEWS: Mention new FreeBSD/riscv target.
1357         * configure.tgt: Add riscv*-*-freebsd*.
1358         * riscv-fbsd-tdep.c: New file.
1359         * riscv-fbsd-tdep.h: New file.
1360
1361 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
1362
1363         * regcache.h (struct regcache_map_entry): Note that this type can
1364         be used with traditional frame caches.
1365         * trad-frame.c (trad_frame_set_reg_regmap): New.
1366         * trad-frame.h (trad_frame_set_reg_regmap): New.
1367
1368 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
1369
1370         PR c++/16841
1371         * valops.c (get_virtual_base_offset): New function.
1372         (value_struct_elt_for_reference): Use it to get virtual base offset
1373         and add it in calculating class member address.
1374
1375 2018-10-08  John Darrington  <john@darrington.wattle.id.au>
1376
1377         * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
1378         (check_producer): Check if the producer is codewarrior.
1379         (producer_is_codewarrior): New function.
1380         (lnp_state_machine::record_line): Ignore is_stmt flag for records
1381         produced by codewarrior.
1382         (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
1383
1384 2018-10-06  Tom Tromey  <tom@tromey.com>
1385
1386         PR python/19399:
1387         * python/py-inferior.c: Add "architecture" entry.
1388         (infpy_architecture): New function.
1389
1390 2018-10-06  Tom Tromey  <tom@tromey.com>
1391
1392         PR python/21765:
1393         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
1394         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
1395         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
1396         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
1397
1398 2018-10-06  Tom Tromey  <tom@tromey.com>
1399
1400         PR build/17077:
1401         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
1402         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
1403         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
1404         #include.
1405
1406 2018-10-06  Tom Tromey  <tom@tromey.com>
1407
1408         * python/py-breakpoint.c (bppy_get_location): Handle a
1409         bp_breakpoint without a location.
1410
1411 2018-10-06  Tom Tromey  <tom@tromey.com>
1412
1413         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
1414         (_RegEx): Reformat help text.
1415         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
1416         (AnyCallerIs, AnyCallerMatches): Reformat help text.
1417         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
1418         text.
1419         * python/lib/gdb/command/xmethods.py (InfoXMethod)
1420         (EnableXMethod, DisableXMethod): Remove help indentation.
1421         Capitalize meta-syntactic variables.
1422         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
1423         (EnableUnwinder, DisableUnwinder): Remove help indentation.
1424         Capitalize meta-syntactic variables.
1425         * python/lib/gdb/command/explore.py (ExploreCommand)
1426         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
1427         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
1428         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
1429         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
1430         Remove help indentation.
1431         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
1432         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
1433         (DisableFrameFilter, SetFrameFilterPriority)
1434         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
1435
1436 2018-10-06  Tom Tromey  <tom@tromey.com>
1437
1438         PR tui/28819:
1439         * tui/tui-io.c (gdb_wgetch): New function.
1440         (tui_mld_getc, tui_getc): Use it.
1441
1442 2018-10-05  Tom Tromey  <tom@tromey.com>
1443
1444         * sol-thread.c (sol_thread_target::wait): Rename inner
1445         "save_ptid".
1446
1447 2018-10-04  Tom Tromey  <tom@tromey.com>
1448
1449         * configure: Rebuild.
1450         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
1451
1452 2018-10-04  Tom Tromey  <tom@tromey.com>
1453
1454         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
1455         declaration of "block".
1456
1457 2018-10-04  Tom Tromey  <tom@tromey.com>
1458
1459         * common/filestuff.c (fdwalk): Remove inner declaration of
1460         "result".
1461
1462 2018-10-04  Tom Tromey  <tom@tromey.com>
1463
1464         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
1465         "structs_addr" and hoist declaration.
1466
1467 2018-10-04  Tom Tromey  <tom@tromey.com>
1468
1469         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
1470         variable "size".
1471
1472 2018-10-04  Tom Tromey  <tom@tromey.com>
1473
1474         * mdebugread.c (parse_partial_symbols): Use std::string.
1475
1476 2018-10-04  Tom Tromey  <tom@tromey.com>
1477
1478         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
1479         * p-valprint.c (pascal_val_print): Split inner "i" variable.
1480         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
1481         header.
1482         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
1483         more inner scope.
1484         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
1485         * varobj.c (varobj_update): Rename inner "newobj",
1486         "type_changed".
1487         * valprint.c (generic_emit_char): Rename inner "buf".
1488         * valops.c (find_overload_match): Rename inner "temp".
1489         (value_struct_elt_for_reference): Declare "v" in more inner
1490         scope.
1491         * v850-tdep.c (v850_push_dummy_call): Rename "len".
1492         * unittests/array-view-selftests.c (run_tests): Rename inner
1493         "vec".
1494         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
1495         header.
1496         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
1497         "tsv" in more inner scope.
1498         (print_one_static_tracepoint_marker): Rename inner
1499         "tuple_emitter".
1500         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
1501         (tic6x_push_dummy_call): Don't redeclare "addr".
1502         * target-float.c: Declare "dto" lower.
1503         * symtab.c (lookup_local_symbol): Rename inner "sym".
1504         (find_pc_sect_line): Rename inner "pc".
1505         * stack.c (print_frame): Don't redeclare "gdbarch".
1506         (return_command): Rename inner "gdbarch".
1507         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
1508         "sp".
1509         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
1510         header.
1511         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
1512         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
1513         scope.
1514         * remote.c (remote_target::update_thread_list): Don't redeclare
1515         "tp".
1516         (remote_target::process_initial_stop_replies): Rename inner
1517         "thread".
1518         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
1519         (remote_target::wait_as): Don't redeclare "stop_reply".
1520         (remote_target::get_thread_local_address): Rename inner
1521         "result".
1522         (remote_target::get_tib_address): Likewise.
1523
1524         * regcache.c (cooked_read_test): Rename "regnum".
1525         * record-btrace.c (cmd_record_btrace_start): Rename inner
1526         "exception".
1527         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
1528         loop header.
1529         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
1530         header.
1531         (ppu2spu_sniffer): Rename inner "buf".
1532         * parse.c (operator_check_standard): Rename inner "type",
1533         "objfile".
1534         * p-valprint.c (pascal_val_print): Introduce new scope for
1535         "low_bound", "high_bound".
1536         * p-exp.y (yylex): Declare "i" in loop header.
1537         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
1538         Lower declaration of "s".
1539         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
1540         header.
1541         (nios2_push_dummy_call): Rename "len".
1542         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
1543         "buf".
1544         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
1545         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
1546         (linux_xfer_osdata_modules): Likewise.
1547         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
1548         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
1549         (mips_o64_push_dummy_call): Likewise.
1550         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
1551         "op".
1552         * mi/mi-main.c (list_available_thread_groups): Rename inner
1553         "tuple_emitter".
1554         (mi_cmd_data_read_memory): Rename inner "opts".
1555         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
1556         "tuple_emitter".
1557         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
1558         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
1559         more inner scope.
1560         (parse_partial_symbols): Rename inner "pst", "p", "name"
1561         * main.c (captured_main_1): Rename inner "i"s.
1562         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
1563         "oso2".
1564         * linux-tdep.c (linux_info_proc): Rename inner "filename".
1565         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
1566         * infrun.c (handle_no_resumed): Don't redeclare "thread".
1567         (handle_signal_stop): Rename inner "gdbarch".
1568         (handle_command): Declare "signum" in loop header.
1569         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
1570         "status".
1571         (examine_prologue): Rename inner "sol" and "sof".
1572         (ia64_extract_return_value): Rename inner "val".  Declare another
1573         "val" in a more inner scope.
1574         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
1575         inner scope.
1576         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
1577         "except".
1578         * findvar.c (default_read_var_value): Don't redeclare "addr".
1579         * f-exp.y (yylex): Declare "i" in loop header.
1580         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
1581         Rename inner "type", "expect_type".
1582         (evaluate_subexp_for_sizeof): Rename inner "pc".
1583         * elfread.c (elf_symfile_read): Rename inner "abfd".
1584         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
1585         "bytes_read".
1586         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
1587         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
1588         (dwarf_decode_line_header): Rename inner "lh".
1589         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
1590         "offset".  Declare "i" in loop header.
1591         (disassemble_dwarf_expression): Rename inner "addr_size".
1592         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
1593         inner "result".
1594         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
1595         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
1596         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
1597         "inner_list_emitter".
1598         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
1599         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
1600         declaration in a block.
1601         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
1602         * cp-valprint.c (cp_print_value_fields): Don't redeclare
1603         "obstack_final_size".
1604         * cp-support.c (inspect_type): Declare "i" in loop header.
1605         * compile/compile.c (compile_instance::insert_symbol_error):
1606         Rename inner "e".
1607         * common/agent.c (agent_run_command): Remove inner "ret"
1608         declaration.
1609         * coffread.c (coff_symfile_read): Rename inner "name".
1610         (coff_symfile_read): Rename inner "abfd".
1611         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
1612         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
1613         "high".
1614         * c-exp.y (lex_one_token): Move "len" declaration lower.
1615         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
1616         "gdbarch".
1617         (create_exception_master_breakpoint): Likewise.  Don't redeclare
1618         "b".
1619         (watch_command_1): Declare "mark" later.
1620         (clear_command): Don't shadow "a" or "b".
1621         (delete_command): Rename inner "b".
1622         (delete_trace_command): Likewise.
1623         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
1624         "op".
1625         (arm_gdbarch_init): Remove inner "e_flags".
1626         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
1627         "offset" in inner blocks.
1628
1629 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
1630
1631         * dwarf-index-write.c (file_write): Don't write if the vector is
1632         empty.
1633
1634 2018-10-05  Tom de Vries  <tdevries@suse.de>
1635
1636         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
1637         PyArg_ParseTuple call.
1638
1639 2018-10-05  Tom de Vries  <tdevries@suse.de>
1640
1641         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
1642         PyArg_ParseTuple call.
1643
1644 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
1645
1646         * psymtab.c (recursively_search_psymtabs): Reformat parameters
1647         to avoid exceeding 80 characters per line limit.
1648
1649 2018-10-04  Tom Tromey  <tom@tromey.com>
1650
1651         * symfile.c (syms_from_objfile_1, finish_new_objfile)
1652         (reread_symbols): Update.
1653         * complaints.h (clear_complaints): Remove argument.
1654         * complaints.c (enum complaint_series): Remove.
1655         (series): Remove global.
1656         (complaint_internal): Update.
1657         (clear_complaints): Remove argument.
1658
1659 2018-10-04  Tom Tromey  <tom@tromey.com>
1660
1661         * symfile.c (symbol_file_add_with_addrs): Do not print "no
1662         debugging symbols" message if there is a separate debug objfile.
1663
1664 2018-10-04  Tom Tromey  <tom@tromey.com>
1665
1666         PR cli/19551:
1667         * symfile.c (symbol_file_add_with_addrs): Update output.
1668         * psymtab.c (require_partial_symbols): Update output.
1669
1670 2018-10-04  Tom Tromey  <tom@tromey.com>
1671
1672         PR cli/22234:
1673         * complaints.c: Emit \n.
1674
1675 2018-10-04  Tom Tromey  <tom@tromey.com>
1676
1677         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
1678         (separate_debug_file_exists, find_separate_debug_file)
1679         (add_symbol_file_command, reread_symbols, allocate_symtab)
1680         (allocate_compunit_symtab): Use filtered printing, not
1681         unfiltered.
1682         * psymtab.c (require_partial_symbols, dump_psymtab)
1683         (allocate_psymtab): Use filtered printing, not unfiltered.
1684
1685 2018-10-04  Tom Tromey  <tom@tromey.com>
1686
1687         * complaints.c (complaint_internal): Correctly check complaint
1688         count.
1689
1690 2018-10-04  Tom Tromey  <tom@tromey.com>
1691
1692         * complaints.h (struct complaints): Remove declaration.
1693         * complaints.c (clear_complaints): Remove an unused variable.
1694
1695 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1696
1697         * MAINTAINERS (Write After Approval): Add self.
1698
1699 2018-10-03  Tom Tromey  <tom@tromey.com>
1700
1701         * guile/scm-value.c (gdbscm_value_to_string): Initialize
1702         "buffer_contents".
1703         * coffread.c (coff_symtab_read): Initialize "newobj".
1704
1705 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
1706
1707         * dwarf2read.c (read_func_scope): Remove struct keyword in
1708         range-based for.
1709
1710 2018-10-03  Tom Tromey  <tom@tromey.com>
1711
1712         * README: Mention --enable-ubsan.
1713         * NEWS: Mention --enable-ubsan.
1714         * acinclude.m4: Include sanitize.m4.
1715         * configure: Rebuild.
1716         * configure.ac: Call AM_GDB_UBSAN.
1717         * sanitize.m4: New file.
1718
1719 2018-10-03  Tom Tromey  <tom@tromey.com>
1720
1721         * expression.h (enum exp_opcode): Use uint8_t as base type.
1722         * expprint.c (op_name): Handle invalid opcodes.
1723
1724 2018-10-03  Tom Tromey  <tom@tromey.com>
1725
1726         * parse.c (prefixify_expression): Add assert.
1727         (parse_exp_in_context_1): Throw exception if the expression is
1728         empty.
1729
1730 2018-10-03  Tom Tromey  <tom@tromey.com>
1731
1732         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
1733
1734 2018-10-03  Tom Tromey  <tom@tromey.com>
1735
1736         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
1737
1738 2018-10-03  Tom Tromey  <tom@tromey.com>
1739
1740         * dwarf2read.c (read_subrange_type): Make "negative_mask"
1741         unsigned.
1742
1743 2018-10-03  Tom Tromey  <tom@tromey.com>
1744
1745         * findvar.c (extract_integer): Do work in an unsigned type.
1746
1747 2018-10-03  Tom Tromey  <tom@tromey.com>
1748
1749         * common/enum-flags.h (enum_flags::operator~): Add static assert.
1750         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
1751         base type.
1752         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
1753         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
1754         type.
1755         * c-lang.h (enum c_string_type_values): Use unsigned as base
1756         type.
1757         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
1758
1759 2018-10-03  Tom Tromey  <tom@tromey.com>
1760
1761         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
1762         <~dwarf2_frame_state_reg_info>: Update.
1763         <dwarf2_frame_state_reg_info>: Update.
1764         <alloc_regs>: Add assertion.  Update.
1765         <reg>: Now a std::vector.
1766         <num_regs>: Remove.
1767         <swap>: Update.
1768         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
1769         (execute_cfa_program_test, dwarf2_frame_cache): Update.
1770
1771 2018-10-03  Tom Tromey  <tom@tromey.com>
1772
1773         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
1774
1775 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1776
1777         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
1778
1779 2018-10-02  Tom Tromey  <tom@tromey.com>
1780
1781         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
1782
1783 2018-10-02  John Darrington  <john@darrington.wattle.id.au>
1784
1785         * NEWS: Mention changed commands.
1786         * ser-uds.c: New file.
1787         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
1788         * configure: Regenerate.
1789         * Makefile.in: Add new file.
1790         * serial.c (serial_open): Check if filename is a socket
1791         and lookup the appropriate interface accordingly.
1792
1793 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
1794
1795         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
1796         define.
1797         (AARCH64_EXTRA_MAGIC): Likewise.
1798         (AARCH64_FPSIMD_MAGIC): Likewise.
1799         (AARCH64_SVE_MAGIC): Likewise.
1800         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
1801         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
1802         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
1803         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
1804         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
1805         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
1806         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
1807         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
1808         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
1809         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
1810         (read_aarch64_ctx): Add function.
1811         (aarch64_linux_sigframe_init): Detect FP registers.
1812
1813 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
1814
1815         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
1816         (AARCH64_D0_REGNUM): Likewise.
1817         (AARCH64_S0_REGNUM): Likewise.
1818         (AARCH64_H0_REGNUM): Likewise.
1819         (AARCH64_B0_REGNUM): Likewise.
1820         (AARCH64_SVE_V0_REGNUM): Likewise.
1821         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
1822         (AARCH64_D0_REGNUM): Likewise.
1823         (AARCH64_S0_REGNUM): Likewise.
1824         (AARCH64_H0_REGNUM): Likewise.
1825         (AARCH64_B0_REGNUM): Likewise.
1826         (AARCH64_SVE_V0_REGNUM): Likewise.
1827
1828 2018-10-01  Gary Benson <gbenson@redhat.com>
1829
1830         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
1831         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
1832         prfpregset_t instead of gdb_prfpregset_t.
1833         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
1834         * configure, config.in: Rebuild.
1835
1836 2018-10-01  Gary Benson <gbenson@redhat.com>
1837
1838         * common/gdb_proc_service.h: New file, factored out from...
1839         * gdb_proc_service.h: Moved common code to the above file.
1840         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
1841
1842 2018-10-01  Gary Benson <gbenson@redhat.com>
1843
1844         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
1845         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
1846
1847 2018-10-01  Gary Benson <gbenson@redhat.com>
1848
1849         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
1850         (AC_CHECK_HEADERS): Check for linux/elf.h.
1851         * configure, config.in: Rebuild.
1852         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
1853         doesn't define elf_fpregset_t.
1854
1855 2018-10-01  Gary Benson <gbenson@redhat.com>
1856
1857         * gdb_proc_service.h: Whitespace change.
1858
1859 2018-10-01  Tom Tromey  <tom@tromey.com>
1860
1861         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
1862         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
1863         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
1864
1865 2018-10-01  Tom Tromey  <tom@tromey.com>
1866
1867         * README: Minor change.
1868
1869 2018-09-30  Pedro Alves  <palves@redhat.com>
1870
1871         * darwin-nat-info.c (darwin_debug_regions_recurse)
1872         (info_mach_exceptions_command): Remove unused local variables.
1873         * darwin-nat.c (darwin_decode_notify_message)
1874         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
1875         (darwin_stop_inferior, darwin_setup_exceptions)
1876         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
1877         (darwin_nat_target::attach, darwin_nat_target::detach)
1878         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
1879         local variables.
1880         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
1881         variables.
1882
1883 2018-09-29  Tom Tromey  <tom@tromey.com>
1884
1885         * README: Remove some leftover text.
1886
1887 2018-09-29  Tom Tromey  <tom@tromey.com>
1888
1889         * PROBLEMS: Rewrite.
1890         * README: Update.
1891
1892 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
1893
1894         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
1895         case with explicit breakpoint kind.
1896         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
1897         'additional_info' and related logic.
1898         (riscv_debug_breakpoints): New variable.
1899         (riscv_breakpoint_kind_from_pc): Use the length of the existing
1900         instruction to determine the breakpoint kind.
1901         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
1902         flag.  Update description of 'set/show riscv
1903         use-compressed-breakpoints' flag.
1904
1905 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
1906
1907         (NEWS): Mention changes to frame related commands.
1908         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
1909         (add_prefix_cmd_suppress_notification): New function.
1910         (add_com_suppress_notification): Call
1911         add_cmd_suppress_notification.
1912         * command.h (add_cmd_suppress_notification): Declare.
1913         (add_prefix_cmd_suppress_notification): Declare.
1914         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
1915         (parse_frame_specification): Moved from stack.c, with
1916         simplification to handle a single argument.
1917         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
1918         switch to the selected frame.  Add a header comment.
1919         * stack.c: Remove 'safe-ctype.h' include.
1920         (find_frame_for_function): Add declaration.
1921         (find_frame_for_address): New function.
1922         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
1923         (frame_selection_by_function_completer): New function.
1924         (info_frame_command): Rename to...
1925         (info_frame_command_core): ...this, and update parameter types.
1926         (select_frame_command): Rename to...
1927         (select_frame_command_core): ...this, and update parameter types.
1928         (frame_command): Rename to...
1929         (frame_command_core): ...this, and update parameter types.
1930         (class frame_command_helper): New class to wrap implementations of
1931         frame related sub-commands.
1932         (frame_apply_cmd_list): New static global.
1933         (frame_cmd_list): Make static.
1934         (select_frame_cmd_list): New global for sub-commands.
1935         (info_frame_cmd_list): New global for sub-commands.
1936         (_initialize_stack): Register sub-commands for 'frame',
1937         'select-frame', and 'info frame'.  Update 'frame apply' commands
1938         to use frame_apply_cmd_list.  Move function local static
1939         frame_apply_list to file static frame_apply_cmd_list for
1940         consistency.
1941         * stack.h (select_frame_command): Delete declarationn.
1942         (select_frame_for_mi): Declare new function.
1943
1944 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
1945
1946         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
1947         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
1948         and NOP.
1949
1950 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
1951
1952         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
1953
1954 2018-09-26  Tom Tromey  <tom@tromey.com>
1955
1956         * valops.c (auto_abandon): Remove dead code.
1957
1958 2018-09-26  Tom Tromey  <tom@tromey.com>
1959
1960         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
1961
1962 2018-09-24  Tom Tromey  <tom@tromey.com>
1963
1964         * common/pathstuff.c (get_standard_cache_dir): Make
1965         "xdg_cache_home" and "home" const.
1966         * top.c (init_history): Make "tmpenv" const.
1967         * main.c (get_init_files): Make "homedir" const.
1968
1969 2018-09-23  Tom Tromey  <tom@tromey.com>
1970
1971         PR python/18852:
1972         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
1973
1974 2018-09-23  Tom Tromey  <tom@tromey.com>
1975
1976         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
1977         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
1978         * python/python-internal.h (gdbpy_handle_exception): Declare.
1979         * python/py-utils.c (gdbpy_handle_exception): New function.
1980
1981 2018-09-23  Tom Tromey  <tom@tromey.com>
1982
1983         PR python/17284:
1984         * python/py-type.c (typy_template_argument): Check for negative
1985         argument number.
1986
1987 2018-09-23  Tom Tromey  <tom@tromey.com>
1988
1989         PR python/14062:
1990         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
1991
1992 2018-09-23  Tom Tromey  <tom@tromey.com>
1993
1994         PR python/18170:
1995         * python/py-value.c (valpy_int): Allow conversion from pointer
1996         type.
1997
1998 2018-09-23  Tom Tromey  <tom@tromey.com>
1999
2000         PR python/20126:
2001         * python/py-value.c (valpy_int): Respect type sign.
2002
2003 2018-09-23  Tom Tromey  <tom@tromey.com>
2004
2005         PR python/18352;
2006         * python/py-value.c (valpy_float): Allow conversions from int or
2007         char.
2008         (valpy_int, valpy_long): Allow conversions from float.
2009
2010 2018-09-23  Tom Tromey  <tom@tromey.com>
2011
2012         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
2013         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
2014
2015 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2016
2017         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
2018         __sighndlr.
2019         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
2020
2021 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
2022
2023         * windows-nat.c (windows_nat_target::wait): Remove a spurious
2024         target_terminal::ours().
2025
2026 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
2027
2028         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
2029         of vl to ULONGEST.
2030
2031 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
2032
2033         * breakpoint.c (update_inserted_breakpoint_locations): Remove
2034         redundant condition.
2035
2036 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2037
2038         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
2039
2040         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
2041         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
2042         * sol-thread.c (ps_pdmodel): Don't guard definition.
2043
2044         * procfs.c: Fix formatting.
2045
2046         * procfs.c (sysset_t_alloc): Remove.
2047         (create_procinfo): Use XNEW instead of sysset_t_alloc.
2048         (procfs_debug_inferior): Likewise.
2049         (procfs_set_exec_trap): Likewise.
2050         (proc_set_traced_sysentry): Don't allocate argp dynamically.
2051         (proc_set_traced_sysexit): Likewise.
2052
2053         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
2054         (dead_procinfo): Likewise.
2055         (proc_warn): Likewise.
2056         (proc_error): Likewise.
2057         (proc_get_LDT_entry): Likewise.
2058         (do_attach): Likewise.
2059         (procfs_target::pid_to_str): Likewise.
2060         (iterate_over_mappings): Likewise.
2061
2062         * procfs.c (create_procinfo): Fix ARI warning.
2063         (proc_get_status): Likewise.
2064         (proc_stop_process): Likewise.
2065         (proc_run_process): Likewise.
2066         (proc_kill): Likewise.
2067         (proc_get_LDT_entry): Likewise.
2068         (procfs_find_LDT_entry): Likewise.
2069         (proc_update_threads): Likewise.
2070         (proc_iterate_over_threads): Likewise.
2071         (do_attach): Likewise.
2072         (procfs_xfer_memory): Likewise.
2073         (invalidate_cache): Likewise.
2074         (procfs_target::resume): Likewise.
2075         (procfs_init_inferior): Likewise.
2076         (procfs_set_exec_trap): Likewise.
2077         (procfs_target::thread_alive): Likewise.
2078         (procfs_target::pid_to_exec_file): Likewise.
2079         (iterate_over_mappings): Likewise.
2080         (procfs_target::make_corefile_notes): Likewise.
2081         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
2082
2083         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
2084         (procfs_find_LDT_entry): Likewise.
2085         * sol-thread.c (ps_lgetLDT): Likewise.
2086
2087 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2088
2089         PR tdep/17903
2090         * procfs.c (procfs_target): Declare pid_to_exec_file.
2091         (procfs_target::pid_to_exec_file): New.
2092
2093 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2094
2095         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
2096         renaming.
2097         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
2098         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
2099
2100 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2101
2102         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
2103         (supply_fpregset, fill_fpregset): Move ...
2104         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
2105         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
2106         Remove references to ioctl-based procfs.
2107         Include <sys/reg.h>.
2108         Remove PR_MODEL_NATIVE guards.
2109         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
2110         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
2111
2112 2018-09-19  Xavier Roirand  <roirand@adacore.com>
2113
2114         PR gdb/20981:
2115         * solib-darwin.c (darwin_get_dyld_bfd): New function.
2116         (darwin_solib_get_all_image_info_addr_at_init): Update call.
2117         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
2118
2119 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
2120
2121         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
2122         (fbsd_print_sockaddr_in6): Likewise.
2123
2124 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
2125             Chris January  <chris.january@arm.com>
2126
2127         * eval.c (skip_undetermined_arglist): Skip argument list helper.
2128         (evaluate_subexp_standard): Return a dummy type when
2129         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
2130         OP_F77_UNDETERMINED_ARGLIST case.
2131         * expression.h (enum noside): Update comment.
2132
2133 2018-09-19  George Vasick <george.vasick@oracle.com>
2134
2135         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
2136
2137 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
2138             April Chin <april.chin@oracle.com>
2139             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2140
2141         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
2142         uint_t lwpid_t.
2143         (create_procinfo): Print pids in /proc without leading zeros.
2144
2145 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
2146
2147         * nios2-tdep.c (nios2_gcc_target_options): New.
2148         (nios2_gdb_arch_init): Install new hook.
2149
2150 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
2151
2152         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
2153         New file.
2154         * update-gnulib.sh: Apply patch.
2155         * configure: Re-generate.
2156
2157 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2158
2159         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
2160         description.  Make "info proc" command descriptions more
2161         consistent.
2162
2163 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2164
2165         * NEWS: Mention 'info proc files' command.
2166
2167 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2168
2169         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
2170         descriptors for IP_FILES and IP_ALL.
2171
2172 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2173
2174         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
2175         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
2176         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
2177         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
2178         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
2179         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
2180         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
2181         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
2182         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
2183         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
2184         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
2185         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
2186         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
2187         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
2188         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
2189         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
2190         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
2191         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
2192         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
2193         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
2194         (struct fbsd_sockaddr_un): New types.
2195         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
2196         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
2197         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
2198         (fbsd_core_info_proc_files): New functions.
2199         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
2200         IP_ALL.
2201         * fbsd-tdep.h (fbsd_info_proc_files_header)
2202         (fbsd_info_proc_files_entry): New.
2203
2204 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2205
2206         * defs.h (enum info_proc_what) [IP_FILES]: New value.
2207         * infcmd.c (info_proc_cmd_files): New function.
2208         (_initialize_infcmd): Register 'info proc files' command.
2209
2210 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2211
2212         * gnulib/aclocal-m4-deps.mk: Re-generate.
2213         * gnulib/aclocal.m4: Re-generate.
2214         * gnulib/config.in: Re-generate.
2215         * gnulib/configure: Re-generate.
2216         * gnulib/import/Makefile.am: Re-generate.
2217         * gnulib/import/Makefile.in: Re-generate.
2218         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
2219         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
2220         * gnulib/import/arpa_inet.in.h: New file.
2221         * gnulib/import/inet_ntop.c: New file.
2222         * gnulib/import/m4/arpa_inet_h.m4: New file.
2223         * gnulib/import/m4/inet_ntop.m4: New file.
2224         * gnulib/import/m4/netinet_in_h.m4: New file.
2225         * gnulib/import/m4/socklen.m4: New file.
2226         * gnulib/import/m4/sockpfaf.m4: New file.
2227         * gnulib/import/m4/stdalign.m4: New file.
2228         * gnulib/import/m4/sys_uio_h.m4: New file.
2229         * gnulib/import/netinet_in.in.h: New file.
2230         * gnulib/import/stdalign.in.h: New file.
2231         * gnulib/import/sys_socket.c: New file.
2232         * gnulib/import/sys_socket.in.h: New file.
2233         * gnulib/import/sys_uio.in.h: New file.
2234         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
2235         module.
2236
2237 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2238
2239         * gnulib/aclocal-m4-deps.mk: New file.
2240         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
2241         deterministically.
2242
2243 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2244
2245         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
2246         KVE_PATH.
2247
2248 2018-09-18  Tom Tromey  <tom@tromey.com>
2249
2250         * compile/compile-object-load.c (struct
2251         link_hash_table_cleanup_data): Add constructor and destructor.
2252         Use DISABLE_COPY_AND_ASSIGN.
2253         (~link_hash_table_cleanup_data): Rename from
2254         link_hash_table_free.  Now a destructor.
2255         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
2256
2257 2018-09-18  Tom Tromey  <tom@tromey.com>
2258
2259         * compile/compile-object-run.c (do_module_cleanup): Use delete.
2260         * compile/compile-object-load.c (struct munmap_list): Move to
2261         header file.
2262         (munmap_list::add): Rename from munmap_list_add; rewrite.
2263         (munmap_list::~munmap_list): Rename from munmap_list_free.
2264         (munmap_listp_free_cleanup): Remove.
2265         (compile_object_load): Update.
2266         * compile/compile-object-load.h (struct munmap_list): Move from
2267         compile-object-load.c.  Rewrite.
2268
2269 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
2270
2271         * aarch64-tdep.c (pass_in_v): Use register size.
2272         (aarch64_extract_return_value): Likewise.
2273         (aarch64_store_return_value): Likewise.
2274
2275 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2276
2277         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
2278         rlim_t.
2279
2280 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2281
2282         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
2283         Fix short help line.
2284
2285 2018-09-17  Tom Tromey  <tom@tromey.com>
2286
2287         PR python/20445:
2288         * configure: Rebuild.
2289         * configure.ac: Conditionally use -DNDEBUG for Python.
2290
2291 2018-09-17  Tom Tromey  <tom@tromey.com>
2292
2293         * configure: Rebuild.
2294         * configure.ac: Use gmp as a library dependency when checking for
2295         mpfr.
2296
2297 2018-09-17  Pedro Alves  <palves@redhat.com>
2298
2299         * python/py-inferior.c (find_inferior_object): Delete.
2300
2301 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
2302
2303         * compile/compile-cplus-types.c
2304         (compile_cplus_instance::enter_scope): Don't use new_scope after
2305         std::move.
2306
2307 2018-09-17  Tom Tromey  <tom@tromey.com>
2308
2309         * common/pathstuff.c (get_standard_cache_dir): Use
2310         ~/Library/Caches on macOS.
2311         * common/pathstuff.h (get_standard_cache_dir): Update comment.
2312
2313 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
2314
2315         PR python/23669
2316         * breakpoint.c (commands_cmd_element): New.
2317         (_initialize_breakpoint): Assign commands_cmd_element.
2318         * breakpoint.h (commands_cmd_element): New.
2319         * cli/cli-script.c (while_cmd_element, if_command,
2320         define_cmd_element): New.
2321         (command_name_equals): Remove.
2322         (process_next_line): Compare commands by pointer, not by name.
2323         (_initialize_cli_script): Assign the various cmd_list_element
2324         variables.
2325         * compile/compile.c (compile_cmd_element): New.
2326         (_initialize_compile): Assign compile_cmd_element.
2327         * compile/compile.h (compile_cmd_element): New.
2328         * guile/guile.c (guile_cmd_element): New.
2329         (install_gdb_commands): Assign guile_cmd_element.
2330         * guile/guile.h (guile_cmd_element): New.
2331         * python/python.c (python_cmd_element): New.
2332         (_initialize_python): Assign python_cmd_element.
2333         * python/python.h (python_cmd_element): New.
2334         * tracepoint.c (while_stepping_cmd_element): New.
2335         (_initialize_tracepoint): Assign while_stepping_cmd_element.
2336         * tracepoint.h (while_stepping_cmd_element): New.
2337
2338 2018-09-17  Tom Tromey  <tom@tromey.com>
2339
2340         * infrun.c (save_infcall_suspend_state): Return
2341         infcall_suspend_state_up.
2342         (save_infcall_control_state): Return infcall_control_state_up.
2343         * inferior.h (save_infcall_suspend_state)
2344         (save_infcall_control_state): Declare later.  Return unique
2345         pointers.
2346
2347 2018-09-17  Tom Tromey  <tom@tromey.com>
2348
2349         * infrun.c (struct stop_context): Declare constructor,
2350         destructor, "changed" method.
2351         (stop_context::stop_context): Rename from save_stop_context.
2352         (stop_context::~stop_context): Rename from
2353         release_stop_context_cleanup.
2354         (normal_stop): Update.
2355         (stop_context::changed): Rename from stop_context_changed.  Return
2356         bool.
2357
2358 2018-09-17  Tom Tromey  <tom@tromey.com>
2359
2360         * inferior.h (struct infcall_suspend_state_deleter): New.
2361         (infcall_suspend_state_up): New typedef.
2362         (struct infcall_control_state_deleter): New.
2363         (infcall_control_state_up): New typedef.
2364         (make_cleanup_restore_infcall_suspend_state)
2365         (make_cleanup_restore_infcall_control_state): Don't declare.
2366         * infcall.c (call_function_by_hand_dummy): Update.
2367         * infrun.c (do_restore_infcall_suspend_state_cleanup)
2368         (make_cleanup_restore_infcall_suspend_state): Remove.
2369         (do_restore_infcall_control_state_cleanup)
2370         (make_cleanup_restore_infcall_control_state): Remove.
2371
2372 2018-09-17  Tom Tromey  <tom@tromey.com>
2373
2374         * gdbthread.h (struct thread_control_state): Add initializer.
2375         (class thread_info) <control>: Remove initializer.
2376         * inferior.h (struct inferior_control_state): Add initializer.
2377         (class inferior) <control>: Remove initializer.
2378         (exit_inferior_1): Update.
2379         * infrun.c (struct infcall_control_state): Add constructors.
2380         (save_infcall_control_state): Use new.
2381         (restore_infcall_control_state, discard_infcall_control_state):
2382         Use delete.
2383
2384 2018-09-17  Tom Tromey  <tom@tromey.com>
2385
2386         * infrun.c (struct infcall_suspend_state) <registers>: Now a
2387         unique_ptr.
2388         <siginfo_data>: Now a unique_xmalloc_ptr.
2389         (save_infcall_suspend_state, restore_infcall_suspend_state)
2390         (discard_infcall_suspend_state)
2391         (get_infcall_suspend_state_regcache): Update.
2392
2393 2018-09-17  Tom Tromey  <tom@tromey.com>
2394
2395         * gdbthread.h (struct thread_suspend_state): Add initializers.
2396         (class thread_info) <suspend>: Remove initializer.
2397         * infrun.c (struct infcall_suspend_state): Add initializers.
2398         (save_infcall_suspend_state): Use new.
2399         (discard_infcall_suspend_state): Use delete.
2400
2401 2018-09-16  Tom Tromey  <tom@tromey.com>
2402
2403         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
2404         Remove.
2405         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
2406         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
2407         (py_varobj_iter_new): Likewise.
2408         (py_varobj_get_iterator): Use gdbpy_ref.
2409
2410 2018-09-16  Tom Tromey  <tom@tromey.com>
2411
2412         * python/py-threadevent.c (py_get_event_thread): Simplify.
2413         * python/py-inferior.c (infpy_thread_from_thread_handle):
2414         Return immediately after calling thread_to_thread_object.  Use
2415         Py_RETURN_NONE.
2416         (thread_to_thread_object): Set the exception on a NULL return.
2417
2418 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
2419
2420         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
2421
2422 2018-09-16  Tom Tromey  <tom@tromey.com>
2423
2424         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
2425         Remove.
2426
2427 2018-09-16  Tom Tromey  <tom@tromey.com>
2428
2429         * python/python-internal.h (thread_to_thread_object): Change
2430         return type.
2431         * python/py-inferior.c (thread_to_thread_object): Return a new
2432         reference.
2433         (infpy_thread_from_thread_handle): Update.
2434         * python/py-infthread.c (gdbpy_selected_thread): Update.
2435         * python/py-stopevent.c (create_stop_event_object): Update.
2436         * python/py-threadevent.c (py_get_event_thread): Return a new
2437         reference.
2438         (py_get_event_thread): Update.
2439         * python/py-event.h (py_get_event_thread): Change return type.
2440         * python/py-continueevent.c (create_continue_event_object):
2441         Update.
2442
2443 2018-09-16  Tom Tromey  <tom@tromey.com>
2444
2445         * python/py-progspace.c (pspy_get_objfiles): Update.
2446         * python/python-internal.h (objfile_to_objfile_object): Change
2447         return type.
2448         * python/py-newobjfileevent.c (create_new_objfile_event_object):
2449         Update.
2450         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
2451         Update.
2452         * python/python.c (gdbpy_get_current_objfile): Update.
2453         (gdbpy_objfiles): Update.
2454         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
2455         Update.
2456         (objfile_to_objfile_object): Return a new reference.
2457         * python/py-symtab.c (stpy_get_objfile): Update.
2458         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
2459         Update.
2460
2461 2018-09-16  Tom Tromey  <tom@tromey.com>
2462
2463         * python/py-inferior.c (infpy_get_progspace): Update.
2464         * python/python-internal.h (pspace_to_pspace_object): Change
2465         return type.
2466         * python/py-newobjfileevent.c
2467         (create_clear_objfiles_event_object): Update.
2468         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
2469         Update.
2470         * python/python.c (gdbpy_get_current_progspace): Update.
2471         (gdbpy_progspaces): Update.
2472         * python/py-progspace.c (pspace_to_pspace_object): Return a new
2473         reference.
2474         * python/py-objfile.c (objfpy_get_progspace): Update.
2475         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
2476         Update.
2477
2478 2018-09-16  Tom Tromey  <tom@tromey.com>
2479
2480         * python/lib/gdb/__init__.py (current_progspace, objfiles)
2481         (solib_name, block_for_pc, find_pc_line): New functions.
2482         (execute_unwinders): Update.
2483         * python/py-block.c (gdbpy_block_for_pc): Remove.
2484         * python/py-inferior.c (infpy_get_progspace): New function.
2485         (inferior_object_getset) <progspace>: Add.
2486         * python/py-progspace.c (pspy_objfiles): Rewrite.
2487         (pspy_solib_name, pspy_block_for_pc)
2488         (pspy_find_pc_line, pspy_is_valid): New functions.
2489         (progspace_object_methods): Add entries for solib_name,
2490         block_for_pc, find_pc_line, is_valid.
2491         * python/python-internal.h (gdbpy_block_for_pc)
2492         (build_objfiles_list): Don't declare.
2493         * python/python.c: Don't include solib.h.
2494         (gdbpy_solib_name, gdbpy_find_pc_line)
2495         (gdbpy_get_current_progspace, build_objfiles_list)
2496         (gdbpy_objfiles): Remove.
2497         (GdbMethods) <current_progspace, objfiles, block_for_pc,
2498         solib_name, find_pc_line>: Remove entries.
2499
2500 2018-09-16  Tom Tromey  <tom@tromey.com>
2501
2502         * top.c (new_ui_command): Use GNU style for metasyntactic
2503         variables.
2504         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
2505         variables.
2506         * maint.c (maintenance_translate_address): Remove "<>" around
2507         text.
2508         * interps.c (interpreter_exec_cmd): Use GNU style for
2509         metasyntactic variables.
2510         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
2511         metasyntactic variables.
2512         * tracepoint.c (tfind_range_command): Use GNU style for
2513         metasyntactic variables.
2514         (tfind_outside_command): Likewise.
2515         (_initialize_tracepoint): Likewise.
2516         * remote.c (extended_remote_target::create_inferior): Use GNU
2517         style for metasyntactic variables.
2518         * sparc64-tdep.c (adi_examine_command): Use GNU style for
2519         metasyntactic variables.
2520         (adi_assign_command): Likewise.
2521
2522 2018-09-16  Tom Tromey  <tom@tromey.com>
2523
2524         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
2525         metasyntactic variables.  Print message if no disassembler options
2526         are available.
2527
2528 2018-09-15  Tom Tromey  <tom@tromey.com>
2529
2530         * infcmd.c (get_inferior_args): Return const char *.
2531         * inferior.h (get_inferior_args): Return type now const.
2532         * linux-tdep.c (linux_fill_prpsinfo): Update.
2533         * procfs.c (procfs_target::make_corefile_notes): Update.
2534
2535 2018-09-07  Tom Tromey  <tom@tromey.com>
2536
2537         * python/python.c (execute_gdb_command): Call bpstat_do_actions
2538         inside the TRY.
2539
2540 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
2541
2542         * nios2-tdep.c (nios2_type_align): New.
2543         (nios2_gdb_arch_init): Install type_align hook.
2544
2545 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
2546
2547         * eval.c (fake_method::fake_method): Call xzalloc directly for a
2548         type that is neither object file owned, nor gdbarch owned.
2549         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
2550         gdbarch is non-NULL.
2551         (alloc_type_instance): Allocate non-objfile owned types on the
2552         gdbarch obstack.
2553         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
2554         using TYPE_ALLOC to ensure memory is allocated on the correct
2555         obstack.
2556         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
2557         obstack, or the gdbarch obstack.
2558         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
2559
2560 2018-09-14  Tom Tromey  <tom@tromey.com>
2561
2562         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
2563         block.
2564
2565 2018-09-14  Tom Tromey  <tom@tromey.com>
2566
2567         * nat/fork-inferior.c (get_startup_shell): Remove "static".
2568
2569 2018-09-13  Tom Tromey  <tom@tromey.com>
2570
2571         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
2572         static.
2573
2574 2018-09-13  Tom Tromey  <tom@tromey.com>
2575
2576         * exec.c (try_open_exec_file): Use std::string.
2577
2578 2018-09-13  Tom Tromey  <tom@tromey.com>
2579
2580         * utils.h (gdb_bfd_errmsg): Return std::string.
2581         * exec.c (exec_file_attach): Update.
2582         * compile/compile-object-load.c (compile_object_load): Update.
2583         * utils.c (gdb_bfd_errmsg): Return std::string.
2584
2585 2018-09-13  Tom Tromey  <tom@tromey.com>
2586
2587         * procfs.c (struct procinfo_deleter): New.
2588         (procinfo_up): New typedef.
2589         (do_destroy_procinfo_cleanup): Remove.
2590         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
2591
2592 2018-09-13  Tom Tromey  <tom@tromey.com>
2593
2594         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
2595
2596 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2597 2018-09-13  Tom Tromey  <tom@tromey.com>
2598
2599         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
2600         (pspy_get_objfiles): New function.
2601         (progspace_object_methods): New.
2602         (pspace_object_type): Add tp_methods callback.
2603         * python/python-internal.h (build_objfiles_list): New
2604         declaration.
2605         * python/python.c (build_objfiles_list): New function.
2606         (gdbpy_objfiles): Implement using build_objfiles_list.
2607         * NEWS: Mention the Progspace.objfiles method.
2608
2609 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2610
2611         * python/py-inferior.c (infpy_get_progspace): New function.
2612         (inferior_object_getset): Add progspace property.
2613         * NEWS: Mention the new property.
2614
2615 2018-09-13  Tom Tromey  <tom@tromey.com>
2616
2617         PR rust/23650:
2618         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
2619
2620 2018-09-13  Tom Tromey  <tom@tromey.com>
2621
2622         PR rust/23626:
2623         * rust-lang.c (rust_enum_variant): Now static.
2624         (rust_empty_enum_p): New function.
2625         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
2626         Handle empty enum.
2627
2628 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2629
2630         * python/py-inferior.c (infpy_repr): New.
2631         (inferior_object_type): Register infpy_repr.
2632         * python/py-objfile.c (objfpy_repr): New.
2633         (objfile_object_type): Register objfpy_repr.
2634
2635 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
2636
2637         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
2638
2639 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
2640
2641         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
2642         typo.
2643
2644 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
2645
2646         * common/common-utils.c: Don't include '<sys/stat.h>'.
2647         (is_regular_file): Move to...
2648         * common/filestuff.c (is_regular_file): ... here.
2649         * common/common-utils.h (is_regular_file): Move to...
2650         * common/filestuff.h (is_regular_file): ... here.
2651
2652 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
2653
2654         * skip.c (debug_skip): New variable.
2655         (skiplist_entry::do_skip_file_p): Add debug output.
2656         (skiplist_entry::do_skip_gfile_p): Likewise.
2657         (skiplist_entry::skip_function_p): Likewise.
2658         (_initialize_step_skip): Create debug command.
2659         * NEWS: Mention set/show debug skip.
2660
2661 2018-09-11  Xavier Roirand  <roirand@adacore.com>
2662
2663         * darwin-nat.c (should_disable_startup_with_shell):
2664         New function.
2665         (darwin_nat_target::create_inferior): Add call.
2666
2667 2018-09-11  Xavier Roirand  <roirand@adacore.com>
2668
2669         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
2670         inf_port, msg_state>: Initialize.
2671         (struct darwin_thread_info) <signaled, single_step>: Change
2672         type and initialize.
2673         (struct darwin_thread_info) <event>: Initialize.
2674
2675 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2676
2677         PR gdb/23555
2678         PR gdb/23558
2679         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
2680         guesses.
2681
2682 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2683
2684         Revert:
2685         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
2686
2687         PR gdb/23555
2688         PR gdb/23558
2689         * gnulib/aclocal.m4: Regenerate.
2690         * gnulib/config.in: Regenerate.
2691         * gnulib/configure: Regenerate.
2692         * gnulib/import/Makefile.am: Update.
2693         * gnulib/import/Makefile.in: Update.
2694         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
2695         * gnulib/import/_Noreturn.h: ... this.
2696         * gnulib/import/alloca.in.h: Update.
2697         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
2698         * gnulib/import/arg-nonnull.h: ... this.
2699         * gnulib/import/assure.h: Update.
2700         * gnulib/import/at-func.c: Update.
2701         * gnulib/import/basename-lgpl.c: Update.
2702         * gnulib/import/extra/snippet/c++defs.h: Rename to...
2703         * gnulib/import/c++defs.h: ... this.
2704         * gnulib/import/canonicalize-lgpl.c: Update.
2705         * gnulib/import/cdefs.h: Update.
2706         * gnulib/import/chdir-long.c: Update.
2707         * gnulib/import/chdir-long.h: Update.
2708         * gnulib/import/cloexec.c: Update.
2709         * gnulib/import/cloexec.h: Update.
2710         * gnulib/import/close.c: Update.
2711         * gnulib/import/closedir.c: Update.
2712         * gnulib/import/config.charset: Update.
2713         * gnulib/import/dirent-private.h: Update.
2714         * gnulib/import/dirent.in.h: Update.
2715         * gnulib/import/dirfd.c: Update.
2716         * gnulib/import/dirname-lgpl.c: Update.
2717         * gnulib/import/dirname.h: Update.
2718         * gnulib/import/dosname.h: Update.
2719         * gnulib/import/dup-safer-flag.c: Update.
2720         * gnulib/import/dup-safer.c: Update.
2721         * gnulib/import/dup.c: Update.
2722         * gnulib/import/dup2.c: Update.
2723         * gnulib/import/errno.in.h: Update.
2724         * gnulib/import/error.c: Update.
2725         * gnulib/import/error.h: Update.
2726         * gnulib/import/exitfail.c: Update.
2727         * gnulib/import/exitfail.h: Update.
2728         * gnulib/import/extra/update-copyright: Update.
2729         * gnulib/import/fchdir.c: Update.
2730         * gnulib/import/fcntl.c: Update.
2731         * gnulib/import/fcntl.in.h: Update.
2732         * gnulib/import/fd-hook.c: Update.
2733         * gnulib/import/fd-hook.h: Update.
2734         * gnulib/import/fd-safer-flag.c: Update.
2735         * gnulib/import/fd-safer.c: Update.
2736         * gnulib/import/fdopendir.c: Update.
2737         * gnulib/import/filename.h: Update.
2738         * gnulib/import/filenamecat-lgpl.c: Update.
2739         * gnulib/import/filenamecat.h: Update.
2740         * gnulib/import/flexmember.h: Update.
2741         * gnulib/import/float+.h: Update.
2742         * gnulib/import/float.c: Update.
2743         * gnulib/import/float.in.h: Update.
2744         * gnulib/import/fnmatch.c: Update.
2745         * gnulib/import/fnmatch.in.h: Update.
2746         * gnulib/import/fnmatch_loop.c: Update.
2747         * gnulib/import/fpucw.h: Update.
2748         * gnulib/import/frexp.c: Update.
2749         * gnulib/import/frexpl.c: Update.
2750         * gnulib/import/fstat.c: Update.
2751         * gnulib/import/fstatat.c: Update.
2752         * gnulib/import/getcwd-lgpl.c: Update.
2753         * gnulib/import/getcwd.c: Update.
2754         * gnulib/import/getdtablesize.c: Update.
2755         * gnulib/import/getlogin_r.c: Update.
2756         * gnulib/import/getprogname.c: Update.
2757         * gnulib/import/getprogname.h: Update.
2758         * gnulib/import/gettext.h: Update.
2759         * gnulib/import/gettimeofday.c: Update.
2760         * gnulib/import/glob-libc.h: Update.
2761         * gnulib/import/glob.c: Update.
2762         * gnulib/import/glob.in.h: Update.
2763         * gnulib/import/glob_internal.h: Update.
2764         * gnulib/import/glob_pattern_p.c: Update.
2765         * gnulib/import/globfree.c: Update.
2766         * gnulib/import/hard-locale.c: Update.
2767         * gnulib/import/hard-locale.h: Update.
2768         * gnulib/import/intprops.h: Update.
2769         * gnulib/import/inttypes.in.h: Update.
2770         * gnulib/import/isnan.c: Update.
2771         * gnulib/import/isnand-nolibm.h: Update.
2772         * gnulib/import/isnand.c: Update.
2773         * gnulib/import/isnanl-nolibm.h: Update.
2774         * gnulib/import/isnanl.c: Update.
2775         * gnulib/import/itold.c: Update.
2776         * gnulib/import/libc-config.h: Update.
2777         * gnulib/import/limits.in.h: Update.
2778         * gnulib/import/localcharset.c: Update.
2779         * gnulib/import/localcharset.h: Update.
2780         * gnulib/import/localtime-buffer.c: Update.
2781         * gnulib/import/localtime-buffer.h: Update.
2782         * gnulib/import/lstat.c: Update.
2783         * gnulib/import/m4/00gnulib.m4: Update.
2784         * gnulib/import/m4/__inline.m4: Update.
2785         * gnulib/import/m4/absolute-header.m4: Update.
2786         * gnulib/import/m4/alloca.m4: Update.
2787         * gnulib/import/m4/builtin-expect.m4: Update.
2788         * gnulib/import/m4/canonicalize.m4: Update.
2789         * gnulib/import/m4/chdir-long.m4: Update.
2790         * gnulib/import/m4/close.m4: Update.
2791         * gnulib/import/m4/closedir.m4: Update.
2792         * gnulib/import/m4/configmake.m4: Update.
2793         * gnulib/import/m4/d-ino.m4: Update.
2794         * gnulib/import/m4/d-type.m4: Update.
2795         * gnulib/import/m4/dirent_h.m4: Update.
2796         * gnulib/import/m4/dirfd.m4: Update.
2797         * gnulib/import/m4/dirname.m4: Update.
2798         * gnulib/import/m4/double-slash-root.m4: Update.
2799         * gnulib/import/m4/dup.m4: Update.
2800         * gnulib/import/m4/dup2.m4: Update.
2801         * gnulib/import/m4/eealloc.m4: Update.
2802         * gnulib/import/m4/environ.m4: Update.
2803         * gnulib/import/m4/errno_h.m4: Update.
2804         * gnulib/import/m4/error.m4: Update.
2805         * gnulib/import/m4/exponentd.m4: Update.
2806         * gnulib/import/m4/exponentl.m4: Update.
2807         * gnulib/import/m4/extensions.m4: Update.
2808         * gnulib/import/m4/extern-inline.m4: Update.
2809         * gnulib/import/m4/fchdir.m4: Update.
2810         * gnulib/import/m4/fcntl-o.m4: Update.
2811         * gnulib/import/m4/fcntl.m4: Update.
2812         * gnulib/import/m4/fcntl_h.m4: Update.
2813         * gnulib/import/m4/fdopendir.m4: Update.
2814         * gnulib/import/m4/filenamecat.m4: Update.
2815         * gnulib/import/m4/flexmember.m4: Update.
2816         * gnulib/import/m4/float_h.m4: Update.
2817         * gnulib/import/m4/fnmatch.m4: Update.
2818         * gnulib/import/m4/fnmatch_h.m4: Update.
2819         * gnulib/import/m4/fpieee.m4: Update.
2820         * gnulib/import/m4/frexp.m4: Update.
2821         * gnulib/import/m4/frexpl.m4: Update.
2822         * gnulib/import/m4/fstat.m4: Update.
2823         * gnulib/import/m4/fstatat.m4: Update.
2824         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
2825         * gnulib/import/m4/getcwd-path-max.m4: Update.
2826         * gnulib/import/m4/getcwd.m4: Update.
2827         * gnulib/import/m4/getdtablesize.m4: Update.
2828         * gnulib/import/m4/getlogin.m4: Update.
2829         * gnulib/import/m4/getlogin_r.m4: Update.
2830         * gnulib/import/m4/getpagesize.m4: Update.
2831         * gnulib/import/m4/getprogname.m4: Update.
2832         * gnulib/import/m4/gettimeofday.m4: Update.
2833         * gnulib/import/m4/glibc21.m4: Update.
2834         * gnulib/import/m4/glob.m4: Update.
2835         * gnulib/import/m4/glob_h.m4: Update.
2836         * gnulib/import/m4/gnulib-cache.m4: Update.
2837         * gnulib/import/m4/gnulib-common.m4: Update.
2838         * gnulib/import/m4/gnulib-comp.m4: Update.
2839         * gnulib/import/m4/gnulib-tool.m4: Update.
2840         * gnulib/import/m4/hard-locale.m4: Update.
2841         * gnulib/import/m4/include_next.m4: Update.
2842         * gnulib/import/m4/inttypes-pri.m4: Update.
2843         * gnulib/import/m4/inttypes.m4: Update.
2844         * gnulib/import/m4/isnand.m4: Update.
2845         * gnulib/import/m4/isnanl.m4: Update.
2846         * gnulib/import/m4/largefile.m4: Update.
2847         * gnulib/import/m4/limits-h.m4: Update.
2848         * gnulib/import/m4/localcharset.m4: Update.
2849         * gnulib/import/m4/locale-fr.m4: Update.
2850         * gnulib/import/m4/locale-ja.m4: Update.
2851         * gnulib/import/m4/locale-zh.m4: Update.
2852         * gnulib/import/m4/localtime-buffer.m4: Update.
2853         * gnulib/import/m4/longlong.m4: Update.
2854         * gnulib/import/m4/lstat.m4: Update.
2855         * gnulib/import/m4/malloc.m4: Update.
2856         * gnulib/import/m4/malloca.m4: Update.
2857         * gnulib/import/m4/math_h.m4: Update.
2858         * gnulib/import/m4/mbrtowc.m4: Update.
2859         * gnulib/import/m4/mbsinit.m4: Update.
2860         * gnulib/import/m4/mbsrtowcs.m4: Update.
2861         * gnulib/import/m4/mbstate_t.m4: Update.
2862         * gnulib/import/m4/memchr.m4: Update.
2863         * gnulib/import/m4/memmem.m4: Update.
2864         * gnulib/import/m4/mempcpy.m4: Update.
2865         * gnulib/import/m4/memrchr.m4: Update.
2866         * gnulib/import/m4/mkdir.m4: Update.
2867         * gnulib/import/m4/mkstemp.m4: Update.
2868         * gnulib/import/m4/mmap-anon.m4: Update.
2869         * gnulib/import/m4/mode_t.m4: Update.
2870         * gnulib/import/m4/msvc-inval.m4: Update.
2871         * gnulib/import/m4/msvc-nothrow.m4: Update.
2872         * gnulib/import/m4/multiarch.m4: Update.
2873         * gnulib/import/m4/nocrash.m4: Update.
2874         * gnulib/import/m4/off_t.m4: Update.
2875         * gnulib/import/m4/onceonly.m4: Update.
2876         * gnulib/import/m4/open-cloexec.m4: Update.
2877         * gnulib/import/m4/open.m4: Update.
2878         * gnulib/import/m4/openat.m4: Update.
2879         * gnulib/import/m4/opendir.m4: Update.
2880         * gnulib/import/m4/pathmax.m4: Update.
2881         * gnulib/import/m4/rawmemchr.m4: Update.
2882         * gnulib/import/m4/readdir.m4: Update.
2883         * gnulib/import/m4/readlink.m4: Update.
2884         * gnulib/import/m4/realloc.m4: Update.
2885         * gnulib/import/m4/rename.m4: Update.
2886         * gnulib/import/m4/rewinddir.m4: Update.
2887         * gnulib/import/m4/rmdir.m4: Update.
2888         * gnulib/import/m4/save-cwd.m4: Update.
2889         * gnulib/import/m4/secure_getenv.m4: Update.
2890         * gnulib/import/m4/setenv.m4: Update.
2891         * gnulib/import/m4/signal_h.m4: Update.
2892         * gnulib/import/m4/ssize_t.m4: Update.
2893         * gnulib/import/m4/stat-time.m4: Update.
2894         * gnulib/import/m4/stat.m4: Update.
2895         * gnulib/import/m4/std-gnu11.m4: Update.
2896         * gnulib/import/m4/stdbool.m4: Update.
2897         * gnulib/import/m4/stddef_h.m4: Update.
2898         * gnulib/import/m4/stdint.m4: Update.
2899         * gnulib/import/m4/stdio_h.m4: Update.
2900         * gnulib/import/m4/stdlib_h.m4: Update.
2901         * gnulib/import/m4/strchrnul.m4: Update.
2902         * gnulib/import/m4/strdup.m4: Update.
2903         * gnulib/import/m4/strerror.m4: Update.
2904         * gnulib/import/m4/string_h.m4: Update.
2905         * gnulib/import/m4/strstr.m4: Update.
2906         * gnulib/import/m4/strtok_r.m4: Update.
2907         * gnulib/import/m4/sys_socket_h.m4: Update.
2908         * gnulib/import/m4/sys_stat_h.m4: Update.
2909         * gnulib/import/m4/sys_time_h.m4: Update.
2910         * gnulib/import/m4/sys_types_h.m4: Update.
2911         * gnulib/import/m4/tempname.m4: Update.
2912         * gnulib/import/m4/time_h.m4: Update.
2913         * gnulib/import/m4/unistd-safer.m4: Update.
2914         * gnulib/import/m4/unistd_h.m4: Update.
2915         * gnulib/import/m4/warn-on-use.m4: Update.
2916         * gnulib/import/m4/wchar_h.m4: Update.
2917         * gnulib/import/m4/wchar_t.m4: Update.
2918         * gnulib/import/m4/wctype_h.m4: Update.
2919         * gnulib/import/m4/wint_t.m4: Update.
2920         * gnulib/import/malloc.c: Update.
2921         * gnulib/import/malloc/scratch_buffer.h: Update.
2922         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
2923         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
2924         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
2925         * gnulib/import/malloca.c: Update.
2926         * gnulib/import/malloca.h: Update.
2927         * gnulib/import/malloca.valgrind: Update.
2928         * gnulib/import/math.in.h: Update.
2929         * gnulib/import/mbrtowc.c: Update.
2930         * gnulib/import/mbsinit.c: Update.
2931         * gnulib/import/mbsrtowcs-impl.h: Update.
2932         * gnulib/import/mbsrtowcs-state.c: Update.
2933         * gnulib/import/mbsrtowcs.c: Update.
2934         * gnulib/import/memchr.c: Update.
2935         * gnulib/import/memmem.c: Update.
2936         * gnulib/import/mempcpy.c: Update.
2937         * gnulib/import/memrchr.c: Update.
2938         * gnulib/import/mkdir.c: Update.
2939         * gnulib/import/mkstemp.c: Update.
2940         * gnulib/import/msvc-inval.c: Update.
2941         * gnulib/import/msvc-inval.h: Update.
2942         * gnulib/import/msvc-nothrow.c: Update.
2943         * gnulib/import/msvc-nothrow.h: Update.
2944         * gnulib/import/open.c: Update.
2945         * gnulib/import/openat-die.c: Update.
2946         * gnulib/import/openat-priv.h: Update.
2947         * gnulib/import/openat-proc.c: Update.
2948         * gnulib/import/openat.c: Update.
2949         * gnulib/import/openat.h: Update.
2950         * gnulib/import/opendir.c: Update.
2951         * gnulib/import/pathmax.h: Update.
2952         * gnulib/import/pipe-safer.c: Update.
2953         * gnulib/import/rawmemchr.c: Update.
2954         * gnulib/import/readdir.c: Update.
2955         * gnulib/import/readlink.c: Update.
2956         * gnulib/import/realloc.c: Update.
2957         * gnulib/import/ref-add.sin: Update.
2958         * gnulib/import/ref-del.sin: Update.
2959         * gnulib/import/rename.c: Update.
2960         * gnulib/import/rewinddir.c: Update.
2961         * gnulib/import/rmdir.c: Update.
2962         * gnulib/import/same-inode.h: Update.
2963         * gnulib/import/save-cwd.c: Update.
2964         * gnulib/import/save-cwd.h: Update.
2965         * gnulib/import/scratch_buffer.h: Update.
2966         * gnulib/import/secure_getenv.c: Update.
2967         * gnulib/import/setenv.c: Update.
2968         * gnulib/import/signal.in.h: Update.
2969         * gnulib/import/stat-time.c: Update.
2970         * gnulib/import/stat-time.h: Update.
2971         * gnulib/import/stat-w32.c: Update.
2972         * gnulib/import/stat-w32.h: Update.
2973         * gnulib/import/stat.c: Update.
2974         * gnulib/import/stdbool.in.h: Update.
2975         * gnulib/import/stddef.in.h: Update.
2976         * gnulib/import/stdint.in.h: Update.
2977         * gnulib/import/stdio.in.h: Update.
2978         * gnulib/import/stdlib.in.h: Update.
2979         * gnulib/import/str-two-way.h: Update.
2980         * gnulib/import/strchrnul.c: Update.
2981         * gnulib/import/strdup.c: Update.
2982         * gnulib/import/streq.h: Update.
2983         * gnulib/import/strerror-override.c: Update.
2984         * gnulib/import/strerror-override.h: Update.
2985         * gnulib/import/strerror.c: Update.
2986         * gnulib/import/string.in.h: Update.
2987         * gnulib/import/stripslash.c: Update.
2988         * gnulib/import/strnlen1.c: Update.
2989         * gnulib/import/strnlen1.h: Update.
2990         * gnulib/import/strstr.c: Update.
2991         * gnulib/import/strtok_r.c: Update.
2992         * gnulib/import/sys_stat.in.h: Update.
2993         * gnulib/import/sys_time.in.h: Update.
2994         * gnulib/import/sys_types.in.h: Update.
2995         * gnulib/import/tempname.c: Update.
2996         * gnulib/import/tempname.h: Update.
2997         * gnulib/import/time.in.h: Update.
2998         * gnulib/import/unistd--.h: Update.
2999         * gnulib/import/unistd-safer.h: Update.
3000         * gnulib/import/unistd.in.h: Update.
3001         * gnulib/import/unsetenv.c: Update.
3002         * gnulib/import/verify.h: Update.
3003         * gnulib/import/extra/snippet/warn-on-use.h: Update.
3004         * gnulib/import/wchar.in.h: Update.
3005         * gnulib/import/wctype.in.h: Update.
3006         * gnulib/import/xalloc-oversized.h: Update.
3007         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
3008         "53e2c179f26a890fa6685af4b6c1397ee370433b".
3009
3010 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
3011
3012         * record-btrace.c (get_thread_current_frame): Remove
3013         old_inferior_ptid.
3014
3015 2018-09-10  Jerome Guitton  <guitton@adacore.com>
3016
3017         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
3018         with check_tag to 1 if and only if the type is tagged and the
3019         component being searched cannot been found in the current
3020         view. Otherwise, always call ada_to_fixed_type with
3021         check_tag to 0.
3022
3023 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3024
3025         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
3026         declaration.
3027         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
3028         * ada-varobj.c (ada_varobj_get_number_of_children,
3029         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
3030
3031 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3032
3033         * ada-valprint.c (ada_value_print): Use type instead of
3034         enclosing type.
3035
3036 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3037
3038         * ada-lang.c (ada_value_subscript): Handle case when parameter is
3039         an array of access to unconstrained array.
3040
3041 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3042
3043         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
3044         (ada_check_typedef): Use it.
3045
3046 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3047
3048         * ada-varobj.c (ada_varobj_describe_struct_child)
3049         (ada_varobj_describe_child): Handle union case like struct one.
3050
3051 2018-09-10  Tom Tromey  <tom@tromey.com>
3052
3053         PR python/18380:
3054         * python/python.c (_initialize_python): Make example in "python"
3055         help work in Python 3.
3056
3057 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
3058
3059         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
3060         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
3061         $(EXEEXT) to the script, as it is not a program.
3062
3063 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
3064
3065         * python/py-prettyprint.c (pretty_print_one_value): Return
3066         gdbpy_ref<>.
3067         (print_string_repr): Adjust.
3068         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
3069         * python/python-internal.h (apply_varobj_pretty_printer): Return
3070         gdbpy_ref<>.
3071         * varobj.c (varobj_value_get_print_value): Adjust.
3072
3073 2018-09-08  Tom Tromey  <tom@tromey.com>
3074
3075         PR python/16047:
3076         * python/py-prettyprint.c (pretty_print_one_value): Check for
3077         to_string method.
3078
3079 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3080
3081         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
3082         replace_operator_with_call.
3083
3084 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3085
3086         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
3087
3088 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3089
3090         * ada-typeprint.c (print_range): Print the bounds using TYPE
3091         rather than its TYPE_TARGET_TYPE.
3092
3093 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3094
3095         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
3096         call to ada_to_fixed_value_create.
3097
3098 2018-09-08  Jerome Guitton  <guitton@adacore.com>
3099
3100         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
3101
3102 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3103
3104         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
3105         by calls to error.
3106
3107 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3108
3109         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
3110         Move update of loop variable "fi".
3111
3112 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3113
3114         * ada-lang.c (value_assign_to_component): In the case of
3115         big-endian targets, extract the bits of the given VAL
3116         using an src_offset of zero if container is not a scalar.
3117
3118 2018-09-06  Simon Ser  <contact@emersion.fr>
3119
3120         PR gdb/23105
3121         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
3122         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
3123         * fbsd-tdep.c (fbsd_make_note_desc): New.
3124         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
3125         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
3126         * target.h (enum target_object) Add FreeBSD-specific
3127         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
3128
3129 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3130
3131         * compile/compile-c.h (generate_c_for_variable_locations):
3132         Change reference to pointer.
3133         * compile/compile-c-support.c (compile_program) <compute>:
3134         Likewise.
3135         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
3136         (generate_c_for_for_one_variable): Likewise
3137         (generate_c_for_variable_locations): Likewise
3138         * compile/compile-c-types.c (compile_c_instance::convert_type):
3139         Likewise
3140         * compile/compile-cplus-symbols.c (convert_one_symbol):
3141         std::move the scope passed to enter_scope.
3142         * compile/compile-cplus-types.c
3143         (compile_cplus_instance::enter_scope): Make parameter
3144         rvalue-reference.
3145         (compile_cplus_instance::new_scope): Change reference to
3146         pointer.
3147         (compile_cplus_instance::convert_type): Likewise
3148         (compile_cplus_convert_typedef): std::move the scope passed to
3149         enter_scope.
3150         (compile_cplus_convert_struct_or_union): Likewise.
3151         (compile_cplus_convert_enum): Likewise.
3152         (compile_cplus_convert_namespace): Likewise.
3153         * compile/compile-cplus.h (compile_cplus_instance)
3154         <enter_scope>: Make parameter rvalue-reference.
3155         * compile/compile-internal.h (compile_instance)
3156         <get_cached_type>: Likewise
3157         * compile/compile-loc2c.c (push): Likewise
3158         (pushf): Likewise
3159         (unary): Likewise
3160         (binary): Likewise
3161         (print_label): Likewise
3162         (pushf_register_address): Likewise
3163         (pushf_register): Likewise
3164         (do_compile_dwarf_expr_to_c): Likewise
3165         (compile_dwarf_expr_to_c): Likewise
3166         (compile_dwarf_bounds_to_c): Likewise
3167         * compile/compile.c (compile_instance::get_cached_type):
3168         Likewise
3169         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
3170         (compile_dwarf_bounds_to_c): Likewise
3171         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
3172         (dwarf2_compile_property_to_c): Likewise
3173         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
3174         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
3175         Likewise
3176
3177 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3178
3179         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
3180         * tui/tui-data.c (init_content_element): Don't initialize it.
3181
3182 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3183
3184         * tui/tui-data.h (struct tui_win_info)
3185         <detail::opaque>: Remove.
3186         * tui/tui-data.c (init_win_info): Remove assignment.
3187
3188 2018-09-05  Tom Tromey  <tom@tromey.com>
3189
3190         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
3191         -Wformat-nonliteral.
3192         * target-float.c (host_float_ops<T>::to_string)
3193         (host_float_ops<T>::from_string): Use
3194         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
3195         * configure: Rebuild.
3196
3197 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
3198
3199         * printcmd.c (printf_c_string): Use
3200         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
3201         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
3202
3203 2018-09-05  Tom Tromey  <tom@tromey.com>
3204
3205         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
3206
3207 2018-09-05  Tom de Vries  <tdevries@suse.de>
3208
3209         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
3210         with resolve_abstract_p == true.
3211         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
3212         defaulting to false. Propagate resolve_abstract_p to
3213         dwarf2_fetch_die_loc_sect_off.
3214         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
3215         parameter, defaulting to false.
3216         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
3217         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
3218         parameter.
3219         * dwarf2read.h (struct die_info): Forward-declare.
3220         (die_info_ptr): New typedef.
3221         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
3222
3223 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
3224
3225         GDB 8.2 released.
3226
3227 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
3228             Pedro Alves  <palves@redhat.com>
3229
3230         * gnulib/Makefile.in (aclocal_m4_deps): Move to
3231         "aclocal-m4-deps.mk".  Include file here.
3232         $(srcdir)/aclocal.m4: Add "configure.ac".
3233         * gnulib/aclocal-m4-deps.mk: New file.
3234         * gnulib/update-gnulib.sh: Automatically update
3235         "aclocal-m4-deps.mk".
3236
3237 2018-09-04  Tom Tromey  <tom@tromey.com>
3238
3239         * configure: Rebuild.
3240         * configure.ac: Remove multi-ice code.
3241
3242 2018-09-04  Tom Tromey  <tom@tromey.com>
3243
3244         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
3245         (ada-exp.o): Update.
3246
3247 2018-09-04  Tom Tromey  <tom@tromey.com>
3248
3249         * Makefile.in (printcmd.o, target-float.o): Remove.
3250         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
3251
3252 2018-09-04  Tom Tromey  <tom@tromey.com>
3253
3254         * gnulib/Makefile.in: Remove obsolete comment.
3255         * Makefile.in: Remove obsolete comment.
3256
3257 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
3258
3259         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
3260         line with '+'.
3261
3262 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
3263
3264         * riscv-tdep.c: Add 'prologue-value.h' include.
3265         (struct riscv_unwind_cache): New struct.
3266         (riscv_debug_unwinder): New global.
3267         (riscv_scan_prologue): Update arguments, capture register details
3268         from prologue scan.
3269         (riscv_skip_prologue): Reformat arguments line, move end of
3270         prologue calculation into riscv_scan_prologue.
3271         (riscv_frame_cache): Update return type, create
3272         riscv_unwind_cache, scan the prologue, and fill in remaining cache
3273         details.
3274         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
3275         (riscv_frame_prev_register): Use the trad_frame within the
3276         riscv_unwind_cache.
3277         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
3278         flag.
3279
3280 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
3281
3282         * trad-frame.h (trad_frame_set_realreg): Declare.
3283         (trad_frame_set_addr): Declare.
3284         * trad-frame.c (trad_frame_set_realreg): Define new function.
3285         (trad_frame_set_addr): Define new function.
3286         (trad_frame_set_reg_realreg): Use new function.
3287         (trad_frame_set_reg_addr): Use new function.
3288
3289 2018-09-01  Keith Seitz  <keiths@redhat.com>
3290
3291         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
3292         pulongest instead of "%lld".
3293         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
3294         ATTRIBUTE_UNUSED.
3295
3296 2018-08-31  Tom Tromey  <tom@tromey.com>
3297
3298         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
3299         variant part type.
3300
3301 2018-08-31  Pedro Alves  <palves@redhat.com>
3302
3303         * gdbarch.h: Regenerate.
3304
3305 2018-08-31  Pedro Alves  <palves@redhat.com>
3306
3307         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
3308         * target.h (Hardware watchpoint interfaces): Describe
3309         continuable/steppable/non-steppable watchpoints.
3310         * gdbarch.h, gdbarch.c: Regenerate.
3311
3312 2018-08-31  Pedro Alves  <palves@redhat.com>
3313
3314         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
3315         Delete.
3316         * s390-linux-nat.c
3317         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
3318         * target.h (target_ops::have_continuable_watchpoint): Delete.
3319         (target_have_continuable_watchpoint): Delete.
3320         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
3321         * target-delegates.c: Regenerate.
3322
3323 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
3324
3325         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
3326         the files present in "gnulib/import/m4/".
3327
3328 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
3329
3330         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
3331         c.sw, c.swsp, and c.sdsp.
3332
3333 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
3334
3335         * riscv-tdep.c (struct riscv_inferior_data): Delete.
3336         (riscv_read_misa_reg): Don't cache value read into inferior data.
3337         (riscv_new_inferior_data): Delete.
3338         (riscv_inferior_data_cleanup): Delete.
3339         (riscv_inferior_data): Delete.
3340         (riscv_invalidate_inferior_data): Delete.
3341         (_initialize_riscv_tdep): Remove initialisation of inferior data.
3342
3343 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
3344
3345         * compile/compile-cplus-types.c
3346         (compile_cplus_instance::leave_scope): Take the address of scope
3347         object.
3348         (compile_cplus_instance::convert_qualified_base): Compare quals
3349         to 0.
3350
3351 2018-08-30  Keith Seitz  <keiths@redhat.com>
3352
3353         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
3354         Use "%s" and host_address_to_string instead of "%p" in printf.
3355
3356 2018-08-29  Keith Seitz  <keiths@redhat.com>
3357
3358         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
3359         and compile-cplus-types.c.
3360         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
3361         * c-lang.c (cplus_language_defn): Set C++ compile functions.
3362         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
3363         Declare.
3364         * compile/compile-c-support.c: Include compile-cplus.h.
3365         (load_libcompile): Templatize.
3366         (get_compile_context): "New" function.
3367         (c_get_compile_context): Use get_compile_context.
3368         (cplus_get_compile_context): New function.
3369         (cplus_push_user_expression, cplus_pop_user_expression)
3370         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
3371         (cplus_compute_program): Define new structs/functions.
3372         * compile/compile-cplus-symmbols.c: New file.
3373         * compile/compile-cplus-types.c: New file.
3374         * compile/compile-cplus.h: New file.
3375         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
3376         Declare.
3377         * compile/compile-object-load.c (get_out_value_type): Use
3378         strncmp_iw when comparing symbol names.
3379         (compile_object_load): Add mst_bss and mst_data.
3380         * compile/compile.c (_initialize_compile): Remove
3381         -Wno-implicit-function-declaration from `compile_args'.
3382         * compile/gcc-cp-plugin.h: New file.
3383         * NEWS: Mention C++ compile support and new debug options.
3384
3385 2018-08-29  Keith Seitz  <keiths@redhat.com>
3386
3387         * linespec.c (collect_info::add_symbol): Make virtual.
3388         (struct symbol_searcher_collect_info): New struct.
3389         (symbol_searcher::find_all_symbols): New method.
3390         * symtab.h (class symbol_searcher): New class.
3391
3392 2018-08-29  Keith Seitz  <keiths@redhat.com>
3393
3394         * linespec.c (struct linespec) <function_symbols, label_symbols>:
3395         Change to vector of block_symbol.  Update all users.
3396         (struct collect_info) <symbols>: Likewise.
3397         (collect_info::add_symbol): Take block_symbol as argument.
3398         Update all callers.
3399         (decode_compound_collector) <m_symbols>: Change type to vector
3400         of block_symbol.  Update all users.
3401         (decode_compound_collector::operator ()): Change parameter type
3402         to block_symbol.
3403         (find_method, find_function_symbols, find_linespec_symbols)
3404         (find_label_symbols_in_block, find_label_symbols): Change symbol
3405         vectors to block_symbol vectors.
3406         * symtab.h (symbol_found_callback_ftype): Change parameter type to
3407         block_symbol.
3408
3409 2018-08-29  Keith Seitz  <keiths@redhat.com>
3410
3411         * linespec.c (symbolp): Remove typedef and VEC definitions.
3412         (bound_minimal_symbol_d): Likewise.
3413
3414 2018-08-29  Keith Seitz  <keiths@redhat.com>
3415
3416         * linespec.c (decode_compound_collector::decode_compound_collector):
3417         Remove initialization for `m_symtabs'.
3418         (decode_compound_collector::release_symbols): Change return type
3419         to std::vector.  Update all callers.
3420         (class decode_compound_collector) <m_symbols>: Change type to
3421         std::vector.
3422         (lookup_prefix_sym): Change return type to std::vector.  Update all
3423         callers.
3424         (compare_symbols): Remove.
3425         (std_compare_symbols): Rename to `compare_symbols'.
3426         (find_method): Change `sym_classes' parameter to std::vector.
3427         Update all callers.  Use std::sort to sort sym_classes.
3428         (find_linespec_symbols): Remove cleanup.
3429
3430 2018-08-29  Keith Seitz  <keiths@redhat.com>
3431
3432         * linespec.c (struct linespec) <minimal_symbols>: Change type to
3433         std::vector.  Update all users.
3434         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
3435         (struct collect_info) <minimal_symbols>: Likewise.
3436         (compare_msymbols): Return bool.  Change parameters to const
3437         bound_minimal_symbol references.
3438         (find_method, find_function_symbols, find_linespec_symbols): Change
3439         `minsyms' parameter to std::vector.  Update all callers.
3440
3441 2018-08-29  Keith Seitz  <keiths@redhat.com>
3442
3443         * linespec.c (struct linespec) <label_symbols>: Change type to
3444         std::vector.  Update all users.
3445         (find_label_symbols_in_block): Change `result' parameter to
3446         std::vector.  Update all callers.
3447         (find_label_symbols): Return std::vector.  Update all callers.
3448
3449 2018-08-29  Keith Seitz  <keiths@redhat.com>
3450
3451         * linespec.c (struct linespec) <function_symbols>: Change type to
3452         std::vector.  Update all users.
3453         (struct collect_info) <function_symbols>: Likewise.
3454         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
3455         (std_compare_symbols): New function.
3456         (find_method, find_function_symbols, find_linespec_symbols)
3457         (find_label_symbols_in_block): Change `symbols' parameter to
3458         std::vector.  Update all callers.
3459         (find_label_symbols): Likewise for `function_symbols' and
3460         `label_funcs_ret'.
3461
3462 2018-08-29  Keith Seitz  <keiths@redhat.com>
3463
3464         * linespec.c (symtab_vector_up): Define.
3465         (struct linespec) <file_symtabs>: Change type to std::vector *.
3466         Update all uses.
3467         (struct collect_info) <file_symtabs>: Likewise.
3468         (collect_symtabs_from_filename): Return symtab_vector_up.
3469         Update all callers.
3470         (decode_objc): Remove cleanup.
3471         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
3472         (symtab_collector::release_symtabs): Return symtab_vector_up.
3473         Update all callers.
3474         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
3475         Update all users.
3476         (collect_symtabs_from_filename, symtabs_from_filename): Return
3477         symtab_vector_up.  Update all callers.
3478
3479 2018-08-29  Tom Tromey  <tom@tromey.com>
3480
3481         * csky-tdep.c (csky_analyze_prologue): Use
3482         core_addr_to_string_nz.
3483
3484 2018-08-29  Tom Tromey  <tom@tromey.com>
3485
3486         * windows-nat.c (struct xlate_exception) <them>: Change type to
3487         DWORD.
3488         (xlate): Fix formatting.  Remove last entry.
3489         (struct xlate_exception, xlate): Comment out.
3490         (windows_nat_target::resume): Use ranged for.
3491
3492 2018-08-29  Jim Wilson  <jimw@sifive.com>
3493
3494         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
3495         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
3496         of NT_PRFPREG.
3497         (riscv_linux_nat_target::store_registers): Likewise.
3498
3499 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
3500
3501         PR gdb/23555
3502         PR gdb/23558
3503         * gnulib/aclocal.m4: Regenerate.
3504         * gnulib/config.in: Regenerate.
3505         * gnulib/configure: Regenerate.
3506         * gnulib/import/Makefile.am: Update.
3507         * gnulib/import/Makefile.in: Update.
3508         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
3509         * gnulib/import/_Noreturn.h: ... this.
3510         * gnulib/import/alloca.in.h: Update.
3511         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
3512         * gnulib/import/arg-nonnull.h: ... this.
3513         * gnulib/import/assure.h: Update.
3514         * gnulib/import/at-func.c: Update.
3515         * gnulib/import/basename-lgpl.c: Update.
3516         * gnulib/import/extra/snippet/c++defs.h: Rename to...
3517         * gnulib/import/c++defs.h: ... this.
3518         * gnulib/import/canonicalize-lgpl.c: Update.
3519         * gnulib/import/cdefs.h: Update.
3520         * gnulib/import/chdir-long.c: Update.
3521         * gnulib/import/chdir-long.h: Update.
3522         * gnulib/import/cloexec.c: Update.
3523         * gnulib/import/cloexec.h: Update.
3524         * gnulib/import/close.c: Update.
3525         * gnulib/import/closedir.c: Update.
3526         * gnulib/import/config.charset: Update.
3527         * gnulib/import/dirent-private.h: Update.
3528         * gnulib/import/dirent.in.h: Update.
3529         * gnulib/import/dirfd.c: Update.
3530         * gnulib/import/dirname-lgpl.c: Update.
3531         * gnulib/import/dirname.h: Update.
3532         * gnulib/import/dosname.h: Update.
3533         * gnulib/import/dup-safer-flag.c: Update.
3534         * gnulib/import/dup-safer.c: Update.
3535         * gnulib/import/dup.c: Update.
3536         * gnulib/import/dup2.c: Update.
3537         * gnulib/import/errno.in.h: Update.
3538         * gnulib/import/error.c: Update.
3539         * gnulib/import/error.h: Update.
3540         * gnulib/import/exitfail.c: Update.
3541         * gnulib/import/exitfail.h: Update.
3542         * gnulib/import/extra/update-copyright: Update.
3543         * gnulib/import/fchdir.c: Update.
3544         * gnulib/import/fcntl.c: Update.
3545         * gnulib/import/fcntl.in.h: Update.
3546         * gnulib/import/fd-hook.c: Update.
3547         * gnulib/import/fd-hook.h: Update.
3548         * gnulib/import/fd-safer-flag.c: Update.
3549         * gnulib/import/fd-safer.c: Update.
3550         * gnulib/import/fdopendir.c: Update.
3551         * gnulib/import/filename.h: Update.
3552         * gnulib/import/filenamecat-lgpl.c: Update.
3553         * gnulib/import/filenamecat.h: Update.
3554         * gnulib/import/flexmember.h: Update.
3555         * gnulib/import/float+.h: Update.
3556         * gnulib/import/float.c: Update.
3557         * gnulib/import/float.in.h: Update.
3558         * gnulib/import/fnmatch.c: Update.
3559         * gnulib/import/fnmatch.in.h: Update.
3560         * gnulib/import/fnmatch_loop.c: Update.
3561         * gnulib/import/fpucw.h: Update.
3562         * gnulib/import/frexp.c: Update.
3563         * gnulib/import/frexpl.c: Update.
3564         * gnulib/import/fstat.c: Update.
3565         * gnulib/import/fstatat.c: Update.
3566         * gnulib/import/getcwd-lgpl.c: Update.
3567         * gnulib/import/getcwd.c: Update.
3568         * gnulib/import/getdtablesize.c: Update.
3569         * gnulib/import/getlogin_r.c: Update.
3570         * gnulib/import/getprogname.c: Update.
3571         * gnulib/import/getprogname.h: Update.
3572         * gnulib/import/gettext.h: Update.
3573         * gnulib/import/gettimeofday.c: Update.
3574         * gnulib/import/glob-libc.h: Update.
3575         * gnulib/import/glob.c: Update.
3576         * gnulib/import/glob.in.h: Update.
3577         * gnulib/import/glob_internal.h: Update.
3578         * gnulib/import/glob_pattern_p.c: Update.
3579         * gnulib/import/globfree.c: Update.
3580         * gnulib/import/hard-locale.c: Update.
3581         * gnulib/import/hard-locale.h: Update.
3582         * gnulib/import/intprops.h: Update.
3583         * gnulib/import/inttypes.in.h: Update.
3584         * gnulib/import/isnan.c: Update.
3585         * gnulib/import/isnand-nolibm.h: Update.
3586         * gnulib/import/isnand.c: Update.
3587         * gnulib/import/isnanl-nolibm.h: Update.
3588         * gnulib/import/isnanl.c: Update.
3589         * gnulib/import/itold.c: Update.
3590         * gnulib/import/libc-config.h: Update.
3591         * gnulib/import/limits.in.h: Update.
3592         * gnulib/import/localcharset.c: Update.
3593         * gnulib/import/localcharset.h: Update.
3594         * gnulib/import/localtime-buffer.c: Update.
3595         * gnulib/import/localtime-buffer.h: Update.
3596         * gnulib/import/lstat.c: Update.
3597         * gnulib/import/m4/00gnulib.m4: Update.
3598         * gnulib/import/m4/__inline.m4: Update.
3599         * gnulib/import/m4/absolute-header.m4: Update.
3600         * gnulib/import/m4/alloca.m4: Update.
3601         * gnulib/import/m4/builtin-expect.m4: Update.
3602         * gnulib/import/m4/canonicalize.m4: Update.
3603         * gnulib/import/m4/chdir-long.m4: Update.
3604         * gnulib/import/m4/close.m4: Update.
3605         * gnulib/import/m4/closedir.m4: Update.
3606         * gnulib/import/m4/configmake.m4: Update.
3607         * gnulib/import/m4/d-ino.m4: Update.
3608         * gnulib/import/m4/d-type.m4: Update.
3609         * gnulib/import/m4/dirent_h.m4: Update.
3610         * gnulib/import/m4/dirfd.m4: Update.
3611         * gnulib/import/m4/dirname.m4: Update.
3612         * gnulib/import/m4/double-slash-root.m4: Update.
3613         * gnulib/import/m4/dup.m4: Update.
3614         * gnulib/import/m4/dup2.m4: Update.
3615         * gnulib/import/m4/eealloc.m4: Update.
3616         * gnulib/import/m4/environ.m4: Update.
3617         * gnulib/import/m4/errno_h.m4: Update.
3618         * gnulib/import/m4/error.m4: Update.
3619         * gnulib/import/m4/exponentd.m4: Update.
3620         * gnulib/import/m4/exponentl.m4: Update.
3621         * gnulib/import/m4/extensions.m4: Update.
3622         * gnulib/import/m4/extern-inline.m4: Update.
3623         * gnulib/import/m4/fchdir.m4: Update.
3624         * gnulib/import/m4/fcntl-o.m4: Update.
3625         * gnulib/import/m4/fcntl.m4: Update.
3626         * gnulib/import/m4/fcntl_h.m4: Update.
3627         * gnulib/import/m4/fdopendir.m4: Update.
3628         * gnulib/import/m4/filenamecat.m4: Update.
3629         * gnulib/import/m4/flexmember.m4: Update.
3630         * gnulib/import/m4/float_h.m4: Update.
3631         * gnulib/import/m4/fnmatch.m4: Update.
3632         * gnulib/import/m4/fnmatch_h.m4: Update.
3633         * gnulib/import/m4/fpieee.m4: Update.
3634         * gnulib/import/m4/frexp.m4: Update.
3635         * gnulib/import/m4/frexpl.m4: Update.
3636         * gnulib/import/m4/fstat.m4: Update.
3637         * gnulib/import/m4/fstatat.m4: Update.
3638         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
3639         * gnulib/import/m4/getcwd-path-max.m4: Update.
3640         * gnulib/import/m4/getcwd.m4: Update.
3641         * gnulib/import/m4/getdtablesize.m4: Update.
3642         * gnulib/import/m4/getlogin.m4: Update.
3643         * gnulib/import/m4/getlogin_r.m4: Update.
3644         * gnulib/import/m4/getpagesize.m4: Update.
3645         * gnulib/import/m4/getprogname.m4: Update.
3646         * gnulib/import/m4/gettimeofday.m4: Update.
3647         * gnulib/import/m4/glibc21.m4: Update.
3648         * gnulib/import/m4/glob.m4: Update.
3649         * gnulib/import/m4/glob_h.m4: Update.
3650         * gnulib/import/m4/gnulib-cache.m4: Update.
3651         * gnulib/import/m4/gnulib-common.m4: Update.
3652         * gnulib/import/m4/gnulib-comp.m4: Update.
3653         * gnulib/import/m4/gnulib-tool.m4: Update.
3654         * gnulib/import/m4/hard-locale.m4: Update.
3655         * gnulib/import/m4/include_next.m4: Update.
3656         * gnulib/import/m4/inttypes-pri.m4: Update.
3657         * gnulib/import/m4/inttypes.m4: Update.
3658         * gnulib/import/m4/isnand.m4: Update.
3659         * gnulib/import/m4/isnanl.m4: Update.
3660         * gnulib/import/m4/largefile.m4: Update.
3661         * gnulib/import/m4/limits-h.m4: Update.
3662         * gnulib/import/m4/localcharset.m4: Update.
3663         * gnulib/import/m4/locale-fr.m4: Update.
3664         * gnulib/import/m4/locale-ja.m4: Update.
3665         * gnulib/import/m4/locale-zh.m4: Update.
3666         * gnulib/import/m4/localtime-buffer.m4: Update.
3667         * gnulib/import/m4/longlong.m4: Update.
3668         * gnulib/import/m4/lstat.m4: Update.
3669         * gnulib/import/m4/malloc.m4: Update.
3670         * gnulib/import/m4/malloca.m4: Update.
3671         * gnulib/import/m4/math_h.m4: Update.
3672         * gnulib/import/m4/mbrtowc.m4: Update.
3673         * gnulib/import/m4/mbsinit.m4: Update.
3674         * gnulib/import/m4/mbsrtowcs.m4: Update.
3675         * gnulib/import/m4/mbstate_t.m4: Update.
3676         * gnulib/import/m4/memchr.m4: Update.
3677         * gnulib/import/m4/memmem.m4: Update.
3678         * gnulib/import/m4/mempcpy.m4: Update.
3679         * gnulib/import/m4/memrchr.m4: Update.
3680         * gnulib/import/m4/mkdir.m4: Update.
3681         * gnulib/import/m4/mkstemp.m4: Update.
3682         * gnulib/import/m4/mmap-anon.m4: Update.
3683         * gnulib/import/m4/mode_t.m4: Update.
3684         * gnulib/import/m4/msvc-inval.m4: Update.
3685         * gnulib/import/m4/msvc-nothrow.m4: Update.
3686         * gnulib/import/m4/multiarch.m4: Update.
3687         * gnulib/import/m4/nocrash.m4: Update.
3688         * gnulib/import/m4/off_t.m4: Update.
3689         * gnulib/import/m4/onceonly.m4: Update.
3690         * gnulib/import/m4/open-cloexec.m4: Update.
3691         * gnulib/import/m4/open.m4: Update.
3692         * gnulib/import/m4/openat.m4: Update.
3693         * gnulib/import/m4/opendir.m4: Update.
3694         * gnulib/import/m4/pathmax.m4: Update.
3695         * gnulib/import/m4/rawmemchr.m4: Update.
3696         * gnulib/import/m4/readdir.m4: Update.
3697         * gnulib/import/m4/readlink.m4: Update.
3698         * gnulib/import/m4/realloc.m4: Update.
3699         * gnulib/import/m4/rename.m4: Update.
3700         * gnulib/import/m4/rewinddir.m4: Update.
3701         * gnulib/import/m4/rmdir.m4: Update.
3702         * gnulib/import/m4/save-cwd.m4: Update.
3703         * gnulib/import/m4/secure_getenv.m4: Update.
3704         * gnulib/import/m4/setenv.m4: Update.
3705         * gnulib/import/m4/signal_h.m4: Update.
3706         * gnulib/import/m4/ssize_t.m4: Update.
3707         * gnulib/import/m4/stat-time.m4: Update.
3708         * gnulib/import/m4/stat.m4: Update.
3709         * gnulib/import/m4/std-gnu11.m4: Update.
3710         * gnulib/import/m4/stdbool.m4: Update.
3711         * gnulib/import/m4/stddef_h.m4: Update.
3712         * gnulib/import/m4/stdint.m4: Update.
3713         * gnulib/import/m4/stdio_h.m4: Update.
3714         * gnulib/import/m4/stdlib_h.m4: Update.
3715         * gnulib/import/m4/strchrnul.m4: Update.
3716         * gnulib/import/m4/strdup.m4: Update.
3717         * gnulib/import/m4/strerror.m4: Update.
3718         * gnulib/import/m4/string_h.m4: Update.
3719         * gnulib/import/m4/strstr.m4: Update.
3720         * gnulib/import/m4/strtok_r.m4: Update.
3721         * gnulib/import/m4/sys_socket_h.m4: Update.
3722         * gnulib/import/m4/sys_stat_h.m4: Update.
3723         * gnulib/import/m4/sys_time_h.m4: Update.
3724         * gnulib/import/m4/sys_types_h.m4: Update.
3725         * gnulib/import/m4/tempname.m4: Update.
3726         * gnulib/import/m4/time_h.m4: Update.
3727         * gnulib/import/m4/unistd-safer.m4: Update.
3728         * gnulib/import/m4/unistd_h.m4: Update.
3729         * gnulib/import/m4/warn-on-use.m4: Update.
3730         * gnulib/import/m4/wchar_h.m4: Update.
3731         * gnulib/import/m4/wchar_t.m4: Update.
3732         * gnulib/import/m4/wctype_h.m4: Update.
3733         * gnulib/import/m4/wint_t.m4: Update.
3734         * gnulib/import/malloc.c: Update.
3735         * gnulib/import/malloc/scratch_buffer.h: Update.
3736         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
3737         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
3738         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
3739         * gnulib/import/malloca.c: Update.
3740         * gnulib/import/malloca.h: Update.
3741         * gnulib/import/malloca.valgrind: Update.
3742         * gnulib/import/math.in.h: Update.
3743         * gnulib/import/mbrtowc.c: Update.
3744         * gnulib/import/mbsinit.c: Update.
3745         * gnulib/import/mbsrtowcs-impl.h: Update.
3746         * gnulib/import/mbsrtowcs-state.c: Update.
3747         * gnulib/import/mbsrtowcs.c: Update.
3748         * gnulib/import/memchr.c: Update.
3749         * gnulib/import/memmem.c: Update.
3750         * gnulib/import/mempcpy.c: Update.
3751         * gnulib/import/memrchr.c: Update.
3752         * gnulib/import/mkdir.c: Update.
3753         * gnulib/import/mkstemp.c: Update.
3754         * gnulib/import/msvc-inval.c: Update.
3755         * gnulib/import/msvc-inval.h: Update.
3756         * gnulib/import/msvc-nothrow.c: Update.
3757         * gnulib/import/msvc-nothrow.h: Update.
3758         * gnulib/import/open.c: Update.
3759         * gnulib/import/openat-die.c: Update.
3760         * gnulib/import/openat-priv.h: Update.
3761         * gnulib/import/openat-proc.c: Update.
3762         * gnulib/import/openat.c: Update.
3763         * gnulib/import/openat.h: Update.
3764         * gnulib/import/opendir.c: Update.
3765         * gnulib/import/pathmax.h: Update.
3766         * gnulib/import/pipe-safer.c: Update.
3767         * gnulib/import/rawmemchr.c: Update.
3768         * gnulib/import/readdir.c: Update.
3769         * gnulib/import/readlink.c: Update.
3770         * gnulib/import/realloc.c: Update.
3771         * gnulib/import/ref-add.sin: Update.
3772         * gnulib/import/ref-del.sin: Update.
3773         * gnulib/import/rename.c: Update.
3774         * gnulib/import/rewinddir.c: Update.
3775         * gnulib/import/rmdir.c: Update.
3776         * gnulib/import/same-inode.h: Update.
3777         * gnulib/import/save-cwd.c: Update.
3778         * gnulib/import/save-cwd.h: Update.
3779         * gnulib/import/scratch_buffer.h: Update.
3780         * gnulib/import/secure_getenv.c: Update.
3781         * gnulib/import/setenv.c: Update.
3782         * gnulib/import/signal.in.h: Update.
3783         * gnulib/import/stat-time.c: Update.
3784         * gnulib/import/stat-time.h: Update.
3785         * gnulib/import/stat-w32.c: Update.
3786         * gnulib/import/stat-w32.h: Update.
3787         * gnulib/import/stat.c: Update.
3788         * gnulib/import/stdbool.in.h: Update.
3789         * gnulib/import/stddef.in.h: Update.
3790         * gnulib/import/stdint.in.h: Update.
3791         * gnulib/import/stdio.in.h: Update.
3792         * gnulib/import/stdlib.in.h: Update.
3793         * gnulib/import/str-two-way.h: Update.
3794         * gnulib/import/strchrnul.c: Update.
3795         * gnulib/import/strdup.c: Update.
3796         * gnulib/import/streq.h: Update.
3797         * gnulib/import/strerror-override.c: Update.
3798         * gnulib/import/strerror-override.h: Update.
3799         * gnulib/import/strerror.c: Update.
3800         * gnulib/import/string.in.h: Update.
3801         * gnulib/import/stripslash.c: Update.
3802         * gnulib/import/strnlen1.c: Update.
3803         * gnulib/import/strnlen1.h: Update.
3804         * gnulib/import/strstr.c: Update.
3805         * gnulib/import/strtok_r.c: Update.
3806         * gnulib/import/sys_stat.in.h: Update.
3807         * gnulib/import/sys_time.in.h: Update.
3808         * gnulib/import/sys_types.in.h: Update.
3809         * gnulib/import/tempname.c: Update.
3810         * gnulib/import/tempname.h: Update.
3811         * gnulib/import/time.in.h: Update.
3812         * gnulib/import/unistd--.h: Update.
3813         * gnulib/import/unistd-safer.h: Update.
3814         * gnulib/import/unistd.in.h: Update.
3815         * gnulib/import/unsetenv.c: Update.
3816         * gnulib/import/verify.h: Update.
3817         * gnulib/import/extra/snippet/warn-on-use.h: Update.
3818         * gnulib/import/wchar.in.h: Update.
3819         * gnulib/import/wctype.in.h: Update.
3820         * gnulib/import/xalloc-oversized.h: Update.
3821         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
3822         "53e2c179f26a890fa6685af4b6c1397ee370433b".
3823
3824 2018-08-16  Gary Benson <gbenson@redhat.com>
3825
3826         PR gdb/13000:
3827         * gdb/main.c (captured_main_1): Exit with nonzero status
3828         in batch mode if the last command to be executed failed.
3829         * NEWS: Mention the above.
3830
3831 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
3832
3833         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
3834         end of warning message.
3835
3836 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3837
3838         PR gdb/22943:
3839         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
3840         (aarch64_extract_return_value): Use
3841         aapcs_is_vfp_call_or_return_candidate.
3842         (aarch64_return_in_memory): Likewise.
3843         (aarch64_store_return_value): Likewise.
3844
3845 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3846
3847         * aarch64-tdep.c
3848         (aapcs_is_vfp_call_or_return_candidate): Make static
3849         (pass_in_v_or_stack): Remove function.
3850         (pass_in_v_vfp_candidate): New function.
3851         (aarch64_push_dummy_call): Check for float register candidates.
3852
3853 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3854
3855         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
3856         (aapcs_is_vfp_call_or_return_candidate_1): New function.
3857         (aapcs_is_vfp_call_or_return_candidate): Likewise.
3858
3859 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
3860
3861         PR build/23399
3862         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
3863         (struct ipa_sym_addresses): Rename to...
3864         (struct ipa_sym_addresses_common): ... this.
3865         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
3866
3867 2018-08-28  Tom Tromey  <tom@tromey.com>
3868
3869         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3870         (token_fifo): Now a std::vector.
3871         (yylex, c_parse): Update.
3872         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3873         (token_fifo): Now a std::vector.
3874         (yylex, d_parse): Update.
3875         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3876         (token_fifo): Now a std::vector.
3877         (yylex, go_parse): Update.
3878
3879 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
3880
3881         * parser-defs.h (struct type_stack) <elements>: Change type to
3882         std::vector<union type_stack_elt>.
3883         <depth, size>: Remove.
3884         * parse.c (parse_exp_in_context_1): Adjust.
3885         (type_stack_reserve): Remove.
3886         (check_type_stack_depth): Remove.
3887         (insert_into_type_stack): Adjust to std::vector.
3888         (insert_type): Likewise.
3889         (push_type): Likewise.
3890         (push_type_int): Likewise.
3891         (insert_type_address_space): Likewise.
3892         (pop_type): Likewise.
3893         (pop_type_int): Likewise.
3894         (pop_typelist): Likewise.
3895         (pop_type_stack): Likewise.
3896         (append_type_stack): Likewise.
3897         (push_type_stack): Likewise.
3898         (get_type_stack): Likewise.
3899         (type_stack_cleanup): Likewise.
3900         (push_typelist): Likewise.
3901         (follow_types): Likewise.
3902         (_initialize_parse): Likewise.
3903
3904 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
3905
3906         * NEWS: Mention csky target.
3907
3908 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
3909             Hafiz Abid Qadeer  <abidh@codesourcery.com>
3910             Don Breazeal  <donb@codesourcery.com>
3911
3912         * csky-linux-tdep.c: New file.
3913         * csky-tdep.c: Likewise.
3914         * csky-tdep.h: Likewise.
3915         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
3916         csky-tdep.o.
3917         (HFILES_NO_SRCDIR): Add csky-tdep.h.
3918         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
3919         * configure.tgt: Add csky support.
3920
3921 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
3922
3923         * python/py-framefilter.c (py_print_frame): Print frame architecture
3924         when printing on an MI output.
3925
3926 2018-08-27  Tom Tromey  <tom@tromey.com>
3927
3928         PR build/23087:
3929         * configure: Rebuild.
3930         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
3931
3932 2018-08-27  Tom Tromey  <tom@tromey.com>
3933
3934         * aarch64-linux-tdep.c
3935         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
3936         casts to int.
3937
3938 2018-08-27  Tom Tromey  <tom@tromey.com>
3939
3940         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
3941         unsigned.
3942         (ppc64_standard_linkage1, ppc64_standard_linkage2)
3943         (ppc64_standard_linkage3, ppc64_standard_linkage4)
3944         (ppc64_standard_linkage5, ppc64_standard_linkage6)
3945         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
3946         unsigned.
3947
3948 2018-08-27  Tom Tromey  <tom@tromey.com>
3949
3950         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
3951         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
3952
3953 2018-08-27  Tom Tromey  <tom@tromey.com>
3954
3955         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
3956         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
3957         ULONGEST_MAX.
3958         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
3959         ULONGEST_MAX.
3960         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
3961         ULONGEST_MAX.
3962         * sparc-linux-tdep.c (sparc32_linux_sigframe)
3963         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
3964         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
3965         ULONGEST_MAX.
3966         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
3967         (ppc64_linux_sigaction_tramp_frame)
3968         (ppc32_linux_sighandler_tramp_frame)
3969         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
3970         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
3971         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
3972         * mn10300-linux-tdep.c (am33_linux_sigframe)
3973         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
3974         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
3975         * mips-linux-tdep.c (mips_linux_o32_sigframe)
3976         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
3977         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
3978         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
3979         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
3980         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
3981         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
3982         * microblaze-linux-tdep.c
3983         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
3984         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
3985         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
3986         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
3987         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
3988         * common/common-types.h (ULONGEST_MAX): New define.
3989         (CORE_ADDR_MAX): Fix formatting.
3990         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
3991         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
3992         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
3993         (arm_linux_rt_sigreturn_tramp_frame)
3994         (arm_eabi_linux_sigreturn_tramp_frame)
3995         (arm_eabi_linux_rt_sigreturn_tramp_frame)
3996         (thumb2_eabi_linux_sigreturn_tramp_frame)
3997         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
3998         (arm_linux_restart_syscall_tramp_frame)
3999         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
4000         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
4001         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
4002         ULONGEST_MAX.
4003         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
4004
4005 2018-08-27  Tom Tromey  <tom@tromey.com>
4006
4007         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
4008         CORE_ADDR_MAX.
4009         * mips-tdep.c (mips_deal_with_atomic_sequence)
4010         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
4011         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
4012         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
4013         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
4014         CORE_ADDR_MAX.
4015         * aarch64-tdep.c (aarch64_software_single_step): Use
4016         CORE_ADDR_MAX.
4017
4018 2018-08-27  Tom Tromey  <tom@tromey.com>
4019
4020         * linespec.c (complete_linespec_component): Add cast to "char".
4021         * completer.c (completion_tracker::build_completion_result): Add
4022         cast to "char".
4023
4024 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
4025
4026         * solist.h (struct solist, struct target_so_ops): Fix
4027         indentation.
4028
4029 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
4030
4031         * ada-tasks.c (ada_task_info_s): Remove typedef.
4032         (DEF_VEC_O(ada_task_info_s)): Remove.
4033         (struct ada_tasks_inferior_data): Initialize fields.
4034         <task_list>: Make an std::vector.
4035         (get_ada_tasks_inferior_data): Allocate with new.
4036         (ada_get_task_number): Adjust.
4037         (get_task_number_from_id): Likewise.
4038         (valid_task_id): Likewise.
4039         (ada_get_task_info_from_ptid): Likewise.
4040         (iterate_over_live_ada_tasks): Likewise.
4041         (add_ada_task): Likewise.
4042         (read_known_tasks): Likewise.
4043         (ada_build_task_list): Likewise.
4044         (print_ada_task_info): Likewise.
4045         (info_task): Likewise.
4046         (task_command_1): Likewise.
4047
4048 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
4049
4050         * ada-lang.c (add_angle_brackets): Return std::string.
4051
4052 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
4053
4054         * python/py-threadevent.c (py_get_event_thread): Initialize
4055         pythread.
4056
4057 2018-08-24  Pedro Alves  <palves@redhat.com>
4058
4059         * python/py-bpevent.c (create_breakpoint_event_object): Use
4060         copy-initialization.
4061         * python/py-continueevent.c (emit_continue_event): Use
4062         copy-initialization.
4063         * python/py-exitedevent.c (create_exited_event_object): Return a
4064         gdbpy_ref<>.
4065         (emit_exited_event): Use copy-initialization.
4066         * python/py-inferior.c (python_new_inferior)
4067         (python_inferior_deleted, add_thread_object): Use
4068         copy-initialization.
4069         * python/py-infevents.c (create_inferior_call_event_object)
4070         (create_register_changed_event_object)
4071         (create_memory_changed_event_object): Return a gdbpy_ref<>.
4072         (emit_inferior_call_event, emit_memory_changed_event)
4073         (emit_register_changed_event): Use copy-initialization.
4074         * python/py-newobjfileevent.c (create_new_objfile_event_object):
4075         Return a gdbpy_ref<>.
4076         (emit_new_objfile_event): Use copy-initialization.
4077         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
4078         (emit_clear_objfiles_event): Use copy-initialization.
4079         * python/py-signalevent.c (create_signal_event_object): Use
4080         copy-initialization.
4081         * python/py-threadevent.c (create_thread_event_object): Use
4082         copy-initialization.
4083
4084 2018-08-24  Pedro Alves  <palves@redhat.com>
4085             Simon Marchi  <simon.marchi@ericsson.com>
4086
4087         PR gdb/23379
4088         * python/py-continueevent.c: Include "gdbthread.h".
4089         (create_continue_event_object): Add intro comment.  Add 'ptid'
4090         parameter.  Use it to find thread to pass to
4091         create_thread_event_object.
4092         (emit_continue_event): Pass PTID down to
4093         create_continue_event_object.
4094         * python/py-event.h (py_get_event_thread): Declare.
4095         (create_thread_event_object): Remove default from 'thread'
4096         parameter.
4097         * python/py-stopevent.c (create_stop_event_object): Use
4098         py_get_event_thread.
4099         * python/py-threadevent.c (get_event_thread): Rename to ...
4100         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
4101         and use it to find the thread.
4102         (create_thread_event_object): Assert that THREAD isn't null.
4103         Don't find the event thread here.
4104
4105 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
4106
4107         * block.h (blockrange, blockranges): New struct declarations.
4108         (struct block): Add new field named `ranges'.
4109         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
4110         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
4111         macros for accessing ranges in struct block.
4112         (make_blockranges): New declaration.
4113         block.c (make_blockranges): New function.
4114         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
4115         for block.
4116         * symtab.h (find_pc_partial_function): Add new parameter `block'.
4117         * blockframe.c (cache_pc_function_block): New static global.
4118         (clear_pc_function_cache): Clear cache_pc_function_block.
4119         (find_pc_partial_function): Move comment to symtab.h.  Add
4120         support for non-contiguous blocks.
4121         * cli/cli-cmds.c (block.h): Include.
4122         (print_disassembly): Handle printing of non-contiguous blocks.
4123         (disassemble_current_function): Likewise.
4124         (disassemble_command): Likewise.
4125
4126         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
4127         BLOCK_START.
4128         * blockframe.c (get_pc_function_start): Likewise.
4129         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
4130         (gcc_symbol_address): Likewise.
4131         * compile/compile-object-run.c (compile_object_run): Likewise.
4132         * compile/compile.c (get_expr_block_and_pc): Likewise.
4133         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
4134         (func_addr_to_tail_call_list): Likewise.
4135         * findvar.c (default_read_var_value): Likewise.
4136         * inline-frame.c (inline_frame_this_id): Likewise.
4137         (skip-inline_frames): Likewise.
4138         * infcmd.c (until_next_command): Likewise.
4139         * linespec.c (convert_linespec_to_sals): Likewise.
4140         * parse.c (parse_exp_in_context_1): Likewise.
4141         * printcmd.c (build_address_symbolic): likewise.
4142         (info_address_command): Likewise.
4143         symtab.c (find_function_start_sal): Likewise.
4144         (skip_prologue_sal): Likewise.
4145         (find_function_alias_target): Likewise.
4146         (find_gnu_ifunc): Likewise.
4147         * stack.c (find_frame_funname): Likewise.
4148         * symtab.c (fixup_symbol_section): Likewise.
4149         (find_function_start_sal): Likewise.
4150         (skip_prologue_sal): Likewsie.
4151         (find_function_alias_target): Likewise.
4152         (find_gnu_ifunc): Likewise.
4153         * tracepoint.c (info_scope_command): Likewise.
4154         * value.c (value_fn_field): Likewise.
4155
4156         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
4157         in place of find_pc_partial_function.
4158         * blockframe.c (find_function_entry_range_from_pc): New function.
4159         * symtab.h (find_function_entry_range_from_pc): Declare and document.
4160         * objfiles.c (objfile_relocate1): Relocate start and end addresses
4161         for each range in a block.
4162
4163
4164 2018-08-23  Xavier Roirand  <roirand@adacore.com>
4165
4166         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
4167         incrementation.
4168
4169 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4170
4171         * solib-svr4.c (read_program_headers_from_bfd): Return
4172         gdb::optional<gdb::byte_vector>.
4173         (svr4_exec_displacement): Adjust.
4174
4175 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4176
4177         * solib-svr4.c (read_program_header): Return
4178         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
4179         (find_program_interpreter): Return
4180         gdb::optional<gdb::byte_vector>.
4181         (scan_dyntag_auxv): Adjust.
4182         (enable_break): Adjust.
4183         (svr4_exec_displacement): Adjust.
4184
4185 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4186
4187         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
4188         * inf-child.c (inf_child_target::terminal_save_inferior): New.
4189
4190 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4191
4192         * guile/scm-string.c (gdbscm_scm_from_printf): Use
4193         string_vprintf.
4194         * guile/scm-utils.c (gdbscm_printf): Likewise.
4195         * serial.c (serial_printf): Likewise.
4196         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
4197
4198 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
4199
4200         * stack.c (print_frame): Print frame architecture when printing on
4201         an MI output.
4202         * NEWS: Mention new "arch" attribute in frame output.
4203
4204 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
4205
4206         * arch/aarch64.h (aarch64_regnum): Update comment.
4207
4208 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
4209
4210         * NEWS: Add SVE to 8.2 section.
4211
4212 2018-08-21  Pedro Alves  <palves@redhat.com>
4213
4214         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
4215         out from gdbscm_parse_function_args.
4216         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
4217         gdbscm_parse_function_args_1.
4218
4219 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
4220
4221         PR gdb/17816
4222         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
4223         operator.
4224
4225 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
4226
4227         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
4228
4229 2018-08-19  Michael Spang  <spang@google.com>
4230
4231         PR gdb/11786
4232         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
4233         for PT_TLS segments.
4234
4235 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
4236
4237         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
4238         dwarf_variable_value.
4239         * dwarf2-frame.c (class dwarf_expr_executor):
4240         Add override for dwarf_variable_value.
4241         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
4242         (class symbol_needs_eval_context): Likewise.
4243         (indirect_synthetic_pointer): Add forward declaration.
4244         (sect_variable_value): New function.
4245         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
4246         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
4247         for DW_OP_GNU_variable_value.
4248
4249 2018-08-16  Tom Tromey  <tom@tromey.com>
4250
4251         * top.c (read_command_file): Update.
4252         (command_line_input): Remove "repeat" argument.
4253         * ada-lang.c (get_selections): Update.
4254         * linespec.c (decode_line_2): Update.
4255         * defs.h (command_line_input): Remove argument.
4256         * cli/cli-script.c (read_next_line): Update.
4257         * python/py-gdb-readline.c: Update.
4258
4259 2018-08-17  Tom Tromey  <tom@tromey.com>
4260
4261         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
4262         command_line_input.
4263
4264 2018-08-15  Tom Tromey  <tom@tromey.com>
4265
4266         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
4267
4268 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
4269
4270         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
4271         If used, use find_pc_partial_function to find address range
4272         to disassemble.
4273         * mi/mi-main.c (mi_cmd_list_features): Report
4274         "data-disassemble-a-option" feature.
4275         * NEWS: Mention new -data-disassemble option -a.
4276
4277 2018-08-13  Tom Tromey  <tom@tromey.com>
4278
4279         * common/common-defs.h (_FORTIFY_SOURCE): Define.
4280
4281 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
4282
4283         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
4284         (aarch64_linux_collect_sve_regset): Likewise.
4285         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
4286         * regcache.h (regcache_map_entry_size): New function.
4287
4288 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
4289
4290         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
4291         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
4292         (SVE_HEADER_VL_LENGTH): Likewise.
4293         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
4294         (SVE_HEADER_FLAGS_LENGTH): Likewise.
4295         (SVE_HEADER_RESERVED_LENGTH): Likewise.
4296         (SVE_HEADER_SIZE_OFFSET): Likewise.
4297         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
4298         (SVE_HEADER_VL_OFFSET): Likewise.
4299         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
4300         (SVE_HEADER_FLAGS_OFFSET): Likewise.
4301         (SVE_HEADER_RESERVED_OFFSET): Likewise.
4302         (SVE_HEADER_SIZE): Likewise.
4303         (aarch64_linux_core_read_vq): Add function.
4304         (aarch64_linux_core_read_description): Check for SVE section.
4305
4306 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
4307
4308         * aarch64-fbsd-tdep.c
4309         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
4310         collect_size.
4311         * aarch64-linux-tdep.c
4312         (aarch64_linux_iterate_over_regset_sections): Likewise.
4313         * alpha-linux-tdep.c
4314         (alpha_linux_iterate_over_regset_sections):
4315         * alpha-nbsd-tdep.c
4316         (alphanbsd_iterate_over_regset_sections): Likewise.
4317         * amd64-fbsd-tdep.c
4318         (amd64fbsd_iterate_over_regset_sections): Likewise.
4319         * amd64-linux-tdep.c
4320         (amd64_linux_iterate_over_regset_sections): Likewise.
4321         * arm-bsd-tdep.c
4322         (armbsd_iterate_over_regset_sections): Likewise.
4323         * arm-fbsd-tdep.c
4324         (arm_fbsd_iterate_over_regset_sections): Likewise.
4325         * arm-linux-tdep.c
4326         (arm_linux_iterate_over_regset_sections): Likewise.
4327         * corelow.c (get_core_registers_cb): Likewise.
4328         (core_target::fetch_registers): Likewise.
4329         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
4330         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
4331         * gdbarch.h (void): Regenerate.
4332         * gdbarch.sh: Add supply_size and collect_size.
4333         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
4334         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
4335         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
4336         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
4337         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
4338         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
4339         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
4340         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
4341         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
4342         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
4343         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
4344         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
4345         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
4346         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
4347         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections):
4348         Likewise.
4349         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
4350         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
4351         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
4352         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
4353         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
4354         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
4355         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections):
4356         Likewise.
4357         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
4358         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
4359         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
4360         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
4361         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
4362         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
4363         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
4364         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
4365
4366 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
4367
4368         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
4369         with string_printf.
4370
4371 2018-08-10  Keith Seitz  <keiths@redhat.com>
4372
4373         * compile/compile-c-support.c (add_code_header, add_code_footer):
4374         Move into policy class.
4375         (c_push_user_expression, pop_user_expression_nop)
4376         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
4377         (compile_program): New host class.
4378         (c_compile_program): New typedef.
4379         (c_compute_porgram): Use c_compile_program.
4380
4381 2018-08-10  Keith Seitz  <keiths@redhat.com>
4382
4383         * compile/compile-internal.h (compile_instance::~compile_instance):
4384         Remove calls to htab_delete.
4385         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
4386         * compile.c (compile_instance::compile_instance): Initialize
4387         htab unique pointers.
4388         (compile_instance::get_cached_type, compile_instance::insert_type)
4389         (compile_instance::error_symbol_once): Update for unique_ptr.
4390
4391 2018-08-10  Keith Seitz  <keiths@redhat.com>
4392
4393         * compile/compile-c-symbols.c (struct symbol_error)
4394         (hash_symbol_error, eq_symbol_error, del_symbol_error)
4395         (compile_instance::insert_symbol_error)
4396         (compile_instance::error_symbol_once): Move to ...
4397         * compile/compile.c: ... here.
4398
4399 2018-08-10  Keith Seitz  <keiths@redhat.com>
4400
4401         * compile/compile-c-support.c (c_get_compile_context): Use `new'
4402         instead of `new_compile_instance'.
4403         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
4404         Update description.
4405         If the symbol error map is not initialized, create it.
4406         (generate_c_for_for_one_symbol): Do not check/initialize
4407         the symbol error map.
4408         * compile/compile-c-types.c (compile_c_instance): Make a class.
4409         Update all callers.
4410         (compile_instance::compile_instance): Initialize the type cache.
4411         (get_cached_type): New function.
4412         (insert_type): Update description.
4413         (compile_c_instance::m_default_cflags): Define.
4414         (convert_type): Update description.  Use get_cached_type.
4415         (delete_instance): Moved to destructor.
4416         (new_compile_instance): Moved to constructor.
4417         * compile/compile-c.h (compile_c_instance): Make class inheriting
4418         from compile_instance.
4419         <base>: Remove field.
4420         <type_map, symbol_err_map>: Move to base class.
4421         <c_plugin>: Rename to `m_plugin' and remove pointer type.
4422         * compile/compile-internal.h (compile_instance): Make class.
4423         <type_map_t, symbol_err_map_t>: Define.
4424         <fe>: Rename to `m_gcc_fe'.
4425         <scope, block, gcc_target_options>: Add `m_' prefix.
4426         <m_type_map, m_symbol_err_map>: New fields, moved from
4427         compile_c_instance.
4428         <destroy>: Remove.
4429         (convert_type, new_compile_instance): Remove.
4430         * compile/compile.c (cleanup_compile_instance): Remove.
4431         (compile_to_object): Use unique_ptr to eliminate cleanups.
4432         (compile_instance::set_print_callback, compile_instance::version)
4433         (compile_instance::set_verbose)
4434         (compile_instance::set_driver_filename)
4435         (compile_instance::set_triplet_regexp)
4436         (compile_instance::set_arguments)
4437         (compile_instance::set_source_file)
4438         (compile_instance::compile): Define.
4439
4440 2018-08-10  Keith Seitz  <keiths@redhat.com>
4441
4442         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
4443         * compile/compile-c-types.c: Define GCC_METHODN macros and include
4444         gcc-c-fe.def to define C plugin.
4445         (delete_instance): Delete `c_plugin'.
4446         (new_compile_instance): Initialize `c_plugin'.
4447         * compile/compile-c.h: Include gcc_c_plugin.h.
4448         (struct compile_c_instance) <c_plugin>: New member.
4449         * gcc-c-plugin.h: New file.
4450         Update all callers with API change.
4451
4452 2018-08-10  Keith Seitz  <keiths@redhat.com>
4453
4454         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
4455         (HFILES_NO_SRCDIR): ... to here.
4456         Add compile-internal.h and compile-c.h.
4457         * compile/compile-c-support.c: Include compile-c.h.
4458         * compile/compile-c-symbols.c: Include compile-c.h.
4459         (generate_c_for_variable_locations): Update comment.
4460         * compile/compile-c-types.c: Include compile-c.h.
4461         * compile/compile-c.h: New file -- moved C language declarations
4462         from other files here.
4463         * compile/compile-internal.h: Do not include hashtab.h or
4464         common/enum-flags.h.
4465         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
4466         (gcc_convert_symbol, gcc_symbol_address)
4467         (generate_c_for_variable_locations, c_get_mode_for_size)
4468         (c_get_range_decl_name): Definitions moved to compile-c.h.
4469         * compile/compile-loc2c.c: Include compile-c.h.
4470
4471 2018-08-10  Keith Seitz  <keiths@redhat.com>
4472
4473         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
4474         (c_symbol_substitution_name): ... this.
4475         Update all callers.
4476
4477 2018-08-10  Keith Seitz  <keiths@redhat.com>
4478
4479         * compile/compile-c-support.c (c_compute_program): Use
4480         unique_xmalloc_ptr to eliminate cleanup.
4481         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
4482         Return a unique_xmalloc_ptr and eliminate cleanup.
4483         * compile/compile-internal.h (generate_c_for_variable_locations):
4484         Return unique_xmalloc_ptr and update description.
4485
4486 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
4487
4488         * corelow.c (core_target::get_core_register_section): Rename
4489         min_size to section_min_size.
4490
4491 2018-08-09  Jim Wilson  <jimw@sifive.com>
4492
4493         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
4494         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
4495         * NEWS: Mention new GNU/Linux RISC-V target.
4496         * configure.host: Add riscv*-*-linux*.
4497         * configure.nat: Add riscv*.
4498         * configure.tgt: Add riscv*-*-linux*.
4499         * riscv-linux-nat.c: New file.
4500         * riscv-linux-tdep.c: New file.
4501
4502 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4503
4504         * infrun.c (resume): Make static, add forward declaration.
4505         (proceed): Update header comment.
4506         * infrun.h (resume): Delete declaration.
4507
4508 2018-08-09  Tom Tromey  <tom@tromey.com>
4509
4510         * riscv-tdep.h: Minor formatting fixes.
4511
4512 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
4513
4514         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
4515         * dwarf-index-cache.c (create_dir_and_check): Likewise.
4516         (test_mkdir_recursive): Likewise.
4517         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
4518
4519 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4520
4521         * valarith.c (value_subscripted_rvalue): If an array is not in
4522         memory, and we don't know the upper bound, then we can't know that
4523         the requested element exists or not.
4524
4525 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
4526
4527         * target.c (str_comma_list_concat_elem): Fix typo in comment.
4528         (target_options_to_string): Add comment.
4529
4530 2018-08-08  Tom Tromey  <tom@tromey.com>
4531
4532         * unittests/scoped_mmap-selftests.c: Check result of "write".
4533
4534 2018-08-08  Jim Wilson  <jimw@sifive.com>
4535
4536         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
4537         (decode_register_index_short): New.
4538         (decode_j_type_insn, decode_cj_type_insn): New.
4539         (decode_b_type_insn, decode_cb_type_insn): New.
4540         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
4541         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
4542         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
4543         is_c_sw_insn instead of is_sw_insn.
4544         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
4545         (riscv_software_single_step): New.
4546         * riscv-tdep.h (riscv_software_single_step): Declare.
4547
4548         * riscv-tdep.c (riscv_isa_xlen): Drop static.
4549         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
4550
4551 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
4552
4553         PR gdb/18050:
4554         * target.c (dispose_inferior): Don't dispose of inferiors that are
4555         already killed.
4556
4557 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
4558
4559         * remote.c (remote_target::download_tracepoint): Change char* to
4560         const char*.
4561
4562 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
4563
4564         * target.h (target_options_to_string): Return an std::string.
4565         * target.c (str_comma_list_concat_elem): Return void, use
4566         std::string.
4567         (do_option): Likewise.
4568         (target_options_to_string): Return an std::string.
4569         * linux-nat.c (linux_nat_target::wait): Adjust.
4570         * target-debug.h (target_debug_print_options): Adjust.
4571
4572 2018-08-07  Tom Tromey  <tom@tromey.com>
4573
4574         * Makefile.in (CPPFLAGS): New variable.
4575         (INTERNAL_CPPFLAGS): Use it.
4576
4577 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4578
4579         * NEWS: Mention the index cache.
4580
4581 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4582
4583         * common/pathstuff.h (get_standard_cache_dir): New.
4584         * common/pathstuff.c (get_standard_cache_dir): New.
4585         * build-id.h (build_id_to_string): New.
4586         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
4587         DEBUG_STR_SUFFIX): Move to here.
4588         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
4589         DEBUG_STR_SUFFIX): Move from there.
4590         (write_psymtabs_to_index): Make non-static, add basename
4591         parameter.  Write to temporary files, rename when done.
4592         (save_gdb_index_command): Adjust call to
4593         write_psymtabs_to_index.
4594         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
4595         field.
4596         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
4597         (get_gdb_index_contents_from_cache): New.
4598         (get_gdb_index_contents_from_cache_dwz): New.
4599         (dwarf2_initialize_objfile): Read index from cache.
4600         (dwarf2_build_psymtabs): Save to index.
4601         * dwarf-index-cache.h: New file.
4602         * dwarf-index-cache.c: New file.
4603         * dwarf-index-write.h: New file.
4604
4605 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4606
4607         * gnulib/aclocal.m4: Re-generate.
4608         * gnulib/config.in: Re-generate.
4609         * gnulib/configure: Re-generate.
4610         * gnulib/import/Makefile.am: Re-generate.
4611         * gnulib/import/Makefile.in: Re-generate.
4612         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
4613         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
4614         * gnulib/import/m4/mkdir.m4: New file.
4615         * gnulib/import/mkdir.c: New file.
4616         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
4617         module.
4618
4619 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4620
4621         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
4622         * common/scoped_mmap.c: New file.
4623         * common/scoped_mmap.h (destroy): New method.
4624         (~scoped_mmap, reset): Use destroy.
4625         (scoped_mmap): New move constructor.
4626         (mmap_file): New declaration.
4627         * unittests/scoped_mmap-selftests.c (test_normal,
4628         test_invalid_filename, run_tests): New functions.
4629         (_initialize_scoped_mmap_selftests): Register selftest.
4630
4631 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4632
4633         * dwarf2read.c (read_gdb_index_from_section): Rename to...
4634         (read_gdb_index_from_buffer): ... this.  Remove section
4635         parameter, add buffer parameter.
4636         (get_gdb_index_contents_ftype,
4637         get_gdb_index_contents_dwz_ftype): New typedefs.
4638         (dwarf2_read_gdb_index): Add callback parameters to get the
4639         index contents.
4640         (get_gdb_index_contents_from_section): New.
4641         (dwarf2_initialize_objfile): Update call to
4642         dwarf2_read_gdb_index.
4643
4644 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4645
4646         * common/filestuff.h (gdb_fopen_cloexec): New overload.
4647         (gdb_open_cloexec): Likewise.
4648         * nat/linux-osdata.c (command_from_pid): Use string_printf.
4649         (commandline_from_pid): Likewise.
4650         (linux_xfer_osdata_threads): Likewise.
4651         (linux_xfer_osdata_fds): Likewise.
4652         * ada-lang.c (is_package_name): Likewise.
4653         * auxv.c (procfs_xfer_auxv): Likewise.
4654         * breakpoint.c (print_one_breakpoint_location): Use
4655         uiout::field_fmt.
4656         (print_one_catch_solib): Use string_printf.
4657         * coff-pe-read.c (add_pe_exported_sym): Likewise.
4658         (add_pe_forwarded_sym): Likewise.
4659         * dwarf2read.c (create_type_unit_group): Likewise.
4660         (build_error_marker_type): Likewise.
4661         * infcall.c (get_function_name): Likewise.
4662         * valprint.c (print_converted_chars_to_obstack): Likewise.
4663         * xtensa-tdep.c (xtensa_register_type): Likewise.
4664
4665 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
4666
4667         * remote.c (remote_target::download_tracepoint): Fix format
4668         string errors.
4669
4670 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4671
4672         * tracefile.c: Include common/byte-vector.h.
4673         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
4674         with trace_regblock_size if needed.  Update uses of buf.
4675
4676 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4677
4678         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
4679         std::vector<unsigned char>.
4680         * tracepoint.c (collection_list::collection_list): Remove
4681         m_regs_mask initializer from initializer list.  Resize
4682         m_regs_mask using the largest remote register number.
4683         (collection_list::add_remote_register): Remove size check on
4684         m_regs_mask.  Use at to access element.
4685         (collection_list::stringify): Change type of temp_buf to
4686         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
4687         stringify the register mask.  Use pack_hex_byte for the register
4688         mask.
4689
4690 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4691
4692         * tracepoint.h (class collection_list) <add_register>: Remove.
4693         <add_remote_register, add_ax_registers, add_local_register>:
4694         Declare.
4695         <add_memrange>: Add scope parameter.
4696         * tracepoint.c (encode_actions_1): Likewise.
4697         (collection_list::add_register): Rename to ...
4698         (collection_list::add_remote_register): ... this.  Update
4699         comment.
4700         (collection_list::add_ax_registers, add_local_register): New
4701         methods.
4702         (collection_list::add_memrange): Add scope parameter.  Call
4703         add_local_register instead of add_register.
4704         (finalize_tracepoint_aexpr): New function.
4705         (collection_list::collect_symbol): Update calls to add_memrange.
4706         Call add_local_register instead of add_register.  Call
4707         add_ax_registers.  Call finalize_tracepoint_aexpr.
4708         (encode_actions_1): Get remote regnos for $reg action.  Call
4709         add_remote_register, add_ax_registers, and add_local_register.
4710         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
4711         (validate_actionline): Call finalize_tracepoint_aexpr.
4712
4713 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4714
4715         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
4716         Replace array buf with gdb::char_vector buf, of size
4717         get_remote_packet_size ().  Replace references to buf and
4718         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
4719         and xsnprintf with snprintf.  Raise errors if the buffer is too
4720         small.
4721
4722 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4723
4724         * remote.c (remote_target::download_tracepoint): Fix the has_more
4725         predicate in the QTDP action list iteration.
4726
4727 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4728
4729         * remote.c (remote_target::download_tracepoint): Fix indentation
4730         in for block.
4731
4732 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4733
4734         * proc-api.c (_initialize_proc_api): Remove c, unused.
4735         * procfs.c (procfs_init_inferior): Remove signals, unused.
4736         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
4737         unused.
4738
4739 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
4740             Andrew Burgess  <andrew.burgess@embecosm.com>
4741
4742         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
4743         'W_STOPCODE (0)' as this could be ambiguous.
4744
4745 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
4746
4747         * ser-tcp.c (net_open): Fix thinko when deciding whether to
4748         disable TCP's Nagle algorithm (use "ai_protocol" instead of
4749         "ai_socktype").
4750
4751 2018-08-02  Tom Tromey  <tom@tromey.com>
4752
4753         PR symtab/16842.
4754         * dwarf2read.c (read_func_scope): Set symtab on template parameter
4755         symbols.
4756         (process_structure_scope): Likewise.
4757
4758 2018-08-02  Xavier Roirand  <roirand@adacore.com>
4759
4760         PR gdb/22629:
4761         * darwin-nat.c (darwin_kill_inferior): Fix handling of
4762         kill inferior.
4763
4764 2018-08-02  Tom Tromey  <tom@tromey.com>
4765
4766         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
4767         (darwin_suspend_inferior, darwin_resume_inferior)
4768         (darwin_decode_notify_message, darwin_resume_inferior_threads)
4769         (darwin_check_new_threads): Check result of get_darwin_inferior.
4770
4771 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
4772
4773         GDB 8.1.1 released.
4774
4775 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
4776
4777         * varobj.c (varobj_get_path_expr_parent): Report an error if
4778         parent is a dynamic varobj.
4779
4780 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
4781
4782         * gnulib/aclocal.m4: Re-generate.
4783         * gnulib/config.in: Re-generate.
4784         * gnulib/configure: Re-generate.
4785         * gnulib/import/Makefile.in: Re-generate.
4786         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
4787         * gnulib/import/m4/onceonly.m4: Re-generate.
4788
4789 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
4790
4791         * target-descriptions.c (struct xml_test_tdesc): New.
4792         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
4793         (record_xml_tdesc): Update.
4794         (maintenance_check_xml_descriptions): Update.
4795         * target-descriptions.h (record_xml_tdesc): Update comment.
4796
4797 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
4798
4799         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
4800         checking array bounds are defined.
4801
4802 2018-07-30  Tom Tromey  <tom@tromey.com>
4803
4804         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
4805         irreflexivity violation.
4806
4807 2018-07-30  Tom Tromey  <tom@tromey.com>
4808
4809         * cli/cli-decode.c (lookup_cmd): Remove lint code.
4810         * value.c (unpack_long): Remove lint code.
4811         * valops.c (value_ind): Remove lint code.
4812         * valarith.c (value_x_binop, value_x_unop, value_equal)
4813         (value_pos): Remove lint code.
4814
4815 2018-07-28  Tom de Vries  <tdevries@suse.de>
4816
4817         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
4818         with undefined upper bound as <optimized out>.
4819
4820 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
4821
4822         * gcore.in: Rename variable "name" to "prefix".  Expand
4823         "usage" text.
4824
4825 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
4826
4827         * windows-nat.c (windows_nat_target::create_inferior): Update to
4828         call close() in global namespace.
4829
4830 2018-07-26  Tom Tromey  <tom@tromey.com>
4831
4832         * dwarf-index-write.c (add_address_entry): Don't add objfile
4833         offsets.
4834         * dbxread.c (find_stab_function): Rename from
4835         find_stab_function_addr.  Return a bound_minimal_symbol.
4836         (read_dbx_symtab): Use raw_text_low, raw_text_high.
4837         Don't add objfile offsets.
4838         (end_psymtab): Use raw_text_low, raw_text_high,
4839         MSYMBOL_VALUE_RAW_ADDRESS.
4840         (read_ofile_symtab): Update.
4841         (process_one_symbol): Update.
4842         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
4843         offsets.
4844         (dw2_relocate): Remove.
4845         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
4846         searching addrmap.
4847         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
4848         Update.
4849         (process_psymtab_comp_unit_reader, add_partial_symbol)
4850         (add_partial_subprogram, dwarf2_ranges_read): Update.
4851         (load_partial_dies): Update.
4852         (add_address_entry): Don't add objfile offsets.
4853         (dwarf2_build_include_psymtabs): Update.
4854         (create_addrmap_from_aranges): Don't add objfile offsets.
4855         (dw2_find_pc_sect_compunit_symtab): Update.
4856         * mdebugread.c (parse_symbol): Don't add objfile offsets.
4857         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
4858         Update.
4859         (parse_partial_symbols): Don't add objfile offsets.  Use
4860         raw_text_low, raw_text_high.  Update.
4861         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
4862         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
4863         or call 'relocate' quick function.  Clear psymbol_map.
4864         * psympriv.h (struct partial_symbol) <address>: Add section
4865         offset.
4866         <set_unrelocated_address>: Rename from set_address.
4867         <raw_text_low, raw_text_high>: New methods.
4868         <text_low, text_high>: Add objfile parameter.
4869         (add_psymbol_to_bcache): Add 'section' parameter.  Call
4870         set_unrelocated_address.
4871         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4872         (find_pc_psymbol): Update.
4873         (fixup_psymbol_section, relocate_psymtabs): Remove.
4874         (dump_psymtab, psym_functions): Update.
4875         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
4876         parameter.
4877         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
4878         (start_psymtab_common): Update.
4879         * symfile-debug.c (debug_qf_relocate): Remove.
4880         (debug_sym_quick_functions): Update.
4881         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
4882         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
4883         Update.
4884
4885 2018-07-26  Tom Tromey  <tromey@redhat.com>
4886
4887         * dbxread.c (end_psymtab): Use text_high_valid and
4888         text_low_valid.
4889         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
4890         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
4891         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
4892         Update comment.
4893         <text_low_valid, text_high_valid>: New fields.
4894         <set_text_low, set_text_high>: Update.
4895         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
4896
4897 2018-07-26  Tom Tromey  <tom@tromey.com>
4898
4899         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
4900         Update.
4901         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
4902         textlow and texthigh fields.
4903         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
4904         Update.
4905         * mdebugread.c (parse_lines, parse_partial_symbols)
4906         (psymtab_to_symtab_1): Update.
4907         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
4908         Rename fields.  Update comment.  Now private.
4909         <text_low, text_high, set_text_low, set_text_high>: New methods.
4910         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4911         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
4912         (start_psymtab_common, maintenance_info_psymtabs)
4913         (maintenance_check_psymtabs): Update.
4914         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
4915         texthigh fields.
4916         (scan_xcoff_symtab): Update.
4917
4918 2018-07-26  Tom Tromey  <tromey@redhat.com>
4919
4920         * psympriv.h (struct partial_symbol) <unrelocated_address,
4921         address, set_address>: New methods.
4922         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
4923         (fixup_psymbol_section, relocate_psymtabs): Update.
4924         (print_partial_symbols): Add 'objfile' parameter.  Update.
4925         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
4926         Update.
4927
4928 2018-07-26  Tom Tromey  <tom@tromey.com>
4929
4930         * dwarf-index-write.c (write_psymbols, debug_names::insert)
4931         (debug_names::write_psymbols): Update.
4932         * psympriv.h (struct partial_symbol): Derive from
4933         general_symbol_info.
4934         <obj_section>: New method.
4935         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
4936         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4937         (find_pc_sect_psymbol, fixup_psymbol_section)
4938         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
4939         (print_partial_symbols, recursively_search_psymtabs)
4940         (compare_psymbols, psymbol_hash, psymbol_compare)
4941         (add_psymbol_to_bcache, maintenance_check_psymtabs)
4942         (psymbol_name_matches, psym_fill_psymbol_map): Update.
4943
4944 2018-07-26  Tom Tromey  <tromey@redhat.com>
4945
4946         * dbxread.c (end_psymtab): Remove dead code.
4947
4948 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
4949
4950         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
4951         DWARF unwinders are disabled.
4952         * dwarf2-frame.c: Add dwarf2read.h include.
4953         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
4954         disabled.
4955         (dwarf2_frame_unwinders_enabled_p): Define.
4956         (show_dwarf_unwinders_enabled_p): New function.
4957         (_initialize_dwarf2_frame): Register switch to control DWARF
4958         unwinder use.
4959         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
4960         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
4961         (show_dwarf_cmdlist): Remove static keyword.
4962         * dwarf2read.h (set_dwarf_cmdlist): Declare.
4963         (show_dwarf_cmdlist): Declare.
4964         * NEWS: Document new feature.
4965
4966 2018-07-26  Tom de Vries  <tdevries@suse.de>
4967
4968         PR breakpoints/23366
4969         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
4970
4971 2018-07-26  Tom de Vries  <tdevries@suse.de>
4972
4973         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
4974         DW_AT_count can't be translated to a dynamic prop.
4975
4976 2018-07-25  Tom de Vries  <tdevries@suse.de>
4977
4978         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
4979         try/catch.
4980
4981 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
4982
4983         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
4984
4985 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
4986
4987         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
4988
4989 2018-07-24  Keith Seitz  <keiths@redhat.comt
4990
4991         PR symtab/23010
4992         * dwarf2read.c (dw2_add_symbol_to_list): New function.
4993         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
4994         instead of add_symbol_to_list.
4995         (read_file_scope): Call prepare_one_comp_unit before reading
4996         any other DIEs.
4997
4998 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
4999
5000         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
5001
5002 2018-07-24  Tom Tromey  <tom@tromey.com>
5003
5004         * utils.c (malloc, realloc, free): Don't declare.
5005         * configure, config.in: Rebuild.
5006         * configure.ac: Don't check for declarations of free, malloc, or
5007         realloc.
5008
5009 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
5010
5011         * aarch64-linux-nat.c
5012         (aarch64_linux_nat_target::stopped_data_address): Remove unused
5013         variable.
5014         * arm-linux-nat.c (fetch_regs): Likewise.
5015         (store_regs): Likewise.
5016         (fetch_vfp_regs): Likewise.
5017         (store_vfp_regs): Likewise.
5018         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
5019         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
5020         (arm_linux_nat_target::insert_watchpoint): Likewise.
5021         (arm_linux_nat_target::remove_watchpoint): Likewise.
5022         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
5023         Likewise.
5024         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
5025         Likewise.
5026         * ppc-linux-nat.c (fetch_register): Likewise.
5027         (fetch_all_gp_regs): Likewise.
5028         (fetch_ppc_registers): Likewise.
5029         (store_all_gp_regs): Likewise.
5030         (store_ppc_registers): Likewise.
5031         (hwdebug_insert_point): Likewise.
5032         (can_use_watchpoint_cond_accel): Likewise.
5033         * remote-sim.c (gdb_os_write_stdout): Likewise.
5034
5035 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
5036             Tom Tromey  <tom@tromey.com>
5037
5038         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
5039         test for it.
5040         * configure: Rebuild.
5041
5042 2018-07-22  Tom Tromey  <tom@tromey.com>
5043
5044         * regformats/regdat.sh: Define xmltarget_${name} inside
5045         #ifndef IN_PROCESS_AGENT.
5046
5047 2018-07-22  Tom Tromey  <tom@tromey.com>
5048
5049         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
5050
5051 2018-07-22  Tom Tromey  <tom@tromey.com>
5052
5053         * symfile.c (reread_symbols): Notify iter, not objfile.
5054
5055 2018-07-22  Tom Tromey  <tom@tromey.com>
5056
5057         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
5058         Use arch_ops.
5059         (ravenscar_thread_target::prepare_to_store): Likewise.
5060
5061 2018-07-22  Tom Tromey  <tom@tromey.com>
5062
5063         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
5064         unused variable.  Call value_fetch_lazy when needed.
5065         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
5066         Remove unused variable.  Call value_fetch_lazy when needed.
5067
5068 2018-07-22  Tom Tromey  <tom@tromey.com>
5069
5070         * m32c-tdep.c (mark_dma): Return void.
5071         (make_regs): Remove unused declarations.
5072
5073 2018-07-22  Tom Tromey  <tom@tromey.com>
5074
5075         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
5076         cmdscm_get_valid_command_smob_arg_unsafe for effect.
5077         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
5078         bkscm_get_valid_block_smob_arg_unsafe for effect.
5079
5080 2018-07-22  Tom Tromey  <tom@tromey.com>
5081
5082         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
5083         value_type.
5084
5085 2018-07-22  Tom Tromey  <tom@tromey.com>
5086
5087         * windows-nat.c (saved_context): Conditionally define.
5088         * remote.c (remote_target::remote_btrace_maybe_reopen):
5089         Conditionally declare "warned".
5090         * inflow.c (sigquit_ours): Conditionally define.
5091         (new_tty): Move "tty" declaration inside #if.
5092         * guile/guile.c (guile_datadir): Conditionally define.
5093         * charset.c (set_be_le_names): Move some declarations inside #if.
5094         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
5095         #if.
5096         (parse_xml_btrace_conf): Likewise.
5097
5098 2018-07-22  Tom Tromey  <tom@tromey.com>
5099
5100         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
5101
5102 2018-07-22  Tom Tromey  <tom@tromey.com>
5103
5104         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
5105         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
5106         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
5107         * buildsym-legacy.c (get_macro_table): Remove unused variable.
5108         * stack.c (frame_apply_level_command): Remove unused variable.
5109         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
5110         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
5111         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
5112         unused variable.
5113         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
5114         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
5115         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
5116         variable.
5117         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
5118         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
5119         variable.
5120         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
5121         Remove unused variable.
5122         * cli/cli-script.c (recurse_read_control_structure): Remove unused
5123         variable.
5124         * common/tdesc.c (print_xml_feature::visit): Remove unused
5125         variable.
5126         * compile/compile-object-load.c (store_regs): Remove unused
5127         variables.
5128         * complaints.c (clear_complaints): Remove unused variable.
5129         * corelow.c (core_target_open): Remove unused variable.
5130         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
5131         variable.
5132         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
5133         variable.
5134         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
5135         variable.
5136         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
5137         variable.
5138         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
5139         variable.
5140         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
5141         variable.
5142         * ia64-tdep.c (examine_prologue): Remove unused variable.
5143         * infcall.c (run_inferior_call): Remove unused variable.
5144         * inferior.c (exit_inferior): Remove unused variable.
5145         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
5146         * linespec.c (decode_line_2): Remove unused variable.
5147         * linux-nat.c (super_close): Remove.
5148         * linux-tdep.c (linux_info_proc): Remove unused variable.
5149         * mi/mi-main.c (mi_execute_command): Remove unused variable.
5150         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
5151         Remove unused variable.
5152         * parse.c (find_minsym_type_and_address): Remove unused variable.
5153         * printcmd.c (info_symbol_command, printf_floating): Remove unused
5154         variable.
5155         * python/py-breakpoint.c (bppy_set_commands): Remove unused
5156         variable.
5157         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
5158         variables.
5159         * record-btrace.c (record_btrace_target::store_registers): Remove
5160         unused variable.
5161         (cmd_show_record_btrace_cpu): Remove unused variable.
5162         * riscv-tdep.c (riscv_register_reggroup_p)
5163         (riscv_push_dummy_call, riscv_return_value): Remove unused
5164         variable.
5165         * rust-exp.y (literal): Remove unused variable.
5166         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
5167         unused variable.
5168         <STRUCTOP_ANONYMOUS>: Likewise.
5169         * s390-linux-tdep.c (s390_linux_init_abi_31)
5170         (s390_linux_init_abi_64): Remove unused variable.
5171         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
5172         (file_select_thread, net_windows_open, _initialize_ser_windows):
5173         Remove unused variables.
5174         * symtab.c (find_pc_sect_line): Remove unused variable.
5175         * target-memory.c (compute_garbled_blocks): Remove unused
5176         variable.
5177         (target_write_memory_blocks): Remove unused variable.
5178         * target.c (target_stack::unpush): Remove unused variables.
5179         * tracepoint.c (start_tracing, all_tracepoint_actions)
5180         (merge_uploaded_trace_state_variables)
5181         (print_one_static_tracepoint_marker): Remove unused variable.
5182         * unittests/basic_string_view/element_access/char/1.cc (test01):
5183         Remove unused variable.
5184         * windows-nat.c (windows_continue, windows_add_all_dlls)
5185         (do_initial_windows_stuff, windows_nat_target::create_inferior):
5186         Remove unused variables.
5187
5188 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
5189
5190         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
5191         attr_profile in HAVE_ELF.
5192         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
5193         HAVE_ELF.
5194
5195 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
5196
5197         * frame.c (frame_register_unwind): Change parameter name.
5198         (frame_unwind_register): Likewise.
5199         (frame_unwind_register_value): Likewise.
5200         (frame_unwind_register_signed): Likewise.
5201         (frame_unwind_register_unsigned): Likewise.
5202         * frame.h (frame_register_unwind): Likewise.
5203         (frame_unwind_register): Likewise.
5204         (frame_unwind_register_value): Likewise.
5205         (frame_unwind_register_signed): Likewise.
5206         (frame_unwind_register_unsigned): Likewise.
5207         (frame_unwind_arch): Likewise.
5208
5209 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
5210
5211         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
5212         ISA maintenance.
5213
5214 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
5215
5216         * mips-linux-nat.c (mips_linux_nat_target::read_description):
5217         Call `get_ptrace_pid' rather than extracting the ptrace PID by
5218         hand.
5219
5220 2018-07-20  Keith Seitz  <keiths@redhat.com>
5221
5222         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
5223         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
5224         m_compunit_symtab, m_language>: Add "m_" prefix.
5225         Update all uses.
5226         * buildsym.c: Update all uses.
5227
5228 2018-07-20  Tom Tromey  <tom@tromey.com>
5229
5230         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
5231         * buildsym.h (record_line_ftype): Remove typedef.
5232
5233 2018-07-20  Tom Tromey  <tom@tromey.com>
5234
5235         * buildsym-legacy.h (augment_type_symtab): Don't declare.
5236         (end_expandable_symtab): Likewise.
5237         (end_symtab_get_static_block): Likewise.
5238         (end_symtab_from_static_block): Likewise.
5239         * buildsym-legacy.c (augment_type_symtab): Remove.
5240         (end_expandable_symtab): Remove.
5241         (end_symtab_get_static_block): Remove.
5242         (end_symtab_from_static_block): Remove.
5243
5244 2018-07-20  Tom Tromey  <tom@tromey.com>
5245
5246         * dwarf2read.c: Include buildsym.h.
5247         (struct dwarf2_cu) <builder>: New method.
5248         (fixup_go_packaging): Update.
5249         (process_full_comp_unit, process_full_type_unit): Update.  Don't
5250         use scoped_free_pendings.
5251         (using_directives): Add "cu" parameter, remove "language".
5252         (read_import_statement, setup_type_unit_groups, )
5253         (read_func_scope, read_lexical_block_scope)
5254         (dwarf2_record_block_ranges, read_namespace): Update.
5255         (lnp_state_machine::lnp_state_machine): Add cu parameter.
5256         (lnp_state_machine::handle_end_sequence): Update.
5257         (class lnp_state_machine) <m_cu>: New member.
5258         <m_record_line_callback>: Remove.
5259         <m_currently_recording_lines>: New member.
5260         (lnp_state_machine::handle_set_file): Update.
5261         (noop_record_line): Remove.
5262         (dwarf_record_line_p): Add cu parameter.
5263         (dwarf_record_line_1, dwarf_finish_line): Likewise.
5264         (lnp_state_machine::record_line)
5265         (lnp_state_machine::lnp_state_machine)
5266         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
5267         (dwarf_decode_lines): Update.
5268         (dwarf2_start_subfile): Add cu parameter.
5269         (dwarf2_start_symtab, new_symbol): Update.
5270         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
5271         Remove dwarf2_per_objfile parameter.
5272         (dwarf_decode_macros): Update.
5273
5274 2018-07-20  Tom Tromey  <tom@tromey.com>
5275
5276         * stabsread.c (define_symbol): Update.
5277         * buildsym-legacy.h (get_buildsym_compunit): Declare.
5278         * dwarf2read.c (new_symbol): Update.
5279         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
5280         * cp-namespace.c: Include buildsym.h.
5281         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
5282         * buildsym-legacy.c (get_buildsym_compunit): New function.
5283
5284 2018-07-20  Tom Tromey  <tom@tromey.com>
5285
5286         * xcoffread.c: Include buildsym-legacy.h.
5287         * windows-nat.c: Include buildsym-legacy.h.
5288         * stabsread.c: Include buildsym-legacy.h.
5289         * mdebugread.c: Include buildsym-legacy.h.
5290         * buildsym-legacy.h: New file.
5291         * buildsym-legacy.c: New file, from buildsym.c.
5292         * go32-nat.c: Include buildsym-legacy.h.
5293         * dwarf2read.c: Include buildsym-legacy.h.
5294         * dbxread.c: Include buildsym-legacy.h.
5295         * cp-namespace.c: Include buildsym-legacy.h.
5296         * coffread.c: Include buildsym-legacy.h.
5297         * buildsym.h: Move some contents to buildsym-legacy.h.
5298         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
5299         buildsym-legacy.c.
5300         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
5301
5302 2018-07-20  Tom Tromey  <tom@tromey.com>
5303
5304         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
5305         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
5306         (buildsym_compunit::buildsym_compunit)
5307         (buildsym_compunit::~buildsym_compunit)
5308         (buildsym_compunit::get_macro_table): Define.
5309
5310 2018-07-20  Tom Tromey  <tom@tromey.com>
5311
5312         * buildsym.c (reset_symtab_globals): Remove.
5313         (buildsym_compunit::end_symtab_from_static_block): Update.
5314         (buildsym_compunit::augment_type_symtab): Update.
5315         (end_symtab_from_static_block): Call free_buildsym_compunit.
5316         (augment_type_symtab, end_symtab, end_expandable_symtab):
5317         Likewise.
5318
5319 2018-07-20  Tom Tromey  <tom@tromey.com>
5320
5321         * arch-utils.c: Do not include buildsym.h.
5322         * mipsread.c: Do not include buildsym.h.
5323         * machoread.c: Do not include buildsym.h.
5324         * elfread.c: Do not include buildsym.h.
5325
5326 2018-07-20  Tom Tromey  <tom@tromey.com>
5327
5328         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
5329         initialization.
5330         (buildsym_compunit): Add new constructor.
5331         (struct buildsym_compunit) <get_last_source_file, finish_block,
5332         record_block_range, start_subfile, patch_subfile_names,
5333         push_subfile, pop_subfile, record_line, get_compunit_symtab,
5334         set_last_source_start_addr, get_last_source_start_addr,
5335         get_local_using_directives, set_local_using_directives,
5336         get_global_using_directives, outermost_context_p,
5337         get_current_context_stack, get_context_stack_depth,
5338         get_current_subfile, get_local_symbols, get_file_symbols,
5339         get_global_symbols, record_debugformat, record_producer,
5340         push_context, pop_context, end_symtab_get_static_block,
5341         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
5342         New public methods.
5343         <record_pending_block, finish_block_internal, make_blockvector,
5344         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
5345         private methods.
5346         Update all users.
5347
5348 2018-05-22  Tom Tromey  <tom@tromey.com>
5349
5350         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
5351         parameter.
5352         (finish_block_internal): Update.
5353
5354 2018-07-20  Tom Tromey  <tom@tromey.com>
5355
5356         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
5357         parameter.
5358         (finish_block_internal): Update.
5359
5360 2018-07-20  Tom Tromey  <tom@tromey.com>
5361
5362         * buildsym.h (EXTERN): Don't define or undef.
5363         * buildsym.c (EXTERN): Don't define.
5364
5365 2018-07-20  Tom Tromey  <tom@tromey.com>
5366
5367         * buildsym.c: Remove TODO comment.
5368
5369 2018-07-20  Tom Tromey  <tom@tromey.com>
5370
5371         * coffread.c (coff_symtab_read): Update.
5372         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
5373         (xcoff_new_init): Update.
5374         * mipsread.c (mipscoff_new_init): Update.
5375         * mdebugread.c (mdebug_build_psymtabs): Update.
5376         * elfread.c (elf_new_init): Update.
5377         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
5378         Update.
5379         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
5380         (coffstab_build_psymtabs, elfstab_build_psymtabs)
5381         (stabsect_build_psymtabs): Update.
5382         * buildsym.h (buildsym_init): Don't declare.
5383         * buildsym.c: Update comment.
5384         (prepare_for_building): Remove.
5385         (start_symtab, restart_symtab): Update.
5386         (reset_symtab_globals): Update comment.
5387         (buildsym_init): Remove.
5388
5389 2018-07-20  Tom Tromey  <tom@tromey.com>
5390
5391         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
5392         * stabsread.c (patch_block_stabs, define_symbol, read_type)
5393         (read_enum_type, common_block_start, common_block_end)
5394         (cleanup_undefined_types_1, finish_global_stabs): Update.
5395         * mdebugread.c (psymtab_to_symtab_1): Update.
5396         * dwarf2read.c (fixup_go_packaging, read_func_scope)
5397         (read_lexical_block_scope, new_symbol): Update.
5398         * dbxread.c (process_one_symbol): Update.
5399         * coffread.c (coff_symtab_read, process_coff_symbol)
5400         (coff_read_enum_type): Update.
5401         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
5402         declare.
5403         (get_local_symbols, get_file_symbols, get_global_symbols): New
5404         functions.
5405         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
5406         m_global_symbols.
5407         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
5408         (~scoped_free_pendings): Update.
5409         (finish_block, prepare_for_building, reset_symtab_globals)
5410         (end_symtab_get_static_block, end_symtab_with_blockvector)
5411         (augment_type_symtab, push_context): Update.
5412         (get_local_symbols, get_file_symbols, get_global_symbols): New
5413         functions.
5414         (buildsym_init): Update.
5415
5416 2018-07-20  Tom Tromey  <tom@tromey.com>
5417
5418         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
5419         (process_full_type_unit): Likewise.
5420         (dwarf2_start_symtab): Set list_in_scope.
5421
5422 2018-07-20  Tom Tromey  <tom@tromey.com>
5423
5424         * dwarf2read.c (process_psymtab_comp_unit_reader)
5425         (build_type_psymtabs_reader): Do not set list_in_scope.
5426
5427 2018-07-20  Tom Tromey  <tom@tromey.com>
5428
5429         * buildsym.c (free_pendings): Remove.
5430         (add_symbol_to_list, scoped_free_pendings)
5431         (finish_block_internal, buildsym_init): Update.
5432
5433 2018-07-20  Tom Tromey  <tom@tromey.com>
5434
5435         * xcoffread.c (read_xcoff_symtab): Update.
5436         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
5437         Update.
5438         * dbxread.c (process_one_symbol): Update.
5439         * coffread.c (coff_symtab_read): Update.
5440         * buildsym.h (finish_block): Update.
5441         * buildsym.c (finish_block): Remove "listhead" argument.
5442         (end_symtab_get_static_block): Update.
5443
5444 2018-07-20  Tom Tromey  <tom@tromey.com>
5445
5446         * buildsym.h (class scoped_free_pendings): Remove constructor.
5447         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
5448         method.
5449         <m_pending_block_obstack, m_pending_blocks>: New members.
5450         (pending_block_obstack, pending_blocks): Remove.
5451         (scoped_free_pendings::scoped_free_pendings): Default.
5452         (~scoped_free_pendings): Update.
5453         (free_pending_blocks): Remove.
5454         (finish_block_internal, record_pending_block, make_blockvector)
5455         (end_symtab_get_static_block, augment_type_symtab, push_context)
5456         (buildsym_init): Update.
5457
5458 2018-07-20  Tom Tromey  <tom@tromey.com>
5459
5460         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
5461         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
5462         members.
5463         (pending_addrmap, pending_addrmap_obstack)
5464         (pending_addrmap_interesting): Remove.
5465         (scoped_free_pendings, record_block_range, make_blockvector)
5466         (prepare_for_building, reset_symtab_globals, buildsym_init):
5467         Update.
5468
5469 2018-07-20  Tom Tromey  <tom@tromey.com>
5470
5471         * xcoffread.c (process_linenos): Update.
5472         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
5473         * mdebugread.c (psymtab_to_symtab_1): Update.
5474         * dwarf2read.c (setup_type_unit_groups)
5475         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
5476         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
5477         * dbxread.c (process_one_symbol): Update.
5478         * coffread.c (coff_symtab_read, enter_linenos)
5479         (process_coff_symbol): Update.
5480         * buildsym.h (current_subfile): Don't declare.
5481         (get_current_subfile): Declare.
5482         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
5483         member.
5484         (start_subfile, free_buildsym_compunit, push_subfile)
5485         (prepare_for_building, start_symtab): Update.
5486         (get_current_subfile): New function.
5487
5488 2018-07-20  Tom Tromey  <tom@tromey.com>
5489
5490         * coffread.c (coff_symtab_read): Update.
5491         * xcoffread.c (read_xcoff_symtab): Update.
5492         * dwarf2read.c (new_symbol): Update.
5493         (read_func_scope, read_lexical_block_scope): Update.
5494         * dbxread.c (process_one_symbol): Update.
5495         * buildsym.h (context_stack, context_stack_depth): Don't declare.
5496         (outermost_context_p): Remove macro.
5497         (outermost_context_p, get_current_context_stack)
5498         (get_context_stack_depth): Declare.
5499         (pop_context): Return struct context_stack.
5500         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
5501         member.
5502         (context_stack_size): Remove.
5503         (INITIAL_CONTEXT_STACK_SIZE): Remove.
5504         (prepare_for_building, end_symtab_get_static_block)
5505         (augment_type_symtab, push_context): Update.
5506         (pop_context): Return struct context_stack.
5507         (outermost_context_p, get_current_context_stack)
5508         (get_context_stack_depth): New functions.
5509         (buildsym_init): Update.
5510
5511 2018-07-20  Tom Tromey  <tom@tromey.com>
5512
5513         * rust-exp.y: Now a pure parser.  Update all rules.
5514         (%union): Move earlier.
5515         (current_parser, work_obstack): Remove globals.
5516         (rust_parser, ~rust_parser): Update.
5517         (class rust_parser) <copy_name, concat3, crate_name, super_name,
5518         lex_character, lex_number, lex_string, lex_identifier,
5519         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
5520         convert_name, convert_params_to_expression,
5521         convert_ast_to_expression, ast_basic_type, ast_operation,
5522         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
5523         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
5524         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
5525         ast_array_type, ast_slice_type, ast_reference_type,
5526         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
5527         (rust_parse): Update.
5528         (rustyyerror, rustyylex): Add parser parameter.
5529         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
5530         (rust_lex_stringish_test, rust_lex_test_sequence)
5531         (rust_lex_test_trailing_dot, rust_lex_test_completion)
5532         (rust_lex_test_push_back, rust_lex_tests): Update.
5533
5534 2018-07-19  Pedro Alves  <palves@redhat.com>
5535
5536         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
5537         gdb::unique_xmalloc_ptr.
5538         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
5539         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
5540         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
5541         copy-initialization.
5542         * guile/scm-pretty-print.c (ppscm_print_children): Use
5543         gdb::unique_xmalloc_ptr instead of cleanups.
5544         (gdbscm_apply_val_pretty_printer): Remove cleanups.
5545         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
5546         gdb::unique_xmalloc_ptr.
5547         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
5548         Adjust to use gdb::unique_xmalloc_ptr.
5549         * guile/scm-utils.c (extract_arg): Adjust.
5550         * guile/scm-value.c (gdbscm_value_field): Adjust to use
5551         gdb::unique_xmalloc_ptr instead of a cleanup.
5552
5553 2018-07-19  Tom Tromey  <tom@tromey.com>
5554
5555         * utils.c (do_value_free_to_mark)
5556         (make_cleanup_value_free_to_mark): Remove.
5557         * utils.h (make_cleanup_value_free_to_mark): Remove.
5558
5559 2018-07-19  Pedro Alves  <palves@redhat.com>
5560
5561         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
5562         forwarding reference.
5563
5564 2018-07-18  Pedro Alves  <palves@redhat.com>
5565
5566         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
5567         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
5568         cleanup.
5569
5570 2018-07-18  Pedro Alves  <palves@redhat.com>
5571
5572         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
5573         exceptions.
5574         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
5575         (gdbscm_wrap): New.
5576         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
5577         directly instead of a cleanup.
5578         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
5579         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
5580         (vlscm_binop_gdbthrow): New, factored out from ...
5581         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
5582         (vlscm_rich_compare): Use gdbscm_wrap.
5583         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
5584         instead of a cleanup.
5585         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
5586         cleanup.
5587         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
5588         Use xfree directly instead of a cleanup.
5589         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
5590         Adjust to use gdbscm_wrap and scoped_value_mark.
5591         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
5592         (gdbscm_value_address, gdbscm_value_dereference)
5593         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
5594         scoped_value_mark.
5595         (gdbscm_value_dynamic_type): Use scoped_value_mark.
5596         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
5597         scoped_value_mark.
5598         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
5599         gdbscm_wrap and scoped_value_mark.
5600         (gdbscm_value_to_string): Use xfree directly instead of a
5601         cleanup.  Move 'buffer' unique_ptr to TRY scope.
5602         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
5603         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
5604         scoped_value_mark.
5605         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
5606         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
5607         scoped_value_mark.
5608         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
5609         gdbscm_wrap.
5610
5611 2018-07-18  Tom de Vries  <tdevries@suse.de>
5612
5613         * findvar.c (default_read_var_value): Also resolve dynamic type for
5614         LOC_OPTIMIZED_OUT vars.
5615
5616 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
5617
5618         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
5619         decoding.
5620
5621 2018-07-17  Tom Tromey  <tom@tromey.com>
5622
5623         * guile/scm-param.c (pascm_set_func, pascm_show_func)
5624         (compute_enum_list, pascm_set_param_value_x)
5625         (gdbscm_parameter_value): Update.
5626         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
5627         (gdbscm_scm_to_host_string): Update.
5628         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
5629         Update.
5630         * guile/scm-cmd.c (cmdscm_add_completion): Update.
5631         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
5632         * guile/scm-string.c (gdbscm_scm_to_string): Return
5633         unique_xmalloc_ptr.
5634         (gdbscm_scm_to_host_string): Likewise.
5635
5636 2018-07-17  Tom Tromey  <tom@tromey.com>
5637
5638         * guile/guile.c (gdbscm_eval_from_control_command): Update.
5639         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
5640         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
5641         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
5642         unique_xmalloc_ptr.
5643
5644 2018-07-17  Tom Tromey  <tom@tromey.com>
5645
5646         * guile/scm-param.c (pascm_signal_setshow_error): Update.
5647         * guile/guile-internal.h (gdbscm_exception_message_to_string):
5648         Update.
5649         * guile/scm-cmd.c (cmdscm_function): Update.
5650         * guile/scm-pretty-print.c
5651         (ppscm_print_exception_unless_memory_error): Update.
5652         * guile/scm-exception.c (gdbscm_exception_message_to_string):
5653         Return unique_xmalloc_ptr.
5654
5655 2018-07-17  Tom Tromey  <tom@tromey.com>
5656
5657         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
5658         Use string_printf.
5659
5660 2018-07-17  Jim Wilson  <jimw@sifive.com>
5661
5662         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
5663         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
5664         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
5665         unecessary braces after EF_RISCV_RVC test.  Delete call to
5666         set_gdbarch_decr_pc_after_break.
5667
5668         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
5669         RISCV_LAST_FP_REGNUM + 1.
5670         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
5671
5672 2018-07-17  Tom Tromey  <tom@tromey.com>
5673
5674         * configure.ac: Remove --disable-gdbcli.
5675         * configure: Rebuild.
5676         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
5677         (SUBDIR_CLI_CFLAGS): Remove.
5678         (SFILES): Use SUBDIR_CLI_SRCS.
5679         (COMMON_OBS): Use SUBDIR_CLI_OBS.
5680
5681 2018-07-17  Tom Tromey  <tom@tromey.com>
5682
5683         PR gdb/18624:
5684         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
5685
5686 2018-07-16  Jim Wilson  <jimw@sifive.com>
5687
5688         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
5689
5690 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5691
5692         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
5693         variable.
5694         (libunwind_frame_sniffer): Likewise.
5695         (libunwind_frame_prev_register): Likewise.
5696         (libunwind_sigtramp_frame_sniffer): Likewise.
5697         * ia64-tdep.c (ia64_access_reg): Likewise.
5698         (ia64_access_rse_reg): Likewise.
5699         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
5700         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
5701
5702 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5703
5704         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
5705
5706 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5707
5708         * remote-sim.c (gdbsim_target::close,
5709         gdbsim_target::mourn_inferior): Remove unused variables.
5710
5711 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
5712
5713         * ia64-tdep.c (ktab_buf): New global.
5714         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
5715         (get_kernel_table): Adjust.
5716
5717 2018-07-16  Tom Tromey  <tom@tromey.com>
5718
5719         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
5720         * dwarf2read.c (using_directives, new_symbol): Use
5721         outermost_context_p.
5722         * dbxread.c (process_one_symbol): Use outermost_context_p.
5723         * coffread.c (coff_symtab_read): Use outermost_context_p.
5724
5725 2018-07-16  Tom Tromey  <tom@tromey.com>
5726
5727         * dwarf2read.c (using_directives, read_func_scope)
5728         (read_lexical_block_scope): Update.
5729         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
5730         * buildsym.h (local_using_directives, global_using_directives):
5731         Don't declare.
5732         (get_local_using_directives, set_local_using_directives)
5733         (get_global_using_directives): Declare.
5734         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
5735         m_global_using_directives>: New members.
5736         (finish_block_internal, prepare_for_building)
5737         (reset_symtab_globals, end_symtab_get_static_block)
5738         (push_context): Update.
5739         (get_local_using_directives, set_local_using_directives)
5740         (get_global_using_directives): New functions.
5741         (buildsym_init): Update.
5742
5743 2018-07-16  Tom Tromey  <tom@tromey.com>
5744
5745         * xcoffread.c (xcoff_initial_scan): Don't call
5746         free_pending_blocks.
5747         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
5748         * buildsym.h (class scoped_free_pendings): Add constructor.
5749         (free_pending_blocks): Don't declare.
5750         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
5751         (free_pending_blocks): Now static.
5752
5753 2018-07-16  Tom Tromey  <tom@tromey.com>
5754
5755         * buildsym.h (push_subfile, pop_subfile): Update declarations.
5756         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
5757         member.
5758         (struct subfile_stack): Remove.
5759         (subfile_stack): Remove.
5760         (push_subfile, pop_subfile, buildsym_init): Update.
5761
5762 2018-07-16  Tom Tromey  <tom@tromey.com>
5763
5764         * buildsym.c (push_subfile): Use gdb_assert.
5765         (pop_subfile): Use gdb_assert.
5766
5767 2018-07-16  Tom Tromey  <tom@tromey.com>
5768
5769         * buildsym.h (merge_symbol_lists): Remove.
5770         * buildsym.c (merge_symbol_lists): Remove.
5771
5772 2018-07-16  Tom Tromey  <tom@tromey.com>
5773
5774         * stabsread.c (scan_file_globals): Update comment.
5775         * stabsread.h (scan_file_globals): Move from buildsym.h.
5776         * buildsym.h (scan_file_globals): Move to stabsread.h.
5777
5778 2018-07-16  Tom Tromey  <tom@tromey.com>
5779
5780         * xcoffread.c (xcoff_new_init): Update.
5781         * mipsread.c (mipscoff_new_init): Update.
5782         * mdebugread.c (mdebug_build_psymtabs): Update.
5783         * elfread.c (elf_new_init): Update.
5784         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
5785         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
5786         * buildsym.h (buildsym_new_init): Don't declare.
5787         * buildsym.c (buildsym_new_init): Remove.
5788
5789 2018-07-16  Tom Tromey  <tom@tromey.com>
5790
5791         * stabsread.h (within_function): Move from buildsym.h.
5792         * stabsread.c (start_stabs): Clear within_function.
5793         * coffread.c (coff_start_symtab): Clear within_function.
5794         * buildsym.h (within_function): Move to stabsread.h.
5795         * buildsym.c (prepare_for_building): Update.
5796
5797 2018-07-16  Tom Tromey  <tom@tromey.com>
5798
5799         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
5800         * dwarf2read.c (dwarf2_start_symtab): Don't set
5801         processing_gcc_compilation.
5802         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
5803
5804 2018-07-16  Tom Tromey  <tom@tromey.com>
5805
5806         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
5807         (next_symbol_text_func): Move from buildsym.h.
5808         * stabsread.c (hashname): Move from buildsym.c.
5809         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
5810         (next_symbol_text_func, hashname): Move to stabsread.h.
5811         * buildsym.c: Don't include bcache.h
5812         (hashname): Move to stasbread.c.
5813
5814 2018-07-16  Tom Tromey  <tom@tromey.com>
5815
5816         * buildsym.h (context_stack_size): Don't declare.
5817         * buildsym.c (context_stack_size): New global.
5818
5819 2018-07-16  Tom Tromey  <tom@tromey.com>
5820
5821         * dbxread.c (processing_acc_compilation): New global.
5822         * buildsym.h (processing_acc_compilation): Don't declare.
5823
5824 2018-07-16  Tom Tromey  <tom@tromey.com>
5825
5826         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
5827         * dbxread.c (read_ofile_symtab): Update.
5828         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
5829         * buildsym.h (last_source_start_addr): Remove.
5830         (set_last_source_start_addr, get_last_source_start_addr):
5831         Declare.
5832         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
5833         parameter.
5834         (struct buildsym_compunit) <m_last_source_start_addr>: New
5835         member.
5836         (prepare_for_building): Remove start_addr parameter.
5837         (start_symtab, restart_symtab, end_symtab_get_static_block)
5838         (end_symtab_with_blockvector): Update.
5839         (set_last_source_start_addr, get_last_source_start_addr): New
5840         functions.
5841
5842 2018-07-16  Tom Tromey  <tom@tromey.com>
5843
5844         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
5845         member.
5846         (have_line_numbers): Remove.
5847         (record_line, prepare_for_building, end_symtab_get_static_block)
5848         (augment_type_symtab): Update.
5849
5850 2018-07-16  Tom Tromey  <tom@tromey.com>
5851
5852         * buildsym.c (~buildsym_compunit): Free the macro table.
5853         (struct buildsym_compunit) <get_macro_table, release_macros>: New
5854         methods.
5855         <m_pending_macros>: New member.
5856         (pending_macros): Remove.
5857         (~scoped_free_pendings, get_macro_table, prepare_for_building)
5858         (reset_symtab_globals, end_symtab_get_static_block)
5859         (end_symtab_with_blockvector, augment_type_symtab)
5860         (buildsym_init): Update.
5861
5862 2018-07-16  Tom Tromey  <tom@tromey.com>
5863
5864         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
5865         parameter.
5866         (buildsym_compunit::set_last_source_file): New method.
5867         <m_last_source_file>: New member.
5868         (prepare_for_building): Remove "name" parameter.
5869         (start_symtab, restart_symtab, reset_symtab_globals): Update.
5870         (last_source_file): Remove.
5871         (set_last_source_file, get_last_source_file): Update.
5872
5873 2018-07-16  Tom Tromey  <tom@tromey.com>
5874
5875         * buildsym.c (prepare_for_building): Add assert.
5876
5877 2018-07-16  Tom Tromey  <tom@tromey.com>
5878
5879         * buildsym.c (~buildsym_compunit): Update.
5880         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
5881         (start_subfile, patch_subfile_names)
5882         (end_symtab_with_blockvector): Update.
5883
5884 2018-07-16  Tom Tromey  <tom@tromey.com>
5885
5886         * buildsym.c (struct buildsym_compunit): Add constructor,
5887         destructor, initializers.
5888         (start_buildsym_compunit): Remove.
5889         (free_buildsym_compunit): Use "delete".
5890         (start_symtab, restart_symtab): Use "new".
5891
5892 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
5893
5894         * symfile.c (set_objfile_default_section_offset): Remove struct
5895         keyword.
5896
5897 2018-07-14  Stafford Horne  <shorne@gmail.com>
5898
5899         * (Responsible Maintainers): Add myself as or1k maintainer.
5900
5901 2018-07-13  Tom Tromey  <tom@tromey.com>
5902
5903         * symfile.c (set_objfile_default_section_offset): Use extra braces
5904         around initializer.
5905
5906 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
5907
5908         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
5909         non-branching basr.
5910
5911 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5912
5913         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5914         unittests/cli-utils-selftests.c
5915         * unittests/cli-utils-selftests.c: New file.
5916
5917 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5918
5919         * NEWS: Mention new commands. Mention change to 'thread apply'.
5920
5921 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5922
5923         * thread.c (thr_try_catch_cmd): New function.
5924         (thread_apply_all_command): Handle qcs flags.
5925         (thread_apply_command): Handle qcs flags.
5926         (taas_command): New function.
5927         (tfaas_command): New function.
5928         (_initialize_thread): Update to setup the new commands 'taas
5929         and 'tfaas'. Change doc string for 'thread apply'.
5930
5931 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5932
5933         * stack.c: (trailing_outermost_frame): New function, mostly
5934         extracted from backtrace_command_1.
5935         (leading_innermost_frame): New function.
5936         (backtrace_command_1): Update to call trailing_outermost_frame.
5937         (frame_apply_command_count): New function.
5938         (frame_apply_level_command): New function.
5939         (frame_apply_all_command): New function.
5940         (frame_apply_command): New function.
5941         (faas_command): New function.
5942         (frame_cmd_list): New variable.
5943         (_initialize_stack): Update to setup the new commands 'frame apply'
5944         and 'faas'.
5945
5946 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5947
5948         * cli-utils.c (number_or_range_parser::get_number): Only handle
5949         numbers or convenience var as numbers.
5950         (parse_flags): New function.
5951         (parse_flags_qcs): New function.
5952         (number_or_range_parser::finished): Ensure parsing end is detected
5953         before end of string.
5954         * cli-utils.h (parse_flags): New function.
5955         (parse_flags_qcs): New function.
5956         (number_or_range_parser): Remove m_finished bool.
5957         (number_or_range_parser::skip_range): Set m_in_range to false.
5958
5959 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
5960
5961         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
5962         on Windows.
5963
5964 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
5965             Jan Kratochvil  <jan.kratochvil@redhat.com>
5966             Paul Fertser  <fercerpav@gmail.com>
5967             Tsutomu Seki  <sekiriki@gmail.com>
5968             Pedro Alves  <palves@redhat.com>
5969
5970         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5971         'unittests/parse-connection-spec-selftests.c'.
5972         (COMMON_SFILES): Add 'common/netstuff.c'.
5973         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
5974         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
5975         * common/netstuff.c: New file.
5976         * common/netstuff.h: New file.
5977         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
5978         (wait_for_connect): Update comment.  New parameter
5979         'gdb::optional<int> sock' instead of 'struct serial *scb'.
5980         Use 'sock' directly instead of 'scb->fd'.
5981         (try_connect): New function, with code from 'net_open'.
5982         (net_open): Rewrite main loop to deal with multiple
5983         sockets/addresses.  Handle IPv6-style hostnames; implement
5984         support for IPv6 connections.
5985         * unittests/parse-connection-spec-selftests.c: New file.
5986
5987 2018-07-11  Pedro Alves  <palves@redhat.com>
5988
5989         PR gdb/23377
5990         * remote.c (remote_target::remote_detach_pid): Call
5991         set_current_process.
5992
5993 2018-07-11  Pedro Alves  <palves@redhat.com>
5994
5995         * h8300-tdep.c (h8300_gdbarch_init): Remove
5996         set_gdbarch_ecoff_reg_to_regnum calls.
5997
5998 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
5999
6000         PR c++/23373
6001         * c-typeprint.c (c_type_print_base_struct_union): Don't print
6002         offsets/sizes for static members of a class/struct.
6003
6004 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
6005
6006         * target-descriptions.c (tdesc_register_bitsize): Rename.
6007         * target-descriptions.h (tdesc_register_bitsize): Likewise.
6008         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
6009         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
6010
6011 2018-07-10  Tom Tromey  <tom@tromey.com>
6012
6013         * breakpoint.c (moribund_locations): Now static and a
6014         std::vector.
6015         (breakpoint_init_inferior, moribund_breakpoint_here_p)
6016         (build_bpstat_chain, update_global_location_list)
6017         (breakpoint_retire_moribund): Update.
6018         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
6019         VEC.
6020
6021 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
6022
6023         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
6024         (riscv_register_reggroup_p): Use new function, remove unneeded
6025         parenthesis.
6026         (riscv_push_dummy_call): Extend assert to compare against xlen or
6027         flen based on register type.
6028
6029 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
6030
6031         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
6032
6033 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
6034
6035         * remote.c (show_hardware_watchpoint_limit): New function.
6036         (show_hardware_watchpoint_length_limit): New function.
6037         (show_hardware_breakpoint_limit): New function.
6038         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
6039         where appropriate, update help text.
6040
6041 2018-07-09  Tom Tromey  <tom@tromey.com>
6042
6043         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
6044         (CLIBS): Don't mention NAT_CLIBS.
6045
6046 2018-07-09  Tom Tromey  <tom@tromey.com>
6047
6048         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
6049         (LIBGDB_OBS, clean mostlyclean): Update.
6050         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
6051
6052 2018-07-09  Tom Tromey  <tom@tromey.com>
6053
6054         * Makefile.in (%.c: %.y): Use ECHO_YACC.
6055         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
6056         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
6057
6058 2018-07-09  Tom Tromey  <tom@tromey.com>
6059
6060         * Makefile.in (ALLDEPFILES): Remove exec.c.
6061         (COMMON_OBS): Remove exec.o.
6062         (COMMON_SFILES): Add exec.c.
6063
6064 2018-07-09  Tom Tromey  <tom@tromey.com>
6065
6066         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
6067
6068 2018-07-09  Tom Tromey  <tom@tromey.com>
6069
6070         * Makefile.in (clean mostlyclean): Remove stamp-version.
6071         (version.c): Depend on stamp-version.
6072         (stamp-version): New rule, from version.c rule.
6073
6074 2018-07-09  Tom Tromey  <tom@tromey.com>
6075
6076         * Makefile.in (init.c): Depend on stamp-init.
6077         (stamp-init): New rule, from init.c rule.
6078         (clean mostlyclean): Remove stamp-init.
6079
6080 2018-07-09  Tom Tromey  <tom@tromey.com>
6081
6082         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
6083         SUBDIR_GCC_COMPILE_SRCS.
6084
6085 2018-07-09  Tom Tromey  <tom@tromey.com>
6086
6087         * Makefile.in (init.c): Remove some unused sed rules.
6088
6089 2018-07-09  Tom Tromey  <tom@tromey.com>
6090
6091         * Makefile.in (TSOBS): Remove.
6092         (INIT_FILES): Update.
6093         (LIBGDB_OBS): Update.
6094         (COMMON_SFILES): Add inflow.c.
6095         (SFILES): Remove inflow.c.
6096
6097 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
6098
6099         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
6100
6101 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
6102
6103         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
6104         get_saveloc_name, is_signal_frame_name, step_name,
6105         init_remote_name, create_addr_space_name,
6106         destroy_addr_space_name, search_unwind_table_name,
6107         find_dyn_list_name): Constify.
6108
6109 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
6110
6111         * darwin-nat.c (darwin_pthread_kill): New function.
6112         (darwin_resume_thread): Use darwin_pthread_kill.
6113
6114 2018-07-05  Tom de Vries  <tdevries@suse.de>
6115
6116         * macroexp.c (macro_buffer) <operator=>: New member function.
6117
6118 2018-07-04  Tom Tromey  <tom@tromey.com>
6119
6120         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
6121
6122 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
6123
6124         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
6125         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
6126         * maint.c: Likewise.
6127         * top.c: Likewise.
6128
6129 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
6130
6131         * NEWS: Create a new section for the next release branch.
6132         Rename the section of the current branch, now that it has
6133         been cut.
6134
6135 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
6136
6137         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
6138         * version.in: Bump version to 8.2.50.DATE-git.
6139
6140 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
6141             Pedro Alves  <palves@redhat.com>
6142
6143         * linux-nat.c (linux_init_ptrace): Rename to ...
6144         (linux_init_ptrace_procfs): ... this.  Call
6145         linux_proc_init_warnings.
6146         (linux_nat_target::post_attach)
6147         (linux_nat_target::post_startup_inferior): Adjust.
6148         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
6149         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
6150
6151 2018-07-04  Tom de Vries  <tdevries@suse.de>
6152
6153         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
6154         check ...
6155         (read_comp_unit_head): ... here.
6156
6157 2018-07-03  Tom Tromey  <tom@tromey.com>
6158
6159         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
6160         (stop_tracing, tstatus_command)
6161         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
6162         (print_one_static_tracepoint_marker): Update.
6163         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
6164         std::vector.
6165         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
6166         VEC.
6167         (all_tracepoints, static_tracepoints_here): Return std::vector.
6168
6169 2018-07-03  Tom Tromey  <tom@tromey.com>
6170
6171         * common/ptid.c (ptid_equal): Remove.
6172         * common/ptid.h (ptid_equal): Don't declare.
6173         * ada-tasks.c: Update.
6174         * breakpoint.c: Update.
6175         * common/agent.c: Update.
6176         * corelow.c: Update.
6177         * darwin-nat-info.c: Update.
6178         * darwin-nat.c: Update.
6179         * dcache.c: Update.
6180         * dtrace-probe.c: Update.
6181         * dummy-frame.c: Update.
6182         * fbsd-nat.c: Update.
6183         * frame.c: Update.
6184         * gdbthread.h: Update.
6185         * gnu-nat.c: Update.
6186         * go32-nat.c: Update.
6187         * inf-loop.c: Update.
6188         * inf-ptrace.c: Update.
6189         * infcall.c: Update.
6190         * infcmd.c: Update.
6191         * inflow.c: Update.
6192         * infrun.c: Update.
6193         * linux-fork.c: Update.
6194         * linux-nat.c: Update.
6195         * linux-thread-db.c: Update.
6196         * mi/mi-cmd-var.c: Update.
6197         * mi/mi-interp.c: Update.
6198         * mi/mi-main.c: Update.
6199         * nto-procfs.c: Update.
6200         * ppc-linux-tdep.c: Update.
6201         * procfs.c: Update.
6202         * python/py-inferior.c: Update.
6203         * python/py-record-btrace.c: Update.
6204         * python/py-record.c: Update.
6205         * ravenscar-thread.c: Update.
6206         * regcache.c: Update.
6207         * remote-sim.c: Update.
6208         * remote.c: Update.
6209         * sol-thread.c: Update.
6210         * solib.c: Update.
6211         * target.c: Update.
6212         * tui/tui-stack.c: Update.
6213         * varobj.c: Update.
6214         * windows-nat.c: Update.
6215         * windows-tdep.c: Update.
6216
6217 2018-07-03  Tom Tromey  <tom@tromey.com>
6218
6219         * common/ptid.c (ptid_match): Remove.
6220         * common/ptid.h (ptid_match): Don't declare.
6221         * fbsd-nat.c: Update.
6222         * infcmd.c: Update.
6223         * infrun.c: Update.
6224         * linux-nat.c: Update.
6225         * record-btrace.c: Update.
6226         * regcache.c: Update.
6227         * remote.c: Update.
6228
6229 2018-07-03  Tom Tromey  <tom@tromey.com>
6230
6231         * common/ptid.c (ptid_tid_p): Remove.
6232         * common/ptid.h (ptid_tid_p): Don't declare.
6233         * sol-thread.c: Update.
6234
6235 2018-07-03  Tom Tromey  <tom@tromey.com>
6236
6237         * common/ptid.c (ptid_lwp_p): Remove.
6238         * common/ptid.h (ptid_lwp_p): Don't declare.
6239         * fbsd-nat.c: Update.
6240         * linux-nat.c: Update.
6241         * nat/linux-procfs.c: Update.
6242         * nat/x86-linux-dregs.c: Update.
6243         * sol-thread.c: Update.
6244
6245 2018-07-03  Tom Tromey  <tom@tromey.com>
6246
6247         * common/ptid.c (ptid_is_pid): Remove.
6248         * common/ptid.h (ptid_is_pid): Don't declare.
6249         * infrun.c: Update.
6250         * linux-nat.c: Update.
6251         * mi/mi-interp.c: Update.
6252         * remote.c: Update.
6253         * thread.c: Update.
6254
6255 2018-07-03  Tom Tromey  <tom@tromey.com>
6256
6257         * common/ptid.c (ptid_get_tid): Remove.
6258         * common/ptid.h (ptid_get_tid): Don't declare.
6259         * ada-tasks.c: Update.
6260         * aix-thread.c: Update.
6261         * bsd-uthread.c: Update.
6262         * darwin-nat.c: Update.
6263         * fbsd-nat.c: Update.
6264         * i386-darwin-nat.c: Update.
6265         * infrun.c: Update.
6266         * linux-tdep.c: Update.
6267         * nto-procfs.c: Update.
6268         * ppc-ravenscar-thread.c: Update.
6269         * python/py-infthread.c: Update.
6270         * ravenscar-thread.c: Update.
6271         * sol-thread.c: Update.
6272         * sparc-ravenscar-thread.c: Update.
6273         * windows-nat.c: Update.
6274
6275 2018-07-03  Tom Tromey  <tom@tromey.com>
6276
6277         * common/ptid.c (ptid_get_lwp): Remove.
6278         * common/ptid.h (ptid_get_lwp): Don't declare.
6279         * aarch64-linux-nat.c: Update.
6280         * ada-tasks.c: Update.
6281         * aix-thread.c: Update.
6282         * amd64-linux-nat.c: Update.
6283         * arm-linux-nat.c: Update.
6284         * corelow.c: Update.
6285         * fbsd-nat.c: Update.
6286         * fbsd-tdep.c: Update.
6287         * gnu-nat.c: Update.
6288         * i386-cygwin-tdep.c: Update.
6289         * i386-gnu-nat.c: Update.
6290         * i386-linux-nat.c: Update.
6291         * ia64-linux-nat.c: Update.
6292         * inf-ptrace.c: Update.
6293         * infrun.c: Update.
6294         * linux-fork.c: Update.
6295         * linux-nat.c: Update.
6296         * linux-tdep.c: Update.
6297         * linux-thread-db.c: Update.
6298         * mips-linux-nat.c: Update.
6299         * nat/aarch64-linux-hw-point.c: Update.
6300         * nat/aarch64-linux.c: Update.
6301         * nat/linux-btrace.c: Update.
6302         * nat/linux-osdata.c: Update.
6303         * nat/linux-procfs.c: Update.
6304         * nat/x86-linux-dregs.c: Update.
6305         * obsd-nat.c: Update.
6306         * ppc-fbsd-nat.c: Update.
6307         * ppc-linux-nat.c: Update.
6308         * procfs.c: Update.
6309         * python/py-infthread.c: Update.
6310         * ravenscar-thread.c: Update.
6311         * remote.c: Update.
6312         * s390-linux-nat.c: Update.
6313         * sol-thread.c: Update.
6314         * sol2-tdep.c: Update.
6315         * spu-linux-nat.c: Update.
6316         * x86-linux-nat.c: Update.
6317         * xtensa-linux-nat.c: Update.
6318
6319 2018-07-03  Tom Tromey  <tom@tromey.com>
6320
6321         * common/ptid.c (ptid_get_pid): Remove.
6322         * common/ptid.h (ptid_get_pid): Don't declare.
6323         * aarch64-linux-nat.c: Update.
6324         * ada-lang.c: Update.
6325         * aix-thread.c: Update.
6326         * alpha-bsd-nat.c: Update.
6327         * amd64-fbsd-nat.c: Update.
6328         * amd64-linux-nat.c: Update.
6329         * arm-linux-nat.c: Update.
6330         * arm-nbsd-nat.c: Update.
6331         * auxv.c: Update.
6332         * break-catch-syscall.c: Update.
6333         * breakpoint.c: Update.
6334         * bsd-uthread.c: Update.
6335         * corelow.c: Update.
6336         * ctf.c: Update.
6337         * darwin-nat.c: Update.
6338         * fbsd-nat.c: Update.
6339         * fbsd-tdep.c: Update.
6340         * gcore.c: Update.
6341         * gnu-nat.c: Update.
6342         * hppa-nbsd-nat.c: Update.
6343         * hppa-obsd-nat.c: Update.
6344         * i386-fbsd-nat.c: Update.
6345         * ia64-linux-nat.c: Update.
6346         * inf-ptrace.c: Update.
6347         * infcmd.c: Update.
6348         * inferior.c: Update.
6349         * inferior.h: Update.
6350         * inflow.c: Update.
6351         * infrun.c: Update.
6352         * linux-fork.c: Update.
6353         * linux-nat.c: Update.
6354         * linux-tdep.c: Update.
6355         * linux-thread-db.c: Update.
6356         * m68k-bsd-nat.c: Update.
6357         * mi/mi-interp.c: Update.
6358         * mi/mi-main.c: Update.
6359         * mips-linux-nat.c: Update.
6360         * mips-nbsd-nat.c: Update.
6361         * mips64-obsd-nat.c: Update.
6362         * nat/aarch64-linux-hw-point.c: Update.
6363         * nat/aarch64-linux.c: Update.
6364         * nat/linux-btrace.c: Update.
6365         * nat/linux-osdata.c: Update.
6366         * nat/linux-procfs.c: Update.
6367         * nat/x86-linux-dregs.c: Update.
6368         * nto-procfs.c: Update.
6369         * obsd-nat.c: Update.
6370         * ppc-linux-nat.c: Update.
6371         * ppc-nbsd-nat.c: Update.
6372         * ppc-obsd-nat.c: Update.
6373         * proc-service.c: Update.
6374         * procfs.c: Update.
6375         * python/py-inferior.c: Update.
6376         * python/py-infthread.c: Update.
6377         * ravenscar-thread.c: Update.
6378         * record.c: Update.
6379         * remote-sim.c: Update.
6380         * remote.c: Update.
6381         * rs6000-nat.c: Update.
6382         * s390-linux-nat.c: Update.
6383         * sh-nbsd-nat.c: Update.
6384         * sol-thread.c: Update.
6385         * sparc-nat.c: Update.
6386         * sparc64-tdep.c: Update.
6387         * spu-linux-nat.c: Update.
6388         * spu-tdep.c: Update.
6389         * target-debug.h: Update.
6390         * target.c: Update.
6391         * thread.c: Update.
6392         * tid-parse.c: Update.
6393         * tracefile-tfile.c: Update.
6394         * vax-bsd-nat.c: Update.
6395         * windows-nat.c: Update.
6396         * x86-linux-nat.c: Update.
6397         * x86-nat.c: Update.
6398
6399 2018-07-03  Tom Tromey  <tom@tromey.com>
6400
6401         * common/ptid.c (pid_to_ptid): Remove.
6402         * common/ptid.h (pid_to_ptid): Don't declare.
6403         * aix-thread.c: Update.
6404         * arm-linux-nat.c: Update.
6405         * common/ptid.c: Update.
6406         * common/ptid.h: Update.
6407         * corelow.c: Update.
6408         * ctf.c: Update.
6409         * darwin-nat.c: Update.
6410         * fbsd-nat.c: Update.
6411         * fork-child.c: Update.
6412         * gnu-nat.c: Update.
6413         * go32-nat.c: Update.
6414         * inf-ptrace.c: Update.
6415         * infcmd.c: Update.
6416         * inferior.c: Update.
6417         * infrun.c: Update.
6418         * linux-fork.c: Update.
6419         * linux-nat.c: Update.
6420         * nat/aarch64-linux-hw-point.c: Update.
6421         * nat/fork-inferior.c: Update.
6422         * nat/x86-linux-dregs.c: Update.
6423         * nto-procfs.c: Update.
6424         * obsd-nat.c: Update.
6425         * procfs.c: Update.
6426         * progspace.c: Update.
6427         * remote.c: Update.
6428         * rs6000-nat.c: Update.
6429         * s390-linux-nat.c: Update.
6430         * sol-thread.c: Update.
6431         * spu-linux-nat.c: Update.
6432         * target.c: Update.
6433         * top.c: Update.
6434         * tracefile-tfile.c: Update.
6435         * windows-nat.c: Update.
6436
6437 2018-07-03  Tom Tromey  <tom@tromey.com>
6438
6439         * common/ptid.h (ptid_build): Don't declare.
6440         * common/ptid.c (ptid_build): Remove.
6441         * aix-thread.c: Update.
6442         * bsd-kvm.c: Update.
6443         * bsd-uthread.c: Update.
6444         * common/agent.c: Update.
6445         * common/ptid.c: Update.
6446         * common/ptid.h: Update.
6447         * corelow.c: Update.
6448         * darwin-nat.c: Update.
6449         * fbsd-nat.c: Update.
6450         * gnu-nat.c: Update.
6451         * linux-fork.c: Update.
6452         * linux-nat.c: Update.
6453         * linux-thread-db.c: Update.
6454         * nat/linux-osdata.c: Update.
6455         * nat/linux-procfs.c: Update.
6456         * nto-procfs.c: Update.
6457         * obsd-nat.c: Update.
6458         * proc-service.c: Update.
6459         * procfs.c: Update.
6460         * ravenscar-thread.c: Update.
6461         * remote-sim.c: Update.
6462         * remote.c: Update.
6463         * sol-thread.c: Update.
6464         * target.c: Update.
6465         * windows-nat.c: Update.
6466
6467 2018-07-03  Tom Tromey  <tom@tromey.com>
6468
6469         * infrun.c (follow_exec): Use exit_inferior_silent.
6470         * inferior.c (exit_inferior_num_silent): Remove.
6471         * inferior.h (exit_inferior_num_silent): Don't declare.
6472
6473 2018-07-03  Tom Tromey  <tom@tromey.com>
6474
6475         PR cli/23340:
6476         * darwin-nat.c (darwin_attach_pid): Reset inferior and
6477         inferior_ptid on error.
6478
6479 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
6480             Simon Marchi  <simon.marchi@polymtl.ca>
6481
6482         PR tdep/8282
6483         * disasm.h (gdb_disassembler): Add
6484         `m_disassembler_options_holder'. member
6485         * disasm.c (get_all_disassembler_options): New function.
6486         (gdb_disassembler::gdb_disassembler): Use it.
6487         (gdb_buffered_insn_length_init_dis): Likewise.
6488         (gdb_buffered_insn_length): Adjust accordingly.
6489         (set_disassembler_options): Handle options with arguments.
6490         (show_disassembler_options_sfunc): Likewise.  Add a leading new
6491         line if showing options with descriptions.
6492         (disassembler_options_completer): Adapt to using the
6493         `disasm_options_and_args_t' structure.
6494         * mips-tdep.c (mips_disassembler_options): New variable.
6495         (mips_disassembler_options_o32): Likewise.
6496         (mips_disassembler_options_n32): Likewise.
6497         (mips_disassembler_options_n64): Likewise.
6498         (gdb_print_insn_mips): Don't set `disassembler_options'.
6499         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
6500         functions.
6501         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
6502         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
6503         `gdbarch_disassembler_options_implicit' and
6504         `gdbarch_valid_disassembler_options'.
6505         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
6506         `disasm_options_and_args_t' structure.
6507         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
6508         method.
6509         (valid_disassembler_options): Switch from `disasm_options_t' to
6510         the `disasm_options_and_args_t' structure.
6511         * NEWS: Document `set disassembler-options' support for the MIPS
6512         target.
6513         * gdbarch.h: Regenerate.
6514         * gdbarch.c: Regenerate.
6515
6516 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
6517
6518         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
6519
6520 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
6521
6522         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
6523         parameter in call to amd64_target_description.
6524         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
6525         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
6526         (amd64fbsd_init_abi): Likewise.
6527         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
6528         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
6529         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
6530         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
6531
6532 2018-06-29  Pedro Alves  <palves@redhat.com>
6533
6534         * gdb/amd64-tdep.h (amd64_create_target_description): Add
6535         "segments" parameter.
6536         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
6537         (_initialize_amd64_tdep): Update call to
6538         amd64_create_target_description.
6539         (amd64_target_description): Add "segments" parameter.  Adjust
6540         the implementation to use it.
6541         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
6542         call to amd64_create_target_description.
6543         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
6544         * gdb/arch/amd64.h (amd64_create_target_description): Add
6545         "segments" register.
6546         * gdb/arch/amd64.c (amd64_create_target_description): Add
6547         "segments" parameter.  Call create_feature_i386_64bit_segments
6548         only if SEGMENTS is true.
6549         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
6550         call to amd64_create_target_description.
6551
6552 2018-06-29  Pedro Alves  <palves@redhat.com>
6553
6554         * thread.c (thread_target_id_str): New, factored out from ...
6555         (print_thread_info_1): ... here.  Use it to compute the max
6556         "Target Id" column width.
6557
6558 2018-06-29  Pedro Alves  <palves@redhat.com>
6559
6560         * remote.c (remote_target::extra_thread_info): Delete
6561         'display_buf' and 'n' locals.  from the cache, regardless of
6562         packet mechanims is in use.  Use cache for qThreadExtra and qP
6563         methods too.
6564
6565 2018-06-29  Pedro Alves  <palves@redhat.com>
6566
6567         * blockframe.c (find_pc_sect_containing_function): New function.
6568         * breakpoint.c (print_breakpoint_location): Don't call
6569         find_pc_sect_function.
6570         * linespec.c (create_sals_line_offset): Record the location's
6571         symbol in the sal.
6572         * linespec.c (convert_address_location_to_sals): Fill in sal's
6573         symbol with find_pc_sect_containing_function.
6574         * symtab.c (find_function_start_sal): Rename to ...
6575         (find_function_start_sal_1): ... this.
6576         (find_function_start_sal): Reimplement as wrapper around
6577         find_function_start_sal_1, and use
6578         find_pc_sect_containing_function to fill in the sal's symbol.
6579         (find_function_start_sal(symbol*, bool)): Adjust.
6580         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
6581         comments.
6582         (find_pc_sect_containing_function): Declare.
6583
6584 2018-06-29  Pedro Alves  <palves@redhat.com>
6585
6586         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
6587         true if the the location has no symbol.
6588
6589 2018-06-28  Tom Tromey  <tom@tromey.com>
6590
6591         * NEWS: Mention --enable-codesign.
6592         * silent-rules.mk (ECHO_SIGN): New variable.
6593         * configure.ac: Add --enable-codesign.
6594         * configure: Rebuild.
6595         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
6596         (gdb$(EXEEXT)): Optionally invoke codesign.
6597
6598 2018-06-28  Pedro Alves  <palves@redhat.com>
6599
6600         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
6601         comments.
6602         (switch_to_thread_no_regs): Adjust comment.
6603         * infcmd.c (stop_pc): Delete.
6604         (post_create_inferior, info_program_command): Replace references
6605         to stop_pc with references to thread_info->suspend.stop_pc.
6606         * inferior.h (stop_pc): Delete declaration.
6607         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
6608         (handle_inferior_event_1, handle_signal_stop)
6609         (process_event_stop_test, keep_going_stepped_thread)
6610         (handle_step_into_function, handle_step_into_function_backward)
6611         (print_stop_location): Replace references to stop_pc with
6612         references to thread_info->suspend.stop_pc.
6613         (struct infcall_suspend_state) <stop_pc>: Delete field.
6614         (save_infcall_suspend_state, restore_infcall_suspend_state):
6615         Remove references to inf_stat->stop_pc.
6616         * linux-fork.c (fork_load_infrun_state): Likewise.
6617         * record-btrace.c (record_btrace_set_replay): Likewise.
6618         * record-full.c (record_full_goto_entry): Likewise.
6619         * remote.c (print_one_stopped_thread): Likewise.
6620         * target.c (target_resume): Extend comment.
6621         * thread.c (set_executing_thread): New.
6622         (set_executing): Use it.
6623         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
6624         Remove references to stop_pc.
6625
6626 2018-06-28  Pedro Alves  <palves@redhat.com>
6627
6628         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
6629         Moving fetching stop_pc until after ecs->event_thread is refreshed.
6630
6631 2018-06-28  Tom Tromey  <tom@tromey.com>
6632
6633         * coffread.c (coff_symfile_finish): Update.
6634         * xcoffread.c (xcoff_symfile_finish): Update.
6635         * elfread.c (elf_symfile_finish): Update.
6636         * symfile.h (dwarf2_free_objfile): Don't declare.
6637         * dwarf2read.c (_initialize_dwarf2_read): Use
6638         register_objfile_data_with_cleanup.
6639         (dwarf2_free_objfile): Now static.  Change signature.
6640
6641 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6642
6643         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
6644         option "-o" to add-symbol-file-load to add an offset to each
6645         section's load address.
6646         * symfile.c (set_objfile_default_section_offset): New function.
6647
6648 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6649
6650         * symfile.c (add_symbol_file_command): Make sure that sections
6651         with the same name are sorted in the same order.
6652
6653 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6654
6655         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
6656         require the second argument.  If omitted, load sections at the
6657         addresses specified in the file.
6658
6659 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6660
6661         * symfile.c (symbol_file_command, symbol_file_add_main_1)
6662         (_initialize_symfile): Add option "-o" to symbol-file to add an
6663         offset to each section of the symbol file.
6664
6665 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6666
6667         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
6668
6669 2018-06-27  Tom Tromey  <tom@tromey.com>
6670
6671         * stack.c (_initialize_stack): Update "func" help text.
6672
6673 2018-06-27  Tom Tromey  <tom@tromey.com>
6674
6675         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
6676         std::vector.
6677         (unwind_infopy_str, pyuw_create_unwind_info)
6678         (unwind_infopy_add_saved_register, pyuw_sniffer)
6679         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
6680         Update.
6681         (struct saved_reg): Add constructor.
6682         <value>: Now a gdbpy_ref<>.
6683
6684 2018-06-27  Tom Tromey  <tom@tromey.com>
6685
6686         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
6687
6688 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6689
6690         * gdb-gdb.py.in: Format using autopep8.
6691
6692 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6693
6694         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
6695         (type_lookup_function): Recognize CORE_ADDR values.
6696
6697 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6698
6699         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
6700         print tag_name.
6701
6702 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6703
6704         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
6705         <__lt__>: Add.
6706
6707 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6708
6709         * gdb-gdb.py: Move to...
6710         * gdb-gdb.py.in: ... here.
6711         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
6712         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
6713         dependencies.
6714         (distclean): Remove gdb-gdb.py when cleaning.
6715         (gdb-gdb.py, gdb-gdb.gdb): New rules.
6716         * configure: Re-generate.
6717
6718 2018-06-27  Pedro Alves  <palves@redhat.com>
6719
6720         * proc-service.c (get_ps_regcache): New.
6721         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
6722         (ps_lsetfpregs): Use it.
6723
6724 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
6725
6726         PR gdb/21695
6727         * dwarf2read.c (lnp_state_machine::check_line_address): Update
6728         declaration.
6729         (dwarf_decode_lines_1): Adjust.
6730
6731 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6732
6733         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
6734         override.
6735         <info_proc>: Likewise.
6736
6737 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
6738
6739         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
6740         to windows_fetch_one_register, and only handle the case of
6741         fetching one register.  Move the code that reloads the context
6742         and iterates over all registers if R is negative to...
6743         (windows_nat_target::fetch_registers): ... here.
6744         (do_windows_store_inferior_registers): Rename to
6745         windows_store_one_register, and only handle the case of storing
6746         one register.  Move the code that handles the case where r is
6747         negative to...
6748         (windows_nat_target::store_registers) ... here.
6749
6750 2018-06-26  Tom Tromey  <tom@tromey.com>
6751
6752         PR rust/22574:
6753         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
6754         * rust-lang.c (rust_print_struct_def): Add podata parameter.
6755         Update.
6756         (rust_internal_print_type): Add podata parameter.
6757         (rust_print_type): Update.
6758
6759 2018-06-26  Tom Tromey  <tom@tromey.com>
6760
6761         * typeprint.h (struct print_offset_data) <update, finish,
6762         maybe_print_hole>: New methods.
6763         <indentation>: New constant.
6764         * typeprint.c (print_offset_data::indentation): Define.
6765         (print_offset_data::maybe_print_hole, print_offset_data::update)
6766         (print_offset_data::finish): Move from c-typeprint.c and rename.
6767         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
6768         (print_spaces_filtered_with_print_options): Update.
6769         (c_print_type_union_field_offset, maybe_print_hole)
6770         (c_print_type_struct_field_offset): Move to typeprint.c and
6771         rename.
6772         (c_type_print_base_struct_union): Update.
6773
6774 2018-06-25  Pedro Alves  <palves@redhat.com>
6775
6776         * gdbthread.h (thread_info_ref, delete_thread)
6777         (delete_thread_silent, first_thread_of_inferior)
6778         (any_thread_of_inferior, switch_to_thread)
6779         (enable_thread_stack_temporaries)
6780         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6781         (get_last_thread_stack_temporary)
6782         (value_in_thread_stack_temporaries, can_access_registers_thread):
6783         Spell out "struct thread_info" instead of just "thread_info".
6784         * inferior.h (notice_new_inferior): Likewise.
6785
6786 2018-06-25  Pedro Alves  <palves@redhat.com>
6787
6788         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
6789         pass thread_info pointer to delete_thread.
6790         (windows_nat_target::detach): Pass inferior pointer to
6791         detach_inferior.
6792         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
6793         delete_thread.
6794         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
6795         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
6796         and pass a thread_info pointer to delete_thread.
6797         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
6798         pass thread_info pointer to delete_thread.
6799         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
6800         delete_thread_silent call.
6801         * procfs.c (procfs_target::detach): Pass inferior pointer to
6802         detach_inferior.
6803         (procfs_target::wait): Pass thread_info pointer to delete_thread.
6804         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
6805         delete_thread_silent call.
6806         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
6807         pass thread_info pointer to delete_thread.
6808         (windows_nat_target::detach): Pass inferior pointer to
6809         delete_inferior.
6810
6811 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
6812
6813         * regcache.c (readable_regcache::read_part): Fix asserts.
6814         (reg_buffer::raw_collect_part): New function.
6815         (regcache::write_part): Fix asserts.
6816         (reg_buffer::raw_supply_part): New function.
6817         (regcache::transfer_regset_register): New helper function.
6818         (regcache::transfer_regset): Call new functions.
6819         (regcache_supply_regset): Use gdb_byte*.
6820         (regcache::supply_regset): Likewise.
6821         (regcache_collect_regset): Likewise.
6822         (regcache::collect_regset): Likewise.
6823         * regcache.h (reg_buffer::raw_collect_part): New declaration.
6824         (reg_buffer::raw_supply_part): Likewise.
6825         (regcache::transfer_regset_register): Likewise.
6826         (regcache::transfer_regset): Use gdb_byte*.
6827
6828 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
6829
6830         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
6831
6832 2018-06-21  Pedro Alves  <palves@redhat.com>
6833
6834         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
6835         instead of a ptid_t.  All callers adjusted.
6836         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
6837         adjusted.
6838         (print_ada_task_info, display_current_task_id, task_command_1):
6839         Adjust.
6840         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
6841         inferior_thread.
6842         (breakpoint_kind): Adjust.
6843         (remove_breakpoints_pid): Rename to ...
6844         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
6845         pointer.  All callers adjusted.
6846         (bpstat_clear_actions): Use inferior_thread.
6847         (get_bpstat_thread): New.
6848         (bpstat_do_actions): Use it.
6849         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
6850         to take a thread_info pointer.  All callers adjusted.
6851         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
6852         (breakpoint_re_set_thread): Use inferior_thread.
6853         * breakpoint.h (struct inferior): Forward declare.
6854         (bpstat_stop_status): Update.
6855         (remove_breakpoints_pid): Delete.
6856         (remove_breakpoints_inf): New.
6857         * bsd-uthread.c (bsd_uthread_target::wait)
6858         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
6859         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
6860         (maint_btrace_packet_history_cmd)
6861         (maint_btrace_clear_packet_history_cmd): Adjust.
6862         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
6863         inferior_thread.
6864         * cli/cli-interp.c: Include "inferior.h".
6865         * common/refcounted-object.h (struct
6866         refcounted_object_ref_policy): New.
6867         * compile/compile-object-load.c: Include gdbthread.h.
6868         (store_regs): Use inferior_thread.
6869         * corelow.c (core_target::close): Use current_inferior.
6870         (core_target_open): Adjust to use first_thread_of_inferior and use
6871         the current inferior.
6872         * ctf.c (ctf_target::close): Adjust to use current_inferior.
6873         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
6874         <thread>: ... this new field.  All references adjusted.
6875         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
6876         Take a thread_info pointer instead of a ptid_t.
6877         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
6878         (dummy_frame_discard, register_dummy_frame_dtor): Take a
6879         thread_info pointer instead of a ptid_t.
6880         * elfread.c: Include "inferior.h".
6881         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
6882         Use inferior_thread.
6883         * eval.c (evaluate_subexp): Likewise.
6884         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
6885         inferior_thread.
6886         * gdb_proc_service.h (struct thread_info): Forward declare.
6887         (struct ps_prochandle) <ptid>: Delete, replaced by ...
6888         <thread>: ... this new field.  All references adjusted.
6889         * gdbarch.h, gdbarch.c: Regenerate.
6890         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
6891         'thread' parameter.  All implementations and callers adjusted.
6892         * gdbthread.h (thread_info) <set_running>: New method.
6893         (delete_thread, delete_thread_silent): Take a thread_info pointer
6894         instead of a ptid.
6895         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
6896         (first_thread_of_process): Delete, replaced by ...
6897         (first_thread_of_inferior): ... this new function.  All callers
6898         adjusted.
6899         (any_live_thread_of_process): Delete, replaced by ...
6900         (any_live_thread_of_inferior): ... this new function.  All callers
6901         adjusted.
6902         (switch_to_thread, switch_to_no_thread): Declare.
6903         (is_executing): Delete.
6904         (enable_thread_stack_temporaries): Update comment.
6905         <enable_thread_stack_temporaries>: Take a thread_info pointer
6906         instead of a ptid_t.  Incref the thread.
6907         <~enable_thread_stack_temporaries>: Decref the thread.
6908         <m_ptid>: Delete
6909         <m_thr>: New.
6910         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6911         (get_last_thread_stack_temporary)
6912         (value_in_thread_stack_temporaries, can_access_registers_thread):
6913         Take a thread_info pointer instead of a ptid_t.  All callers
6914         adjusted.
6915         * infcall.c (get_call_return_value): Use inferior_thread.
6916         (run_inferior_call): Work with thread pointers instead of ptid_t.
6917         (call_function_by_hand_dummy): Work with thread pointers instead
6918         of ptid_t.  Use thread_info_ref.
6919         * infcmd.c (proceed_thread_callback): Access thread's state
6920         directly.
6921         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
6922         access thread's state directly.
6923         (continue_command): Use inferior_thread.
6924         (info_program_command): Use find_thread_ptid and access thread
6925         state directly.
6926         (proceed_after_attach_callback): Use thread state directly.
6927         (notice_new_inferior): Take a thread_info pointer instead of a
6928         ptid_t.  All callers adjusted.
6929         (exit_inferior): Take an inferior pointer instead of a pid.  All
6930         callers adjusted.
6931         (exit_inferior_silent): New.
6932         (detach_inferior): Delete.
6933         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
6934         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
6935         (detach_inferior_command, kill_inferior_command): Use
6936         find_inferior_id instead of valid_gdb_inferior_id and
6937         gdb_inferior_id_to_pid.
6938         (inferior_command): Use inferior and thread pointers.
6939         * inferior.h (struct thread_info): Forward declare.
6940         (notice_new_inferior): Take a thread_info pointer instead of a
6941         ptid_t.  All callers adjusted.
6942         (detach_inferior): Delete declaration.
6943         (exit_inferior, exit_inferior_silent): Take an inferior pointer
6944         instead of a pid.  All callers adjusted.
6945         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
6946         (valid_gdb_inferior_id): Delete.
6947         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
6948         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
6949         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
6950         ...
6951         <inf>: ... this new field.
6952         <step_ptid>: Delete, replaced by ...
6953         <step_thread>: ... this new field.
6954         (get_displaced_stepping_state): Take an inferior pointer instead
6955         of a pid.  All callers adjusted.
6956         (displaced_step_in_progress_any_inferior): Adjust.
6957         (displaced_step_in_progress_thread): Take a thread pointer instead
6958         of a ptid_t.  All callers adjusted.
6959         (displaced_step_in_progress, add_displaced_stepping_state): Take
6960         an inferior pointer instead of a pid.  All callers adjusted.
6961         (get_displaced_step_closure_by_addr): Adjust.
6962         (remove_displaced_stepping_state): Take an inferior pointer
6963         instead of a pid.  All callers adjusted.
6964         (displaced_step_prepare_throw, displaced_step_prepare)
6965         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
6966         All callers adjusted.
6967         (start_step_over): Adjust.
6968         (infrun_thread_ptid_changed): Remove bit updating ptids in the
6969         displaced step queue.
6970         (do_target_resume): Adjust.
6971         (fetch_inferior_event): Use inferior_thread.
6972         (context_switch, get_inferior_stop_soon): Take an
6973         execution_control_state pointer instead of a ptid_t.  All callers
6974         adjusted.
6975         (switch_to_thread_cleanup): Delete.
6976         (stop_all_threads): Use scoped_restore_current_thread.
6977         * inline-frame.c: Include "gdbthread.h".
6978         (inline_state) <inline_state>: Take a thread pointer instead of a
6979         ptid_t.  All callers adjusted.
6980         <ptid>: Delete, replaced by ...
6981         <thread>: ... this new field.
6982         (find_inline_frame_state): Take a thread pointer instead of a
6983         ptid_t.  All callers adjusted.
6984         (skip_inline_frames, step_into_inline_frame)
6985         (inline_skipped_frames, inline_skipped_symbol): Take a thread
6986         pointer instead of a ptid_t.  All callers adjusted.
6987         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
6988         (inline_skipped_frames, inline_skipped_symbol): Likewise.
6989         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
6990         pointers directly.
6991         * linux-nat.c (get_detach_signal): Likewise.
6992         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
6993         (thread_db_notice_clone): Adjust.
6994         (thread_db_find_new_threads_silently)
6995         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
6996         a thread pointer instead of a ptid_t.  All callers adjusted.
6997         * mi/mi-cmd-var.c: Include "inferior.h".
6998         (mi_cmd_var_update_iter): Update to use thread pointers.
6999         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
7000         inferior directly.
7001         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
7002         out to ...
7003         (mi_output_running): ... this new function.
7004         (mi_on_resume_1): Adjust to use it.
7005         (mi_user_selected_context_changed): Adjust to use inferior_thread.
7006         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
7007         directly.
7008         (interrupt_thread_callback): : Adjust to use thread and inferior
7009         pointers.
7010         * proc-service.c: Include "gdbthread.h".
7011         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
7012         * progspace-and-thread.c: Include "inferior.h".
7013         * progspace.c: Include "inferior.h".
7014         * python/py-exitedevent.c (create_exited_event_object): Adjust to
7015         hold a reference to an inferior_object.
7016         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
7017         inferior_thread.
7018         * python/py-inferior.c (struct inferior_object): Give the type a
7019         tag name instead of a typedef.
7020         (python_on_normal_stop): No need to check if the current thread is
7021         listed.
7022         (inferior_to_inferior_object): Change return type to
7023         inferior_object.  All callers adjusted.
7024         (find_thread_object): Delete, bits factored out to ...
7025         (thread_to_thread_object): ... this new function.
7026         * python/py-infthread.c (create_thread_object): Use
7027         inferior_to_inferior_object.
7028         (thpy_is_stopped): Use thread pointer directly.
7029         (gdbpy_selected_thread): Use inferior_thread.
7030         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
7031         field, replaced with ...
7032         <thread>: ... this new field.  All users adjusted.
7033         (btpy_insn_or_gap_new): Drop const.
7034         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
7035         callers adjusted.
7036         * python/py-record.c: Include "gdbthread.h".
7037         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
7038         a ptid_t.  All callers adjusted.
7039         (gdbpy_current_recording): Use inferior_thread.
7040         * python/py-record.h (recpy_record_object) <ptid>: Delete
7041         field, replaced with ...
7042         <thread>: ... this new field.  All users adjusted.
7043         (recpy_element_object) <ptid>: Delete
7044         field, replaced with ...
7045         <thread>: ... this new field.  All users adjusted.
7046         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
7047         a ptid_t.  All callers adjusted.
7048         * python/py-threadevent.c: Include "gdbthread.h".
7049         (get_event_thread): Use thread_to_thread_object.
7050         * python/python-internal.h (struct inferior_object): Forward
7051         declare.
7052         (find_thread_object, find_inferior_object): Delete declarations.
7053         (thread_to_thread_object, inferior_to_inferior_object): New
7054         declarations.
7055         * record-btrace.c: Include "inferior.h".
7056         (require_btrace_thread): Use inferior_thread.
7057         (record_btrace_frame_sniffer)
7058         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
7059         (get_thread_current_frame): Use scoped_restore_current_thread and
7060         switch_to_thread.
7061         (get_thread_current_frame): Use thread pointer directly.
7062         (record_btrace_replay_at_breakpoint): Use thread's inferior
7063         pointer directly.
7064         * record-full.c: Include "inferior.h".
7065         * regcache.c: Include "gdbthread.h".
7066         (get_thread_arch_regcache): Use the inferior's address space
7067         directly.
7068         (get_thread_regcache, registers_changed_thread): New.
7069         * regcache.h (get_thread_regcache(thread_info *thread)): New
7070         overload.
7071         (registers_changed_thread): New.
7072         (remote_target) <remote_detach_1>: Swap order of parameters.
7073         (remote_add_thread): <remote_add_thread>: Return the new thread.
7074         (get_remote_thread_info(ptid_t)): New overload.
7075         (remote_target::remote_notice_new_inferior): Use thread pointers
7076         directly.
7077         (remote_target::process_initial_stop_replies): Use
7078         thread_info::set_running.
7079         (remote_target::remote_detach_1, remote_target::detach)
7080         (extended_remote_target::detach): Adjust.
7081         * stack.c (frame_show_address): Use inferior_thread.
7082         * target-debug.h (target_debug_print_thread_info_pp): New.
7083         * target-delegates.c: Regenerate.
7084         * target.c (default_thread_address_space): Delete.
7085         (memory_xfer_partial_1): Use current_inferior.
7086         (target_detach): Use current_inferior.
7087         (target_thread_address_space): Delete.
7088         (generic_mourn_inferior): Use current_inferior.
7089         * target.h (struct target_ops) <thread_address_space>: Delete.
7090         (target_thread_address_space): Delete.
7091         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
7092         pointers directly.
7093         (delete_thread_1, delete_thread, delete_thread_silent): Take a
7094         thread pointer instead of a ptid_t.  Adjust all callers.
7095         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
7096         (first_thread_of_process): Delete, replaced by ...
7097         (first_thread_of_inferior): ... this new function.  All callers
7098         adjusted.
7099         (any_thread_of_process): Rename to ...
7100         (any_thread_of_inferior): ... this, and take an inferior pointer.
7101         (any_live_thread_of_process): Rename to ...
7102         (any_live_thread_of_inferior): ... this, and take an inferior
7103         pointer.
7104         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7105         (value_in_thread_stack_temporaries)
7106         (get_last_thread_stack_temporary): Take a thread pointer instead
7107         of a ptid_t.  Adjust all callers.
7108         (thread_info::set_running): New.
7109         (validate_registers_access): Use inferior_thread.
7110         (can_access_registers_ptid): Rename to ...
7111         (can_access_registers_thread): ... this, and take a thread
7112         pointer.
7113         (print_thread_info_1): Adjust to compare thread pointers instead
7114         of ptids.
7115         (switch_to_no_thread, switch_to_thread): Make extern.
7116         (scoped_restore_current_thread::~scoped_restore_current_thread):
7117         Use m_thread pointer directly.
7118         (scoped_restore_current_thread::scoped_restore_current_thread):
7119         Use inferior_thread.
7120         (thread_command): Use thread pointer directly.
7121         (thread_num_make_value_helper): Use inferior_thread.
7122         * top.c (execute_command): Use inferior_thread.
7123         * tui/tui-interp.c: Include "inferior.h".
7124         * varobj.c (varobj_create): Use inferior_thread.
7125         (value_of_root_1): Use find_thread_global_id instead of
7126         global_thread_id_to_ptid.
7127
7128 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
7129
7130         * regcache.c (readable_regcache::read_part): Avoid memcpy when
7131         possible.
7132         (regcache::write_part): Likewise.
7133         (readable_regcache::cooked_read_part): Update comment.
7134         (readable_regcache::cooked_write_part): Likewise.
7135         * regcache.h: (readable_regcache::read_part): Likewise.
7136         (regcache::write_part): Likewise.
7137
7138 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
7139             Dirk Schubert  <dirk.schubert@arm.com>
7140
7141         * aarch64-linux-nat.c (post_attach): New.
7142         (aarch64_linux_nat_target::post_attach): Override post_attach to
7143         record the number of hardware debug registers.
7144
7145 2018-06-20  Tom Tromey  <tom@tromey.com>
7146
7147         * python/py-param.c (add_setshow_generic): Make parameters const.
7148         (parmpy_init): Update.
7149
7150 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
7151
7152         * regcache.h (regcache_cooked_read_ftype): Rename to...
7153         (register_read_ftype): ...this, change type to function_view.
7154         (class reg_buffer) <save>: Remove src parameter.
7155         (readonly_detached_regcache) <readonly_detached_regcache>: Make
7156         parameter non-const in first overload.  Remove src parameter in
7157         second overload.
7158         * regcache.c (do_cooked_read): Remove.
7159         (readonly_detached_regcache::readonly_detached_regcache): Make
7160         parameter non-const, adjust call to other constructor.
7161         (reg_buffer::save): Remove src parameter.
7162         * frame.c (do_frame_register_read): Remove.
7163         (frame_save_as_regcache): Use lambda function.
7164         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
7165         parameter to ppu2spu_data *.
7166         (ppu2spu_sniffer): Use lambda function.
7167
7168 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
7169
7170         * record-full.c (record_full_target::insert_breakpoint): Remove
7171         "struct" keyword, add const.
7172
7173 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
7174
7175         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
7176         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
7177         * configure.ac: Remove AC_PREREQ, add missing quoting.
7178         * gnulib/configure.ac: Modernize usage of
7179         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
7180         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
7181         (AUTOMAKE_VERSION): Bump to 1.15.1.
7182         * configure: Re-generate.
7183         * config.in: Re-generate.
7184         * aclocal.m4: Re-generate.
7185         * gnulib/aclocal.m4: Re-generate.
7186         * gnulib/config.in: Re-generate.
7187         * gnulib/configure: Re-generate.
7188         * gnulib/import/Makefile.in: Re-generate.
7189
7190 2018-06-19  Pedro Alves  <palves@redhat.com>
7191
7192         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
7193         (lookup_minimal_symbol_by_pc_section): ... here with
7194         gdb_assert_not_reached added.
7195
7196 2018-06-19  Pedro Alves  <palves@redhat.com>
7197
7198         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
7199         parameter with a block parameter.  Compare location's block symbol
7200         with the frame's block instead of addresses.
7201         (skip_inline_frames): Pass the current block instead of the
7202         frame's address.  Break out as soon as we determine the frame
7203         should not be skipped.
7204
7205 2018-06-18  Tom Tromey  <tom@tromey.com>
7206
7207         * solib-aix.c (solib_aix_get_section_offsets): Return
7208         unique_xmalloc_ptr.
7209         (solib_aix_solib_create_inferior_hook): Update.
7210
7211 2018-06-18  Tom Tromey  <tom@tromey.com>
7212
7213         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
7214
7215 2018-06-18  Tom Tromey  <tom@tromey.com>
7216
7217         * solib-frv.c (frv_relocate_main_executable): Use
7218         unique_xmalloc_ptr.
7219         * solib-dsbt.c (dsbt_relocate_main_executable): Use
7220         unique_xmalloc_ptr.
7221
7222 2018-06-18  Tom Tromey  <tom@tromey.com>
7223
7224         * objfiles.h (inhibit_section_map_updates): Update.
7225         (resume_section_map_updates, resume_section_map_updates_cleanup):
7226         Remove.
7227         * solib-svr4.c (svr4_handle_solib_event): Update.
7228         * objfiles.c (inhibit_section_map_updates): Return
7229         scoped_restore_tmpl<int>.
7230         (resume_section_map_updates, resume_section_map_updates_cleanup):
7231         Remove.
7232
7233 2018-06-18  Tom Tromey  <tom@tromey.com>
7234
7235         * valprint.h (read_string): Update.
7236         * valprint.c (read_string): Change type of "buffer".
7237         (val_print_string): Update.
7238         * python/py-value.c (valpy_string): Update.
7239         * language.h (struct language_defn) <la_get_string>: Change
7240         type of "buffer".
7241         (default_get_string, c_get_string): Update.
7242         * language.c (default_get_string): Change type of "buffer".
7243         * guile/scm-value.c (gdbscm_value_to_string): Update.
7244         * c-lang.c (c_get_string): Change type of "buffer".
7245
7246 2018-06-18  Tom Tromey  <tom@tromey.com>
7247
7248         * ser-mingw.c (struct pipe_state_destroyer): New.
7249         (pipe_state_up): New typedef.
7250         (cleanup_pipe_state): Remove.
7251         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
7252
7253 2018-06-18  Tom Tromey  <tom@tromey.com>
7254
7255         * rust-lang.h (rust_yyerror): Don't declare.
7256         * rust-lang.c (rust_language_defn): Update.
7257         * rust-exp.y (yyerror): Now static.
7258         * parse.c (parse_exp_in_context_1): Update.
7259         * p-lang.h (p_yyerror): Don't declare.
7260         * p-lang.c (p_language_defn): Update.
7261         * p-exp.y (yyerror): Now static.
7262         * opencl-lang.c (opencl_language_defn): Update.
7263         * objc-lang.c (objc_language_defn): Update.
7264         * m2-lang.h (m2_yyerror): Don't declare.
7265         * m2-lang.c (m2_language_defn): Update.
7266         * m2-exp.y (yyerror): Now static.
7267         * language.h (struct language_defn) <la_error>: Remove.
7268         * language.c (unk_lang_error): Remove.
7269         (unknown_language_defn, auto_language_defn): Remove.
7270         * go-lang.h (go_yyerror): Don't declare.
7271         * go-lang.c (go_language_defn): Update.
7272         * go-exp.y (yyerror): Now static.
7273         * f-lang.h (f_yyerror): Don't declare.
7274         * f-lang.c (f_language_defn): Update.
7275         * f-exp.y (yyerror): Now static.
7276         * d-lang.h (d_yyerror): Don't declare.
7277         * d-lang.c (d_language_defn): Update.
7278         * d-exp.y (yyerror): Now static.
7279         * c-lang.h (c_yyerror): Don't declare.
7280         * c-lang.c (c_language_defn, cplus_language_defn)
7281         (asm_language_defn, minimal_language_defn): Update.
7282         * c-exp.y (yyerror): Now static.
7283         * ada-lang.h (ada_yyerror): Don't declare.
7284         * ada-lang.c (ada_language_defn): Update.
7285         * ada-exp.y (yyerror): Now static.
7286
7287 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
7288
7289         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
7290         (store_sveregs_to_thread): Likewise.
7291         (aarch64_linux_fetch_inferior_registers): Check for SVE.
7292         (aarch64_linux_store_inferior_registers): Likewise.
7293         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
7294         function.
7295         (aarch64_sve_regs_copy_to_regcache): Likewise.
7296         (aarch64_sve_regs_copy_from_regcache): Likewise.
7297         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
7298         declaration.
7299         (aarch64_sve_regs_copy_to_regcache): Likewise.
7300         (aarch64_sve_regs_copy_from_regcache): Likewise.
7301         (sve_context): Structure from Linux headers.
7302         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
7303         (SVE_SIG_ZREG_SIZE): Likewise.
7304         (SVE_SIG_PREG_SIZE): Likewise.
7305         (SVE_SIG_FFR_SIZE): Likewise.
7306         (SVE_SIG_REGS_OFFSET): Likewise.
7307         (SVE_SIG_ZREGS_OFFSET): Likewise.
7308         (SVE_SIG_ZREG_OFFSET): Likewise.
7309         (SVE_SIG_ZREGS_SIZE): Likewise.
7310         (SVE_SIG_PREGS_OFFSET): Likewise.
7311         (SVE_SIG_PREG_OFFSET): Likewise.
7312         (SVE_SIG_PREGS_SIZE): Likewise.
7313         (SVE_SIG_FFR_OFFSET): Likewise.
7314         (SVE_SIG_REGS_SIZE): Likewise.
7315         (SVE_SIG_CONTEXT_SIZE): Likewise.
7316         (SVE_PT_REGS_MASK): Likewise.
7317         (SVE_PT_REGS_FPSIMD): Likewise.
7318         (SVE_PT_REGS_SVE): Likewise.
7319         (SVE_PT_VL_INHERIT): Likewise.
7320         (SVE_PT_VL_ONEXEC): Likewise.
7321         (SVE_PT_REGS_OFFSET): Likewise.
7322         (SVE_PT_FPSIMD_OFFSET): Likewise.
7323         (SVE_PT_FPSIMD_SIZE): Likewise.
7324         (SVE_PT_SVE_ZREG_SIZE): Likewise.
7325         (SVE_PT_SVE_PREG_SIZE): Likewise.
7326         (SVE_PT_SVE_FFR_SIZE): Likewise.
7327         (SVE_PT_SVE_FPSR_SIZE): Likewise.
7328         (SVE_PT_SVE_FPCR_SIZE): Likewise.
7329         (__SVE_SIG_TO_PT): Likewise.
7330         (SVE_PT_SVE_OFFSET): Likewise.
7331         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
7332         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
7333         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
7334         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
7335         (SVE_PT_SVE_PREG_OFFSET): Likewise.
7336         (SVE_PT_SVE_PREGS_SIZE): Likewise.
7337         (SVE_PT_SVE_FFR_OFFSET): Likewise.
7338         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
7339         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
7340         (SVE_PT_SVE_SIZE): Likewise.
7341         (SVE_PT_SIZE): Likewise.
7342         (HAS_SVE_STATE): New define.
7343
7344 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
7345
7346         * nat/aarch64-sve-linux-sigcontext.h: New file.
7347         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
7348         new files.
7349         (SVE_VQ_MIN): Likewise.
7350         (SVE_VQ_MAX): Likewise.
7351         (SVE_VL_MIN): Likewise.
7352         (SVE_VL_MAX): Likewise.
7353         (SVE_NUM_ZREGS): Likewise.
7354         (SVE_NUM_PREGS): Likewise.
7355         (sve_vl_valid): Likewise.
7356         (struct user_sve_header): Likewise.
7357
7358 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
7359             Richard Bunt <Richard.Bunt@arm.com>
7360
7361         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
7362         was requested by GDB.
7363
7364 2018-06-15  Tom de Vries  <tdevries@suse.de>
7365
7366         * MAINTAINERS (Write After Approval): Add Tom de Vries.
7367
7368 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
7369
7370         * gnulib/update-gnulib.sh: Print expected versions of
7371         autoconf/aclocal.
7372
7373 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
7374
7375         * arch-utils.c (default_type_align): Use type_length_units.
7376         * gdbtypes.c (type_align): Use type_length_units.
7377
7378 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7379
7380         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
7381         of 'define' command.
7382
7383 2018-06-14  Tom de Vries  <tdevries@suse.de>
7384
7385         PR cli/22573
7386         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
7387         get_no_prettyformat_print_options.
7388
7389 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
7390
7391         * sparc-nat.h: Include target.h.
7392         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
7393         <fetch_registers>: Remove this argument in function call.
7394         <store_registers>: Remove this argument in function call, remove
7395         extra semicolon.
7396         <low_forget_process>: Call sparc64_forget_process instead of
7397         sparc_forget_process.
7398
7399 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
7400
7401         * procfs.c (_initialize_procfs): Use add_inf_child_target.
7402         (procfs_target::make_corefile_notes): Adjust to new
7403         target_read_alloc return type.
7404
7405 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7406             Stephen Roberts  <stephen.roberts@arm.com>
7407
7408         PR gdb/22882
7409         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
7410         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
7411         Move should_notify_stop local into more inner scope.
7412
7413 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7414             Stephen Roberts  <stephen.roberts@arm.com>
7415
7416         PR gdb/22882
7417         * infrun.c (resume_1): Add call to mark_async_event_handler.
7418
7419 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7420
7421         * infrun.c (do_target_wait): Change old version of $pc printed.
7422
7423 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
7424
7425         * dwarf2read.c (read_index_from_section): Rename to...
7426         (read_gdb_index_from_section): ... this, update all callers.
7427         (dwarf2_read_index): Rename to...
7428         (dwarf2_read_gdb_index): ... this, update all callers.
7429
7430 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
7431
7432         * hppa-linux-nat.c
7433         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
7434         hppa_linux_nat_target::fetch_registers.
7435
7436 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
7437
7438         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
7439         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
7440         (AARCH64_DWARF_SVE_FFR): Likewise.
7441         (AARCH64_DWARF_SVE_P0): Likewise.
7442         (AARCH64_DWARF_SVE_Z0): Likewise.
7443
7444 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
7445
7446         * common/common-regcache.h (raw_compare): New function.
7447         * regcache.c (regcache::raw_compare): Likewise.
7448         * regcache.h (regcache::raw_compare): New declaration.
7449
7450 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
7451
7452         * common/common-regcache.h (reg_buffer_common): New structure.
7453         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
7454         (reg_buffer::raw_supply): Likewise.
7455         (reg_buffer::raw_supply_integer): Likewise.
7456         (reg_buffer::raw_supply_zeroed): Likewise.
7457         (reg_buffer::raw_collect): Likewise.
7458         (reg_buffer::raw_collect_integer): Likewise.
7459         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
7460         (reg_buffer::raw_supply): Likewise.
7461         (reg_buffer::raw_supply_integer): Likewise.
7462         (reg_buffer::raw_supply_zeroed): Likewise.
7463         (reg_buffer::raw_collect): Likewise.
7464         (reg_buffer::raw_collect_integer): Likewise.
7465
7466 2018-06-10  Tom Tromey  <tom@tromey.com>
7467
7468         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
7469         (class remote_state) <stop_reply_queue>: Now std::vector.
7470         (remote_state::~remote_state)
7471         (remote_target::stop_reply_queue_length): Update.
7472         (struct queue_iter_param, remove_child_of_pending_fork)
7473         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
7474         (check_pending_event_prevents_wildcard_vcont_callback)
7475         (remove_stop_reply_for_inferior)
7476         (remove_stop_reply_of_remote_state)
7477         (remote_notif_remove_once_on_match)
7478         (stop_reply_match_ptid_and_ws)
7479         (remote_kill_child_of_pending_fork): Remove.
7480         (remote_target::remove_new_fork_children)
7481         (remote_target::check_pending_events_prevent_wildcard_vcont)
7482         (remote_target::discard_pending_stop_replies)
7483         (remote_target::discard_pending_stop_replies_in_queue)
7484         (remote_target::remote_notif_remove_queued_reply)
7485         (remote_target::queued_stop_reply)
7486         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
7487         (remote_target::wait, remote_target::kill_new_fork_children)
7488         (remote_target::async): Update.
7489
7490 2018-06-10  Tom Tromey  <tom@tromey.com>
7491
7492         * record-full.c (record_full_arch_list_cleanups): Remove.
7493         (record_full_message): Use try/catch.
7494         (record_full_wait_cleanups): Remove.
7495         (record_full_wait_1): Use try/catch.
7496         (record_full_restore): Likewise.
7497
7498 2018-06-10  Tom Tromey  <tom@tromey.com>
7499
7500         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
7501         declare VEC.  Add constructor.
7502         <in_target_beneath>: Now bool.
7503         (record_full_breakpoints): Now a std::vector, static.
7504         (record_full_sync_record_breakpoints)
7505         (record_full_init_record_breakpoints)
7506         (record_full_target::insert_breakpoint)
7507         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
7508
7509 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
7510
7511         * dwarf2read.c (process_cu_includes): Remove struct keyword.
7512         * serial.c (serial_interface_lookup): Remove struct keyword.
7513
7514 2018-06-10  Tom Tromey  <tom@tromey.com>
7515
7516         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
7517         method.
7518         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
7519         a method.
7520         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
7521         method.
7522         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
7523         "beneath" as a method.
7524         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
7525         Use "beneath" as a method.
7526
7527 2018-06-10  Tom Tromey  <tom@tromey.com>
7528
7529         * tracefile.c (struct trace_file_writer_deleter): New.
7530         <operator()>: Rename from trace_file_writer_xfree.
7531         (trace_file_writer_up): New typedef.
7532         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
7533
7534 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
7535
7536         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
7537         <m_registers, m_register_status>: Change type to
7538         std::unique_ptr.
7539         * regcache.c (reg_buffer::reg_buffer): Use new instead of
7540         XCNEWVEC.
7541
7542 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
7543
7544         * common/common-regcache.h (enum register_status): Add
7545         underlying type "signed char".
7546         * regcache.h (reg_buffer) <m_register_status>: Change type to
7547         register_status *.
7548         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
7549         register_status instead of signed char.
7550         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
7551         (reg_buffer::get_register_status): Remove cast.
7552         (readable_regcache::raw_read): Remove cast.
7553         (readable_regcache::cooked_read): Remove cast.
7554
7555 2018-06-09  Tom Tromey  <tom@tromey.com>
7556
7557         * source.c (reverse_search_command, forward_search_command): Use
7558         scoped_fd.
7559
7560 2018-06-09  Tom Tromey  <tom@tromey.com>
7561
7562         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
7563         (serial_ops_list): Now static, std::vector.
7564         (serial_interface_lookup, serial_add_interface): Update.
7565
7566 2018-06-09  Tom Tromey  <tom@tromey.com>
7567
7568         * dwarf2read.c (process_cu_includes): Update.
7569         (process_full_comp_unit): Update.
7570         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
7571         std::vector.
7572
7573 2018-06-08  Paul Koning  <paul_koning@dell.com>
7574
7575         PR gdb/23252
7576
7577         * python/python.c (do_start_initialization):
7578         Avoid call to internal Python API.
7579         (init__gdb_module): New function.
7580
7581 2018-06-08  Gary Benson <gbenson@redhat.com>
7582
7583         * linux-thread-db.c (valprint.h): New include.
7584         (struct check_thread_db_info): New structure.
7585         (check_thread_db_on_load, tdb_testinfo): New static globals.
7586         (check_thread_db, check_thread_db_callback): New functions.
7587         (try_thread_db_load_1): Run integrity checks if requested.
7588         (maintenance_check_libthread_db): New function.
7589         (_initialize_thread_db): Register "maint check libthread-db"
7590         and "maint set/show check-libthread-db".
7591         * NEWS: Mention the above new commands.
7592
7593 2018-06-08  Tom Tromey  <tom@tromey.com>
7594
7595         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
7596         now a method.
7597
7598 2018-06-08  Tom Tromey  <tom@tromey.com>
7599
7600         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
7601
7602 2018-06-08  Tom Tromey  <tom@tromey.com>
7603
7604         * common/btrace-common.h (struct btrace_data): Add constructor,
7605         destructor, move assignment operator.
7606         <empty, clear, fini>: New methods.
7607         <format>: Initialize.
7608         (btrace_data_init, btrace_data_fini, btrace_data_clear)
7609         (btrace_data_empty): Don't declare.
7610         * common/btrace-common.c (btrace_data_init): Remove.
7611         (btrace_data::fini): Rename from btrace_data_fini.
7612         (btrace_data::empty): Rename from btrace_data_empty.
7613         (btrace_data::clear): Rename from btrace_data_clear.  Return
7614         bool.
7615         * btrace.h (make_cleanup_btrace_data): Don't declare.
7616         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
7617         (parse_xml_btrace): Update.
7618         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
7619         (maint_btrace_clear_packet_history_cmd): Update.
7620
7621 2018-06-07  Pedro Alves  <palves@redhat.com>
7622
7623         * target.h (target_ops) <beneath>: Now a method.  All references
7624         updated.
7625         (class target_stack): New.
7626         * target.c (g_target_stack): New.
7627         (g_current_top_target): Delete.
7628         (current_top_target): Get the top target out of g_target_stack.
7629         (target_stack::push, target_stack::unpush): New.
7630         (push_target, unpush_target): Reimplement.
7631         (target_is_pushed): Reimplement in terms of g_target_stack.
7632         (target_ops::beneath, target_stack::find_beneath): New.
7633
7634 2018-06-07  Pedro Alves  <palves@redhat.com>
7635
7636         * target.h (find_target_beneath): Delete declaration.
7637         * target.c (find_target_beneath): Delete definition.
7638         * aix-thread.c: All callers of find_target_beneath adjusted to
7639         call target_ops::beneath instead.
7640         * bsd-uthread.c: Likewise.
7641         * linux-thread-db.c: Likewise.
7642         * ravenscar-thread.c: Likewise.
7643         * sol-thread.c: Likewise.
7644         * spu-multiarch.c: Likewise.
7645
7646 2018-06-07  Pedro Alves  <palves@redhat.com>
7647
7648         * target.h (target_ops) <beneath>: Now a method.  All references
7649         updated.
7650         (target_ops) <m_beneath>: New.
7651         * target.c (target_ops::beneath): New.
7652         * corelow.c: Adjust all references to target_ops::beneath.
7653         * linux-thread-db.c: Likewise.
7654         * make-target-delegates: Likewise.
7655         * record-btrace.c: Likewise.
7656         * record-full.c: Likewise.
7657         * remote.c: Likewise.
7658         * target.c: Likewise.
7659         * target-delegates.c: Regenerate.
7660
7661 2018-06-07  Pedro Alves  <palves@redhat.com>
7662
7663         * target.h (target_stack): Delete.
7664         (current_top_target): Declare function.
7665         * target.c (target_stack): Delete.
7666         (g_current_top_target): New.
7667         (current_top_target): New function.
7668         * auxv.c: Use current_top_target instead of target_stack
7669         throughout.
7670         * avr-tdep.c: Likewise.
7671         * breakpoint.c: Likewise.
7672         * corefile.c: Likewise.
7673         * elfread.c: Likewise.
7674         * eval.c: Likewise.
7675         * exceptions.c: Likewise.
7676         * frame.c: Likewise.
7677         * gdbarch-selftests.c: Likewise.
7678         * gnu-v3-abi.c: Likewise.
7679         * ia64-tdep.c: Likewise.
7680         * ia64-vms-tdep.c: Likewise.
7681         * infcall.c: Likewise.
7682         * infcmd.c: Likewise.
7683         * infrun.c: Likewise.
7684         * linespec.c: Likewise.
7685         * linux-tdep.c: Likewise.
7686         * minsyms.c: Likewise.
7687         * ppc-linux-nat.c: Likewise.
7688         * ppc-linux-tdep.c: Likewise.
7689         * procfs.c: Likewise.
7690         * regcache.c: Likewise.
7691         * remote.c: Likewise.
7692         * rs6000-tdep.c: Likewise.
7693         * s390-linux-nat.c: Likewise.
7694         * s390-tdep.c: Likewise.
7695         * solib-aix.c: Likewise.
7696         * solib-darwin.c: Likewise.
7697         * solib-dsbt.c: Likewise.
7698         * solib-spu.c: Likewise.
7699         * solib-svr4.c: Likewise.
7700         * solib-target.c: Likewise.
7701         * sparc-tdep.c: Likewise.
7702         * sparc64-tdep.c: Likewise.
7703         * spu-tdep.c: Likewise.
7704         * symfile.c: Likewise.
7705         * symtab.c: Likewise.
7706         * target-descriptions.c: Likewise.
7707         * target-memory.c: Likewise.
7708         * target.c: Likewise.
7709         * target.h: Likewise.
7710         * tracefile-tfile.c: Likewise.
7711         * tracepoint.c: Likewise.
7712         * valops.c: Likewise.
7713         * valprint.c: Likewise.
7714         * value.c: Likewise.
7715         * windows-tdep.c: Likewise.
7716         * mi/mi-main.c: Likewise.
7717
7718 2018-06-07  Tom Tromey  <tom@tromey.com>
7719
7720         * valprint.h (build_address_symbolic): Declare.
7721         * printcmd.c (print_address_symbolic): Update.
7722         (build_address_symbolic): Change "name" and "filename" to
7723         std::string.
7724         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
7725         Update.
7726         * defs.h (build_address_symbolic): Remove declaration.
7727
7728 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
7729
7730         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
7731         (aarch64_vnv_type): Add function.
7732         (aarch64_pseudo_register_name): Add V regs for SVE.
7733         (aarch64_pseudo_register_type): Likewise.
7734         (aarch64_pseudo_register_reggroup_p): Likewise.
7735         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
7736         (aarch64_pseudo_read_value): Add V regs for SVE.
7737         (aarch64_pseudo_write_2): Use V0 offset for SVE
7738         (aarch64_pseudo_write): Add V regs for SVE.
7739         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
7740
7741 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
7742
7743         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
7744         (sve_vl_from_vq): Likewise.
7745
7746 2018-06-05  Tom Tromey  <tom@tromey.com>
7747
7748         * cli/cli-cmds.c (show_version): Update.
7749         * top.c (print_gdb_version): Add "interactive" parameter.
7750         Update.
7751         * main.c (captured_main_1): Update.
7752         * top.h (print_gdb_version): Add "interactive" parameter and a
7753         comment.
7754
7755 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
7756
7757         * common/enum-flags.h: Add trailing semicolon to example in
7758         comment.
7759
7760 2018-06-05  Tom Tromey  <tom@tromey.com>
7761
7762         PR cli/12326:
7763         * NEWS: Add entry about pager.
7764         * utils.c (pagination_disabled_for_command): New global.
7765         (prompt_for_continue): Allow "c" response to prompt.
7766         (reinitialize_more_filter): Clear
7767         pagination_disabled_for_command.
7768         (fputs_maybe_filtered): Check pagination_disabled_for_command.
7769
7770 2018-06-04  Tom Tromey  <tom@tromey.com>
7771
7772         * ada-lang.h (ada_lookup_symbol_list): Update.
7773         * ada-lang.c (resolve_subexp): Update.
7774         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
7775         parameter.
7776         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
7777         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
7778         results parameter to std::vector.
7779         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
7780         Update.
7781         * ada-exp.y (block_lookup): Update.
7782         (select_possible_type_sym): Change type of syms.  Remove nsyms
7783         parameter.
7784         (write_var_or_type, write_name_assoc): Update.
7785
7786 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
7787
7788         * windows-nat.c (windows_nat_target::xfer_partial): Return
7789         TARGET_XFER_E_IO if we need to delegate to the target beneath
7790         but BENEATH is NULL.
7791
7792 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
7793
7794         * Makefile.in (config.status): Add configure.nat as a
7795         dependency.
7796
7797 2018-06-04  Tom Tromey  <tom@tromey.com>
7798
7799         * cp-name-parser.y (cpname_state): Add method declarations.
7800         (HANDLE_QUAL): Update.
7801         (cpname_state::d_grab, cpname_state::fill_comp)
7802         (cpname_state::make_operator, cpname_state::make_dtor)
7803         (cpname_state::make_builtin_type, cpname_state::make_name)
7804         (cpname_state::d_qualify, cpname_state::d_int_type)
7805         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
7806         (%union): Move earlier.
7807
7808 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7809
7810         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
7811
7812 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7813
7814         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
7815         (aarch64_pseudo_write_1): Likewise.
7816         (aarch64_pseudo_read_value): Use helper.
7817         (aarch64_pseudo_write): Likewise.
7818
7819 2018-06-04  Pedro Alves  <palves@redhat.com>
7820
7821         * darwin-nat.c (darwin_ops): Delete.
7822         (darwin_attach_pid): Use get_native_target.
7823
7824 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7825
7826         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
7827         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
7828
7829 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7830
7831         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
7832         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
7833         (aarch64_gdbarch_init): Check for SVE.
7834         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
7835
7836 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7837
7838         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
7839         * aarch64-tdep.h (aarch64_read_description): Likewise.
7840         * arch/aarch64.c (aarch64_create_target_description): Likewise.
7841         * arch/aarch64.h (aarch64_create_target_description): Likewise.
7842         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
7843         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
7844         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
7845
7846 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
7847
7848         * value.c (value_fetch_lazy_bitfield): New.
7849         (value_fetch_lazy_memory): New.
7850         (value_fetch_lazy_register): New.
7851         (value_fetch_lazy): Factor out to smaller functions.
7852
7853 2018-06-01  Tom Tromey  <tom@tromey.com>
7854
7855         * cp-name-parser.y (backslashable, represented): Now const.
7856
7857 2018-06-01  Tom Tromey  <tom@tromey.com>
7858
7859         * cp-name-parser.y: Include parser-defs.h.
7860         (parser_fprintf): Remove declaration.
7861
7862 2018-06-01  Tom Tromey  <tom@tromey.com>
7863
7864         * cp-name-parser.y: Use %pure-parser, %lex-param, and
7865         %parse-param.
7866         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
7867         (global_result): Remove globals.
7868         (struct cpname_state): New.
7869         (yyparse): Don't declare.
7870         (yylex, yyerror): Move declarations after %union.
7871         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
7872         (make_name): Add state parameter.
7873         Update all callers.
7874         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
7875         parameter.
7876         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
7877         Update.
7878         (yylex): Add lvalp, state parameters.
7879         (yyerror): Add state parameter.
7880         (cp_demangled_name_to_comp): Update.
7881
7882 2018-06-01  Tom Tromey  <tom@tromey.com>
7883
7884         * cp-name-parser.y (parser_fprintf): Declare.
7885         (GDB_YY_REMAP_PREFIX): Define.
7886         Include yy-remap.h.  Don't redefine yy* identifiers.
7887
7888 2018-06-01  Tom Tromey  <tom@tromey.com>
7889
7890         * python/py-type.c (typy_legacy_template_argument): Update.
7891         * cp-support.h (cp_demangled_name_to_comp): Update.
7892         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
7893         parameter to be a "std::string *".
7894         (main): Update.
7895
7896 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
7897
7898         * ada-lex.l: Include "diagnostics.h" instead of
7899         "common/diagnostics.h".
7900         * unittests/environ-selftests.c: Likewise.
7901         * common/diagnostics.h: Moved to ../include.
7902
7903 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
7904
7905         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
7906         to language_mode_manual while calling breakpoint_re_set_one.
7907
7908 2018-06-01  Tom Tromey  <tom@tromey.com>
7909
7910         * valops.c (value_cast_structs, destructor_name_p): Update.
7911         * symtab.c (gdb_mangle_name): Update.
7912         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
7913         Update.
7914         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
7915         (pascal_object_print_value_fields, pascal_object_print_value):
7916         Update.
7917         * p-typeprint.c (pascal_type_print_derivation_info): Update.
7918         * linespec.c (find_methods): Update.
7919         * gdbtypes.h (type_name_no_tag): Remove.
7920         (type_name_or_error): Rename from type_name_no_tag_or_error.
7921         * gdbtypes.c (type_name_no_tag): Remove.
7922         (type_name_or_error): Rename from type_name_no_tag_or_error.
7923         (lookup_struct_elt_type, check_typedef): Update.
7924         * expprint.c (print_subexp_standard): Update.
7925         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
7926         * d-namespace.c (d_lookup_nested_symbol): Update.
7927         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
7928         (cp_print_class_member): Update.
7929         * cp-namespace.c (cp_lookup_nested_symbol): Update.
7930         * completer.c (add_struct_fields): Update.
7931         * c-typeprint.c (cp_type_print_derivation_info)
7932         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
7933         Update.
7934         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
7935         (ada_prefer_type, ada_is_exception_sym): Update.
7936
7937 2018-06-01  Tom Tromey  <tom@tromey.com>
7938
7939         * valops.c (enum_constant_from_type, value_namespace_elt)
7940         (value_maybe_namespace_elt): Update.
7941         * valarith.c (find_size_for_pointer_math): Update.
7942         * target-descriptions.c (make_gdb_type): Update.
7943         * symmisc.c (print_symbol): Update.
7944         * stabsread.c (define_symbol, read_type)
7945         (complain_about_struct_wipeout, add_undefined_type)
7946         (cleanup_undefined_types_1): Update.
7947         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
7948         (rust_range_type_p, val_print_struct, rust_print_struct_def)
7949         (rust_internal_print_type, rust_composite_type)
7950         (rust_evaluate_funcall, rust_evaluate_subexp)
7951         (rust_inclusive_range_type_p): Update.
7952         * python/py-type.c (typy_get_tag): Update.
7953         * p-typeprint.c (pascal_type_print_base): Update.
7954         * mdebugread.c (parse_symbol, parse_type): Update.
7955         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
7956         Update.
7957         * guile/scm-type.c (gdbscm_type_tag): Update.
7958         * go-lang.c (sixg_string_p): Update.
7959         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
7960         Update.
7961         * gdbtypes.h (struct main_type) <tag_name>: Remove.
7962         (TYPE_TAG_NAME): Remove.
7963         * gdbtypes.c (type_name_no_tag): Simplify.
7964         (check_typedef, check_types_equal, recursive_dump_type)
7965         (copy_type_recursive, arch_composite_type): Update.
7966         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
7967         in summary mode when needed.
7968         * eval.c (evaluate_funcall): Update.
7969         * dwarf2read.c (fixup_go_packaging, read_structure_type)
7970         (process_structure_scope, read_enumeration_type)
7971         (read_namespace_type, read_module_type, determine_prefix): Update.
7972         * cp-support.c (inspect_type): Update.
7973         * coffread.c (process_coff_symbol, decode_base_type): Update.
7974         * c-varobj.c (c_is_path_expr_parent): Update.
7975         * c-typeprint.c (c_type_print_base_struct_union): Update.
7976         (c_type_print_base_1): Update.  Print struct/class/union/enum in
7977         summary when using C language.
7978         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
7979         (gen_maybe_namespace_elt): Update.
7980         * ada-lang.c (ada_type_name): Simplify.
7981         (empty_record, ada_template_to_fixed_record_type_1)
7982         (template_to_static_fixed_type)
7983         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
7984
7985 2018-06-01  Tom Tromey  <tom@tromey.com>
7986
7987         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
7988         c_print_type.
7989         * c-typeprint.c (c_print_type_1): Add "language" parameter.
7990         (c_print_type): Update.
7991         (c_print_type): New overload.
7992         (c_type_print_varspec_prefix, c_type_print_args)
7993         (c_type_print_varspec_suffix, c_print_type_no_offsets)
7994         (c_type_print_base_struct_union, c_type_print_base_1)
7995         (cp_type_print_method_args): Add "language" parameter.
7996         (c_type_print_base): Update.
7997         * c-lang.h (c_print_type): Add new overload.
7998
7999 2018-06-01  Tom Tromey  <tom@tromey.com>
8000
8001         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
8002         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
8003
8004 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
8005
8006         * aarch64-tdep.c (aarch64_sve_register_names): New const
8007         var.
8008         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
8009         (AARCH64_SVE_Z_REGS_NUM): New define.
8010         (AARCH64_SVE_P_REGS_NUM): Likewise.
8011         (AARCH64_SVE_NUM_REGS): Likewise.
8012
8013 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
8014
8015         * nat/linux-ptrace.h [__alpha__]
8016         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
8017         definitions.
8018
8019 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
8020
8021         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
8022         the endianness selected.
8023         * NEWS: Document `set endian auto' mode operation update.
8024
8025 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
8026
8027         * Makefile.in: Add new header.
8028         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
8029         (sve_vl_from_vg): Likewise.
8030         (sve_vq_from_vl): Likewise.
8031         (sve_vl_from_vq): Likewise.
8032         (sve_vq_from_vg): Likewise.
8033         (sve_vg_from_vq): Likewise.
8034         * configure.nat: Add new c file.
8035         * nat/aarch64-sve-linux-ptrace.c: New file.
8036         * nat/aarch64-sve-linux-ptrace.h: New file.
8037
8038 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
8039
8040         * aarch64-linux-nat.c (aarch64_linux_read_description):
8041         Add parmeter zero.
8042         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
8043         Likewise.
8044         * aarch64-tdep.c (tdesc_aarch64_list): Add.
8045         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
8046         (aarch64_gdbarch_init): Add parmeter zero.
8047         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
8048         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
8049         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
8050         parmeter.
8051         * doc/gdb.texinfo: Describe SVE feature
8052         * features/aarch64-sve.c: New file.
8053
8054 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
8055
8056         PR gdb/23210
8057         * gdbarch.sh (significant_addr_bit): Default to zero when
8058         not set by target architecture.
8059         * gdbarch.c: Re-generated.
8060         * utils.c (address_significant): Update.
8061
8062 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
8063
8064         * stack.c (func_command): Remove trailing newline in call to error.
8065
8066 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8067
8068         * regcache.h (regcache_raw_collect): Remove, update callers to
8069         use regcache::raw_collect.
8070         * regcache.c (regcache_raw_collect): Remove.
8071
8072 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8073
8074         * regcache.h (regcache_raw_supply): Remove, update callers to
8075         use detached_regcache::raw_supply.
8076         * regcache.c (regcache_raw_supply): Remove.
8077
8078 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8079
8080         * regcache.h (regcache_cooked_write_part): Remove, update
8081         callers to use regcache::cooked_write_part.
8082         * regcache.c (regcache_cooked_write_part): Remove.
8083
8084 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8085
8086         * regcache.h (regcache_cooked_read_part): Remove, update callers
8087         to use readable_regcache::cooked_read_part.
8088         * regcache.c (regcache_cooked_read_part): Remove.
8089
8090 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8091
8092         * regcache.h (regcache_cooked_read_value): Remove, update
8093         callers to use readable_regcache::cooked_read_value.
8094         * regcache.c (regcache_cooked_read_value): Remove.
8095
8096 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8097
8098         * regcache.h (regcache_cooked_write): Remove, update callers to
8099         use regcache::cooked_write.
8100         * regcache.c (regcache_cooked_write): Remove.
8101
8102 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8103
8104         * regcache.h (regcache_invalidate): Remove, update callers to
8105         use detached_regcache::invalidate instead.
8106         * regcache.c (regcache_invalidate): Remove.
8107
8108 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8109
8110         * regcache.h (regcache_raw_write_part): Remove, update callers
8111         to use regcache::raw_write_part instead.
8112         * regcache.c (regcache_raw_write_part): Remove.
8113
8114 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8115
8116         * regcache.h (regcache_raw_read_part): Remove, update callers to
8117         use readable_regcache::raw_read_part instead.
8118         * regcache.c (regcache_raw_read_part): Remove.
8119
8120 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8121
8122         * regcache.h (regcache_cooked_read): Remove, update callers to
8123         use readable_regcache::cooked_read instead.
8124         * regcache.c (regcache_cooked_read): Remove.
8125
8126 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8127
8128         * regcache.h (regcache_raw_write): Remove, update callers to use
8129         regcache::raw_write instead.
8130         * regcache.c (regcache_raw_write): Remove.
8131
8132 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8133
8134         * regcache.h (regcache_raw_read): Remove, update callers to use
8135         readable_regcache::raw_read instead.
8136         * regcache.c (regcache_raw_read): Remove.
8137
8138 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8139
8140         * regcache.h (regcache_raw_update): Remove, update callers to
8141         use readable_regcache::raw_update instead.
8142         * regcache.c (regcache_raw_update): Remove.
8143
8144 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8145
8146         * regcache.h (regcache_register_status): Remove, update callers
8147         to use reg_buffer::get_register_status directly instead.
8148         * regcache.c (regcache_register_status): Remove.
8149
8150 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8151
8152         * regcache.h (regcache_get_ptid): Remove, update all callers to
8153         call regcache::ptid instead.
8154         * regcache.c (regcache_get_ptid): Remove.
8155
8156 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8157
8158         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
8159
8160 2018-05-30  Pedro Alves  <palves@redhat.com>
8161
8162         * common/common-exceptions.h (exception_rethrow): Use
8163         ATTRIBUTE_NORETURN.
8164
8165 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
8166
8167         * breakpoint.c (print_solib_event, check_status_catch_solib):
8168         Remove struct keyword in range-based for loops.
8169         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
8170         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
8171         Likewise.
8172         * linespec.c (find_superclass_methods, search_minsyms_for_name):
8173         Likewise.
8174         * symfile.c (addr_info_make_relative): Likewise.
8175         * thread.c (value_in_thread_stack_temporaries): Likewise.
8176
8177 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
8178
8179         PR gdb/16841
8180         * valops.c (value_struct_elt_for_reference): Call check_typedef on
8181         aggregate type to get its real type before accessing it.
8182
8183 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
8184
8185         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
8186         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
8187         * coff-pe-read.c (add_pe_forwarded_sym): Replace
8188         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
8189         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
8190         * jit.c (jit_breakpoint_re_set_internal): Likewise.
8191         * printcmd.c (info_address_command): Likewise.
8192
8193 2018-05-29  Tom Tromey  <tom@tromey.com>
8194
8195         * windows-nat.c (handle_exception): Update fall-through comment.
8196
8197 2018-05-29  Tom Tromey  <tom@tromey.com>
8198
8199         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
8200         (struct program_space) <added_solibs>: Now a std::vector.
8201         * breakpoint.c (print_solib_event): Update.
8202         (check_status_catch_solib): Update.
8203         * progspace.c (clear_program_space_solib_cache): Update.
8204         * solib.c (update_solib_list): Update.
8205
8206 2018-05-29  Tom Tromey  <tom@tromey.com>
8207
8208         * python/py-type.c (typy_richcompare): Update.
8209         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
8210         * gdbtypes.h (types_deeply_equal): Return bool.
8211         (types_equal): Likewise.
8212         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
8213         declare VEC.
8214         (check_types_equal): Change worklist to std::vector.  Return
8215         bool.
8216         (struct type_equality_entry): Add constructor.
8217         (compare_maybe_null_strings): Return bool.
8218         (check_types_worklist): Return bool.  Change worklist to
8219         std::vector.
8220         (types_deeply_equal): Use std::vector.
8221         (types_equal): Return bool.
8222         (compare_maybe_null_strings): Simplify.
8223
8224 2018-05-29  Tom Tromey  <tom@tromey.com>
8225
8226         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
8227
8228 2018-05-29  Tom Tromey  <tom@tromey.com>
8229
8230         * objc-lang.h: Don't include cp-support.h.
8231         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
8232         declare VEC.
8233
8234 2018-05-27  Tom Tromey  <tom@tromey.com>
8235
8236         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
8237
8238 2018-05-25  Tom Tromey  <tom@tromey.com>
8239
8240         * value.c (value::location): Initialize.
8241
8242 2018-05-25  Tom Tromey  <tom@tromey.com>
8243
8244         * dbxread.c (init_bincl_list): Remove.
8245         (bincl_list): Now a std::vector.
8246         (bincls_allocated, next_bincl): Remove.
8247         (free_bincl_list, do_free_bincl_list_cleanup)
8248         (make_cleanup_free_bincl_list): Remove.
8249         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
8250         unique_xmalloc_ptr.
8251         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
8252         (struct header_file_location): Add constructor.
8253         (add_bincl_to_list): Remove.
8254
8255 2018-05-25  Tom Tromey  <tom@tromey.com>
8256
8257         * tui/tui.c (tui_enable): Update.
8258         * mi/mi-interp.c (mi_interp::init): Update.
8259         * interps.h (class interp) <name>: New method.
8260         <m_name>: Rename from name.
8261         (~scoped_restore_interp): Update.
8262         * interps.c (interp::interp): Update.
8263         (interp_add, interp_set, interp_lookup_existing)
8264         (current_interp_named_p): Update.
8265
8266 2018-05-25  Tom Tromey  <tom@tromey.com>
8267
8268         * interps.c (interp_name): Remove.
8269         * mi/mi-interp.c (mi_interp::init): Update.
8270         * interps.h (interp_name): Remove.
8271         (~scoped_restore_interp): Update.
8272         * tui/tui.c (tui_enable): Update.
8273
8274 2018-05-25  Tom Tromey  <tom@tromey.com>
8275
8276         * utils.c (fputs_maybe_filtered): Update.
8277         * linespec.c (decode_line_full): Update.
8278         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
8279         (mi_print_breakpoint_for_event, mi_solib_loaded)
8280         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
8281         (mi_user_selected_context_changed): Update.
8282         * mi/mi-main.c (mi_execute_command): Update.
8283         * cli/cli-script.c (execute_control_command): Update.
8284         * python/python.c (execute_gdb_command): Update.
8285         * solib.c (info_sharedlibrary_command): Update.
8286         * interps.c (interp_ui_out): Remove.
8287         * interps.h (interp_ui_out): Remove.
8288
8289 2018-05-25  Tom Tromey  <tom@tromey.com>
8290
8291         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
8292         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
8293         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
8294
8295 2018-05-25  Tom Tromey  <tom@tromey.com>
8296
8297         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
8298         * interps.c (interp_exec): Use scoped_restore.
8299
8300 2018-05-25  Tom Tromey  <tom@tromey.com>
8301
8302         * remote.c (remote_target::remote_file_get): Use
8303         gdb::byte_vector.
8304         (remote_target::remote_file_put): Likewise.
8305
8306 2018-05-25  Tom Tromey  <tom@tromey.com>
8307
8308         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
8309         a std::string.
8310         (get_pe_section_index, add_pe_exported_sym): Update.
8311         (read_pe_exported_syms): Use gdb::def_vector.
8312
8313 2018-05-25  Tom Tromey  <tom@tromey.com>
8314
8315         * frame.c (remove_prev_frame): Remove.
8316         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
8317
8318 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
8319
8320         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
8321         Remove prototypes.
8322         * mips-linux-nat.c (supply_fpregset): Always call
8323         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
8324         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
8325         `mips_fill_fpregset'.
8326         * mips-linux-tdep.c (mips_supply_fpregset)
8327         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
8328         (mips_fill_fpregset_wrapper): Remove functions.
8329         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
8330         (mips_linux_fpregset): Remove variable.
8331         (mips_linux_iterate_over_regset_sections): Use
8332         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
8333         (mips_linux_o32_sigframe_init): Remove comment.
8334
8335 2018-05-25  Pedro Alves  <palves@redhat.com>
8336
8337         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
8338         (struct readahead_cache, struct packet_reg, struct
8339         remote_arch_state, class remote_state): Move higher up in the
8340         file.
8341         (remote_target::m_remote_state): Now an object instead of a pointer.
8342         (remote_target::get_remote_state): Adjust.
8343
8344 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
8345
8346         * stack.c (select_and_print_frame): Delete.
8347         (struct function_bounds): Move struct within function.
8348         (func_command): Most content moved into new function
8349         find_frame_for_function, use new function, print result, add
8350         function comment.
8351         (find_frame_for_function): New function, now returns a result.
8352
8353 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8354
8355         * stack.c (iterate_over_block_arg_vars): Fix comment.
8356         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
8357
8358 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
8359
8360         PR gdb/23203
8361         * frame.c
8362         (scoped_restore_selected_frame::scoped_restore_selected_frame):
8363         Define.
8364         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
8365         Define.
8366         * frame.h (class scoped_restore_selected_frame): New class.
8367         * stack.c (print_frame_local_vars): Remove catching and rethrowing
8368         of any exception, use scoped_restore_selected_frame to restore the
8369         frame instead.
8370
8371 2018-05-24  Pedro Alves  <palves@redhat.com>
8372
8373         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
8374         override.
8375
8376 2018-05-23  Tom Tromey  <tom@tromey.com>
8377
8378         * complaints.c (struct complaints): Remove.
8379         (symfile_complaint_book): Remove.
8380         (series): New global.
8381         (complaint_internal): Update.
8382         (clear_complaints): Update.
8383
8384 2018-05-23  Tom Tromey  <tom@tromey.com>
8385
8386         * complaints.c (counters): New global.
8387         (struct complain): Remove.
8388         (struct complaints) <root>: Remove.
8389         (complaint_sentinel): Remove.
8390         (symfile_complaint_book): Update.
8391         (find_complaint) Remove.
8392         (complaint_internal, clear_complaints): Update.
8393
8394 2018-05-23  Tom Tromey  <tom@tromey.com>
8395
8396         * complaints.c (struct complain) <file, line>: Remove.
8397         (find_complaint): Remove file, line parameters.
8398         (complaint_internal): Update.
8399
8400 2018-05-23  Tom Tromey  <tom@tromey.com>
8401
8402         * complaints.c (vcomplaint): Remove.
8403         (complaint_internal) Merge in contents of vcomplaint.
8404
8405 2018-05-23  Tom Tromey  <tom@tromey.com>
8406
8407         * complaints.c (struct complaints) <explanation>: Remove.
8408         (symfile_explanations): Remove.
8409         (symfile_complaint_book): Update.
8410         (vcomplaint): Update.
8411         (struct explanation): Remove.
8412
8413 2018-05-23  Tom Tromey  <tom@tromey.com>
8414
8415         * complaints.c (symfile_complaints): Remove.
8416         (complaint_internal): Remove "complaints" parameter.
8417         (clear_complaints, vcomplaint): Remove "c" parameter.
8418         (get_complaints): Remove.
8419         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
8420         (dwarf2_debug_line_missing_file_complaint)
8421         (dwarf2_debug_line_missing_end_sequence_complaint)
8422         (dwarf2_complex_location_expr_complaint)
8423         (dwarf2_const_value_length_mismatch_complaint)
8424         (dwarf2_section_buffer_overflow_complaint)
8425         (dwarf2_macro_malformed_definition_complaint)
8426         (dwarf2_invalid_attrib_class_complaint)
8427         (create_addrmap_from_index, dw2_symtab_iter_next)
8428         (dw2_expand_marked_cus)
8429         (dw2_debug_names_iterator::find_vec_in_debug_names)
8430         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
8431         (create_debug_type_hash_table, init_cutu_and_read_dies)
8432         (partial_die_parent_scope, add_partial_enumeration)
8433         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
8434         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
8435         (read_import_statement, read_file_scope, create_dwo_cu_reader)
8436         (create_cus_hash_table, create_dwp_hash_table)
8437         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
8438         (dwarf2_rnglists_process, dwarf2_ranges_process)
8439         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
8440         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
8441         (handle_struct_member_die, process_structure_scope)
8442         (read_array_type, read_common_block, read_module_type)
8443         (read_tag_pointer_type, read_typedef, read_base_type)
8444         (read_subrange_type, load_partial_dies, partial_die_info::read)
8445         (partial_die_info::read, partial_die_info::read)
8446         (partial_die_info::read, read_checked_initial_length_and_offset)
8447         (dwarf2_string_attr, read_formatted_entries)
8448         (dwarf_decode_line_header)
8449         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
8450         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
8451         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
8452         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
8453         (get_signatured_type, get_DW_AT_signature_type)
8454         (decode_locdesc, file_file_name, consume_improper_spaces)
8455         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
8456         (dwarf_decode_macro_bytes, dwarf_decode_macros)
8457         (dwarf2_symbol_mark_computed, set_die_type)
8458         (read_attribute_value): Update.
8459         * stap-probe.c (handle_stap_probe, get_stap_base_address):
8460         Update.
8461         * dbxread.c (unknown_symtype_complaint)
8462         (lbrac_mismatch_complaint, repeated_header_complaint)
8463         (set_namestring, function_outside_compilation_unit_complaint)
8464         (read_dbx_symtab, process_one_symbol): Update.
8465         * gdbtypes.c (stub_noname_complaint): Update.
8466         * windows-nat.c (handle_unload_dll): Update.
8467         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
8468         (decode_base_type): Update.
8469         * xcoffread.c (bf_notfound_complaint, ef_complaint)
8470         (eb_complaint, record_include_begin, record_include_end)
8471         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
8472         (process_xcoff_symbol, read_symbol)
8473         (function_outside_compilation_unit_complaint)
8474         (scan_xcoff_symtab): Update.
8475         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
8476         * buildsym.c (finish_block_internal, make_blockvector)
8477         (end_symtab_get_static_block, augment_type_symtab): Update.
8478         * dtrace-probe.c (dtrace_process_dof)
8479         (dtrace_static_probe_ops::get_probes): Update.
8480         * complaints.h (struct complaint): Don't declare.
8481         (symfile_complaints): Remove.
8482         (complaint_internal): Remove "complaints" parameter.
8483         (complaint): Likewise.
8484         (clear_complaints): Likewise.
8485         * symfile.c (syms_from_objfile_1, finish_new_objfile)
8486         (reread_symbols): Update.
8487         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
8488         (dwarf2_frame_cache, decode_frame_entry): Update.
8489         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
8490         * objc-lang.c (lookup_objc_class, lookup_child_selector)
8491         (info_selectors_command): Update.
8492         * macrotab.c (macro_include, check_for_redefinition)
8493         (macro_undef): Update.
8494         * objfiles.c (filter_overlapping_sections): Update.
8495         * stabsread.c (invalid_cpp_abbrev_complaint)
8496         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
8497         (define_symbol, error_type, read_type, rs6000_builtin_type)
8498         (stabs_method_name_from_physname, read_member_functions)
8499         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
8500         (attach_fields_to_type, complain_about_struct_wipeout)
8501         (read_range_type, read_args, common_block_start)
8502         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
8503         Update.
8504         * mdebugread.c (index_complaint, unknown_ext_complaint)
8505         (basic_type_complaint, bad_tag_guess_complaint)
8506         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
8507         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
8508         (parse_procedure, parse_lines)
8509         (function_outside_compilation_unit_complaint)
8510         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
8511         (bad_tag_guess_complaint, reg_value_complaint): Update.
8512         * cp-support.c (demangled_name_complaint): Update.
8513         * macroscope.c (sal_macro_scope): Update.
8514         * dwarf-index-write.c (class debug_names): Update.
8515
8516 2018-05-23  Tom Tromey  <tom@tromey.com>
8517
8518         * complaints.c (clear_complaints): Remove "noisy" parameter.
8519         * complaints.h (clear_complaints): Update.
8520         * symfile.c (syms_from_objfile_1, finish_new_objfile)
8521         (reread_symbols): Update.
8522
8523 2018-05-23  Tom Tromey  <tom@tromey.com>
8524
8525         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
8526         SUBSEQUENT_MESSAGE.
8527         (vcomplaint, clear_complaints): Update.
8528         (symfile_explanations): Remove some messages.
8529
8530 2018-05-23  Tom Tromey  <tom@tromey.com>
8531
8532         * complaints.c (internal_complaint): Remove.
8533         * complaints.h (internal_complaint): Remove.
8534
8535 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
8536
8537         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
8538
8539 2018-05-22  Pedro Alves  <palves@redhat.com>
8540
8541         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
8542         (remote_fileio_badfd, remote_fileio_return_errno)
8543         (remote_fileio_return_success, remote_fileio_func_open)
8544         (remote_fileio_func_open, remote_fileio_func_close)
8545         (remote_fileio_func_read, remote_fileio_func_write)
8546         (remote_fileio_func_lseek, remote_fileio_func_rename)
8547         (remote_fileio_func_unlink, remote_fileio_func_stat)
8548         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
8549         (remote_fileio_func_isatty, remote_fileio_func_system): Add
8550         remote_target parameter.
8551         (remote_fio_func_map) <func>: Add remote_target parameter.
8552         (do_remote_fileio_request, remote_fileio_request):
8553         * remote-fileio.h (remote_fileio_request):
8554         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
8555         remote_target parameter.
8556         (remote_notif_process, handle_notification): Adjust to pass down
8557         the remote.
8558         (remote_notif_state_allocate): Add remote_target parameter.  Save
8559         it.
8560         * remote-notif.h (struct remote_target): Forward declare.
8561         (struct notif_client) <parse, ack, can_get_pending_events>: Add
8562         remote_target parameter.
8563         (struct remote_notif_state) <remote>: New field.
8564         (remote_notif_ack, remote_notif_parse): Add remote_target
8565         parameter.
8566         (remote_notif_state_allocate, remote_notif_state_allocate): Add
8567         remote_target parameter.
8568         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
8569         (threads_listing_context, rmt_thread_action, protocol_feature)
8570         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
8571         (packet_result, struct threads_listing_context, remote_state):
8572         Move definitions and declarations higher up.
8573         (remote_target) <~remote_target>: Declare.
8574         (remote_download_command_source, remote_file_put, remote_file_get)
8575         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
8576         (remote_hostio_pread_vFile, remote_hostio_send_command)
8577         (remote_hostio_set_filesystem, remote_hostio_open)
8578         (remote_hostio_close, remote_hostio_unlink, remote_state)
8579         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
8580         (get_memory_write_packet_size, get_memory_read_packet_size)
8581         (append_pending_thread_resumptions, remote_detach_1)
8582         (append_resumption, remote_resume_with_vcont)
8583         (add_current_inferior_and_thread, wait_ns, wait_as)
8584         (process_stop_reply, remote_notice_new_inferior)
8585         (process_initial_stop_replies, remote_add_thread)
8586         (btrace_sync_conf, remote_btrace_maybe_reopen)
8587         (remove_new_fork_children, kill_new_fork_children)
8588         (discard_pending_stop_replies, stop_reply_queue_length)
8589         (check_pending_events_prevent_wildcard_vcont)
8590         (discard_pending_stop_replies_in_queue, stop_reply)
8591         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
8592         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
8593         (remote_interrupt_as, remote_interrupt_ns)
8594         (remote_get_noisy_reply, remote_query_attached)
8595         (remote_add_inferior, remote_current_thread, get_current_thread)
8596         (set_thread, set_general_thread, set_continue_thread)
8597         (set_general_process, write_ptid)
8598         (remote_unpack_thread_info_response, remote_get_threadinfo)
8599         (parse_threadlist_response, remote_get_threadlist)
8600         (remote_threadlist_iterator, remote_get_threads_with_ql)
8601         (remote_get_threads_with_qxfer)
8602         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
8603         (get_offsets, remote_check_symbols, remote_supported_packet)
8604         (remote_query_supported, remote_packet_size)
8605         (remote_serial_quit_handler, remote_detach_pid)
8606         (remote_vcont_probe, remote_resume_with_hc)
8607         (send_interrupt_sequence, interrupt_query)
8608         (remote_notif_get_pending_events, fetch_register_using_p)
8609         (send_g_packet, process_g_packet, fetch_registers_using_g)
8610         (store_register_using_P, store_registers_using_G)
8611         (set_remote_traceframe, check_binary_download)
8612         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
8613         (remote_xfer_live_readonly_partial, remote_read_bytes)
8614         (remote_send_printf, remote_flash_write, readchar)
8615         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
8616         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
8617         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
8618         (extended_remote_disable_randomization, extended_remote_run)
8619         (send_environment_packet, extended_remote_environment_support)
8620         (extended_remote_set_inferior_cwd, remote_write_qxfer)
8621         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
8622         (packet_command): Now methods of ...
8623         (remote_target): ... this class.
8624         (m_remote_state) <remote_target>: New field.
8625         (struct remote_state) <stop_reply_queue,
8626         remote_async_inferior_event_token, wait_forever_enabled_p>: New
8627         fields.
8628         (remote_state::remote_state): Allocate stop_reply_queue.
8629         (remote_state): Delete global.
8630         (get_remote_state_raw): Delete.
8631         (remote_target::get_remote_state): Allocate m_remote_state on
8632         demand.
8633         (get_current_remote_target): New.
8634         (remote_ops, extended_remote_ops): Delete.
8635         (wait_forever_enabled_p, remote_async_inferior_event_token):
8636         Delete, moved to struct remote_state.
8637         (remote_target::close): Delete self.  Destruction bits split to
8638         ...
8639         (remote_target::~remote_target): ... this.
8640         (show_memory_packet_size): Adjust to use
8641         get_current_remote_target.
8642         (struct protocol_feature) <func>: Add remote_target parameter.
8643         All callers adjusted.
8644         (curr_quit_handler_target): New.
8645         (remote_serial_quit_handler): Reimplement.
8646         (remote_target::open_1): Adjust to use get_current_remote_target.
8647         Heap-allocate remote_target/extended_remote_target instances.
8648         (vcont_builder::vcont_builder): Add remote_target parameter, and
8649         save it in m_remote.  All callers adjusted.
8650         (vcont_builder::m_remote): New field.
8651         (vcont_builder::restart, vcont_builder::flush)
8652         (vcont_builder::push_action): Use it.
8653         (remote_target::commit_resume): Use it.
8654         (struct queue_iter_param) <remote>: New field.
8655         (remote_target::remove_new_fork_children): Fill in 'remote' field.
8656         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
8657         (check_pending_event_prevents_wildcard_vcont_callback)
8658         (remote_target::check_pending_events_prevent_wildcard_vcont)
8659         (remote_target::discard_pending_stop_replies)
8660         (remote_target::discard_pending_stop_replies_in_queue)
8661         (remote_target::remote_notif_remove_queued_reply): Fill in
8662         'remote' field.
8663         (remote_notif_get_pending_events): New.
8664         (remote_target::readchar, remote_target::remote_serial_write):
8665         Save/restore curr_quit_handler_target.
8666         (putpkt): New.
8667         (kill_new_fork_children): Fill in 'remote' field.
8668         (packet_command): Use get_current_remote_target, defer to
8669         remote_target method of same name.
8670         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
8671         parameter, and save it in m_remote.  All callers adjusted.
8672         (scoped_remote_fd::release): Use m_remote.
8673         (scoped_remote_fd::m_remote): New field.
8674         (remote_file_put, remote_file_get, remote_file_delete): Use
8675         get_current_remote_target, defer to remote_target method of same
8676         name.
8677         (remote_btrace_reset): Add remote_state paremeter.  Update all
8678         callers.
8679         (remote_async_inferior_event_handler). Pass down 'data'.
8680         (remote_new_objfile): Use get_current_remote_target.
8681         (remote_target::vcont_r_supported): New.
8682         (set_range_stepping): Use get_current_remote_target and
8683         remote_target::vcont_r_supported.
8684         (_initialize_remote): Don't allocate 'remote_state' and
8685         'stop_reply_queue' globals.
8686         * remote.h (struct remote_target): Forward declare.
8687         (getpkt, putpkt, remote_notif_get_pending_events): Add
8688         'remote_target' parameter.
8689
8690 2018-05-22  Pedro Alves  <palves@redhat.com>
8691
8692         * remote.c (vcont_builder): Now a class.  Make all data members
8693         private.
8694         (vcont_builder) <vcont_builder, restart, flush, push_action>:
8695         Declare methods.
8696         (vcont_builder_restart): Rename to ...
8697         (vcont_builder::restart): ... this.
8698         (vcont_builder_flush): Rename to ...
8699         (vcont_builder::flush): ... this.
8700         (vcont_builder_push_action): Rename to ...
8701         (vcont_builder::push_action): ... this.
8702         (remote_target::commit_resume): Adjust.
8703
8704 2018-05-22  Pedro Alves  <palves@redhat.com>
8705
8706         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
8707         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
8708         (get_fixed_memory_packet_size): New.
8709         (get_memory_packet_size): Use it.
8710         (set_memory_packet_size): Don't override the config size with
8711         DEFAULT_MAX_MEMORY_PACKET_SIZE.
8712         (show_memory_packet_size): Use get_fixed_memory_packet_size.
8713         Don't refer to get_memory_packet_size if not connected to a remote
8714         target.  Show "(default)" if configured size is 0.
8715
8716 2018-05-22  Pedro Alves  <palves@redhat.com>
8717
8718         * remote.c (remote_target::mourn_inferior): Move
8719         discard_pending_stop_replies call here from ...
8720         (_initialize_remote): ... here.
8721
8722 2018-05-22  Pedro Alves  <palves@redhat.com>
8723
8724         * remote.c (compare_section_command): Remove set_general_process
8725         call.
8726
8727 2018-05-22  Pedro Alves  <palves@redhat.com>
8728
8729         * remote.c (struct packet_reg, struct remote_arch_state):
8730         Move higher up in the file.
8731         (remote_state) <m_arch_states>: Store remote_arch_state values
8732         instead of remote_arch_state pointers.
8733         (remote_state::get_remote_arch_state): Adjust.
8734
8735 2018-05-22  Pedro Alves  <palves@redhat.com>
8736
8737         * remote.c: Include <unordered_map>.
8738         (remote_state): Now a class.
8739         (remote_state) <get_remote_arch_state>: Declare method.
8740         <get_remote_arch_state>: New field.
8741         (remote_arch_state) <remote_arch_state>: Declare ctor.
8742         <regs>: Now a unique_ptr.
8743         (remote_gdbarch_data_handle): Delete.
8744         (get_remote_arch_state): Delete.
8745         (remote_state::get_remote_arch_state): New.
8746         (get_remote_state): Adjust to call remote_state's
8747         get_remote_arch_state method.
8748         (init_remote_state): Delete, bits factored out to ...
8749         (remote_arch_state::remote_arch_state): ... this new method.
8750         (get_remote_packet_size, get_memory_packet_size)
8751         (process_g_packet, remote_target::fetch_registers)
8752         (remote_target::prepare_to_store, store_registers_using_G)
8753         (remote_target::store_registers, remote_target::get_trace_status):
8754         Adjust to call remote_state's method.
8755         (_initialize_remote): Remove reference to
8756         remote_gdbarch_data_handle.
8757
8758 2018-05-22  Pedro Alves  <palves@redhat.com>
8759
8760         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
8761         pread>: New method declarations.
8762         (remote_target::open_1): Adjust.
8763         (readahead_cache_invalidate): Rename to ...
8764         (readahead_cache::invalidate): ... this, and adjust to be a class
8765         method.
8766         (readahead_cache_invalidate_fd): Rename to ...
8767         (readahead_cache::invalidate_fd): ... this, and adjust to be a
8768         class method.
8769         (remote_hostio_pwrite): Adjust.
8770         (remote_hostio_pread_from_cache): Rename to ...
8771         (readahead_cache::pread): ... this, and adjust to be a class
8772         method.
8773         (remote_hostio_close): Adjust.
8774
8775 2018-05-22  Pedro Alves  <palves@redhat.com>
8776
8777         * remote.c (remote_hostio_close_cleanup): Delete.
8778         (class scoped_remote_fd): New.
8779         (remote_file_put, remote_file_get): Use it.
8780
8781 2018-05-22  Pedro Alves  <palves@redhat.com>
8782
8783         (struct vCont_action_support): Use bool and initialize all fields.
8784         (struct readahead_cache): Initialize all fields.
8785         (remote_state): Use bool and initialize all fields.
8786         (remote_state::remote_state, remote_state::~remote_state): New.
8787         (new_remote_state): Delete.
8788         (_initialize_remote): Use new to allocate remote_state.
8789
8790 2018-05-22  Pedro Alves  <palves@redhat.com>
8791             張俊芝  <zjz@zjz.name>
8792
8793         PR gdb/22973
8794         * c-exp.y: Include "c-support.h".
8795         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
8796         of tolower.  Use c_ident_is_alpha to scan names.
8797         * c-lang.c: Include "c-support.h".
8798         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
8799         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
8800         * c-support.h: New file, with bits factored out from ...
8801         * cp-name-parser.y: ... this file.
8802         Include "c-support.h".
8803         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
8804         c-support.h and renamed.
8805         (symbol_end, yylex): Adjust.
8806
8807 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8808
8809         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
8810         parameter type to CORE_ADDR.
8811         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
8812         parameter type in declaration to CORE_ADDR.
8813         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
8814         target_auxv_search to get AT_HWCAP and use the result to get the
8815         target description.
8816         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
8817         to CORE_ADDR. Remove the cast of the return value to unsigned
8818         long. Fix error predicate of target_auxv_search.
8819         (ppc_linux_nat_target::read_description): Change the type of the
8820         hwcap variable to CORE_ADDR.
8821
8822 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8823
8824         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
8825         if the size of fpscr is larger than 32 bits.
8826
8827 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8828
8829         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
8830         (ppc32_linux_vsxregmap): New global.
8831         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
8832         regcache_supply_regset, and regcache_collect_regset.
8833         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
8834         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
8835         (fetch_vsx_register, store_vsx_register): Remove.
8836         (fetch_vsx_registers): Add regno parameter. Get regset using
8837         ppc_linux_vsxregset. Use regset to supply registers.
8838         (store_vsx_registers): Add regno parameter. Get regset using
8839         ppc_linux_vsxregset. Use regset to collect registers.
8840         (fetch_register): Call fetch_vsx_registers instead of
8841         fetch_vsx_register.
8842         (store_register): Call store_vsx_registers instead of
8843         store_vsx_register.
8844         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
8845         new regno parameter.
8846         (store_ppc_registers): Call store_vsx_registers with -1 for the
8847         new regno parameter.
8848         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
8849         (ppc_collect_vsxregset): Remove.
8850
8851 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8852
8853         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
8854         offset fields.
8855         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
8856         for vector register offset fields.
8857         (ppc64_fbsd_reg_offsets): Likewise.
8858         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
8859         to vector register offset fields.
8860         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
8861         to vector register offset fields.
8862         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
8863         vector register offset fields.
8864         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
8865         initializers for vector register offset fields.
8866         (rs6000_aix64_reg_offsets): Likewise.
8867         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
8868         (ppc_supply_vrregset): Remove.
8869         (ppc_collect_vrregset): Remove.
8870         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
8871         (ppc_linux_vrregset) : New function.
8872         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
8873         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
8874         (ppc32_linux_vrregset): Remove.
8875         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
8876         and use result instead of ppc32_linux_vrregset.
8877         (ppc32_linux_reg_offsets): Remove initializers for vector register
8878         offset fields.
8879         (ppc64_linux_reg_offsets): Likewise.
8880         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
8881         * ppc-linux-nat.c: Include regset.h.
8882         (gdb_vrregset_t): Adjust comment to account for little-endian
8883         mode.
8884         (supply_vrregset, fill_vrregset): Remove.
8885         (fetch_altivec_register, store_altivec_register): Remove.
8886         (fetch_altivec_registers): Add regno parameter. Get regset using
8887         ppc_linux_vrregset. Use regset to supply registers.
8888         (store_altivec_registers): Add regno parameter. Get regset using
8889         ppc_linux_vrregset. Use regset to collect registers.
8890         (fetch_register): Call fetch_altivec_registers instead of
8891         fetch_altivec_register.
8892         (store_register): Call store_altivec_registers instead of
8893         store_altivec_register.
8894         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
8895         the new regno parameter.
8896         (store_ppc_registers): Call store_altivec_registers with -1 for
8897         the new regno parameter.
8898
8899 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8900
8901         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
8902         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
8903         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
8904         (gdb_vrregset_t): Change array type size to
8905         PPC_LINUX_SIZEOF_VRREGSET.
8906         (gdb_vsxregset_t): Change array type size to
8907         PPC_LINUX_SIZEOF_VSXREGSET.
8908         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
8909         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
8910         PPC_LINUX_SIZEOF_VSXREGSET.
8911
8912 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8913
8914         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
8915         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
8916         nat/ppc-linux.c.
8917         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
8918         ppc_linux_target_wordsize with tid.
8919         (ppc_linux_nat_target::read_description): Call ppc_linux_target
8920         wordsize with tid.
8921         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
8922         (ppc64_64bit_inferior_p): Add static and inline specifiers.
8923         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
8924         tid parameter. Remove static specifier.
8925         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
8926         (ppc_linux_target_wordsize): New declaration.
8927
8928 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8929
8930         * arch/ppc-linux-common.c: New file.
8931         * arch/ppc-linux-common.h: New file.
8932         * arch/ppc-linux-tdesc.h: New file.
8933         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
8934         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
8935         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
8936         arch/ppc-linux-tdesc.h.
8937         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
8938         arch/ppc-linux-tdesc.h.
8939         (ppc_linux_nat_target::read_description): Remove target
8940         description matching code. Fill a ppc_linux_features struct and
8941         call ppc_linux_match_description with it. Move comment about ISA
8942         2.05 to ppc-linux-common.c.
8943         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
8944         arch/ppc-linux-tdesc.h.
8945         (ppc_linux_core_read_description): Remove target description
8946         matching code. Fill a ppc_linux_features struct and call
8947         ppc_linux_match_description with it.
8948         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
8949         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
8950         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
8951         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
8952         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
8953         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
8954         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
8955         (tdesc_powerpc_e500l): Remove.
8956
8957 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
8958
8959         * ada-lang.c (catch_assert_command): Pass empty string instead
8960         of NULL for excep_string argument.
8961
8962 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
8963
8964         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
8965         the width of the requested register exceeds the width of the
8966         `ptrace' data type.
8967
8968 2018-05-21  Tom Tromey  <tom@tromey.com>
8969
8970         * printcmd.c (output_command): Remove.
8971         (output_command_const): Rename to output_command.
8972         * valprint.h (output_command): Rename from output_command_const.
8973         * tracepoint.c (trace_dump_actions): Call output_command.
8974
8975 2018-05-21  Tom Tromey  <tom@tromey.com>
8976
8977         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
8978         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
8979         * ada-lang.h (create_ada_exception_catchpoint): Update.
8980         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
8981         std::string.
8982         (create_excep_cond_exprs, ~ada_catchpoint)
8983         (should_stop_exception, print_one_exception)
8984         (print_mention_exception, print_recreate_exception): Update.
8985         (ada_get_next_arg): Remove.
8986         (catch_ada_exception_command_split): Use std::string.  Change type
8987         of "excep_string", "cond_string".
8988         (catch_ada_exception_command): Update.
8989         (create_ada_exception_catchpoint): Change type of excep_string.
8990         (ada_exception_sal): Remove excep_string parameter.
8991         (~ada_catchpoint): Remove.
8992
8993 2018-05-21  Tom Tromey  <tom@tromey.com>
8994
8995         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
8996         cleanup.
8997
8998 2018-05-21  Tom Tromey  <tom@tromey.com>
8999
9000         * ada-lang.c (ada_exception_message_1, ada_exception_message):
9001         Return unique_xmalloc_ptr.
9002         (print_it_exception): Update.
9003
9004 2018-05-21  Tom Tromey  <tom@tromey.com>
9005
9006         * tracepoint.c (trace_dump_actions): Use std::string.
9007
9008 2018-05-21  Tom Tromey  <tom@tromey.com>
9009
9010         * symfile.c (reread_symbols): Use std::string for original_name.
9011
9012 2018-05-21  Tom Tromey  <tom@tromey.com>
9013
9014         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
9015         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
9016         constructor.
9017
9018 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
9019
9020         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
9021         instance to...
9022         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
9023         * objfiles.c (get_objfile_bfd_data): Allocate
9024         objfile_per_bfd_storage with obstack_new when allocating on
9025         obstack.
9026
9027 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
9028
9029         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
9030         OBSTACK_ZALLOC.
9031         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
9032         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
9033         * mdebugread.c (mdebug_build_psymtabs): Likewise.
9034         (add_pending): Likewise.
9035         (parse_symbol): Likewise.
9036         (parse_partial_symbols): Likewise.
9037         (psymtab_to_symtab_1): Likewise.
9038         (new_psymtab): Likewise.
9039         (elfmdebug_build_psymtabs): Likewise.
9040         * minsyms.c (terminate_minimal_symbol_table): Likewise.
9041         * objfiles.c (get_objfile_bfd_data): Likewise.
9042         (objfile_register_static_link): Likewise.
9043         * psymtab.c (allocate_psymtab): Likewise.
9044         * stabsread.c (read_member_functions): Likewise.
9045         * xcoffread.c (xcoff_end_psymtab): Likewise.
9046
9047 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
9048
9049         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
9050         compiler supports std::is_trivially_constructible.
9051         * common/poison.h: Include obstack.h.
9052         (IsMallocable): Define to is_trivially_constructible if the
9053         compiler supports it, define to true_type otherwise.
9054         (xobnew): New.
9055         (XOBNEW): Redefine.
9056         (xobnewvec): New.
9057         (XOBNEWVEC): Redefine.
9058         * gdb_obstack.h (obstack_zalloc): New.
9059         (OBSTACK_ZALLOC): Redefine.
9060         (obstack_calloc): New.
9061         (OBSTACK_CALLOC): Redefine.
9062         (obstack_new): New.
9063         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
9064         (gdbarch_obstack): New declaration in gdbarch.h, definition in
9065         gdbarch.c.
9066         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
9067         obstack_calloc/obstack_zalloc.
9068         (gdbarch_obstack_zalloc): Remove.
9069         * target-descriptions.c (tdesc_data_init): Use obstack_new.
9070
9071 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
9072
9073         * stack.c (backtrace_command_1): Remove useless variable int i.
9074
9075 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
9076
9077         * stack.c (print_frame_info): Fix comment.
9078
9079 2018-05-18  Tom Tromey  <tom@tromey.com>
9080
9081         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
9082         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
9083         (~dwarf2_per_objfile): Update
9084         (dwarf2_get_dwz_file): Use new.
9085         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
9086         unique_ptr.
9087
9088 2018-05-18  Tom Tromey  <tom@tromey.com>
9089
9090         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
9091         unique_ptr.
9092         * dwarf2read.c (struct dwp_file): Add constructor and
9093         initializers.
9094         (open_and_init_dwp_file): Return a unique_ptr.
9095         (dwarf2_per_objfile, create_dwp_hash_table)
9096         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
9097         (lookup_dwo_unit_in_dwp): Update.
9098         (open_and_init_dwp_file, get_dwp_file): Update.
9099
9100 2018-05-18  Tom Tromey  <tom@tromey.com>
9101
9102         * dwarf2read.c (dwarf2_per_objfile): Update.
9103         (struct mapped_index): Add initializers.
9104         (dwarf2_read_index): Use new.
9105         (dw2_symtab_iter_init): Update.
9106         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
9107         unique_ptr.
9108
9109 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
9110
9111         * dwarf2read.c (mapped_index) <total_size>: Remove.
9112
9113 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
9114
9115         * unittests/format_pieces-selftests.c (test_format_specifier):
9116         Add ARI comments.
9117
9118 2018-05-18  Tom Tromey  <tom@tromey.com>
9119
9120         * c-typeprint.c (maybe_print_hole): New function.
9121         (c_print_type_struct_field_offset): Update.
9122         (c_type_print_base_struct_union): Call maybe_print_hole.
9123
9124 2018-05-17  Keith Seitz  <keiths@redhat.com>
9125
9126         * breakpoint.c (build_bpstat_chain): New function, moved from
9127         bpstat_stop_status.
9128         (bpstat_stop_status): Add optional parameter, `stop_chain'.
9129         If no stop chain is passed, call build_bpstat_chain to build it.
9130         * breakpoint.h (build_bpstat_chain): Declare.
9131         (bpstat_stop_status): Move documentation here from breakpoint.c.
9132         * infrun.c (handle_signal_stop): Before eliding inlined frames,
9133         build the stop chain and pass it to skip_inline_frames.
9134         Pass this stop chain to bpstat_stop_status.
9135         * inline-frame.c: Include breakpoint.h.
9136         (stopped_by_user_bp_inline_frame): New function.
9137         (skip_inline_frames): Add parameter `stop_chain'.
9138         Move documention to inline-frame.h.
9139         If non-NULL, use stopped_by_user_bp_inline_frame to determine
9140         whether the frame should be elided.
9141         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
9142         Add moved documentation and update for new parameter.
9143
9144 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
9145
9146         PR cli/14975
9147         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
9148         unittests/format_pieces-selftests.c.
9149         * common/format.h (format_piece) <operator==>: New.
9150         (format_pieces) <operator[]>: Remove.
9151         * common/format.c (format_pieces::format_pieces): Handle \e.
9152         * unittests/format_pieces-selftests.c: New.
9153
9154 2018-05-17  Tom Tromey  <tom@tromey.com>
9155
9156         PR symtab/23010:
9157         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
9158         (dw2_instantiate_symtab): Add skip_partial parameter.
9159         (dw2_find_last_source_symtab, dw2_map_expand_apply)
9160         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
9161         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
9162         (dw2_expand_symtabs_matching_one)
9163         (dw2_find_pc_sect_compunit_symtab)
9164         (dw2_debug_names_lookup_symbol)
9165         (dw2_debug_names_expand_symtabs_for_function): Update.
9166         (init_cutu_and_read_dies): Add skip_partial parameter.
9167         (process_psymtab_comp_unit, build_type_psymtabs_1)
9168         (process_skeletonless_type_unit, load_partial_comp_unit)
9169         (psymtab_to_symtab_1): Update.
9170         (load_full_comp_unit): Add skip_partial parameter.
9171         (process_imported_unit_die, dwarf2_read_addr_index)
9172         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
9173         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
9174         (read_signatured_type): Update.
9175
9176 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
9177
9178         * value.c (release_value): Remove unused variable.
9179         (record_latest_value): Likewise.
9180         (access_value_history): Likewise.
9181         (preserve_values): Likewise.
9182
9183 2018-05-17  Tom Tromey  <tom@tromey.com>
9184
9185         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
9186         Initialize.
9187
9188 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
9189
9190         PR gdb/22286
9191         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
9192         Also handle registers whose width is not a multiple of
9193         PTRACE_TYPE_RET.
9194         (linux_nat_trad_target::store_register): Likewise.
9195
9196 2018-05-16  Tom Tromey  <tom@tromey.com>
9197
9198         * gdbcore.h (core_bfd): Redefine.
9199         * corelow.c (core_target::close): Update.
9200         (core_target_open): Update.
9201         * progspace.h (struct program_space) <cbfd>: Now a
9202         gdb_bfd_ref_ptr.
9203
9204 2018-05-16  Tom Tromey  <tom@tromey.com>
9205
9206         PR cli/19551:
9207         * symfile-add-flags.h (enum symfile_add_flags)
9208         <SYMFILE_NOT_FILENAME>: New constant.
9209         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
9210         objfile name from BFD.
9211         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
9212         * minidebug.c (find_separate_debug_file_in_section): Put
9213         ".gnu_debugdata" into BFD's file name.
9214
9215 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
9216
9217         * regcache.c (regcache_read_ftype, regcache_write_ftype):
9218         Remove.
9219
9220 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
9221
9222         PR binutils/21446
9223         * aarch64-tdep.c (aarch64_analyze_prologue,
9224         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
9225         Indicate not interested in errors.
9226
9227 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
9228
9229         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
9230         Supply the MIPS_ZERO_REGNUM register.
9231
9232 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
9233
9234         * mips-tdep.c (mask_address_var): Make variable static.
9235
9236 2018-05-14  Tom Tromey  <tom@tromey.com>
9237
9238         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
9239
9240 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
9241
9242         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
9243         FXSAVE_ADDR for the mxcsr register.
9244
9245 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
9246
9247         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
9248
9249 2018-05-11  Pedro Alves  <palves@redhat.com>
9250
9251         * corelow.c (core_target) <core_target>: No longer inline.
9252         Initialize m_core_gdbarch, m_core_vec and build the section table
9253         here.
9254         <~core_target>: New.
9255         <core_gdbarch, get_core_register_section>: New methods.
9256         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
9257         factored out from ...
9258         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
9259         (core_ops): Delete.
9260         (sniff_core_bfd): Add gdbarch parameter.
9261         (core_close): Delete, merged into ...
9262         (core_target::close): ... here.  Delete self.
9263         (core_close_cleanup): Delete.
9264         (core_target_open): Allocate a core_target on the heap.  Use a
9265         unique_ptr instead of a cleanup.  Bits moved into the core_target
9266         ctor.  Adjust to use core_target methods instead of globals.
9267         (get_core_register_section): Rename to ...
9268         (core_target::get_core_register_section): ... this and adjust.
9269         (struct get_core_registers_cb_data): New.
9270         (get_core_registers_cb): Use it.  Use bool.
9271         (core_target::fetch_registers, core_target::files_info)
9272         (core_target::xfer_partial, core_target::read_description)
9273         (core_target::pid_to, core_target::thread_name): Adjust to
9274         reference class fields instead of globals.
9275         * target.h (struct target_ops_deleter, target_ops_up): New.
9276
9277 2018-05-11  Pedro Alves  <palves@redhat.com>
9278
9279         * corefile.c (core_file_command): Move to corelow.c.
9280         * corelow.c (the_core_target): Delete.
9281         (core_file_command): Moved from corefile.c.  Check exec_bfd
9282         instead of the_core_target.  Use target_detach instead of calling
9283         into the_core_target directly.
9284         (maybe_say_no_core_file_now): New.
9285         (core_target::detach): Use it.
9286         (_initialize_corelow): Remove references to the_core_target.
9287         * gdbcore.h (the_core_target): Delete.
9288
9289 2018-05-11  Tom Tromey  <tromey@redhat.com>
9290             Pedro Alves  <palves@redhat.com>
9291
9292         * corefile.c (core_bfd): Remove.
9293         * gdbcore.h (core_bfd): Now a macro.
9294         * progspace.h (struct program_space) <cbfd>: New field.
9295
9296 2018-05-11  Tom Tromey  <tom@tromey.com>
9297
9298         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
9299         gdb::def_vector.
9300
9301 2018-05-10  Tom Tromey  <tom@tromey.com>
9302
9303         * configure: Rebuild.
9304         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
9305
9306 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
9307
9308         PR server/23158:
9309         * regformats/regdat.sh: Adjust script, following the addition
9310         of the new expedite_regs parameter to init_target_desc.
9311
9312 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
9313     
9314         PR gdb/23127
9315         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
9316         set_gdbarch_significant_addr_bit.
9317         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
9318         set_gdbarch_significant_addr_bit.
9319         * utils.c (address_significant): Update to sign extend addr.
9320
9321 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
9322
9323         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
9324         (xtensa_linux_init_abi): Limit tdep->num_regs by
9325         tdep->num_nopriv_regs.
9326         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
9327         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
9328         not initialized.
9329
9330 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
9331
9332         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
9333
9334 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
9335
9336         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
9337         (I387_MXCSR_INIT_VAL): New constant.
9338         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
9339         buffer if it was supplied by the inferior.
9340         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
9341         (i387_xsave_get_clear_bv): New function.
9342         (i387_supply_xsave): Only read x87 control registers from the
9343         xsave buffer if the feature is enabled, and the state will have
9344         been written, otherwise, provide a suitable default.
9345         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
9346         including x87 control registers.  Update control registers if they
9347         have changed from the default value, and mark features as enabled
9348         as required.
9349         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
9350
9351 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
9352
9353         * spu-tdep.c (info_spu_event_command): Fix output formatting.
9354
9355 2018-05-07  Tom Tromey  <tom@tromey.com>
9356
9357         * configure: Rebuild.
9358         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
9359
9360 2018-05-07  Tom Tromey  <tom@tromey.com>
9361
9362         PR tdep/20362:
9363         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
9364         bit.  Use correct value for VDIV.
9365
9366 2018-05-04  Tom Tromey  <tom@tromey.com>
9367
9368         * configure: Rebuild.
9369         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
9370
9371 2018-05-04  Tom Tromey  <tom@tromey.com>
9372
9373         * linux-record.c (record_linux_system_call) <case
9374         RECORD_SYS_RECVFROM>: Add "break".
9375
9376 2018-05-04  Tom Tromey  <tom@tromey.com>
9377
9378         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
9379         Add missing "break".
9380         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
9381         Add missing "break".
9382
9383 2018-05-04  Tom Tromey  <tom@tromey.com>
9384
9385         * rs6000-tdep.c (ppc_process_record_op4)
9386         (ppc_process_record_op63): Add fall-through comment.
9387
9388 2018-05-04  Tom Tromey  <tom@tromey.com>
9389
9390         * i386-tdep.c (i386_process_record): Add fall-through comment.
9391
9392 2018-05-04  Tom Tromey  <tom@tromey.com>
9393
9394         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
9395         comment.
9396
9397 2018-05-04  Tom Tromey  <tom@tromey.com>
9398
9399         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
9400         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
9401         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
9402         comment.
9403         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
9404         comment.
9405         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
9406         comment.
9407
9408 2018-05-04  Tom Tromey  <tom@tromey.com>
9409
9410         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
9411
9412 2018-05-04  Tom Tromey  <tom@tromey.com>
9413
9414         * s390-tdep.c (s390_process_record): Fix fall-through comments.
9415         * xcoffread.c (scan_xcoff_symtab): Move comment later.
9416         * symfile.c (section_is_mapped): Fix fall-through comment.
9417         * stabsread.c (define_symbol, read_member_functions): Fix
9418         fall-through comment.
9419         * s390-linux-tdep.c (s390_process_record): Fix fall-through
9420         comment.
9421         * remote.c (remote_wait_as): Fix fall-through comment.
9422         * p-exp.y (yylex): Fix fall-through comment.
9423         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
9424         comment.
9425         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
9426         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
9427         * jv-exp.y (yylex): Fix fall-through comment.
9428         * go-exp.y (lex_one_token): Fix fall-through comment.
9429         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
9430         fall-through comment.
9431         * f-exp.y (yylex): Fix fall-through comment.
9432         * dwarf2read.c (process_die): Fix fall-through comments.
9433         * dbxread.c (process_one_symbol): Fix fall-through comment.
9434         * d-exp.y (lex_one_token): Fix fall-through comment.
9435         * cp-name-parser.y (yylex): Fix fall-through comment.
9436         * coffread.c (coff_symtab_read): Fix fall-through comment.
9437         * c-exp.y (lex_one_token): Fix fall-through comment.
9438         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
9439         comment.
9440         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
9441         comment.
9442
9443 2018-05-04  Tom Tromey  <tom@tromey.com>
9444
9445         PR python/22730:
9446         * NEWS: Mention gdb.execute change.
9447         * gdbcmd.h (execute_control_command): Don't declare.
9448         * python/python.c (execute_gdb_command): Use read_command_lines_1,
9449         execute_control_commands, execute_control_commands_to_string.
9450         * cli/cli-script.h (execute_control_commands)
9451         (execute_control_commands_to_string): Declare.
9452         (execute_control_command): Add from_tty parameter.
9453         * cli/cli-script.c (execute_control_commands)
9454         (execute_control_commands_to_string): New functions.
9455         (execute_user_command): Use execute_control_commands.
9456         (execute_control_command_1): Add "from_tty" parameter.  Update.
9457         (execute_control_command): Likewise.
9458
9459 2018-05-04  Tom Tromey  <tom@tromey.com>
9460
9461         PR python/22731:
9462         * NEWS: Mention that breakpoint commands are writable.
9463         * python/py-breakpoint.c (bppy_set_commands): New function.
9464         (breakpoint_object_getset) <"commands">: Use it.
9465
9466 2018-05-04  Tom Tromey  <tom@tromey.com>
9467
9468         * tracepoint.c (actions_command): Update.
9469         * mi/mi-cmd-break.c (mi_command_line_array)
9470         (mi_command_line_array_cnt, mi_command_line_array_ptr)
9471         (mi_read_next_line): Remove.
9472         (mi_cmd_break_commands): Update.
9473         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
9474         function_view.
9475         * cli/cli-script.c (get_command_line): Update.
9476         (process_next_line): Use function_view.  Constify.
9477         (recurse_read_control_structure, read_command_lines)
9478         (read_command_lines_1): Change argument types to function_view.
9479         (do_define_command, document_command): Update.
9480         * breakpoint.h (check_tracepoint_command): Don't declare.
9481         * breakpoint.c (check_tracepoint_command): Remove.
9482         (commands_command_1, create_tracepoint_from_upload): Update.
9483
9484 2018-05-04  Tom Tromey  <tom@tromey.com>
9485
9486         PR gdb/11750:
9487         * cli/cli-script.h (enum command_control_type) <define_control>:
9488         New constant.
9489         * cli/cli-script.c (multi_line_command_p): Handle define_control.
9490         (build_command_line, execute_control_command_1)
9491         (process_next_line): Likewise.
9492         (do_define_command): New function, extracted from define_command.
9493         (define_command): Use it.
9494
9495 2018-05-04  Tom Tromey  <tom@tromey.com>
9496
9497         * tracepoint.c (actions_command): Update.
9498         * cli/cli-script.h (read_command_lines): Update.
9499         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
9500         (MAX_TMPBUF): Remove define.
9501         (define_command): Use string_printf.
9502         (document_command): Likewise.
9503         * breakpoint.c (commands_command_1): Update.
9504
9505 2018-05-04  Tom Tromey  <tom@tromey.com>
9506
9507         * top.c (execute_command): Update.
9508         * cli/cli-script.h (print_command_lines): Now varargs.
9509         * cli/cli-script.c (print_command_lines): Now varargs.
9510         (execute_control_command_1) <case while_control, case if_control>:
9511         Update.
9512
9513 2018-05-04  Tom Tromey  <tom@tromey.com>
9514
9515         * tracepoint.c (all_tracepoint_actions): Rename from
9516         all_tracepoint_actions_and_cleanup.  Change return type.
9517         (actions_command, encode_actions_1, encode_actions)
9518         (trace_dump_actions, tdump_command): Update.
9519         * remote.c (remote_download_command_source): Update.
9520         * python/python.c (gdbpy_eval_from_control_command)
9521         (python_command, python_interactive_command): Update.
9522         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
9523         * guile/guile.c (guile_command)
9524         (gdbscm_eval_from_control_command, guile_command): Update.
9525         * compile/compile.c (compile_code_command)
9526         (compile_print_command, compile_to_object): Update.
9527         * cli/cli-script.h (struct command_lines_deleter): New.
9528         (counted_command_line): New typedef.
9529         (struct command_line): Add constructor, destructor.
9530         <body_list>: Remove.
9531         <body_list_0, body_list_1>: New members.
9532         (command_line_up): Remove typedef.
9533         (read_command_lines, read_command_lines_1, get_command_line):
9534         Update.
9535         (copy_command_lines): Don't declare.
9536         * cli/cli-script.c (build_command_line): Use "new".
9537         (get_command_line): Return counted_command_line.
9538         (print_command_lines, execute_user_command)
9539         (execute_control_command_1, while_command, if_command): Update.
9540         (realloc_body_list): Remove.
9541         (process_next_line, recurse_read_control_structure): Update.
9542         (read_command_lines, read_command_lines_1): Return counted_command_line.
9543         (free_command_lines): Use "delete".
9544         (copy_command_lines): Remove.
9545         (define_command, document_command, show_user_1): Update.
9546         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
9547         a counted_command_line.
9548         * breakpoint.h (counted_command_line): Remove typedef.
9549         (breakpoint_set_commands): Update.
9550         * breakpoint.c (check_no_tracepoint_commands)
9551         (validate_commands_for_breakpoint): Update.
9552         (breakpoint_set_commands): Change commands to be a
9553         counted_command_line.
9554         (commands_command_1, update_dprintf_command_list)
9555         (create_tracepoint_from_upload): Update.
9556
9557 2018-05-04  Tom Tromey  <tom@tromey.com>
9558
9559         * cli/cli-decode.h (cmd_list_element): New constructor.
9560         (~cmd_list_element): New destructor.
9561         (struct cmd_list_element): Add initializers.
9562         * cli/cli-decode.c (do_add_cmd): Use "new".
9563         (delete_cmd): Use "delete".
9564
9565 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
9566             Pedro Alves <palves@redhat.com>
9567
9568         PR breakpoints/19806 and support for PR external/20207.
9569         * NEWS: Mention Aarch64 watchpoint improvements.
9570         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
9571         watchpoints and PR external/20207 watchpoints.
9572         * nat/aarch64-linux-hw-point.c
9573         (kernel_supports_any_contiguous_range): New.
9574         (aarch64_watchpoint_offset): New.
9575         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
9576         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
9577         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
9578         (aarch64_align_watchpoint): New parameters aligned_offset_p and
9579         next_addr_orig_p.  Support PR external/20207 watchpoints.
9580         (aarch64_downgrade_regs): New.
9581         (aarch64_dr_state_insert_one_point): New parameters offset and
9582         addr_orig.
9583         (aarch64_dr_state_remove_one_point): Likewise.
9584         (aarch64_handle_breakpoint): Update caller.
9585         (aarch64_handle_aligned_watchpoint): Likewise.
9586         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
9587         aligned_offset.
9588         (aarch64_linux_set_debug_regs): Remove const from state.  Call
9589         aarch64_downgrade_regs.
9590         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
9591         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
9592         (DR_CONTROL_MASK): ... this.
9593         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
9594         (unsigned int aarch64_watchpoint_offset): New prototype.
9595         (aarch64_linux_set_debug_regs): Remove const from state.
9596         * utils.c (align_up, align_down): Move to ...
9597         * common/common-utils.c (align_up, align_down): ... here.
9598         * utils.h (align_up, align_down): Move to ...
9599         * common/common-utils.h (align_up, align_down): ... here.
9600
9601 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
9602
9603         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
9604         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
9605         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
9606         Re-implement to match the ABI as summarized in GCC's
9607         gcc/config/sparc/sparc.c.  All callers updated.
9608         (sparc32_store_arguments): Remove assertion.
9609
9610 2018-05-04  Tom Tromey  <tom@tromey.com>
9611
9612         * printcmd.c: Don't include tui.h.
9613         (decode_format): Use skip_spaces.
9614
9615 2018-05-04  Tom Tromey  <tom@tromey.com>
9616
9617         PR gdb/22619:
9618         * printcmd.c (last_count): New global.
9619         (x_command): Use saved count when repeating.
9620
9621 2018-05-04  Tom Tromey  <tom@tromey.com>
9622
9623         * nto-procfs.c (do_closedir_cleanup): Remove.
9624         (procfs_pidlist): Use gdb_dir_up.
9625         * procfs.c (do_closedir_cleanup): Remove.
9626         (proc_update_threads): Use gdb_dir_up.
9627         * common/filestuff.h (struct gdb_dir_deleter): New.
9628         (gdb_dir_up): New typedef.
9629
9630 2018-05-04  Tom Tromey  <tom@tromey.com>
9631
9632         * ada-lang.c (print_mention_exception): Use std::string.
9633
9634 2018-05-04  Tom Tromey  <tom@tromey.com>
9635
9636         * ada-lang.c (create_excep_cond_exprs): Update.
9637         (ada_exception_catchpoint_cond_string): Use std::string.
9638
9639 2018-05-04  Tom Tromey  <tom@tromey.com>
9640
9641         * ada-lang.c (xget_renaming_scope): Return std::string.
9642         (old_renaming_is_invisible): Update.
9643
9644 2018-05-04  Tom Tromey  <tom@tromey.com>
9645
9646         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
9647         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
9648
9649 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
9650
9651         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
9652
9653 2018-05-04  Tom Tromey  <tom@tromey.com>
9654
9655         * remote.c (remote_query_supported_append): Change type.
9656         (remote_check_symbols): Update.
9657
9658 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
9659
9660         PR gdb/11420
9661         * configure.ac: Prepend libpython.
9662         * python/python-config.py: Likewise.
9663         * configure: Regenerate.
9664
9665 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
9666
9667         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
9668
9669 2018-05-03  Pedro Alves  <palves@redhat.com>
9670
9671         * s390-linux-nat.c
9672         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
9673         override.  Write 'true' instead of '1'.
9674         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
9675         declaration.
9676
9677 2018-05-02  Pedro Alves  <palves@redhat.com>
9678
9679         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
9680         add_inf_child_target.
9681         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
9682         add_inf_child_target.
9683         * aix-thread.c (aix_thread_target_info): New.
9684         (aix_thread_target) <shortname, longname, doc>: Delete.
9685         <info>: New.
9686         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
9687         add_inf_child_target.
9688         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
9689         add_inf_child_target.
9690         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
9691         add_inf_child_target.
9692         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
9693         add_inf_child_target.
9694         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
9695         add_inf_child_target.
9696         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
9697         add_inf_child_target.
9698         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
9699         add_inf_child_target.
9700         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
9701         add_inf_child_target.
9702         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
9703         add_inf_child_target.
9704         * bfd-target.c (target_bfd_target_info): New.
9705         (target_bfd) <shortname, longname, doc>: Delete.
9706         <info>: New.
9707         * bsd-kvm.c (bsd_kvm_target_info): New.
9708         (bsd_kvm_target) <shortname, longname, doc>: Delete.
9709         <info>: New.
9710         (bsd_kvm_target::open): Rename to ...
9711         (bsd_kvm_target_open): ... this.  Adjust.
9712         * bsd-uthread.c (bsd_uthread_target_info): New.
9713         (bsd_uthread_target) <shortname, longname, doc>: Delete.
9714         <info>: New.
9715         * corefile.c (core_file_command): Adjust.
9716         * corelow.c (core_target_info): New.
9717         (core_target) <shortname, longname, doc>: Delete.
9718         <info>: New.
9719         (core_target::open): Rename to ...
9720         (core_target_open): ... this.  Adjust.
9721         * ctf.c (ctf_target_info): New.
9722         (ctf_target) <shortname, longname, doc>: Delete.
9723         <info>: New.
9724         (ctf_target::open): Rename to ...
9725         (ctf_target_open): ... this.
9726         (_initialize_ctf): Adjust.
9727         * exec.c (exec_target_info): New.
9728         (exec_target) <shortname, longname, doc>: Delete.
9729         <info>: New.
9730         (exec_target::open): Rename to ...
9731         (exec_target_open): ... this.
9732         * gdbcore.h (core_target_open): Declare.
9733         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
9734         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
9735         add_inf_child_target.
9736         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
9737         add_inf_child_target.
9738         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
9739         add_inf_child_target.
9740         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
9741         add_inf_child_target.
9742         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
9743         add_inf_child_target.
9744         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
9745         add_inf_child_target.
9746         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
9747         add_inf_child_target.
9748         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
9749         add_inf_child_target.
9750         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
9751         add_inf_child_target.
9752         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
9753         add_inf_child_target.
9754         * inf-child.c (inf_child_target_info): New.
9755         (inf_child_target::info): New.
9756         (inf_child_open_target): Remove 'target' parameter.  Use
9757         get_native_target instead.
9758         (inf_child_target::open): Delete.
9759         (add_inf_child_target): New.
9760         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
9761         Delete.
9762         <info>: New.
9763         (add_inf_child_target): Declare.
9764         (inf_child_open_target): Declare.
9765         * linux-thread-db.c (thread_db_target_info): New.
9766         (thread_db_target) <shortname, longname, doc>: Delete.
9767         <info>: New.
9768         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
9769         add_inf_child_target.
9770         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
9771         add_inf_child_target.
9772         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
9773         add_inf_child_target.
9774         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
9775         add_inf_child_target.
9776         * make-target-delegates (print_class): Adjust.
9777         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
9778         add_inf_child_target.
9779         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
9780         add_inf_child_target.
9781         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
9782         add_inf_child_target.
9783         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
9784         add_inf_child_target.
9785         * nto-procfs.c (nto_native_target_info): New.
9786         (nto_procfs_target_native) <shortname, longname, doc>:
9787         Delete.
9788         <info>: New.
9789         (nto_procfs_target_info): New.
9790         (nto_procfs_target_procfs) <shortname, longname, doc>:
9791         Delete.
9792         <info>: New.
9793         (init_procfs_targets): Adjust.
9794         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
9795         add_inf_child_target.
9796         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
9797         add_inf_child_target.
9798         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
9799         add_inf_child_target.
9800         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
9801         add_inf_child_target.
9802         * ravenscar-thread.c (ravenscar_target_info): New.
9803         (ravenscar_thread_target) <shortname, longname, doc>:
9804         Delete.
9805         <info>: New.
9806         * record-btrace.c (record_btrace_target_info):
9807         (record_btrace_target) <shortname, longname, doc>: Delete.
9808         <info>: New.
9809         (record_btrace_target::open): Rename to ...
9810         (record_btrace_target_open): ... this.  Adjust.
9811         * record-full.c (record_longname, record_doc): New.
9812         (record_full_base_target) <shortname, longname, doc>: Delete.
9813         <info>: New.
9814         (record_full_target_info): New.
9815         (record_full_target): <shortname>: Delete.
9816         <info>: New.
9817         (record_full_core_open_1, record_full_open_1): Update comments.
9818         (record_full_base_target::open): Rename to ...
9819         (record_full_open): ... this.
9820         (cmd_record_full_restore): Update.
9821         (_initialize_record_full): Update.
9822         * remote-sim.c (remote_sim_target_info): New.
9823         (gdbsim_target) <shortname, longname, doc>: Delete.
9824         <info>: New.
9825         (gdbsim_target::open): Rename to ...
9826         (gdbsim_target_open): ... this.
9827         (_initialize_remote_sim): Adjust.
9828         * remote.c (remote_doc): New.
9829         (remote_target_info): New.
9830         (remote_target) <shortname, longname, doc>: Delete.
9831         <info>: New.
9832         (extended_remote_target_info): New.
9833         (extended_remote_target) <shortname, longname, doc>: Delete.
9834         <info>: New.
9835         (remote_target::open_1): Make static.  Adjust.
9836         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
9837         * s390-linux-nat.c (_initialize_s390_nat): Use
9838         add_inf_child_target.
9839         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
9840         add_inf_child_target.
9841         * sol-thread.c (thread_db_target_info): New.
9842         (sol_thread_target) <shortname, longname, doc>: Delete.
9843         <info>: New.
9844         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
9845         add_inf_child_target.
9846         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
9847         add_inf_child_target.
9848         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
9849         add_inf_child_target.
9850         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
9851         add_inf_child_target.
9852         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
9853         add_inf_child_target.
9854         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
9855         add_inf_child_target.
9856         * spu-linux-nat.c (_initialize_spu_nat): Use
9857         add_inf_child_target.
9858         * spu-multiarch.c (spu_multiarch_target_info): New.
9859         (spu_multiarch_target) <shortname, longname, doc>: Delete.
9860         <info>: New.
9861         * target-delegates.c: Regenerate.
9862         * target.c: Include <unordered_map>.
9863         (target_ops_p): Delete.
9864         (DEF_VEC_P(target_ops_p)): Delete.
9865         (target_factories): New.
9866         (test_target_info): New.
9867         (test_target_ops::info): New.
9868         (open_target): Adjust to use target_factories.
9869         (add_target_with_completer): Rename to ...
9870         (add_target): ... this.  Change prototype.  Register target_info
9871         and open callback in target_factories.  Register target_info in
9872         command context instead of target_ops.
9873         (add_target): Delete old implementation.
9874         (add_deprecated_target_alias): Change prototype.  Adjust.
9875         (the_native_target): New.
9876         (set_native_target, get_native_target): New.
9877         (find_default_run_target): Use the_native_target.
9878         (find_attach_target, find_run_target): Simplify.
9879         (target_ops::open): Delete.
9880         (dummy_target_info): New.
9881         (dummy_target::shortname, dummy_target::longname)
9882         (dummy_target::doc): Delete.
9883         (dummy_target::info): New.
9884         (debug_target::shortname, debug_target::longname)
9885         (debug_target::doc): Delete.
9886         (debug_target::info): New.
9887         * target.h (struct target_info): New.
9888         (target_ops::~target_ops): Add comment.
9889         (target_ops::info): New.
9890         (target_ops::shortname, target_ops::longname, target_ops::doc): No
9891         longer virtual.  Implement in terms of target_info.
9892         (set_native_target, get_native_target): Declare.
9893         (target_open_ftype): New.
9894         (add_target, add_target_with_completer)
9895         (add_deprecated_target_alias): Change prototype.
9896         (test_target) <shortname, longname, doc>: Delete.
9897         <info>: New.
9898         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
9899         add_inf_child_target.
9900         * tracefile-tfile.c (tfile_target_info): New.
9901         (tfile_target) <shortname, longname, doc>: Delete.
9902         <info>: New.
9903         (tfile_target::open): Rename to ...
9904         (tfile_target_open): ... this.
9905         (_initialize_tracefile_tfile): Adjust.
9906         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
9907         add_inf_child_target.
9908         * windows-nat.c (_initialize_windows_nat): Use
9909         add_inf_child_target.
9910         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
9911         add_inf_child_target.
9912
9913 2018-05-02  Pedro Alves  <palves@redhat.com>
9914
9915         * linux-nat.h (linux_nat_target) <low_new_thread,
9916         low_delete_thread, low_new_fork, low_forget_process,
9917         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
9918         New virtual methods.
9919         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
9920         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
9921         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
9922         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
9923         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
9924         Delete.
9925         * linux-fork.c (delete_fork): Adjust to call low method.
9926         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
9927         (linux_nat_new_fork, linux_nat_forget_process_hook)
9928         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
9929         (linux_nat_status_is_event):
9930         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
9931         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
9932         to call low method.
9933         (sigtrap_is_event): Rename to ...
9934         (linux_nat_target::low_status_is_event): ... this.
9935         (linux_nat_set_status_is_event): Delete.
9936         (save_stop_reason, linux_nat_wait_1)
9937         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
9938         low methods.
9939         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
9940         (linux_nat_set_new_fork, linux_nat_set_forget_process)
9941         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
9942         (linux_nat_set_prepare_to_resume): Delete.
9943         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
9944         low virtual methods.
9945         * amd64-linux-nat.c: Likewise.
9946         * arm-linux-nat.c: Likewise.
9947         * i386-linux-nat.c: Likewise.
9948         * ia64-linux-nat.c: Likewise.
9949         * mips-linux-nat.c: Likewise.
9950         * ppc-linux-nat.c: Likewise.
9951         * s390-linux-nat.c: Likewise.
9952         * sparc64-linux-nat.c: Likewise.
9953         * x86-linux-nat.c: Likewise.
9954         * x86-linux-nat.h: Include "nat/x86-linux.h".
9955         (x86_linux_nat_target) <low_new_fork, low_forget_process,
9956         low_prepare_to_resume, low_new_thread, low_delete_thread>:
9957         Override methods.
9958
9959 2018-05-02  Pedro Alves  <palves@redhat.com>
9960
9961         * target.h (target_ops)
9962         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
9963         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
9964         stopped_by_watchpoint, have_continuable_watchpoint,
9965         stopped_data_address, watchpoint_addr_within_range,
9966         can_accel_watchpoint_condition, can_run, thread_alive,
9967         has_all_memory, has_memory, has_stack, has_registers,
9968         has_execution, can_async_p, is_async_p, supports_non_stop,
9969         always_non_stop_p, can_execute_reverse, supports_multi_process,
9970         supports_enable_disable_tracepoint,
9971         supports_disable_randomization, supports_string_tracing,
9972         supports_evaluation_of_breakpoint_conditions,
9973         can_run_breakpoint_commands, filesystem_is_local,
9974         can_download_tracepoint, get_trace_state_variable_value,
9975         set_trace_notes, get_tib_address, use_agent, can_use_agent,
9976         record_is_replaying, record_will_replay,
9977         augmented_libraries_svr4_read>: Adjust to return bool.
9978         * aarch64-linux-nat.c: All implementations adjusted.
9979         * aix-thread.c: All implementations adjusted.
9980         * arm-linux-nat.c: All implementations adjusted.
9981         * breakpoint.c: All implementations adjusted.
9982         * bsd-kvm.c: All implementations adjusted.
9983         * bsd-uthread.c: All implementations adjusted.
9984         * corelow.c: All implementations adjusted.
9985         * ctf.c: All implementations adjusted.
9986         * darwin-nat.c: All implementations adjusted.
9987         * darwin-nat.h: All implementations adjusted.
9988         * exec.c: All implementations adjusted.
9989         * fbsd-nat.c: All implementations adjusted.
9990         * fbsd-nat.h: All implementations adjusted.
9991         * gnu-nat.c: All implementations adjusted.
9992         * gnu-nat.h: All implementations adjusted.
9993         * go32-nat.c: All implementations adjusted.
9994         * ia64-linux-nat.c: All implementations adjusted.
9995         * inf-child.c: All implementations adjusted.
9996         * inf-child.h: All implementations adjusted.
9997         * inf-ptrace.c: All implementations adjusted.
9998         * inf-ptrace.h: All implementations adjusted.
9999         * linux-nat.c: All implementations adjusted.
10000         * linux-nat.h: All implementations adjusted.
10001         * mips-linux-nat.c: All implementations adjusted.
10002         * nto-procfs.c: All implementations adjusted.
10003         * ppc-linux-nat.c: All implementations adjusted.
10004         * procfs.c: All implementations adjusted.
10005         * ravenscar-thread.c: All implementations adjusted.
10006         * record-btrace.c: All implementations adjusted.
10007         * record-full.c: All implementations adjusted.
10008         * remote-sim.c: All implementations adjusted.
10009         * remote.c: All implementations adjusted.
10010         * s390-linux-nat.c: All implementations adjusted.
10011         * sol-thread.c: All implementations adjusted.
10012         * spu-multiarch.c: All implementations adjusted.
10013         * target-delegates.c: All implementations adjusted.
10014         * target.c: All implementations adjusted.
10015         * target.h: All implementations adjusted.
10016         * tracefile-tfile.c: All implementations adjusted.
10017         * tracefile.c: All implementations adjusted.
10018         * tracefile.h: All implementations adjusted.
10019         * windows-nat.c: All implementations adjusted.
10020         * x86-linux-nat.h: All implementations adjusted.
10021         * x86-nat.h: All implementations adjusted.
10022
10023 2018-05-02  Pedro Alves  <palves@redhat.com>
10024
10025         * make-target-delegates (scan_target_h): Don't trim lines here.
10026         Replace sequences of tabs and/or whitespace with a single
10027         whitespace.
10028         (top level, parsing methods): Trim each line before processing it
10029         here.
10030
10031 2018-05-02  Pedro Alves  <palves@redhat.com>
10032             John Baldwin  <jhb@freebsd.org>
10033
10034         * target.h (enum strata) <debug_stratum>: New.
10035         (struct target_ops) <all delegation methods>: Replace by C++
10036         virtual methods, and drop "to_" prefix.  All references updated
10037         throughout.
10038         <to_shortname, to_longname, to_doc, to_data,
10039         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
10040         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
10041         virtual methods.  All references updated throughout.
10042         <can_attach, supports_terminal_ours, can_create_inferior,
10043         get_thread_control_capabilities, attach_no_wait>: New
10044         virtual methods.
10045         <insert_breakpoint, remove_breakpoint>: Now
10046         TARGET_DEFAULT_NORETURN methods.
10047         <info_proc>: Now returns bool.
10048         <to_magic>: Delete.
10049         (OPS_MAGIC): Delete.
10050         (current_target): Delete.  All references replaced by references
10051         to ...
10052         (target_stack): ... this.  New.
10053         (target_shortname, target_longname): Adjust.
10054         (target_can_run): Now a function declaration.
10055         (default_child_has_all_memory, default_child_has_memory)
10056         (default_child_has_stack, default_child_has_registers)
10057         (default_child_has_execution): Remove target_ops parameter.
10058         (complete_target_initialization): Delete.
10059         (memory_breakpoint_target): New template class.
10060         (test_target_ops): Refactor as a C++ class with virtual methods.
10061         * make-target-delegates (NAME_PART): Tighten.
10062         (POINTER_PART, CP_SYMBOL): New.
10063         (SIMPLE_RETURN_PART): Reimplement.
10064         (VEC_RETURN_PART): Expect less.
10065         (RETURN_PART, VIRTUAL_PART): New.
10066         (METHOD): Adjust to C++ virtual methods.
10067         (scan_target_h): Remove reference to C99.
10068         (dname): Output "target_ops::" prefix.
10069         (write_function_header): Adjust to output a C++ class method.
10070         (write_declaration): New.
10071         (write_delegator): Adjust to output a C++ class method.
10072         (tdname): Output "dummy_target::" prefix.
10073         (write_tdefault, write_debugmethod): Adjust to output a C++ class
10074         method.
10075         (tdefault_names, debug_names): Delete.
10076         (return_types, tdefaults, styles, argtypes_array): New.
10077         (top level): All methods are delegators.
10078         (print_class): New.
10079         (top level): Print dummy_target and debug_target classes.
10080         * target-delegates.c: Regenerate.
10081         * target-debug.h (target_debug_print_enum_info_proc_what)
10082         (target_debug_print_thread_control_capabilities)
10083         (target_debug_print_thread_info_p): New.
10084         * target.c (dummy_target): Delete.
10085         (the_dummy_target, the_debug_target): New.
10086         (target_stack): Now extern.
10087         (set_targetdebug): Push/unpush debug target.
10088         (default_child_has_all_memory, default_child_has_memory)
10089         (default_child_has_stack, default_child_has_registers)
10090         (default_child_has_execution): Remove target_ops parameter.
10091         (complete_target_initialization): Delete.
10092         (add_target_with_completer): No longer call
10093         complete_target_initialization.
10094         (target_supports_terminal_ours): Use regular delegation.
10095         (update_current_target): Delete.
10096         (push_target): No longer check magic number.  Don't call
10097         update_current_target.
10098         (unpush_target): Don't call update_current_target.
10099         (target_is_pushed): No longer check magic number.
10100         (target_require_runnable): Skip for all stratums over
10101         process_stratum.
10102         (target_ops::info_proc): New.
10103         (target_info_proc): Use find_target_at and
10104         find_default_run_target.
10105         (target_supports_disable_randomization): Use regular delegation.
10106         (target_get_osdata): Use find_target_at.
10107         (target_ops::open, target_ops::close, target_ops::can_attach)
10108         (target_ops::attach, target_ops::can_create_inferior)
10109         (target_ops::create_inferior, target_ops::can_run)
10110         (target_can_run): New.
10111         (default_fileio_target): Use regular delegation.
10112         (target_ops::fileio_open, target_ops::fileio_pwrite)
10113         (target_ops::fileio_pread, target_ops::fileio_fstat)
10114         (target_ops::fileio_close, target_ops::fileio_unlink)
10115         (target_ops::fileio_readlink): New.
10116         (target_fileio_open_1, target_fileio_unlink)
10117         (target_fileio_readlink): Always call the target method.  Handle
10118         FILEIO_ENOSYS.
10119         (return_zero, return_zero_has_execution): Delete.
10120         (init_dummy_target): Delete.
10121         (dummy_target::dummy_target, dummy_target::shortname)
10122         (dummy_target::longname, dummy_target::doc)
10123         (debug_target::debug_target, debug_target::shortname)
10124         (debug_target::longname, debug_target::doc): New.
10125         (target_supports_delete_record): Use regular delegation.
10126         (setup_target_debug): Delete.
10127         (maintenance_print_target_stack): Skip debug_stratum.
10128         (initialize_targets): Instantiate the_dummy_target and
10129         the_debug_target.
10130         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
10131         use target_stack.
10132         (target_auxv_search, fprint_target_auxv): Adjust.
10133         (info_auxv_command): Adjust to use target_stack.
10134         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
10135         * exceptions.c (print_flush): Handle a NULL target_stack.
10136         * regcache.c (target_ops_no_register): Refactor as class with
10137         virtual methods.
10138
10139         * exec.c (exec_target): New class.
10140         (exec_ops): Now an exec_target.
10141         (exec_open, exec_close_1, exec_get_section_table)
10142         (exec_xfer_partial, exec_files_info, exec_has_memory)
10143         (exec_make_note_section): Refactor as exec_target methods.
10144         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
10145         Delete.
10146         (exec_target::find_memory_regions): New.
10147         (_initialize_exec): Don't call init_exec_ops.
10148         * gdbcore.h (exec_file_clear): Delete.
10149
10150         * corefile.c (core_target): Delete.
10151         (core_file_command): Adjust.
10152         * corelow.c (core_target): New class.
10153         (the_core_target): New.
10154         (core_close): Remove target_ops parameter.
10155         (core_close_cleanup): Adjust.
10156         (core_target::close): New.
10157         (core_open, core_detach, get_core_registers, core_files_info)
10158         (core_xfer_partial, core_thread_alive, core_read_description)
10159         (core_pid_to_str, core_thread_name, core_has_memory)
10160         (core_has_stack, core_has_registers, core_info_proc): Rework as
10161         core_target methods.
10162         (ignore, core_remove_breakpoint, init_core_ops): Delete.
10163         (_initialize_corelow): Initialize the_core_target.
10164         * gdbcore.h (core_target): Delete.
10165         (the_core_target): New.
10166
10167         * ctf.c: (ctf_target): New class.
10168         (ctf_ops): Now a ctf_target.
10169         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
10170         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
10171         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
10172         methods.
10173         (init_ctf_ops): Delete.
10174         (_initialize_ctf): Don't call it.
10175         * tracefile-tfile.c (tfile_target): New class.
10176         (tfile_ops): Now a tfile_target.
10177         (tfile_open, tfile_close, tfile_files_info)
10178         (tfile_get_tracepoint_status, tfile_trace_find)
10179         (tfile_fetch_registers, tfile_xfer_partial)
10180         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
10181         Refactor as tfile_target methods.
10182         (tfile_xfer_partial_features): Remove target_ops parameter.
10183         (init_tfile_ops): Delete.
10184         (_initialize_tracefile_tfile): Don't call it.
10185         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
10186         (tracefile_has_stack, tracefile_has_registers)
10187         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
10188         tracefile_target methods.
10189         (init_tracefile_ops): Delete.
10190         (tracefile_target::tracefile_target): New.
10191         * tracefile.h: Include "target.h".
10192         (tracefile_target): New class.
10193         (init_tracefile_ops): Delete.
10194
10195         * spu-multiarch.c (spu_multiarch_target): New class.
10196         (spu_ops): Now a spu_multiarch_target.
10197         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
10198         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
10199         (spu_search_memory, spu_mourn_inferior): Refactor as
10200         spu_multiarch_target methods.
10201         (init_spu_ops): Delete.
10202         (_initialize_spu_multiarch): Remove references to init_spu_ops,
10203         complete_target_initialization.
10204
10205         * ravenscar-thread.c (ravenscar_thread_target): New class.
10206         (ravenscar_ops): Now a ravenscar_thread_target.
10207         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
10208         (ravenscar_thread_alive, ravenscar_pid_to_str)
10209         (ravenscar_fetch_registers, ravenscar_store_registers)
10210         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
10211         (ravenscar_stopped_by_hw_breakpoint)
10212         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
10213         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
10214         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
10215         methods.
10216         (init_ravenscar_thread_ops): Delete.
10217         (_initialize_ravenscar): Remove references to
10218         init_ravenscar_thread_ops and complete_target_initialization.
10219
10220         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
10221         (bsd_uthread_target): New class.
10222         (bsd_uthread_ops): Now a bsd_uthread_target.
10223         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
10224         (bsd_uthread_close, bsd_uthread_mourn_inferior)
10225         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
10226         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
10227         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
10228         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
10229         (bsd_uthread_target): Delete function.
10230         (_initialize_bsd_uthread): Remove reference to
10231         complete_target_initialization.
10232
10233         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
10234         (target_bfd): ... this new class.
10235         (target_bfd_xfer_partial, target_bfd_get_section_table)
10236         (target_bfd_close): Refactor as target_bfd methods.
10237         (target_bfd::~target_bfd): New.
10238         (target_bfd_reopen): Adjust.
10239         (target_bfd::close): New.
10240
10241         * record-btrace.c (record_btrace_target): New class.
10242         (record_btrace_ops): Now a record_btrace_target.
10243         (record_btrace_open, record_btrace_stop_recording)
10244         (record_btrace_disconnect, record_btrace_close)
10245         (record_btrace_async, record_btrace_info)
10246         (record_btrace_insn_history, record_btrace_insn_history_range)
10247         (record_btrace_insn_history_from, record_btrace_call_history)
10248         (record_btrace_call_history_range)
10249         (record_btrace_call_history_from, record_btrace_record_method)
10250         (record_btrace_is_replaying, record_btrace_will_replay)
10251         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
10252         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
10253         (record_btrace_store_registers, record_btrace_prepare_to_store)
10254         (record_btrace_to_get_unwinder)
10255         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
10256         (record_btrace_commit_resume, record_btrace_wait)
10257         (record_btrace_stop, record_btrace_can_execute_reverse)
10258         (record_btrace_stopped_by_sw_breakpoint)
10259         (record_btrace_supports_stopped_by_sw_breakpoint)
10260         (record_btrace_stopped_by_hw_breakpoint)
10261         (record_btrace_supports_stopped_by_hw_breakpoint)
10262         (record_btrace_update_thread_list, record_btrace_thread_alive)
10263         (record_btrace_goto_begin, record_btrace_goto_end)
10264         (record_btrace_goto, record_btrace_stop_replaying_all)
10265         (record_btrace_execution_direction)
10266         (record_btrace_prepare_to_generate_core)
10267         (record_btrace_done_generating_core): Refactor as
10268         record_btrace_target methods.
10269         (init_record_btrace_ops): Delete.
10270         (_initialize_record_btrace): Remove reference to
10271         init_record_btrace_ops.
10272         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
10273         the execution_direction global.
10274         (record_full_base_target, record_full_target)
10275         (record_full_core_target): New classes.
10276         (record_full_ops): Now a record_full_target.
10277         (record_full_core_ops): Now a record_full_core_target.
10278         (record_full_target::detach, record_full_target::disconnect)
10279         (record_full_core_target::disconnect)
10280         (record_full_target::mourn_inferior, record_full_target::kill):
10281         New.
10282         (record_full_open, record_full_close, record_full_async): Refactor
10283         as methods of the record_full_base_target class.
10284         (record_full_resume, record_full_commit_resume): Refactor
10285         as methods of the record_full_target class.
10286         (record_full_wait, record_full_stopped_by_watchpoint)
10287         (record_full_stopped_data_address)
10288         (record_full_stopped_by_sw_breakpoint)
10289         (record_full_supports_stopped_by_sw_breakpoint)
10290         (record_full_stopped_by_hw_breakpoint)
10291         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
10292         methods of the record_full_base_target class.
10293         (record_full_store_registers, record_full_xfer_partial)
10294         (record_full_insert_breakpoint, record_full_remove_breakpoint):
10295         Refactor as methods of the record_full_target class.
10296         (record_full_can_execute_reverse, record_full_get_bookmark)
10297         (record_full_goto_bookmark, record_full_execution_direction)
10298         (record_full_record_method, record_full_info, record_full_delete)
10299         (record_full_is_replaying, record_full_will_replay)
10300         (record_full_goto_begin, record_full_goto_end, record_full_goto)
10301         (record_full_stop_replaying): Refactor as methods of the
10302         record_full_base_target class.
10303         (record_full_core_resume, record_full_core_kill)
10304         (record_full_core_fetch_registers)
10305         (record_full_core_prepare_to_store)
10306         (record_full_core_store_registers, record_full_core_xfer_partial)
10307         (record_full_core_insert_breakpoint)
10308         (record_full_core_remove_breakpoint)
10309         (record_full_core_has_execution): Refactor
10310         as methods of the record_full_core_target class.
10311         (record_full_base_target::supports_delete_record): New.
10312         (init_record_full_ops): Delete.
10313         (init_record_full_core_ops): Delete.
10314         (record_full_save): Refactor as method of the
10315         record_full_base_target class.
10316         (_initialize_record_full): Remove references to
10317         init_record_full_ops and init_record_full_core_ops.
10318
10319         * remote.c (remote_target, extended_remote_target): New classes.
10320         (remote_ops): Now a remote_target.
10321         (extended_remote_ops): Now an extended_remote_target.
10322         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
10323         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
10324         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
10325         (remote_pass_signals, remote_set_syscall_catchpoint)
10326         (remote_program_signals, )
10327         (remote_thread_always_alive): Remove target_ops parameter.
10328         (remote_thread_alive, remote_thread_name)
10329         (remote_update_thread_list, remote_threads_extra_info)
10330         (remote_static_tracepoint_marker_at)
10331         (remote_static_tracepoint_markers_by_strid)
10332         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
10333         (remote_open): Refactor as methods of remote_target.
10334         (extended_remote_open, extended_remote_detach)
10335         (extended_remote_attach, extended_remote_post_attach):
10336         (extended_remote_supports_disable_randomization)
10337         (extended_remote_create_inferior): : Refactor as method of
10338         extended_remote_target.
10339         (remote_set_permissions, remote_open_1, remote_detach)
10340         (remote_follow_fork, remote_follow_exec, remote_disconnect)
10341         (remote_resume, remote_commit_resume, remote_stop)
10342         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
10343         (remote_terminal_ours, remote_wait, remote_fetch_registers)
10344         (remote_prepare_to_store, remote_store_registers)
10345         (remote_flash_erase, remote_flash_done, remote_files_info)
10346         (remote_kill, remote_mourn, remote_insert_breakpoint)
10347         (remote_remove_breakpoint, remote_insert_watchpoint)
10348         (remote_watchpoint_addr_within_range)
10349         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
10350         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
10351         (remote_supports_stopped_by_sw_breakpoint)
10352         (remote_stopped_by_hw_breakpoint)
10353         (remote_supports_stopped_by_hw_breakpoint)
10354         (remote_stopped_by_watchpoint, remote_stopped_data_address)
10355         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
10356         (remote_verify_memory): Refactor as methods of remote_target.
10357         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
10358         parameter.
10359         (remote_xfer_partial, remote_get_memory_xfer_limit)
10360         (remote_search_memory, remote_rcmd, remote_memory_map)
10361         (remote_pid_to_str, remote_get_thread_local_address)
10362         (remote_get_tib_address, remote_read_description): Refactor as
10363         methods of remote_target.
10364         (remote_target::fileio_open, remote_target::fileio_pwrite)
10365         (remote_target::fileio_pread, remote_target::fileio_close): New.
10366         (remote_hostio_readlink, remote_hostio_fstat)
10367         (remote_filesystem_is_local, remote_can_execute_reverse)
10368         (remote_supports_non_stop, remote_supports_disable_randomization)
10369         (remote_supports_multi_process, remote_supports_cond_breakpoints)
10370         (remote_supports_enable_disable_tracepoint)
10371         (remote_supports_string_tracing)
10372         (remote_can_run_breakpoint_commands, remote_trace_init)
10373         (remote_download_tracepoint, remote_can_download_tracepoint)
10374         (remote_download_trace_state_variable, remote_enable_tracepoint)
10375         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
10376         (remote_trace_start, remote_get_trace_status)
10377         (remote_get_tracepoint_status, remote_trace_stop)
10378         (remote_trace_find, remote_get_trace_state_variable_value)
10379         (remote_save_trace_data, remote_get_raw_trace_data)
10380         (remote_set_disconnected_tracing, remote_core_of_thread)
10381         (remote_set_circular_trace_buffer, remote_traceframe_info)
10382         (remote_get_min_fast_tracepoint_insn_len)
10383         (remote_set_trace_buffer_size, remote_set_trace_notes)
10384         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
10385         (remote_disable_btrace, remote_teardown_btrace)
10386         (remote_read_btrace, remote_btrace_conf)
10387         (remote_augmented_libraries_svr4_read, remote_load)
10388         (remote_pid_to_exec_file, remote_can_do_single_step)
10389         (remote_execution_direction, remote_thread_handle_to_thread_info):
10390         Refactor as methods of remote_target.
10391         (init_remote_ops, init_extended_remote_ops): Delete.
10392         (remote_can_async_p, remote_is_async_p, remote_async)
10393         (remote_thread_events, remote_upload_tracepoints)
10394         (remote_upload_trace_state_variables): Refactor as methods of
10395         remote_target.
10396         (_initialize_remote): Remove references to init_remote_ops and
10397         init_extended_remote_ops.
10398
10399         * remote-sim.c (gdbsim_target): New class.
10400         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
10401         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
10402         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
10403         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
10404         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
10405         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
10406         Refactor as methods of gdbsim_target.
10407         (gdbsim_ops): Now a gdbsim_target.
10408         (init_gdbsim_ops): Delete.
10409         (gdbsim_cntrl_c): Adjust.
10410         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
10411
10412         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
10413         (the_amd64_linux_nat_target): New.
10414         (amd64_linux_fetch_inferior_registers)
10415         (amd64_linux_store_inferior_registers): Refactor as methods of
10416         amd64_linux_nat_target.
10417         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
10418         * i386-linux-nat.c: Don't include "linux-nat.h".
10419         (i386_linux_nat_target): New class.
10420         (the_i386_linux_nat_target): New.
10421         (i386_linux_fetch_inferior_registers)
10422         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
10423         as methods of i386_linux_nat_target.
10424         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
10425         * inf-child.c (inf_child_ops): Delete.
10426         (inf_child_fetch_inferior_registers)
10427         (inf_child_store_inferior_registers): Delete.
10428         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
10429         methods of inf_child_target.
10430         (inf_child_target::supports_terminal_ours)
10431         (inf_child_target::terminal_init)
10432         (inf_child_target::terminal_inferior)
10433         (inf_child_target::terminal_ours_for_output)
10434         (inf_child_target::terminal_ours, inf_child_target::interrupt)
10435         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
10436         New.
10437         (inf_child_open, inf_child_disconnect, inf_child_close)
10438         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
10439         (inf_child_post_startup_inferior, inf_child_can_run)
10440         (inf_child_pid_to_exec_file): Refactor as methods of
10441         inf_child_target.
10442         (inf_child_follow_fork): Delete.
10443         (inf_child_target::can_create_inferior)
10444         (inf_child_target::can_attach): New.
10445         (inf_child_target::has_all_memory, inf_child_target::has_memory)
10446         (inf_child_target::has_stack, inf_child_target::has_registers)
10447         (inf_child_target::has_execution): New.
10448         (inf_child_fileio_open, inf_child_fileio_pwrite)
10449         (inf_child_fileio_pread, inf_child_fileio_fstat)
10450         (inf_child_fileio_close, inf_child_fileio_unlink)
10451         (inf_child_fileio_readlink, inf_child_use_agent)
10452         (inf_child_can_use_agent): Refactor as methods of
10453         inf_child_target.
10454         (return_zero, inf_child_target): Delete.
10455         (inf_child_target::inf_child_target): New.
10456         * inf-child.h: Include "target.h".
10457         (inf_child_target): Delete function prototype.
10458         (inf_child_target): New class.
10459         (inf_child_open_target, inf_child_mourn_inferior)
10460         (inf_child_maybe_unpush_target): Delete.
10461         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
10462         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
10463         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
10464         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
10465         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
10466         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
10467         (inf_ptrace_wait, inf_ptrace_xfer_partial)
10468         (inf_ptrace_thread_alive, inf_ptrace_files_info)
10469         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
10470         methods of inf_ptrace_target.
10471         (inf_ptrace_target): Delete function.
10472         * inf-ptrace.h: Include "inf-child.h".
10473         (inf_ptrace_target): Delete function declaration.
10474         (inf_ptrace_target): New class.
10475         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
10476         * linux-nat.c (linux_target): New.
10477         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
10478         (linux_nat_target::~linux_nat_target): New.
10479         (linux_child_post_attach, linux_child_post_startup_inferior)
10480         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
10481         (linux_child_remove_fork_catchpoint)
10482         (linux_child_insert_vfork_catchpoint)
10483         (linux_child_remove_vfork_catchpoint)
10484         (linux_child_insert_exec_catchpoint)
10485         (linux_child_remove_exec_catchpoint)
10486         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
10487         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
10488         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
10489         (linux_nat_stopped_data_address)
10490         (linux_nat_stopped_by_sw_breakpoint)
10491         (linux_nat_supports_stopped_by_sw_breakpoint)
10492         (linux_nat_stopped_by_hw_breakpoint)
10493         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
10494         (linux_nat_kill, linux_nat_mourn_inferior)
10495         (linux_nat_xfer_partial, linux_nat_thread_alive)
10496         (linux_nat_update_thread_list, linux_nat_pid_to_str)
10497         (linux_nat_thread_name, linux_child_pid_to_exec_file)
10498         (linux_child_static_tracepoint_markers_by_strid)
10499         (linux_nat_is_async_p, linux_nat_can_async_p)
10500         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
10501         (linux_nat_supports_multi_process)
10502         (linux_nat_supports_disable_randomization, linux_nat_async)
10503         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
10504         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
10505         (linux_nat_fileio_open, linux_nat_fileio_readlink)
10506         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
10507         methods of linux_nat_target.
10508         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
10509         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
10510         parameter.
10511         (check_stopped_by_watchpoint): Adjust.
10512         (linux_xfer_partial): Delete.
10513         (linux_target_install_ops, linux_target, linux_nat_add_target):
10514         Delete.
10515         (linux_nat_target::linux_nat_target): New.
10516         * linux-nat.h: Include "inf-ptrace.h".
10517         (linux_nat_target): New.
10518         (linux_target, linux_target_install_ops, linux_nat_add_target):
10519         Delete function declarations.
10520         (linux_target): Declare global.
10521         * linux-thread-db.c (thread_db_target): New.
10522         (thread_db_target::thread_db_target): New.
10523         (thread_db_ops): Delete.
10524         (the_thread_db_target): New.
10525         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
10526         (thread_db_update_thread_list, thread_db_pid_to_str)
10527         (thread_db_extra_thread_info)
10528         (thread_db_thread_handle_to_thread_info)
10529         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
10530         (thread_db_resume): Refactor as methods of thread_db_target.
10531         (init_thread_db_ops): Delete.
10532         (_initialize_thread_db): Remove reference to init_thread_db_ops.
10533         * x86-linux-nat.c: Don't include "linux-nat.h".
10534         (super_post_startup_inferior): Delete.
10535         (x86_linux_nat_target::~x86_linux_nat_target): New.
10536         (x86_linux_child_post_startup_inferior)
10537         (x86_linux_read_description, x86_linux_enable_btrace)
10538         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
10539         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
10540         methods of x86_linux_nat_target.
10541         (x86_linux_create_target): Delete.  Bits folded ...
10542         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
10543         pointer.
10544         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
10545         (x86_linux_nat_target): New class.
10546         (x86_linux_create_target): Delete.
10547         (x86_linux_add_target): Now takes a linux_nat_target pointer.
10548         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
10549         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
10550         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
10551         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
10552         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
10553         make extern.
10554         (x86_use_watchpoints): Delete.
10555         * x86-nat.h: Include "breakpoint.h" and "target.h".
10556         (x86_use_watchpoints): Delete.
10557         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
10558         (x86_stopped_by_watchpoint, x86_stopped_data_address)
10559         (x86_insert_watchpoint, x86_remove_watchpoint)
10560         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
10561         (x86_stopped_by_hw_breakpoint): New declarations.
10562         (x86_nat_target): New template class.
10563
10564         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
10565         (the_ppc_linux_nat_target): New.
10566         (ppc_linux_fetch_inferior_registers)
10567         (ppc_linux_can_use_hw_breakpoint)
10568         (ppc_linux_region_ok_for_hw_watchpoint)
10569         (ppc_linux_ranged_break_num_registers)
10570         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
10571         (ppc_linux_insert_mask_watchpoint)
10572         (ppc_linux_remove_mask_watchpoint)
10573         (ppc_linux_can_accel_watchpoint_condition)
10574         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
10575         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
10576         (ppc_linux_watchpoint_addr_within_range)
10577         (ppc_linux_masked_watch_num_registers)
10578         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
10579         (ppc_linux_read_description): Refactor as methods of
10580         ppc_linux_nat_target.
10581         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
10582
10583         * procfs.c (procfs_xfer_partial): Delete forward declaration.
10584         (procfs_target): New class.
10585         (the_procfs_target): New.
10586         (procfs_target): Delete function.
10587         (procfs_auxv_parse, procfs_attach, procfs_detach)
10588         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
10589         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
10590         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
10591         (procfs_create_inferior, procfs_update_thread_list)
10592         (procfs_thread_alive, procfs_pid_to_str)
10593         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
10594         (procfs_stopped_data_address, procfs_insert_watchpoint)
10595         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
10596         (proc_find_memory_regions, procfs_info_proc)
10597         (procfs_make_note_section): Refactor as methods of procfs_target.
10598         (_initialize_procfs): Adjust.
10599         * sol-thread.c (sol_thread_target): New class.
10600         (sol_thread_ops): Now a sol_thread_target.
10601         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
10602         (sol_thread_fetch_registers, sol_thread_store_registers)
10603         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
10604         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
10605         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
10606         (init_sol_thread_ops): Delete.
10607         (_initialize_sol_thread): Adjust.  Remove references to
10608         init_sol_thread_ops and complete_target_initialization.
10609
10610         * windows-nat.c (windows_nat_target): New class.
10611         (windows_fetch_inferior_registers)
10612         (windows_store_inferior_registers, windows_resume, windows_wait)
10613         (windows_attach, windows_detach, windows_pid_to_exec_file)
10614         (windows_files_info, windows_create_inferior)
10615         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
10616         (windows_close, windows_pid_to_str, windows_xfer_partial)
10617         (windows_get_tib_address, windows_get_ada_task_ptid)
10618         (windows_thread_name, windows_thread_alive): Refactor as
10619         windows_nat_target methods.
10620         (do_initial_windows_stuff): Adjust.
10621         (windows_target): Delete function.
10622         (_initialize_windows_nat): Adjust.
10623
10624         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
10625         (darwin_mourn_inferior, darwin_kill_inferior)
10626         (darwin_create_inferior, darwin_attach, darwin_detach)
10627         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
10628         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
10629         (darwin_supports_multi_process): Refactor as darwin_nat_target
10630         methods.
10631         (darwin_resume_to, darwin_files_info): Delete.
10632         (_initialize_darwin_inferior): Rename to ...
10633         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
10634         * darwin-nat.h: Include "inf-child.h".
10635         (darwin_nat_target): New class.
10636         (darwin_complete_target): Delete.
10637         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
10638         (darwin_target): New.
10639         (i386_darwin_fetch_inferior_registers)
10640         (i386_darwin_store_inferior_registers): Refactor as methods of
10641         darwin_nat_target.
10642         (darwin_complete_target): Delete, with ...
10643         (_initialize_i386_darwin_nat): ... bits factored out here.
10644
10645         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
10646         (the_alpha_linux_nat_target): New.
10647         (alpha_linux_register_u_offset): Refactor as
10648         alpha_linux_nat_target method.
10649         (_initialize_alpha_linux_nat): Adjust.
10650         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
10651         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
10652         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
10653         methods of linux_nat_trad_target.
10654         (linux_trad_target): Delete.
10655         * linux-nat-trad.h (linux_trad_target): Delete function.
10656         (linux_nat_trad_target): New class.
10657         * mips-linux-nat.c (mips_linux_nat_target): New class.
10658         (super_fetch_registers, super_store_registers, super_close):
10659         Delete.
10660         (the_mips_linux_nat_target): New.
10661         (mips64_linux_regsets_fetch_registers)
10662         (mips64_linux_regsets_store_registers)
10663         (mips64_linux_fetch_registers, mips64_linux_store_registers)
10664         (mips_linux_register_u_offset, mips_linux_read_description)
10665         (mips_linux_can_use_hw_breakpoint)
10666         (mips_linux_stopped_by_watchpoint)
10667         (mips_linux_stopped_data_address)
10668         (mips_linux_region_ok_for_hw_watchpoint)
10669         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
10670         (mips_linux_close): Refactor as methods of mips_linux_nat.
10671         (_initialize_mips_linux_nat): Adjust to C++ification.
10672
10673         * aix-thread.c (aix_thread_target): New class.
10674         (aix_thread_ops): Now an aix_thread_target.
10675         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
10676         (aix_thread_fetch_registers, aix_thread_store_registers)
10677         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
10678         (aix_thread_thread_alive, aix_thread_pid_to_str)
10679         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
10680         Refactor as methods of aix_thread_target.
10681         (init_aix_thread_ops): Delete.
10682         (_initialize_aix_thread): Remove references to init_aix_thread_ops
10683         and complete_target_initialization.
10684         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
10685         (rs6000_nat_target): New class.
10686         (the_rs6000_nat_target): New.
10687         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
10688         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
10689         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
10690         (super_create_inferior): Delete.
10691         (_initialize_rs6000_nat): Adjust to C++ification.
10692
10693         * arm-linux-nat.c (arm_linux_nat_target): New class.
10694         (the_arm_linux_nat_target): New.
10695         (arm_linux_fetch_inferior_registers)
10696         (arm_linux_store_inferior_registers, arm_linux_read_description)
10697         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
10698         (arm_linux_remove_hw_breakpoint)
10699         (arm_linux_region_ok_for_hw_watchpoint)
10700         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
10701         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
10702         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
10703         arm_linux_nat_target.
10704         (_initialize_arm_linux_nat): Adjust to C++ification.
10705
10706         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
10707         (the_aarch64_linux_nat_target): New.
10708         (aarch64_linux_fetch_inferior_registers)
10709         (aarch64_linux_store_inferior_registers)
10710         (aarch64_linux_child_post_startup_inferior)
10711         (aarch64_linux_read_description)
10712         (aarch64_linux_can_use_hw_breakpoint)
10713         (aarch64_linux_insert_hw_breakpoint)
10714         (aarch64_linux_remove_hw_breakpoint)
10715         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
10716         (aarch64_linux_region_ok_for_hw_watchpoint)
10717         (aarch64_linux_stopped_data_address)
10718         (aarch64_linux_stopped_by_watchpoint)
10719         (aarch64_linux_watchpoint_addr_within_range)
10720         (aarch64_linux_can_do_single_step): Refactor as methods of
10721         aarch64_linux_nat_target.
10722         (super_post_startup_inferior): Delete.
10723         (_initialize_aarch64_linux_nat): Adjust to C++ification.
10724
10725         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
10726         (the_hppa_linux_nat_target): New.
10727         (hppa_linux_fetch_inferior_registers)
10728         (hppa_linux_store_inferior_registers): Refactor as methods of
10729         hppa_linux_nat_target.
10730         (_initialize_hppa_linux_nat): Adjust to C++ification.
10731
10732         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
10733         (the_ia64_linux_nat_target): New.
10734         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
10735         (ia64_linux_stopped_data_address)
10736         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
10737         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
10738         ia64_linux_nat_target methods.
10739         (super_xfer_partial): Delete.
10740         (_initialize_ia64_linux_nat): Adjust to C++ification.
10741
10742         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
10743         (the_m32r_linux_nat_target): New.
10744         (m32r_linux_fetch_inferior_registers)
10745         (m32r_linux_store_inferior_registers): Refactor as
10746         m32r_linux_nat_target methods.
10747         (_initialize_m32r_linux_nat): Adjust to C++ification.
10748
10749         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
10750         (the_m68k_linux_nat_target): New.
10751         (m68k_linux_fetch_inferior_registers)
10752         (m68k_linux_store_inferior_registers): Refactor as
10753         m68k_linux_nat_target methods.
10754         (_initialize_m68k_linux_nat): Adjust to C++ification.
10755
10756         * s390-linux-nat.c (s390_linux_nat_target): New class.
10757         (the_s390_linux_nat_target): New.
10758         (s390_linux_fetch_inferior_registers)
10759         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
10760         (s390_insert_watchpoint, s390_remove_watchpoint)
10761         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
10762         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
10763         (s390_auxv_parse, s390_read_description): Refactor as methods of
10764         s390_linux_nat_target.
10765         (_initialize_s390_nat): Adjust to C++ification.
10766
10767         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
10768         (the_sparc_linux_nat_target): New.
10769         (_initialize_sparc_linux_nat): Adjust to C++ification.
10770         * sparc-nat.c (sparc_fetch_inferior_registers)
10771         (sparc_store_inferior_registers): Remove target_ops parameter.
10772         * sparc-nat.h (sparc_fetch_inferior_registers)
10773         (sparc_store_inferior_registers): Remove target_ops parameter.
10774         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
10775         (the_sparc64_linux_nat_target): New.
10776         (_initialize_sparc64_linux_nat): Adjust to C++ification.
10777
10778         * spu-linux-nat.c (spu_linux_nat_target): New class.
10779         (the_spu_linux_nat_target): New.
10780         (spu_child_post_startup_inferior, spu_child_post_attach)
10781         (spu_child_wait, spu_fetch_inferior_registers)
10782         (spu_store_inferior_registers, spu_xfer_partial)
10783         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
10784         methods.
10785         (_initialize_spu_nat): Adjust to C++ification.
10786
10787         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
10788         (the_tilegx_linux_nat_target): New.
10789         (fetch_inferior_registers, store_inferior_registers):
10790         Refactor as methods.
10791         (_initialize_tile_linux_nat): Adjust to C++ification.
10792
10793         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
10794         (the_xtensa_linux_nat_target): New.
10795         (xtensa_linux_fetch_inferior_registers)
10796         (xtensa_linux_store_inferior_registers): Refactor as
10797         xtensa_linux_nat_target methods.
10798         (_initialize_xtensa_linux_nat): Adjust to C++ification.
10799
10800         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
10801         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
10802         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
10803         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
10804         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
10805         (fbsd_stopped_by_sw_breakpoint)
10806         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
10807         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
10808         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
10809         (fbsd_post_startup_inferior, fbsd_post_attach)
10810         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
10811         (fbsd_set_syscall_catchpoint)
10812         (super_xfer_partial, super_resume, super_wait)
10813         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
10814         (fbsd_handle_debug_trap): Remove target_ops parameter.
10815         (fbsd_nat_add_target): Delete.
10816         * fbsd-nat.h: Include "inf-ptrace.h".
10817         (fbsd_nat_add_target): Delete.
10818         (USE_SIGTRAP_SIGINFO): Define.
10819         (fbsd_nat_target): New class.
10820
10821         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
10822         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
10823         (amd64bsd_target): Delete.
10824         * amd64-bsd-nat.h: New file.
10825         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
10826         "x86-bsd-nat.h".
10827         (amd64_fbsd_nat_target): New class.
10828         (the_amd64_fbsd_nat_target): New.
10829         (amd64fbsd_read_description): Refactor as method of
10830         amd64_fbsd_nat_target.
10831         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
10832         (_initialize_amd64fbsd_nat): Adjust to C++ification.
10833         * amd64-nat.h (amd64bsd_target): Delete function declaration.
10834         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
10835         (i386bsd_store_inferior_registers): Remove target_ops parameter.
10836         (i386bsd_target): Delete.
10837         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
10838         (i386bsd_fetch_inferior_registers)
10839         (i386bsd_store_inferior_registers): Declare.
10840         (i386_bsd_nat_target): New class.
10841         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
10842         (the_i386_fbsd_nat_target): New.
10843         (i386fbsd_resume, i386fbsd_read_description): Refactor as
10844         i386_fbsd_nat_target methods.
10845         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
10846         (_initialize_i386fbsd_nat): Adjust to C++ification.
10847         * x86-bsd-nat.c (super_mourn_inferior): Delete.
10848         (x86bsd_mourn_inferior, x86bsd_target): Delete.
10849         (_initialize_x86_bsd_nat): Adjust to C++ification.
10850         * x86-bsd-nat.h: Include "x86-nat.h".
10851         (x86bsd_target): Delete declaration.
10852         (x86bsd_nat_target): New class.
10853
10854         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
10855         (the_aarch64_fbsd_nat_target): New.
10856         (aarch64_fbsd_fetch_inferior_registers)
10857         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
10858         aarch64_fbsd_nat_target.
10859         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
10860         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
10861         (the_alpha_bsd_nat_target): New.
10862         (alphabsd_fetch_inferior_registers)
10863         (alphabsd_store_inferior_registers): Refactor as
10864         alpha_bsd_nat_target methods.
10865         (_initialize_alphabsd_nat): Refactor as methods of
10866         alpha_bsd_nat_target.
10867         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
10868         (the_amd64_nbsd_nat_target): New.
10869         (_initialize_amd64nbsd_nat): Adjust to C++ification.
10870         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
10871         (the_amd64_obsd_nat_target): New.
10872         (_initialize_amd64obsd_nat): Adjust to C++ification.
10873         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
10874         (the_arm_fbsd_nat_target): New.
10875         (arm_fbsd_fetch_inferior_registers)
10876         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
10877         (_initialize_arm_fbsd_nat): Refactor as methods of
10878         arm_fbsd_nat_target.
10879         (_initialize_arm_fbsd_nat): Adjust to C++ification.
10880         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
10881         (the_arm_netbsd_nat_target): New.
10882         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
10883         arm_netbsd_nat_target.
10884         (_initialize_arm_netbsd_nat): Adjust to C++ification.
10885         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
10886         (the_hppa_nbsd_nat_target): New.
10887         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
10888         hppa_nbsd_nat_target methods.
10889         (_initialize_hppanbsd_nat): Adjust to C++ification.
10890         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
10891         (the_hppa_obsd_nat_target): New.
10892         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
10893         methods of hppa_obsd_nat_target.
10894         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
10895         add_target.
10896         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
10897         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
10898         add_target.
10899         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
10900         (_initialize_i386obsd_nat): Use add_target.
10901         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
10902         (the_m68k_bsd_nat_target): New.
10903         (m68kbsd_fetch_inferior_registers)
10904         (m68kbsd_store_inferior_registers): Refactor as methods of
10905         m68k_bsd_nat_target.
10906         (_initialize_m68kbsd_nat): Adjust to C++ification.
10907         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
10908         (the_mips_fbsd_nat_target): New.
10909         (mips_fbsd_fetch_inferior_registers)
10910         (mips_fbsd_store_inferior_registers): Refactor as methods of
10911         mips_fbsd_nat_target.
10912         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
10913         add_target.
10914         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
10915         (the_mips_nbsd_nat_target): New.
10916         (mipsnbsd_fetch_inferior_registers)
10917         (mipsnbsd_store_inferior_registers): Refactor as methods of
10918         mips_nbsd_nat_target.
10919         (_initialize_mipsnbsd_nat): Adjust to C++ification.
10920         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
10921         (the_mips64_obsd_nat_target): New.
10922         (mips64obsd_fetch_inferior_registers)
10923         (mips64obsd_store_inferior_registers): Refactor as methods of
10924         mips64_obsd_nat_target.
10925         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
10926         add_target.
10927         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
10928         nbsd_nat_target.
10929         * nbsd-nat.h: Include "inf-ptrace.h".
10930         (nbsd_nat_target): New class.
10931         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
10932         (obsd_wait): Refactor as methods of obsd_nat_target.
10933         (obsd_add_target): Delete.
10934         * obsd-nat.h: Include "inf-ptrace.h".
10935         (obsd_nat_target): New class.
10936         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
10937         (the_ppc_fbsd_nat_target): New.
10938         (ppcfbsd_fetch_inferior_registers)
10939         (ppcfbsd_store_inferior_registers): Refactor as methods of
10940         ppc_fbsd_nat_target.
10941         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
10942         add_target.
10943         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
10944         (the_ppc_nbsd_nat_target): New.
10945         (ppcnbsd_fetch_inferior_registers)
10946         (ppcnbsd_store_inferior_registers): Refactor as methods of
10947         ppc_nbsd_nat_target.
10948         (_initialize_ppcnbsd_nat): Adjust to C++ification.
10949         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
10950         (the_ppc_obsd_nat_target): New.
10951         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
10952         methods of ppc_obsd_nat_target.
10953         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
10954         add_target.
10955         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
10956         (the_sh_nbsd_nat_target): New.
10957         (shnbsd_fetch_inferior_registers)
10958         (shnbsd_store_inferior_registers): Refactor as methods of
10959         sh_nbsd_nat_target.
10960         (_initialize_shnbsd_nat): Adjust to C++ification.
10961         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
10962         (inf_ptrace_xfer_partial): Delete.
10963         (sparc_xfer_partial, sparc_target): Delete.
10964         * sparc-nat.h (sparc_fetch_inferior_registers)
10965         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
10966         (sparc_target): Delete function declaration.
10967         (sparc_target): New template class.
10968         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
10969         (_initialize_sparcnbsd_nat): Adjust to C++ification.
10970         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
10971         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
10972         add_target.
10973         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
10974         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
10975         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
10976         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
10977         add_target.
10978         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
10979         (the_vax_bsd_nat_target): New.
10980         (vaxbsd_fetch_inferior_registers)
10981         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
10982         methods.
10983         (_initialize_vaxbsd_nat): Adjust to C++ification.
10984
10985         * bsd-kvm.c (bsd_kvm_target): New class.
10986         (bsd_kvm_ops): Now a bsd_kvm_target.
10987         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
10988         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
10989         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
10990         bsd_kvm_target.
10991         (bsd_kvm_return_one): Delete.
10992         (bsd_kvm_add_target): Adjust to C++ification.
10993
10994         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
10995         (nto_procfs_target_procfs): New classes.
10996         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
10997         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
10998         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
10999         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
11000         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
11001         (procfs_remove_hw_breakpoint, procfs_resume)
11002         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
11003         (procfs_kill_inferior, procfs_store_registers)
11004         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
11005         as methods of nto_procfs_target.
11006         (nto_procfs_ops): Now an nto_procfs_target_procfs.
11007         (nto_native_ops): Delete.
11008         (procfs_open, procfs_native_open): Delete.
11009         (nto_native_ops): Now an nto_procfs_target_native.
11010         (init_procfs_targets): Adjust to C++ification.
11011         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
11012         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
11013         Refactor as methods of nto_procfs_target.
11014
11015         * go32-nat.c (go32_nat_target): New class.
11016         (the_go32_nat_target): New.
11017         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
11018         (go32_store_registers, go32_xfer_partial, go32_files_info)
11019         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
11020         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
11021         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
11022         (go32_pid_to_str): Refactor as methods of go32_nat_target.
11023         (go32_target): Delete.
11024         (_initialize_go32_nat): Adjust to C++ification.
11025
11026         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
11027         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
11028         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
11029         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
11030         gnu_nat_target.
11031         (gnu_target): Delete.
11032         * gnu-nat.h (gnu_target): Delete.
11033         (gnu_nat_target): New class.
11034         * i386-gnu-nat.c (gnu_base_target): New.
11035         (i386_gnu_nat_target): New class.
11036         (the_i386_gnu_nat_target): New.
11037         (_initialize_i386gnu_nat): Adjust to C++ification.
11038
11039 2018-05-02  Pedro Alves  <palves@redhat.com>
11040
11041         * bfd-target.c (target_bfd_xclose): Rename to ...
11042         (target_bfd_close): ... this.
11043         (target_bfd_reopen): Adjust.
11044         * target.c (target_close): Remove references to to_xclose.
11045         * target.h (target_ops::to_xclose): Delete.
11046         (target_ops::to_close): Update comments.
11047
11048 2018-05-02  Pedro Alves  <palves@redhat.com>
11049
11050         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
11051         "linux-nat.h".
11052         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
11053         * inf-ptrace.c (inf_ptrace_register_u_offset)
11054         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
11055         (inf_ptrace_store_register, inf_ptrace_store_registers)
11056         (inf_ptrace_trad_target): Move to ...
11057         * linux-nat-trad.c: ... this new file.
11058         * linux-nat-trad.h: New file.
11059         * linux-nat.c (linux_target_install_ops): Make extern.
11060         (linux_trad_target): Delete.
11061         * linux-nat.h (linux_trad_target): Delete declaration.
11062         (linux_target_install_ops): Declare.
11063         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
11064         "linux-nat.h".
11065
11066 2018-05-02  Pedro Alves  <palves@redhat.com>
11067
11068         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
11069         procfs_target/add_target here.
11070         * procfs.c (procfs_target): Make static.
11071         (_initialize_procfs): Call add_target here.
11072         * procfs.h (struct target_ops): Remove forward declaration.
11073         (procfs_target): Remove declaration.
11074         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
11075
11076 2018-05-02  Pedro Alves  <palves@redhat.com>
11077
11078         * procfs.c (procfs_stopped_by_watchpoint)
11079         (procfs_insert_watchpoint, procfs_remove_watchpoint)
11080         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
11081         Forward declare.
11082         (procfs_use_watchpoints): Delete, move contents...
11083         (procfs_target): ... here.
11084         * procfs.h (procfs_use_watchpoints): Delete declaration.
11085         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
11086         procfs_use_watchpoints.
11087         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
11088         procfs_use_watchpoints.
11089
11090 2018-05-02  Tom Tromey  <tom@tromey.com>
11091
11092         PR python/20084:
11093         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
11094         and var_zuinteger_unlimited.
11095         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
11096         and PARAM_ZUINTEGER_UNLIMITED.
11097         (set_parameter_value): Handle var_zuinteger and
11098         var_zuinteger_unlimited.
11099         (add_setshow_generic): Likewise.
11100         (parmpy_init): Likewise.
11101
11102 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
11103
11104         PR rust/23124
11105         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
11106         pointer is not null before dereferencing it.
11107
11108 2018-04-30  Tom Tromey  <tom@tromey.com>
11109
11110         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
11111         is_mi_like_p.
11112
11113 2018-04-30  Tom Tromey  <tom@tromey.com>
11114
11115         * breakpoint.c (mention): Remove use of is_mi_like_p.
11116         (print_mention_ranged_breakpoint): Likewise.
11117         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
11118         of is_mi_like_p.
11119
11120 2018-04-30  Tom Tromey  <tom@tromey.com>
11121
11122         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
11123
11124 2018-04-30  Tom Tromey  <tom@tromey.com>
11125
11126         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
11127         (info_spu_event_command): Remove some uses of is_mi_like_p.
11128
11129 2018-04-30  Tom Tromey  <tom@tromey.com>
11130
11131         * python/py-framefilter.c (py_print_single_arg)
11132         (enumerate_locals, py_print_args, py_print_frame): Remove some
11133         uses of is_mi_like_p.
11134
11135 2018-04-30  Tom Tromey  <tom@tromey.com>
11136
11137         * ui-out.c: Update.
11138         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
11139         * ui-out.h (ui_out::is_mi_like_p): Now const.
11140         (ui_out::do_is_mi_like_p): Now const.
11141         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
11142
11143 2018-04-30  Tom Tromey  <tom@tromey.com>
11144
11145         * varobj.c (varobj_set_visualizer): Use new_reference.
11146         * python/python.c (gdbpy_decode_line): Use new_reference.
11147         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
11148         new_reference.
11149
11150 2018-04-30  Tom Tromey  <tom@tromey.com>
11151
11152         * varobj.c (install_new_value): Use new_reference.
11153         * value.h (value_incref): Return void.  Swap intro comment with
11154         value_decref.
11155         * value.c (set_value_parent): Use new_reference.
11156         (value_incref): Return void.  Update intro comment.
11157         (release_value): Use new_reference.
11158         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
11159
11160 2018-04-30  Tom Tromey  <tom@tromey.com>
11161
11162         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
11163         * gdb_bfd.h (new_bfd_ref): Remove.
11164         (gdb_bfd_open): Update comment.
11165         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
11166         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
11167         (gdb_bfd_fdopenr): Use new_reference.
11168         * exec.c (exec_file_attach): Use new_reference.
11169
11170 2018-04-30  Tom Tromey  <tom@tromey.com>
11171
11172         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
11173         method.
11174
11175 2018-04-30  Tom Tromey  <tom@tromey.com>
11176
11177         * jit.c (jit_read_code_entry): Use type_align.
11178         * i386-tdep.c (i386_gdbarch_init): Don't call
11179         set_gdbarch_long_long_align_bit.
11180         * gdbarch.sh: Remove long_long_align_bit.
11181         * gdbarch.c, gdbarch.h: Rebuild.
11182         * arc-tdep.c (arc_type_align): New function.
11183         (arc_gdbarch_init): Use arc_type_align.  Don't call
11184         set_gdbarch_long_long_align_bit.
11185
11186 2018-04-30  Tom Tromey  <tom@tromey.com>
11187
11188         * rust-lang.c (rust_type_alignment): Remove.
11189         (rust_composite_type): Use type_align.
11190
11191 2018-04-30  Tom Tromey  <tom@tromey.com>
11192
11193         * NEWS: Mention Type.align.
11194         * python/py-type.c (typy_get_alignof): New function.
11195         (type_object_getset): Add "alignof".
11196
11197 2018-04-30  Tom Tromey  <tom@tromey.com>
11198
11199         PR exp/17095:
11200         * NEWS: Update.
11201         * std-operator.def (UNOP_ALIGNOF): New operator.
11202         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
11203         New.
11204         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
11205         * c-lang.c (c_op_print_tab): Add alignof.
11206         * c-exp.y (ALIGNOF): New token.
11207         (exp): Add "ALIGNOF" production.
11208         (ident_tokens): Add _Alignof and alignof.
11209
11210 2018-04-30  Tom Tromey  <tom@tromey.com>
11211
11212         * i386-tdep.c (i386_type_align): New function.
11213         (i386_gdbarch_init): Update.
11214         * gdbarch.sh (type_align): New method.
11215         * gdbarch.c, gdbarch.h: Rebuild.
11216         * arch-utils.h (default_type_align): Declare.
11217         * arch-utils.c (default_type_align): New function.
11218         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
11219         (struct type) <align_log2>: New field.
11220         <instance_flags>: Now a bitfield.
11221         (TYPE_RAW_ALIGN): New macro.
11222         (type_align, type_raw_align, set_type_align): Declare.
11223         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
11224         functions.
11225         * dwarf2read.c (quirk_rust_enum): Set type alignment.
11226         (get_alignment, maybe_set_alignment): New functions.
11227         (read_structure_type, read_enumeration_type, read_array_type)
11228         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
11229         (read_subrange_type, read_base_type): Set type alignment.
11230
11231 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
11232
11233         * dwarf2read.c (read_index_from_section): Use bool.
11234
11235 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
11236
11237         PR gdb/22950
11238         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
11239         with #ifdef.
11240
11241 2018-04-29  John Reiser  <jreiser@BitWagon.com>
11242
11243         PR build/22873
11244         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
11245         last step, and do it atomically.
11246
11247 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
11248
11249         * compile/compile-c-types.c (convert_int, convert_float):
11250         Update for C FE v1.
11251
11252 2018-04-27  Tom Tromey  <tom@tromey.com>
11253
11254         PR rust/22545:
11255         * rust-lang.c (rust_inclusive_range_type_p): New function.
11256         (rust_range): Handle inclusive ranges.
11257         (rust_compute_range): Likewise.
11258         * rust-exp.y (struct rust_op) <inclusive>: New field.
11259         (DOTDOTEQ): New constant.
11260         (range_expr): Add "..=" productions.
11261         (operator_tokens): Add "..=" token.
11262         (ast_range): Add "inclusive" parameter.
11263         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
11264         ranges.
11265         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
11266         bounds values.
11267         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
11268         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
11269         Update comments.
11270         * expprint.c (print_subexp_standard): Handle new bounds values.
11271         (dump_subexp_body_standard): Likewise.
11272
11273 2018-04-27  Tom Tromey  <tom@tromey.com>
11274
11275         * configure: Rebuild.
11276         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
11277         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
11278         "OVERRIDE".
11279         (class symbol_needs_eval_context): Likewise.
11280         * dwarf2read.c (mock_mapped_index::symbol_name_count)
11281         (mock_mapped_index::symbol_name_at): Use "override".  Remove
11282         "virtual".
11283         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
11284         "override".
11285         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
11286         * aarch64-tdep.c (instruction_reader::read): Use "override".
11287         (instruction_reader_test::read): Likewise.
11288         * arm-tdep.c (instruction_reader::read): Use "override".
11289         (instruction_reader_thumb::read): Likewise.
11290
11291 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
11292
11293         PR remote/9665
11294         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
11295         instead of remote_send.
11296         (remote_send): Remove.
11297
11298 2018-04-26  Pedro Alves  <palves@redhat.com>
11299
11300         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
11301         find_function_start_sal instead of find_pc_line.
11302
11303 2018-04-26  Pedro Alves  <palves@redhat.com>
11304
11305         * breakpoint.c (set_breakpoint_location_function): Handle
11306         mst_data_gnu_ifunc.
11307         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
11308         * elfread.c (elf_symtab_read): Give data symbols with
11309         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
11310         (elf_rel_plt_read): Update comment.
11311         * linespec.c (convert_linespec_to_sals): Handle
11312         mst_data_gnu_ifunc.
11313         (minsym_found): Handle mst_data_gnu_ifunc.
11314         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
11315         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
11316         * parse.c (find_minsym_type_and_address): Handle
11317         mst_data_gnu_ifunc.
11318         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
11319         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
11320         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
11321         comment.
11322         <mst_data_gnu_ifunc>: New enumerator.
11323
11324 2018-04-26  Pedro Alves  <palves@redhat.com>
11325
11326         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
11327         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
11328         'want_trampoline' parameter by a lookup_msym_prefer parameter.
11329         Handle it.
11330         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
11331         (lookup_minimal_symbol_by_pc): Adjust.
11332         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
11333         (lookup_solib_trampoline_symbol_by_pc): Adjust.
11334         * minsyms.h (lookup_msym_prefer): New enum.
11335         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
11336         parameter by a lookup_msym_prefer parameter.
11337
11338 2018-04-26  Pedro Alves  <palves@redhat.com>
11339
11340         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
11341         ends in "@plt" instead of looking at the symbol's section.
11342
11343 2018-04-26  Pedro Alves  <palves@redhat.com>
11344
11345         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
11346         all references.
11347         (find_pc_partial_function_gnu_ifunc): Rename to ...
11348         (find_pc_partial_function): ... this, and remove references to
11349         'is_gnu_ifunc_p'.
11350         (find_pc_partial_function): Delete old implementation.
11351         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
11352
11353 2018-04-26  Pedro Alves  <palves@redhat.com>
11354
11355         * linespec.c (struct bound_minimal_symbol_search_key): New.
11356         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
11357         skip first line if we found a GNU ifunc minimal symbol by name.
11358         (compare_msymbols): Change parameters to work with a destructured
11359         lhs minsym.
11360         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
11361         functions.
11362
11363 2018-04-26  Pedro Alves  <palves@redhat.com>
11364
11365         * breakpoint.c (set_breakpoint_location_function): Don't resolve
11366         ifunc targets here.  Instead, if we have an ifunc minsym, use its
11367         address/name.
11368         (add_location_to_breakpoint): Store the minsym and the objfile in
11369         the breakpoint location.
11370         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
11371         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
11372         Record the minsym in the sal.
11373         * symtab.h (symtab_and_line) <msymbol>: New field.
11374
11375 2018-04-26  Pedro Alves  <palves@redhat.com>
11376
11377         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
11378         unless we actually resolved the ifunc.
11379
11380 2018-04-26  Pedro Alves  <palves@redhat.com>
11381
11382         * c-exp.y (variable production): Prefer ifunc minsyms over
11383         regular function symbols.
11384         * symtab.c (find_gnu_ifunc): New function.
11385         * minsyms.h (lookup_msym_prefer): New enum.
11386         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
11387         parameter by a lookup_msym_prefer parameter.
11388         * symtab.h (find_gnu_ifunc): New declaration.
11389
11390 2018-04-26  Pedro Alves  <palves@redhat.com>
11391
11392         * blockframe.c (find_gnu_ifunc_target_type): New function.
11393         (find_function_type): New.
11394         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
11395         return a value with a memory address.
11396         (eval_call): For calls to GNU ifunc functions, try to find the
11397         type of the target function from the type that the resolver
11398         returns.
11399         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
11400         symbols.
11401         * infcall.c (find_function_return_type): Delete.
11402         (find_function_addr): Add 'function_type' parameter.  For calls to
11403         GNU ifunc functions, try to find the type of the target function
11404         from the type that the resolver returns, and return it via
11405         FUNCTION_TYPE.
11406         (call_function_by_hand_dummy): Adjust to use the function type
11407         returned by find_function_addr.
11408         (find_function_addr): Add 'function_type' parameter and move
11409         description here.
11410         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
11411         declarations.
11412
11413 2018-04-26  Pedro Alves  <palves@redhat.com>
11414
11415         * c-exp.y (variable production): Skip finding an alias for ifunc
11416         symbols.
11417
11418 2018-04-26  Pedro Alves  <palves@redhat.com>
11419
11420         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
11421
11422 2018-04-25  Pedro Alves  <palves@redhat.com>
11423
11424         * infcmd.c (kill_command): Print the pid as string, not the whole
11425         thread's ptid.  Add comment.  s/has been killed/killed/ in output
11426         message.
11427         * remote.c (remote_detach_1): Print the pid as string, not the
11428         whole thread's ptid.
11429
11430 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
11431             Sergio Durigan Junior  <sergiodj@redhat.com>
11432             Pedro Alves  <palves@redhat.com>
11433
11434         * infcmd.c (kill_command): Print message when inferior has
11435         been killed.
11436         * inferior.c (print_inferior_events): Remove 'static'.  Set as
11437         '1'.
11438         (add_inferior): Improve message printed when
11439         'print_inferior_events' is on.
11440         (exit_inferior): Remove message printed when
11441         'print_inferior_events' is on.
11442         (detach_inferior): Improve message printed when
11443         'print_inferior_events' is on.
11444         (initialize_inferiors): Use 'add_inferior_silent' to set
11445         'current_inferior_'.
11446         * inferior.h (print_inferior_events): Declare here as
11447         'extern'.
11448         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
11449         '[Detaching...]' messages when 'print_inferior_events' is on.
11450         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
11451         as prefix/suffix for messages.  Remove periods.  Fix erroneous
11452         'Detaching after fork from child...', replace it by '... from
11453         parent...'.
11454         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
11455         prefix/suffix when printing 'Detaching...' messages.  Print
11456         them when 'print_inferior_events' is on.
11457         * remote.c (remote_detach_1): Print message when detaching
11458         from inferior and '!is_fork_parent'.
11459
11460 2018-04-24  Tom Tromey  <tom@tromey.com>
11461
11462         * cli-out.h: Reindent.
11463
11464 2018-04-24  Tom Tromey  <tom@tromey.com>
11465
11466         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
11467         (cli_ui_out::do_field_string): Use fputs_filtered.
11468         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
11469
11470 2018-04-23  Tom Tromey  <tom@tromey.com>
11471
11472         * guile/scm-frame.c (gdbscm_frame_read_var): Use
11473         gdb::unique_xmalloc_ptr.
11474
11475 2018-04-23  Tom Tromey  <tom@tromey.com>
11476
11477         * configure: Rebuild.
11478
11479 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
11480
11481         PR gdb/23095
11482         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
11483         prepare_for_testing.  Set normal_bp to r_debug_state if target
11484         is bsd.
11485
11486 2018-04-21  Pedro Alves  <palves@redhat.com>
11487             Rajendra SY  <rajendra.sy@gmail.com>
11488
11489         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
11490         * remote.c (extended_remote_attach): In all-stop mode, mark the
11491         thread as executing.
11492
11493 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
11494
11495         * thread.c (thread_apply_all_command): Fix comment.
11496         (thread_command): Fix comment.
11497
11498 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
11499
11500         * common/tdesc.h (tdesc_create_feature): Remove xml filename
11501         parameter.
11502         * features/aarch64-core.c (create_feature_aarch64_core):
11503         Regenerate.
11504         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
11505         Likewise.
11506         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
11507         Likewise.
11508         * features/i386/32bit-avx512.c
11509         (create_feature_i386_32bit_avx512): Likewise.
11510         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
11511         Likewise.
11512         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
11513         Likewise.
11514         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
11515         Likewise.
11516         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
11517         Likewise.
11518         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
11519         Likewise.
11520         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
11521         Likewise.
11522         * features/i386/64bit-avx512.c
11523         (create_feature_i386_64bit_avx512): Likewise.
11524         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
11525         Likewise.
11526         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
11527         Likewise.
11528         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
11529         Likewise.
11530         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
11531         Likewise.
11532         * features/i386/64bit-segments.c
11533         (create_feature_i386_64bit_segments): Likewise.
11534         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
11535         Likewise.
11536         * features/i386/x32-core.c
11537         (create_feature_i386_x32_core): Likewise.
11538         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
11539         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
11540         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
11541         * target-descriptions.c: In generated code, don't pass xml
11542         filename.
11543
11544 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11545
11546         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
11547         (print_xml_feature::visit_post): Likewise.
11548         (print_xml_feature::visit): Likewise.
11549         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
11550         (print_xml_feature): Add new class.
11551         * regformats/regdat.sh: Null xmltarget on feature targets.
11552         * target-descriptions.c (struct target_desc): Add xmltarget.
11553         (maintenance_check_tdesc_xml_convert): Add unittest function.
11554         (tdesc_get_features_xml): Add function to get xml.
11555         (maintenance_check_xml_descriptions): Test xml generation.
11556         * xml-tdesc.c (string_read_description_xml): Add function.
11557         * xml-tdesc.h (string_read_description_xml): Add declaration.
11558
11559 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11560
11561         * features/Makefile: Add feature marker to targets with new style
11562         target descriptions.
11563         * regformats/aarch64.dat: Regenerate.
11564         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
11565         * regformats/i386/amd64-avx-linux.dat: Likewise.
11566         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
11567         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
11568         * regformats/i386/amd64-linux.dat: Likewise.
11569         * regformats/i386/amd64-mpx-linux.dat: Likewise.
11570         * regformats/i386/amd64.dat: Likewise.
11571         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
11572         * regformats/i386/i386-avx-linux.dat: Likewise.
11573         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
11574         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
11575         * regformats/i386/i386-linux.dat: Likewise.
11576         * regformats/i386/i386-mmx-linux.dat: Likewise.
11577         * regformats/i386/i386-mpx-linux.dat: Likewise.
11578         * regformats/i386/i386.dat: Likewise.
11579         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
11580         * regformats/i386/x32-avx-linux.dat: Likewise.
11581         * regformats/i386/x32-linux.dat: Likewise.
11582         * regformats/tic6x-c62x-linux.dat: Likewise.
11583         * regformats/tic6x-c64x-linux.dat: Likewise.
11584         * regformats/tic6x-c64xp-linux.dat: Likewise.
11585         * regformats/regdat.sh: Parse feature marker.
11586
11587 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11588
11589         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
11590         (tdesc_osabi_name): Likewise.
11591         * target-descriptions.c (tdesc_architecture_name): Add new
11592         function.
11593         (tdesc_osabi_name): Likewise.
11594
11595 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11596
11597         * common/tdesc.c (tdesc_predefined_type): Move to here.
11598         (tdesc_named_type): Likewise.
11599         (tdesc_create_vector): Likewise.
11600         (tdesc_create_struct): Likewise.
11601         (tdesc_set_struct_size): Likewise.
11602         (tdesc_create_union): Likewise.
11603         (tdesc_create_flags): Likewise.
11604         (tdesc_create_enum): Likewise.
11605         (tdesc_add_field): Likewise.
11606         (tdesc_add_typed_bitfield): Likewise.
11607         (tdesc_add_bitfield): Likewise.
11608         (tdesc_add_flag): Likewise.
11609         (tdesc_add_enum_value): Likewise.
11610         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
11611         (struct tdesc_type_vector): Likewise.
11612         (struct tdesc_type_field): Likewise.
11613         (struct tdesc_type_with_fields): Likewise.
11614         (tdesc_create_enum): Add declaration.
11615         (tdesc_add_typed_bitfield): Likewise.
11616         (tdesc_add_enum_value): Likewise.
11617         * target-descriptions.c (tdesc_type_field): Move from here.
11618         (tdesc_type_builtin): Likewise.
11619         (tdesc_type_vector): Likewise.
11620         (tdesc_type_with_fields): Likewise.
11621         (tdesc_predefined_types): Likewise.
11622         (tdesc_named_type): Likewise.
11623         (tdesc_create_vector): Likewise.
11624         (tdesc_create_struct): Likewise.
11625         (tdesc_set_struct_size): Likewise.
11626         (tdesc_create_union): Likewise.
11627         (tdesc_create_flags): Likewise.
11628         (tdesc_create_enum): Likewise.
11629         (tdesc_add_field): Likewise.
11630         (tdesc_add_typed_bitfield): Likewise.
11631         (tdesc_add_bitfield): Likewise.
11632         (tdesc_add_flag): Likewise.
11633         (tdesc_add_enum_value): Likewise.
11634         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
11635         (tdesc_add_typed_bitfield): Likewise.
11636         (tdesc_add_enum_value): Likewise.
11637
11638 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11639
11640         * common/tdesc.c (tdesc_feature::accept): Move to here.
11641         (tdesc_feature::operator==): Likewise.
11642         (tdesc_create_reg): Likewise.
11643         * common/tdesc.h (tdesc_type_kind): Likewise.
11644         (struct tdesc_type): Likewise.
11645         (struct tdesc_feature): Likewise.
11646         * regformats/regdat.sh: Create a feature.
11647         * target-descriptions.c (tdesc_type_kind): Move from here.
11648         (tdesc_type): Likewise.
11649         (tdesc_type_up): Likewise.
11650         (tdesc_feature): Likewise.
11651         (tdesc_create_reg): Likewise.
11652
11653 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11654
11655         * Makefile.in: Add arch/tdesc.c
11656         * common/tdesc.c: New file.
11657         * common/tdesc.h (tdesc_element_visitor): Move to here.
11658         (tdesc_element): Likewise.
11659         (tdesc_reg): Likewise.
11660         (tdesc_reg_up): Likewise.
11661         * regformats/regdef.h (reg): Add offset to constructors.
11662         * target-descriptions.c (tdesc_element_visitor): Move from here.
11663         (tdesc_element): Likewise.
11664         (tdesc_reg): Likewise.
11665         (tdesc_reg_up): Likewise.
11666
11667 2018-04-17  Tom Tromey  <tom@tromey.com>
11668
11669         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
11670         discriminant field.
11671
11672 2018-04-17  Tom Tromey  <tom@tromey.com>
11673
11674         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
11675
11676 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11677
11678         * symtab.c (print_symbol_info): Skip printing filename and line
11679         number when `last' is NULL.
11680         (symtab_symbol_info): Use empty string instead of NULL for first
11681         invocation of print_symbol_info.
11682         (rbreak_command): Pass NULL to `last' parameter of
11683         print_symbol_info.
11684
11685 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
11686
11687         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
11688         instead of nullptr.
11689
11690 2018-04-16  Pedro Alves  <palves@redhat.com>
11691
11692         * MAINTAINERS (sh): Remove.
11693         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
11694         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
11695         (ALLDEPFILES): Remove sh64-tdep.c.
11696         * NEWS: Mentions that support for SH-5/SH64 is removed.
11697         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
11698         (sh*-*-openbsd*): Ditto.
11699         (sh64-*-elf*): Remove.
11700         (sh*): Remove.
11701         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
11702         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
11703         * sh-tdep.c: No longer include "sh64-tdep.h".
11704         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
11705         * sh64-tdep.c, sh64-tdep.h: Remove files.
11706
11707 2018-04-16  Pedro Alves  <palves@redhat.com>
11708
11709         * MAINTAINERS: Remove m88k.
11710         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
11711         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
11712         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
11713         * NEWS: Mention that support for m88k was removed.
11714         * configure.host (m88*-*-*): Remove support.
11715         * configure.nat (m88k-*-*): Remove support.
11716         * configure.tgt (m88*-*-openbsd*): Remove.
11717         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
11718
11719 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
11720
11721         * configure.tgt (x86_tobjs): New variable.
11722         (amd64_tobjs, i386_tobjs): Use it.
11723
11724 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11725
11726         * symtab.c (print_symbol_info): Precede the symbol definition by
11727         the line number when available.
11728         * NEWS: Advertise this enhancement.
11729
11730 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11731
11732         * NEWS (New options): announce set/show record btrace cpu.
11733         * btrace.c: Include record-btrace.h.
11734         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
11735         the vendor is unknown.
11736         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
11737         Maybe overwrite the btrace configuration's cpu.
11738         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
11739         (btrace_fetch): Add cpu parameter.  Update callers.
11740         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
11741         Maybe overwrite the btrace configuration's cpu.  Skip enabling
11742         errata workarounds if the vendor is unknown.
11743         * python/py-record-btrace.c: Include record-btrace.h.
11744         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
11745         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
11746         * record-btrace.c (record_btrace_cpu_state_kind): New.
11747         (record_btrace_cpu): New.
11748         (set_record_btrace_cpu_cmdlist): New.
11749         (record_btrace_get_cpu): New.
11750         (require_btrace_thread, record_btrace_info)
11751         (record_btrace_resume_thread): Call record_btrace_get_cpu.
11752         (cmd_set_record_btrace_cpu_none): New.
11753         (cmd_set_record_btrace_cpu_auto): New.
11754         (cmd_set_record_btrace_cpu): New.
11755         (cmd_show_record_btrace_cpu): New.
11756         (_initialize_record_btrace): Initialize set/show record btrace cpu
11757         commands.
11758         * record-btrace.h (record_btrace_get_cpu): New.
11759
11760 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11761
11762         * record.c (set_record_command): Fix typo in message.
11763
11764 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11765
11766         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
11767
11768 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11769
11770         * infrun.c (process_event_stop_test): Call
11771         gdbarch_in_indirect_branch_thunk.
11772         * gdbarch.sh (in_indirect_branch_thunk): New.
11773         * gdbarch.c: Regenerated.
11774         * gdbarch.h: Regenerated.
11775         * x86-tdep.h: New.
11776         * x86-tdep.c: New.
11777         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
11778         (HFILES_NO_SRCDIR): Add x86-tdep.h.
11779         (ALLDEPFILES): Add x86-tdep.c.
11780         * arch-utils.h (default_in_indirect_branch_thunk): New.
11781         * arch-utils.c (default_in_indirect_branch_thunk): New.
11782         * i386-tdep: Include x86-tdep.h.
11783         (i386_in_indirect_branch_thunk): New.
11784         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
11785         function.
11786         * amd64-tdep: Include x86-tdep.h.
11787         (amd64_in_indirect_branch_thunk): New.
11788         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
11789
11790 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
11791
11792         PR gdb/23053
11793         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
11794         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
11795         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
11796         regression.
11797
11798 2018-04-12  Tom Tromey  <tom@tromey.com>
11799
11800         * rust-lang.c (rust_print_struct_def): Remove univariant code.
11801         (rust_evaluate_subexp): Likewise.
11802
11803 2018-04-12  Pedro Alves  <palves@redhat.com>
11804
11805         * procfs.c (procfs_detach): Make forward declaration's prototype
11806         match definition's protototype.
11807         (proc_get_LDT_entry): Remove stale do_cleanups call.
11808
11809 2018-04-12  Pedro Alves  <palves@redhat.com>
11810
11811         * target.h (target_ops::to_has_exited): Delete.
11812         (target_has_exited): Delete.
11813         * target-delegates.c: Regenerate.
11814
11815 2018-04-11  Pedro Alves  <palves@redhat.com>
11816
11817         * target.c (fileio_fh_t::t): Add comment.
11818         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
11819         (target_fileio_close): Handle a NULL target.
11820         (invalidate_fileio_fh): New.
11821         (target_close): Call it.
11822         * remote.c (remote_hostio_send_command): No longer check whether
11823         remote_desc is open.
11824
11825 2018-04-11  Pedro Alves  <palves@redhat.com>
11826
11827         * target.c (fileio_fh_t): Make it a named struct instead of a
11828         typedef.
11829         (fileio_fh_t::is_closed): New method.
11830         (DEF_VEC_O (fileio_fh_t)): Remove.
11831         (fileio_fhandles): Now a std::vector.
11832         (is_closed_fileio_fh): Delete.
11833         (acquire_fileio_fd): Adjust.  Rename parameters.
11834         (release_fileio_fd): Adjust.
11835         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
11836         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
11837         (target_fileio_close): Adjust.
11838
11839 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
11840
11841         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
11842         index.
11843
11844 2018-04-10  Pedro Alves  <palves@redhat.com>
11845
11846         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
11847         (scoped_finish_thread_state): New class.
11848         * infcmd.c (run_command_1): Use it instead of finish_thread_state
11849         cleanup.
11850         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
11851         (fetch_inferior_event, normal_stop): Likewise.
11852         * thread.c (finish_thread_state_cleanup): Delete.
11853
11854 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11855             Pedro Alves  <palves@redhat.com>
11856
11857         * value.c: Include "selftest.h" and "common/array-view.h".
11858         (struct range) <operator ==>: New.
11859         (test_ranges_contain): New.
11860         (check_ranges_vector): New.
11861         (test_insert_into_bit_range_vector): New.
11862         (_initialize_values): Register selftests.
11863         * common/array-view.h (operator==, operator!=): New.
11864
11865 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11866
11867         * common/gdb_vecs.h (unordered_remove): Add overload that takes
11868         an iterator.
11869         * inline-frame.c: Include <algorithm>.
11870         (struct inline_state): Add constructor.
11871         (inline_state_s): Remove.
11872         (DEF_VEC_O(inline_state_s)): Remove.
11873         (inline_states): Change type to std::vector.
11874         (find_inline_frame_state): Adjust to std::vector.
11875         (allocate_inline_frame_state): Remove.
11876         (clear_inline_frame_state): Adjust to std::vector.
11877         (skip_inline_frames): Adjust to std::vector.
11878
11879 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11880
11881         * tracepoint.h (struct trace_state_variable): Add constructor.
11882         <name>: Change type to std::string.
11883         * tracepoint.c (tsv_s): Remove.
11884         (DEF_VEC_O(tsv_s)): Remove.
11885         (tvariables): Change to std::vector.
11886         (create_trace_state_variable): Adjust to std::vector.
11887         (find_trace_state_variable): Likewise.
11888         (find_trace_state_variable_by_number): Likewise.
11889         (delete_trace_state_variable): Likewise.
11890         (trace_variable_command): Adjust to std::string.
11891         (delete_trace_variable_command): Likewise.
11892         (tvariables_info_1): Adjust to std::vector.
11893         (save_trace_state_variables): Likewise.
11894         (start_tracing): Likewise.
11895         (merge_uploaded_trace_state_variables): Adjust to std::vector
11896         and std::string.
11897         * target.h (struct target_ops)
11898         <to_download_trace_state_variable>: Pass reference to
11899         trace_state_variable.
11900         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
11901         * target-delegates.c: Re-generate.
11902         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
11903         (mi_tsv_deleted): Likewise.
11904         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
11905         * remote.c (remote_download_trace_state_variable): Change
11906         pointer to reference and adjust.
11907         * make-target-delegates (parse_argtypes): Handle references.
11908         (write_function_header): Likewise.
11909         (munge_type): Likewise.
11910
11911 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11912
11913         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11914         string_view-selftests.c.
11915         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
11916         testsuite.
11917         * unittests/basic_string_view/cons/char/1.cc: Likewise.
11918         * unittests/basic_string_view/cons/char/2.cc: Likewise.
11919         * unittests/basic_string_view/cons/char/3.cc: Likewise.
11920         * unittests/basic_string_view/element_access/char/1.cc:
11921         Likewise.
11922         * unittests/basic_string_view/element_access/char/empty.cc:
11923         Likewise.
11924         * unittests/basic_string_view/element_access/char/front_back.cc:
11925         Likewise.
11926         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
11927         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
11928         Likewise.
11929         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
11930         Likewise.
11931         * unittests/basic_string_view/modifiers/swap/char/1.cc:
11932         Likewise.
11933         * unittests/basic_string_view/operations/compare/char/1.cc:
11934         Likewise.
11935         * unittests/basic_string_view/operations/compare/char/13650.cc:
11936         Likewise.
11937         * unittests/basic_string_view/operations/copy/char/1.cc:
11938         Likewise.
11939         * unittests/basic_string_view/operations/data/char/1.cc:
11940         Likewise.
11941         * unittests/basic_string_view/operations/find/char/1.cc:
11942         Likewise.
11943         * unittests/basic_string_view/operations/find/char/2.cc:
11944         Likewise.
11945         * unittests/basic_string_view/operations/find/char/3.cc:
11946         Likewise.
11947         * unittests/basic_string_view/operations/find/char/4.cc:
11948         Likewise.
11949         * unittests/basic_string_view/operations/rfind/char/1.cc:
11950         Likewise.
11951         * unittests/basic_string_view/operations/rfind/char/2.cc:
11952         Likewise.
11953         * unittests/basic_string_view/operations/rfind/char/3.cc:
11954         Likewise.
11955         * unittests/basic_string_view/operations/substr/char/1.cc:
11956         Likewise.
11957         * unittests/basic_string_view/operators/char/2.cc: Likewise.
11958         * unittests/string_view-selftests.c: New file.
11959
11960 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11961
11962         * unittests/basic_string_view/capacity/1.cc: New file.
11963         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
11964         * unittests/basic_string_view/cons/char/1.cc: New file.
11965         * unittests/basic_string_view/cons/char/2.cc: New file.
11966         * unittests/basic_string_view/cons/char/3.cc: New file.
11967         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
11968         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
11969         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
11970         * unittests/basic_string_view/element_access/char/1.cc: New file.
11971         * unittests/basic_string_view/element_access/char/2.cc: New file.
11972         * unittests/basic_string_view/element_access/char/empty.cc: New file.
11973         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
11974         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
11975         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
11976         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
11977         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
11978         * unittests/basic_string_view/include.cc: New file.
11979         * unittests/basic_string_view/inserters/char/1.cc: New file.
11980         * unittests/basic_string_view/inserters/char/2.cc: New file.
11981         * unittests/basic_string_view/inserters/char/3.cc: New file.
11982         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
11983         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
11984         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
11985         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
11986         * unittests/basic_string_view/literals/types.cc: New file.
11987         * unittests/basic_string_view/literals/values.cc: New file.
11988         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
11989         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
11990         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
11991         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
11992         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
11993         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
11994         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
11995         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
11996         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
11997         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
11998         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
11999         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
12000         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
12001         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
12002         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
12003         * unittests/basic_string_view/operations/data/char/1.cc: New file.
12004         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
12005         * unittests/basic_string_view/operations/find/char/1.cc: New file.
12006         * unittests/basic_string_view/operations/find/char/2.cc: New file.
12007         * unittests/basic_string_view/operations/find/char/3.cc: New file.
12008         * unittests/basic_string_view/operations/find/char/4.cc: New file.
12009         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
12010         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
12011         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
12012         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
12013         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
12014         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
12015         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
12016         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
12017         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
12018         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
12019         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
12020         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
12021         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
12022         * unittests/basic_string_view/operators/char/2.cc: New file.
12023         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
12024         * unittests/basic_string_view/range_access/char/1.cc: New file.
12025         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
12026         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
12027         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
12028         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
12029         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
12030         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
12031         * unittests/basic_string_view/requirements/typedefs.cc: New file.
12032         * unittests/basic_string_view/typedefs.cc: New file.
12033         * unittests/basic_string_view/types/1.cc: New file.
12034
12035 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12036
12037         * common/gdb_string_view.h: Remove libstdc++ implementation
12038         details, adjust to gdb reality.
12039         * common/gdb_string_view.tcc: Likewise.
12040         * cli/cli-script.c (struct string_view): Remove.
12041         (user_args) <m_args>: Change element type to gdb::string_view.
12042         (user_args::insert_args): Adjust.
12043
12044 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12045
12046         * common/gdb_string_view.h: New file.
12047         * common/gdb_string_view.tcc: New file.
12048
12049 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12050
12051         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
12052         * configure: Re-generate.
12053
12054 2018-04-09  Pedro Alves  <palves@redhat.com>
12055
12056         * gdbarch.sh: Include "observable.h" instead of "observer.h".
12057         (set_target_gdbarch): Call
12058         gdb::observers::architecture_changed.notify instead of
12059         observer_notify_architecture_changed.
12060
12061 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12062
12063         * tracepoint.c (struct current_traceframe_cleanup): Remove.
12064         (do_restore_current_traceframe_cleanup): Remove.
12065         (restore_current_traceframe_cleanup_dtor): Remove.
12066         (make_cleanup_restore_current_traceframe): Remove.
12067         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
12068         New.
12069         * tracepoint.h (struct scoped_restore_current_traceframe): New.
12070         * infrun.c (fetch_inferior_event): Use
12071         scoped_restore_current_traceframe.
12072
12073 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12074
12075         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
12076         Remove.
12077         <n_allocated_type_units>: Remove.
12078         <all_type_units>: Change to std::vector.
12079         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
12080         to std::vector change.
12081         (dwarf2_per_objfile::get_cutu): Likewise.
12082         (dwarf2_per_objfile::get_tu): Likewise.
12083         (create_signatured_type_table_from_index): Likewise.
12084         (create_signatured_type_table_from_debug_names): Likewise.
12085         (dw2_symtab_iter_next): Likewise.
12086         (dw2_print_stats): Likewise.
12087         (dw2_expand_all_symtabs): Likewise.
12088         (dw2_expand_marked_cus): Likewise.
12089         (dw2_debug_names_iterator::next): Likewise.
12090         (dwarf2_initialize_objfile): Likewise.
12091         (add_signatured_type_cu_to_table): Likewise.
12092         (create_all_type_units): Likewise.
12093         (add_type_unit): Likewise.
12094         (struct tu_abbrev_offset): Add constructor.
12095         (build_type_psymtabs_1): Adjust to std::vector change.
12096         (print_tu_stats): Likewise.
12097         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
12098         (write_debug_names): Likewise.
12099
12100 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12101
12102         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
12103         Make an std::vector.
12104         <n_comp_units>: Remove.
12105         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
12106         to std::vector change.
12107         (dwarf2_per_objfile::get_cutu): Likewise.
12108         (dwarf2_per_objfile::get_cu): Likewise.
12109         (create_cus_from_index): Likewise.
12110         (create_addrmap_from_index): Likewise.
12111         (create_addrmap_from_aranges): Likewise.
12112         (dwarf2_read_index): Likewise.
12113         (dw2_find_last_source_symtab): Likewise.
12114         (dw2_map_symtabs_matching_filename): Likewise.
12115         (dw2_symtab_iter_next): Likewise.
12116         (dw2_print_stats): Likewise.
12117         (dw2_expand_all_symtabs): Likewise.
12118         (dw2_expand_symtabs_with_fullname): Likewise.
12119         (dw2_expand_marked_cus): Likewise.
12120         (dw2_map_symbol_filenames): Likewise.
12121         (create_cus_from_debug_names): Likewise.
12122         (dwarf2_read_debug_names): Likewise.
12123         (dw2_debug_names_iterator::next): Likewise.
12124         (dwarf2_initialize_objfile): Likewise.
12125         (set_partial_user): Likewise.
12126         (dwarf2_build_psymtabs_hard): Likewise.
12127         (read_comp_units_from_section): Remove arguments, adjust to
12128         std::vector change.
12129         (create_all_comp_units): Adjust to std::vector and
12130         read_comp_units_from_section changes.
12131         (dwarf2_find_containing_comp_unit): Adjust to std::vector
12132         change.
12133         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
12134         (psyms_seen_size): Likewise.
12135         (write_gdbindex): Likewise.
12136         (write_debug_names): Likewise.
12137
12138 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12139
12140         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
12141         with dwarf2_per_objfile.
12142         (create_cus_from_index): Likewise.
12143         (create_signatured_type_table_from_index): Likewise.
12144         (dwarf2_read_index): Likewise.
12145         (dwarf2_initialize_objfile): Likewise.
12146         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
12147         per_cu rather than get_dwarf2_per_objfile.
12148
12149 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12150
12151         * dwarf2read.h (struct signatured_type): Forward declare.
12152         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
12153         New methods.
12154         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
12155         (dw2_get_cutu): ...this.
12156         (dwarf2_per_objfile::get_cu): Rename from...
12157         (dw2_get_cu): ...this.
12158         (dwarf2_per_objfile::get_tu): New.
12159         (create_addrmap_from_index): Adjust.
12160         (create_addrmap_from_aranges): Adjust.
12161         (dw2_find_last_source_symtab): Adjust.
12162         (dw2_map_symtabs_matching_filename): Adjust.
12163         (dw2_symtab_iter_next): Adjust.
12164         (dw2_print_stats): Adjust.
12165         (dw2_expand_all_symtabs): Adjust.
12166         (dw2_expand_symtabs_with_fullname): Adjust.
12167         (dw2_expand_marked_cus): Adjust.
12168         (dw_expand_symtabs_matching_file_matcher): Adjust.
12169         (dw2_map_symbol_filenames): Adjust.
12170         (dw2_debug_names_iterator::next): Adjust.
12171         (dwarf2_initialize_objfile): Adjust.
12172         (set_partial_user): Adjust.
12173         (dwarf2_build_psymtabs_hard): Adjust.
12174
12175 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12176
12177         * dwarf2read.c (create_signatured_type_table_from_debug_names):
12178         Remove unused variables.
12179         (dw2_map_symtabs_matching_filename): Likewise.
12180         (dwarf2_record_block_ranges): Likewise.
12181         (dwarf2_read_addr_index): Likewise.
12182         (follow_die_offset): Likewise.
12183
12184 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12185
12186         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
12187         to symbol_file_add_main.
12188
12189 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12190
12191         PR mi/22299
12192         * mi/mi-console.c (do_fputc_async_safe): New.
12193         (mi_console_file::write_async_safe): New.
12194         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
12195         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
12196         New.
12197         * ui-file.c (ui_file::putstrn): Adjust call to
12198         fputstrn_unfiltered.
12199         * utils.c (printchar): Replace do_fputs and do_fprintf
12200         parameters by do_fputc.
12201         (fputstr_filtered): Adjust call to printchar.
12202         (fputstr_unfiltered): Likewise.
12203         (fputstrn_filtered): Likewise.
12204         (fputstrn_unfiltered): Add do_fputc parameter, pass to
12205         printchar.
12206         * utils.h (do_fputc_ftype): New typedef.
12207         (fputstrn_unfiltered): Add do_fputc parameter.
12208
12209 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12210
12211         * regformats/i386/i386-avx.dat: Remove.
12212
12213 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
12214
12215         PR gdb/22979
12216         * amd64-tdep.c (amd64_none_init_abi): New function.
12217         (amd64_x32_none_init_abi): New function.
12218         (_initialize_amd64_tdep): Register handlers for x86-64 and
12219         x64_32 with GDB_OSABI_NONE.
12220         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
12221         GDB_OSABI_NONE osabi.
12222
12223 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
12224
12225         PR gdb/22980
12226         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
12227         GDB_OSABI_NONE.
12228         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
12229         * osabi.c (gdb_osabi_names): Add "unknown" entry.
12230
12231 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
12232
12233         * common/byte-vector.h (char_vector): New type.
12234         * target.h (target_read_alloc): Return
12235         gdb::optional<byte_vector>.
12236         (target_read_stralloc): Return gdb::optional<char_vector>.
12237         (target_get_osdata): Return gdb::optional<char_vector>.
12238         * target.c (target_read_alloc_1): Templatize.  Replacement
12239         manual memory management with vector.
12240         (target_read_alloc): Change return type, adjust.
12241         (target_read_stralloc): Change return type, adjust.
12242         (target_get_osdata): Change return type, adjust.
12243         * auxv.c (struct auxv_info) <length>: Remove.
12244         <data>: Change type to gdb::optional<byte_vector>.
12245         (auxv_inferior_data_cleanup): Free auxv_info with delete.
12246         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
12247         (target_auxv_search): Adjust.
12248         (fprint_target_auxv): Adjust.
12249         * avr-tdep.c (avr_io_reg_read_command): Adjust.
12250         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
12251         (linux_make_corefile_notes): Adjust.
12252         * osdata.c (get_osdata): Adjust.
12253         * remote.c (remote_get_threads_with_qxfer): Adjust.
12254         (remote_memory_map): Adjust.
12255         (remote_traceframe_info): Adjust.
12256         (btrace_read_config): Adjust.
12257         (remote_read_btrace): Adjust.
12258         (remote_pid_to_exec_file): Adjust.
12259         * solib-aix.c (solib_aix_get_library_list): Adjust.
12260         * solib-dsbt.c (decode_loadmap): Don't free buf.
12261         (dsbt_get_initial_loadmaps): Adjust.
12262         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
12263         * solib-target.c (solib_target_current_sos): Adjust.
12264         * tracepoint.c (sdata_make_value): Adjust.
12265         * xml-support.c (xinclude_start_include): Adjust.
12266         (xml_fetch_content_from_file): Adjust.
12267         * xml-support.h (xml_fetch_another): Change return type.
12268         (xml_fetch_content_from_file): Change return type.
12269         * xml-syscall.c (xml_init_syscalls_info): Adjust.
12270         * xml-tdesc.c (file_read_description_xml): Adjust.
12271         (fetch_available_features_from_target): Change return type.
12272         (target_fetch_description_xml): Adjust.
12273         (target_read_description_xml): Adjust.
12274
12275 2018-04-06  Tom Tromey  <tom@tromey.com>
12276
12277         * value.c (~value): Update.
12278         (struct value) <contents>: Now unique_xmalloc_ptr.
12279         (value_contents_bits_eq, allocate_value_contents)
12280         (value_contents_raw, value_contents_all_raw)
12281         (value_contents_for_printing, value_contents_for_printing_const)
12282         (set_value_enclosing_type): Update.
12283
12284 2018-04-06  Tom Tromey  <tom@tromey.com>
12285
12286         * value.c (range_s): Remove typedef, VEC.
12287         (struct range): Add operator<.
12288         (range_lessthan): Remove.
12289         (ranges_contain): Change type.
12290         (~value): Update.
12291         (struct value) <unavailable, optimized_out>: Now std::vector.
12292         (value_entirely_available)
12293         (value_entirely_covered_by_range_vector)
12294         (value_entirely_unavailable, value_entirely_optimized_out):
12295         Update.
12296         (insert_into_bit_range_vector): Change argument type.
12297         (find_first_range_overlap): Likewise.
12298         (struct ranges_and_idx, value_contents_bits_eq)
12299         (require_not_optimized_out, require_available): Update.
12300         (ranges_copy_adjusted): Change argument types.
12301         (value_optimized_out, value_copy, value_fetch_lazy): Update.
12302
12303 2018-04-06  Tom Tromey  <tom@tromey.com>
12304
12305         * value.c (~value): Update.
12306         (struct value) <parent>: Now a value_ref_ptr.
12307         (value_parent, set_value_parent, value_address, value_copy):
12308         Update.
12309
12310 2018-04-06  Tom Tromey  <tom@tromey.com>
12311
12312         * value.c (struct value): Add constructor, destructor, and member
12313         initializers.
12314         (allocate_value_lazy, value_decref): Update.
12315
12316 2018-04-06  Tom Tromey  <tom@tromey.com>
12317
12318         * value.c (struct value) <released, next>: Remove.
12319         (all_values): Now a std::vector.
12320         (allocate_value_lazy): Update.
12321         (value_next): Remove.
12322         (value_mark, value_free_to_mark, release_value)
12323         (value_release_to_mark): Update.
12324
12325 2018-04-06  Tom Tromey  <tom@tromey.com>
12326
12327         * value.h (fetch_subexp_value, value_release_to_mark): Update.
12328         (free_value_chain): Remove.
12329         * value.c (free_value_chain): Remove.
12330         (value_release_to_mark): Return a std::vector.
12331         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
12332         std::vector.
12333         (check_condition): Update.
12334         * eval.c (fetch_subexp_value): Change "val_chain" to a
12335         std::vector.
12336         * breakpoint.c (update_watchpoint): Update.
12337         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
12338
12339 2018-04-06  Tom Tromey  <tom@tromey.com>
12340
12341         * value.h (free_all_values): Remove.
12342         * value.c (free_all_values): Remove.
12343
12344 2018-04-06  Tom Tromey  <tom@tromey.com>
12345
12346         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
12347         (value_history_chain, value_history_count): Remove.
12348         (value_history): New global.
12349         (record_latest_value, access_value_history, show_values)
12350         (preserve_values): Update.
12351
12352 2018-04-06  Tom Tromey  <tom@tromey.com>
12353
12354         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
12355         * varobj.c (varobj_set_display_format, varobj_set_value)
12356         (install_default_visualizer, construct_visualizer)
12357         (install_new_value, ~varobj, varobj_get_value_type)
12358         (my_value_of_variable, varobj_editable_p): Update.
12359         * c-varobj.c (c_describe_child, c_value_of_variable)
12360         (cplus_number_of_children, cplus_describe_child): Update.
12361         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
12362         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
12363         (ada_value_of_variable, ada_value_is_changeable_p): Update.
12364
12365 2018-04-06  Tom Tromey  <tom@tromey.com>
12366
12367         * printcmd.c (last_examine_address): Change type to
12368         value_ref_ptr.
12369         (do_examine, x_command): Update.
12370
12371 2018-04-06  Tom Tromey  <tom@tromey.com>
12372
12373         * value.c (release_value): Update.
12374         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
12375         (struct bpstats) <val>: Now a value_ref_ptr.
12376         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
12377         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
12378         (~watchpoint, print_it_watchpoint, watch_command_1)
12379         (invalidate_bp_value_on_memory_change): Update.
12380
12381 2018-04-06  Tom Tromey  <tom@tromey.com>
12382
12383         * varobj.c (varobj_clear_saved_item)
12384         (update_dynamic_varobj_children, install_new_value, ~varobj):
12385         Update.
12386         * value.h (value_incref): Move declaration earlier.
12387         (value_decref): Rename from value_free.
12388         (struct value_ref_policy): New.
12389         (value_ref_ptr): New typedef.
12390         (struct value_deleter): Remove.
12391         (gdb_value_up): Remove typedef.
12392         (release_value): Change return type.
12393         (release_value_or_incref): Remove.
12394         * value.c (set_value_parent): Update.
12395         (value_incref): Change return type.
12396         (value_decref): Rename from value_free.
12397         (value_free_to_mark, free_all_values, free_value_chain): Update.
12398         (release_value): Return value_ref_ptr.
12399         (release_value_or_incref): Remove.
12400         (record_latest_value, set_internalvar, clear_internalvar):
12401         Update.
12402         * stack.c (info_frame_command): Don't call value_free.
12403         * python/py-value.c (valpy_dealloc, valpy_new)
12404         (value_to_value_object): Update.
12405         * printcmd.c (do_examine): Update.
12406         * opencl-lang.c (lval_func_free_closure): Update.
12407         * mi/mi-main.c (register_changed_p): Don't call value_free.
12408         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
12409         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
12410         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
12411         value_free.
12412         * guile/scm-value.c (vlscm_free_value_smob)
12413         (vlscm_scm_from_value): Update.
12414         * frame.c (frame_register_unwind, frame_unwind_register_signed)
12415         (frame_unwind_register_unsigned, get_frame_register_bytes)
12416         (put_frame_register_bytes): Don't call value_free.
12417         * findvar.c (address_from_register): Don't call value_free.
12418         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
12419         * dwarf2loc.c (entry_data_value_free_closure)
12420         (value_of_dwarf_reg_entry, free_pieced_value_closure)
12421         (dwarf2_evaluate_loc_desc_full): Update.
12422         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
12423         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
12424         (~watchpoint, watch_command_1)
12425         (invalidate_bp_value_on_memory_change): Update.
12426         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
12427
12428 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
12429
12430         PR gdb/23022
12431         * warning.m4: Add -Wno-error=deprecated-register.
12432         * configure: Re-generate.
12433
12434 2018-04-05  Tom Tromey  <tom@tromey.com>
12435
12436         * linespec.h: Remove include of "vec.h".
12437
12438 2018-04-05  Tom Tromey  <tom@tromey.com>
12439
12440         * linespec.c (typep): Remove typedef.
12441         (find_methods, find_superclass_methods): Take a std::vector.
12442         (find_method): Use std::vector.
12443
12444 2018-04-05  Tom Tromey  <tom@tromey.com>
12445
12446         * utils.c (compare_strings): Remove.
12447         * utils.h (compare_strings): Remove.
12448         * objc-lang.h (find_imps): Update.
12449         * objc-lang.c (find_methods): Take a std::vector.
12450         (uniquify_strings, find_imps): Likewise.
12451         * linespec.c (find_methods): Take a std::vector.
12452         (decode_objc): Use std::vector.
12453         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
12454         a std::vector.
12455         (find_method, find_function_symbols): Use std::vector.
12456
12457 2018-04-05  Tom Tromey  <tom@tromey.com>
12458
12459         * completer.c (completion_tracker::completion_tracker): Remove
12460         cast.
12461         (completion_tracker::discard_completions): Likewise.
12462         * breakpoint.c (ambiguous_names_p): Remove cast.
12463         * ada-lang.c (_initialize_ada_language): Remove cast.
12464         * utils.h (streq): Update.
12465         (streq_hash): Add new declaration.
12466         * utils.c (streq): Return bool.
12467         (streq_hash): New function.
12468
12469 2018-04-05  Tom Tromey  <tom@tromey.com>
12470
12471         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
12472         Remove a string copy.
12473
12474 2018-04-05  Tom Tromey  <tom@tromey.com>
12475
12476         * linespec.c (filter_results): Use std::vector.
12477         (decode_line_2, decode_line_full): Update.
12478
12479 2018-04-05  Tom Tromey  <tom@tromey.com>
12480
12481         * linespec.c (canonical_to_fullform): Return std::string.
12482         (filter_results): Update.
12483         (struct decode_line_2_item): Add constructor.
12484         <fullform, displayform>: Now std::string.
12485         (decode_line_2_compare_items): Now a std::sort comparator.
12486         (decode_line_2): Update.
12487
12488 2018-04-05  Tom Tromey  <tom@tromey.com>
12489
12490         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
12491         (unexpected_linespec_error): Update.
12492         (linespec_parse_basic, parse_linespec): Update.
12493
12494 2018-04-05  Tom Tromey  <tom@tromey.com>
12495
12496         * linespec.c (linespec_parse_basic): Reindent.
12497
12498 2018-04-05  Tom Tromey  <tom@tromey.com>
12499
12500         * minsyms.h (iterate_over_minimal_symbols): Update.
12501         * minsyms.c (iterate_over_minimal_symbols): Take a
12502         gdb::function_view.
12503         * linespec.c (struct collect_minsyms): Remove.
12504         (compare_msyms): Now a std::sort comparator.
12505         (add_minsym): Add parameters.
12506         (search_minsyms_for_name): Update.  Use std::vector.
12507
12508 2018-04-03  Tom Tromey  <tom@tromey.com>
12509
12510         * mipsread.c (read_alphacoff_dynamic_symtab): Use
12511         gdb::byte_vector.
12512
12513 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
12514
12515         * MAINTAINERS (Write After Approval): Add Weimin Pan.
12516
12517 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
12518
12519         PR gdb/16959
12520         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
12521         printing static type.
12522
12523 2018-04-01  Tom Tromey  <tom@tromey.com>
12524
12525         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
12526         (rs6000_xfer_shared_libraries): Update.
12527
12528 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
12529
12530         * common/gdb_vecs.h (char_ptr): Remove.
12531         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
12532
12533 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
12534
12535         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
12536         with std::vector.
12537         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
12538
12539 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
12540
12541         * tracepoint.h (struct uploaded_tp): Initialize fields.
12542         <actions, step_actions, cmd_strings>: Change type to
12543         std::vector<char *>.
12544         * tracepoint.c (get_uploaded_tp): Allocate with new.
12545         (free_uploaded_tps): Free with delete.
12546         (parse_tracepoint_definition): Adjust to std::vector change.
12547         * breakpoint.c (read_uploaded_action): Likewise.
12548         (create_tracepoint_from_upload): Likewise.
12549         * ctf.c (ctf_write_uploaded_tp): Likewise.
12550         (SET_ARRAY_FIELD): Likewise.
12551         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
12552
12553 2018-03-30  Tom Tromey  <tom@tromey.com>
12554
12555         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
12556         std::unique_ptr.
12557         (svr4_keep_data_in_core): Update.
12558         (svr4_read_so_list): Update.
12559
12560 2018-03-30  Tom Tromey  <tom@tromey.com>
12561
12562         * windows-nat.c (handle_output_debug_string, handle_exception):
12563         Update.
12564         * target.h (target_read_string): Update.
12565         * target.c (target_read_string): Change "string" to
12566         unique_xmalloc_ptr.
12567         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
12568         Update.
12569         * solib-frv.c (frv_current_sos): Update.
12570         * solib-dsbt.c (dsbt_current_sos): Update.
12571         * solib-darwin.c (darwin_current_sos): Update.
12572         * linux-thread-db.c (inferior_has_bug): Update.
12573         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
12574         Update.  Remove alloca.
12575         * ada-lang.c (ada_main_name): Update.
12576
12577 2018-03-30  Tom Tromey  <tom@tromey.com>
12578
12579         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
12580         (struct dwo_file_deleter): New.
12581         (dwo_file_up): New typedef.
12582         (open_and_init_dwo_file): Use dwo_file_up.
12583         (free_dwo_file_cleanup): Remove.
12584
12585 2018-03-30  Tom Tromey  <tom@tromey.com>
12586
12587         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
12588         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
12589
12590 2018-03-30  Tom Tromey  <tom@tromey.com>
12591
12592         * dwarf2read.c (class free_cached_comp_units): New class.
12593         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
12594         (free_cached_comp_units): Remove function.
12595
12596 2018-03-30  Tom Tromey  <tom@tromey.com>
12597
12598         * utils.h (make_cleanup_unpush_target): Remove.
12599         * inf-ptrace.c (struct target_unpusher): New.
12600         (target_unpush_up) New typedef.
12601         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
12602         target_unpush_up.
12603         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
12604
12605 2018-03-27  Tom Tromey  <tom@tromey.com>
12606
12607         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
12608
12609 2018-03-27  Pedro Alves  <palves@redhat.com>
12610             Tom Tromey  <tom@tromey.com>
12611
12612         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
12613         destructor.  Now a class.
12614         (gdb_readline_wrapper_cleanup): Remove function.
12615         (gdb_readline_wrapper): Remove cleanups.
12616
12617 2018-03-27  Tom Tromey  <tom@tromey.com>
12618
12619         * typeprint.h (struct type_print_options) <local_typedefs,
12620         global_typedefs>: Remove "struct" keyword.
12621         (class typedef_hash_table): New class.
12622         (recursively_update_typedef_hash, add_template_parameters)
12623         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
12624         (find_typedef_in_hash): Don't declare.
12625         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
12626         (typedef_hash_table::recursively_update): Rename from
12627         recursively_update_typedef_hash.  Now a member.
12628         (typedef_hash_table::add_template_parameters): Rename from
12629         add_template_parameters.  Now a member.
12630         (typedef_hash_table::typedef_hash_table): Now a constructor;
12631         rename from create_typedef_hash.
12632         (typedef_hash_table::~typedef_hash_table): Now a destructor;
12633         rename from free_typedef_hash.
12634         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
12635         (do_free_global_table): Remove.
12636         (typedef_hash_table::typedef_hash_table): New constructor; renamed
12637         from copy_type_recursive.
12638         (create_global_typedef_table): Remove.
12639         (typedef_hash_table::find_global_typedef): Now a member of
12640         typedef_hash_table.
12641         (typedef_hash_table::find_typedef): Rename from
12642         find_typedef_in_hash; now a member.
12643         (whatis_exp): Update.
12644         * extension.h (struct ext_lang_type_printers): Add constructor and
12645         destructor.
12646         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
12647         declare.
12648         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
12649         Now a constructor; rename from start_ext_lang_type_printers.
12650         (ext_lang_type_printers): Now a destructor; rename from
12651         free_ext_lang_type_printers.
12652         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
12653         Update.
12654         (c_type_print_base_struct_union): Update.  Remove cleanups.
12655
12656 2018-03-27  Tom Tromey  <tom@tromey.com>
12657
12658         * dwarf-index-write.c: Include <cmath>.
12659
12660 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
12661
12662         * NEWS: Add entry describing new "set|show varsize-limit" command.
12663         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
12664         command.
12665         * printcmd.c (_initialize_printcmd): Add "set var" alias of
12666         "set variable".
12667
12668 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
12669
12670         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
12671         dwarf-index-write.c
12672         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
12673         * dwarf-index-common.c: New file.
12674         * dwarf-index-common.h: New file.
12675         * dwarf-index-write.c: New file.
12676         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
12677         (struct dwarf2_section_info): Move from here.
12678         (dwarf2_section_info_def): Likewise.
12679         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
12680         (offset_type): Likewise.
12681         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
12682         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
12683         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
12684         (byte_swap): Likewise.
12685         (MAYBE_SWAP): Likewise.
12686         (dwarf2_per_cu_ptr): Likewise.
12687         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
12688         (struct tu_stats): Likewise.
12689         (struct dwarf2_per_objfile): Likewise.
12690         (struct dwarf2_per_cu_data): Likewise.
12691         (struct signatured_type): Likewise.
12692         (sig_type_ptr): Likewise.
12693         (DEF_VEC_P (sig_type_ptr)): Likewise.
12694         (INDEX4_SUFFIX): Likewise.
12695         (INDEX5_SUFFIX): Likewise.
12696         (DEBUG_STR_SUFFIX): Likewise.
12697         (dwarf2_read_section): Make non-static.
12698         (mapped_index_string_hash): Move from here.
12699         (dwarf5_djb_hash): Likewise.
12700         (file_write): Likewise.
12701         (class data_buf): Likewise.
12702         (struct symtab_index_entry): Likewise.
12703         (struct mapped_symtab): Likewise.
12704         (find_slot): Likewise.
12705         (hash_expand): Likewise.
12706         (add_index_entry): Likewise.
12707         (uniquify_cu_indices): Likewise.
12708         (class c_str_view): Likewise.
12709         (class c_str_view_hasher): Likewise.
12710         (class vector_hasher): Likewise.
12711         (write_hash_table): Likewise.
12712         (psym_index_map): Likewise.
12713         (struct addrmap_index_data): Likewise.
12714         (add_address_entry): Likewise.
12715         (add_address_entry_worker): Likewise.
12716         (write_address_map): Likewise.
12717         (symbol_kind): Likewise.
12718         (write_psymbols): Likewise.
12719         (struct signatured_type_index_data): Likewise.
12720         (write_one_signatured_type): Likewise.
12721         (recursively_count_psymbols): Likewise.
12722         (recursively_write_psymbols): Likewise.
12723         (class debug_names): Likewise.
12724         (check_dwarf64_offsets): Likewise.
12725         (psyms_seen_size): Likewise.
12726         (write_gdbindex): Likewise.
12727         (write_debug_names): Likewise.
12728         (assert_file_size): Likewise.
12729         (write_psymtabs_to_index): Likewise.
12730         (save_gdb_index_command): Likewise.
12731         (_initialize_dwarf2_read): Don't register the "save gdb-index"
12732         command.
12733         * dwarf2read.h: New file.
12734
12735 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
12736
12737         PR gdb/22670
12738         * dwarf2read.c (dwarf2_physname): Do not return the demangled
12739         symbol name if the CU's language stores symbol names in linkage
12740         format.
12741         * language.h (struct language_defn)
12742         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
12743         all instances of this struct.
12744
12745 2018-03-26  Tom Tromey  <tom@tromey.com>
12746
12747         * stack.c (backtrace_command_1): Remove verbose code.
12748
12749 2018-03-26  Tom Tromey  <tom@tromey.com>
12750
12751         * python/py-framefilter.c (py_print_type): Don't catch
12752         exceptions.  Return void.
12753         (py_print_value): Likewise.
12754         (py_print_single_arg): Likewise.
12755         (enumerate_args): Don't catch exceptions.
12756         (py_print_args): Likewise.
12757         (py_print_frame): Likewise.
12758         (gdbpy_apply_frame_filter): Catch exceptions here.
12759
12760 2018-03-26  Tom Tromey  <tom@tromey.com>
12761
12762         * stack.c (_initialize_stack): Remove trailing newlines from help
12763         text.  Add "Usage" line to "backtrace" help.
12764
12765 2018-03-26  Tom Tromey  <tom@tromey.com>
12766
12767         PR python/16486:
12768         * python/py-framefilter.c (py_print_args): Call wrap_hint.
12769
12770 2018-03-26  Tom Tromey  <tom@tromey.com>
12771
12772         * python/py-framefilter.c (py_print_single_arg): Return
12773         EXT_LANG_BT_ERROR from catch.
12774
12775 2018-03-26  Tom Tromey  <tom@tromey.com>
12776
12777         PR backtrace/15584:
12778         * stack.c (backtrace_command_1): Move some code into no-filters
12779         "if".
12780
12781 2018-03-26  Tom Tromey  <tom@tromey.com>
12782
12783         * python/py-framefilter.c (throw_quit_or_print_exception): New
12784         function.
12785         (gdbpy_apply_frame_filter): Use it.
12786
12787 2018-03-26  Tom Tromey  <tom@tromey.com>
12788
12789         PR cli/17716:
12790         * python/py-framefilter.c (py_print_type, py_print_value)
12791         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
12792         RETURN_MASK_ERROR.
12793
12794 2018-03-26  Tom Tromey  <tom@tromey.com>
12795
12796         * python/py-framefilter.c (enumerate_args): Use
12797         gdb::unique_xmalloc_ptr.
12798
12799 2018-03-26  Tom Tromey  <tom@tromey.com>
12800
12801         * python/py-framefilter.c (py_print_frame): Return
12802         EXT_LANG_BT_OK.
12803         (gdbpy_apply_frame_filter): Update comment.
12804         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
12805         Remove.
12806         <EXT_LANG_BT_NO_FILTERS>: Change value.
12807
12808 2018-03-26  Tom Tromey  <tom@tromey.com>
12809
12810         PR backtrace/15582:
12811         * stack.c (backtrace_command): Parse "hide" argument.
12812         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
12813         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
12814         constant.
12815
12816 2018-03-26  Tom Tromey  <tom@tromey.com>
12817
12818         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
12819         add "flags".
12820         (backtrace_command): Remove "fulltrace", add "flags".
12821
12822 2018-03-26  Tom Tromey  <tom@tromey.com>
12823
12824         * stack.c (backtrace_command): Rewrite command line parsing.
12825
12826 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
12827
12828         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
12829
12830 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
12831
12832         * filename-seen-cache.h: Add include guard.
12833
12834 2018-03-26  Keith Seitz  <keiths@redhat.com>
12835
12836         * symfile.c (place_section): Remove "struct" from section_addr_info
12837         in comment.
12838         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
12839         "struct" keyword from section_addr_info.
12840
12841 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
12842
12843         * regformats/regdef.h (reg): Add constructors.
12844
12845 2018-03-25  Pedro Alves  <palves@redhat.com>
12846
12847         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
12848         if then/else bodies in var_func_name extraction.
12849
12850 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
12851
12852         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
12853         lookup_minimal_symbol() to find symbol entry.
12854         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
12855
12856 2018-03-23  Keith Seitz  <keiths@redhat.com>
12857
12858         PR c++/22968
12859         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
12860         nested type definitions for C++, too.
12861
12862 2018-03-23  Tom Tromey  <tom@tromey.com>
12863
12864         * machoread.c (struct oso_el): Add a constructor.  Don't define as
12865         a typedef.
12866         (macho_register_oso): Remove.
12867         (macho_symtab_read): Take a std::vector.
12868         (oso_el_compare_name): Now a std::sort comparator.
12869         (macho_symfile_read_all_oso): Take a std::vector.
12870         (macho_symfile_read): Use std::vector.  Remove cleanups.
12871
12872 2018-03-22  Tom Tromey  <tom@tromey.com>
12873
12874         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
12875         (record_full_goto_bookmark): Use std::string.
12876
12877 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12878
12879         PR tdep/18295
12880         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
12881         a single mask.
12882
12883 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12884
12885         * rs6000-tdep.c (store_insn_p): New function.
12886         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
12887         and cr_reg to their unshifted values. Use store_insn_p to
12888         match LR saves using either R1 or fdata->alloca_reg. Use
12889         store_insn_p to match CR saves. Set alloca_reg_offset
12890         when alloca_reg and framep are set. Remove lr_reg shift
12891         when assigning to fdata->lr_register.
12892
12893 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12894
12895         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
12896         command line args instead of emitting a warning.
12897
12898 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
12899
12900         * tracepoint.h (struct static_tracepoint_marker): Initialize
12901         fields, define default constructor, move constructor and move
12902         assignment, disable the rest.
12903         <str_id, extra>: Make std::string.
12904         (release_static_tracepoint_marker): Remove.
12905         (free_current_marker): Remove.
12906         * tracepoint.c (free_current_marker): Remove.
12907         (parse_static_tracepoint_marker_definition): Adjust to
12908         std::string, use new hex2str overload.
12909         (release_static_tracepoint_marker): Remove.
12910         (print_one_static_tracepoint_marker): Get marker by reference
12911         and adjust to std::string.
12912         (info_static_tracepoint_markers_command): Adjust to std::vector
12913         changes
12914         * target.h (static_tracepoint_marker_p): Remove typedef.
12915         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
12916         (struct target_ops) <to_static_tracepoint_marker_at>: Return
12917         bool.
12918         <to_static_tracepoint_markers_by_strid>: Return std::vector.
12919         * target-debug.h
12920         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
12921         (target_debug_print_std_vector_static_tracepoint_marker): New.
12922         (target_debug_print_struct_static_tracepoint_marker_p): Rename
12923         to...
12924         (target_debug_print_static_tracepoint_marker_p): ... this.
12925         * target-delegates.c: Re-generate.
12926         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
12927         Make std::string.
12928         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
12929         (decode_static_tracepoint_spec): Adjust to std::vector.
12930         (tracepoint_print_one_detail): Adjust to std::string.
12931         (strace_marker_decode_location): Adjust to std::string.
12932         (update_static_tracepoint): Adjust to std::string, remove call
12933         to release_static_tracepoint_marker.
12934         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
12935         Adjust to std::vector.
12936         * remote.c (remote_static_tracepoint_marker_at): Return bool.
12937         (remote_static_tracepoint_markers_by_strid): Adjust to
12938         std::vector.
12939         * common/rsp-low.h (hex2str): New overload with explicit count
12940         of bytes.
12941         * common/rsp-low.c (hex2str): New overload with explicit count
12942         of bytes.
12943         * unittests/rsp-low-selftests.c (test_hex2str): New function.
12944         (_initialize_rsp_low_selftests): Add test_hex2str test.
12945         * unittests/tracepoint-selftests.c
12946         (test_parse_static_tracepoint_marker_definition): Adjust to
12947         std::string.
12948
12949 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
12950
12951         * tracepoint.c (parse_static_tracepoint_marker_definition):
12952         Consider case where the definition is followed by more
12953         definitions.
12954         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12955         tracepoint-selftests.c.
12956         * unittests/tracepoint-selftests.c: New.
12957
12958 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12959
12960         * MAINTAINERS (Write After Approval): Add Pedro Franco de
12961         Carvalho.
12962
12963 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
12964
12965         * symtab.c (find_pc_sect_line): fixed indentation.
12966
12967 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
12968
12969         * symtab.c (find_pc_sect_line): now uses binary search.
12970
12971 2018-03-19  Tom Tromey  <tom@tromey.com>
12972
12973         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
12974         "IDENT" production.
12975
12976 2018-03-19  Pedro Alves  <palves@redhat.com>
12977             Tom Tromey  <tom@tromey.com>
12978
12979         * unittests/observable-selftests.c: New file.
12980         * common/observable.h: New file.
12981         * observable.h: New file.
12982         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
12983         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
12984         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
12985         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
12986         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
12987         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
12988         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
12989         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
12990         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
12991         python/py-breakpoint.c, python/py-finishbreakpoint.c,
12992         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
12993         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
12994         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
12995         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
12996         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
12997         tui/tui-interp.c, valops.c: Update all users.
12998         * tui/tui-hooks.c (tui_bp_created_observer)
12999         (tui_bp_deleted_observer, tui_bp_modified_observer)
13000         (tui_inferior_exit_observer, tui_before_prompt_observer)
13001         (tui_normal_stop_observer, tui_register_changed_observer):
13002         Remove.
13003         (tui_observers_token): New global.
13004         (attach_or_detach, tui_attach_detach_observers): New functions.
13005         (tui_install_hooks, tui_remove_hooks): Use
13006         tui_attach_detach_observers.
13007         * record-btrace.c (record_btrace_thread_observer): Remove.
13008         (record_btrace_thread_observer_token): New global.
13009         * observer.sh: Remove.
13010         * observer.c: Rename to observable.c.
13011         * observable.c (namespace gdb_observers): Define new objects.
13012         (observer_debug): Move into gdb_observers namespace.
13013         (struct observer, struct observer_list, xalloc_observer_list_node)
13014         (xfree_observer_list_node, generic_observer_attach)
13015         (generic_observer_detach, generic_observer_notify): Remove.
13016         (_initialize_observer): Update.
13017         Don't include observer.inc.
13018         * Makefile.in (generated_files): Remove observer.h, observer.inc.
13019         (clean mostlyclean): Likewise.
13020         (observer.h, observer.inc): Remove targets.
13021         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
13022         (COMMON_SFILES): Use observable.c, not observer.c.
13023         * .gitignore: Remove observer.h.
13024
13025 2018-03-18  Tom Tromey  <tom@tromey.com>
13026
13027         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
13028         gdb::def_vector.
13029         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
13030
13031 2018-03-17  Tom Tromey  <tom@tromey.com>
13032
13033         * auto-load.c (auto_load_objfile_script_1): Use std::string.
13034
13035 2018-03-17  Tom Tromey  <tom@tromey.com>
13036
13037         * target.c (class scoped_target_fd): New.
13038         (target_fileio_close_cleanup): Remove.
13039         (target_fileio_read_alloc_1): Use scoped_target_fd.
13040
13041 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
13042
13043         * silent-rules.mk: New.
13044         * Makefile.in: Include silent-rules.mk
13045         (srcdir, VPATH, top_srcdir): Move up.
13046         (COMPILE): Add ECHO_CXX.
13047         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
13048         (init.c): Add ECHO_INIT_C.
13049         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
13050         (version.c): Add ECHO_GEN.
13051         (printcmd.o): Add ECHO_CXX.
13052         (target-float.o): Add ECHO_CXX.
13053         (ada-exp.o): Add ECHO_CXX.
13054         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
13055         (insight$(EXEEXT)): Add ECHO_CXXLD.
13056         * gnulib/configure.ac: Add AM_SILENT_RULES.
13057         * gnulib/aclocal.m4: Re-generate.
13058         * gnulib/configure: Re-generate.
13059         * gnulib/import/Makefile.in: Re-generate.
13060
13061 2018-03-16  Tom Tromey  <tom@tromey.com>
13062
13063         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
13064         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
13065         * utils.c (do_free_section_addr_info)
13066         (make_cleanup_free_section_addr_info): Remove.
13067         * symfile.h (struct other_sections): Add constructor.
13068         (struct section_addr_info): Remove.
13069         (section_addr_info): New typedef.
13070         (struct sym_fns) <sym_offsets>: Change type of parameter.
13071         (build_section_addr_info_from_objfile)
13072         (relative_addr_info_to_section_offsets, addr_info_make_relative)
13073         (default_symfile_offsets, symbol_file_add)
13074         (symbol_file_add_from_bfd)
13075         (build_section_addr_info_from_section_table): Update.
13076         (alloc_section_addr_info, free_section_addr_info): Don't declare.
13077         * symfile.c (alloc_section_addr_info): Remove.
13078         (build_section_addr_info_from_section_table): Change return type.
13079         Update.
13080         (build_section_addr_info_from_bfd)
13081         (build_section_addr_info_from_objfile): Likewise.
13082         (free_section_addr_info): Remove.
13083         (relative_addr_info_to_section_offsets): Change type of "addrs".
13084         (addrs_section_compar): Now a std::sort comparator.
13085         (addrs_section_sort): Change return type.
13086         (addr_info_make_relative): Change type of "addrs".  Update.
13087         (default_symfile_offsets, syms_from_objfile_1)
13088         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
13089         (symbol_file_add_separate): Update.
13090         (symbol_file_add): Change type of "addrs".  Update.
13091         (add_symbol_file_command): Update.  Remove cleanups.
13092         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
13093         cleanups.
13094         * symfile-debug.c (debug_sym_offsets): Change type of "info".
13095         * solib.c (solib_read_symbols): Update.
13096         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
13097         * machoread.c (macho_symfile_offsets): Update.
13098         * jit.c (jit_bfd_try_read_symtab): Update.
13099
13100 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
13101
13102         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13103         unittests/utils-selftests.c.
13104         * unittests/utils-selftests.c: New file.
13105
13106 2018-03-14  Tom Tromey  <tom@tromey.com>
13107
13108         PR cli/14977:
13109         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
13110         for NULL.
13111
13112 2018-03-14  Tom Tromey  <tom@tromey.com>
13113
13114         PR cli/19918:
13115         * printcmd.c (printf_pointer): Allow "-" in format.
13116
13117 2018-03-14  Tom Tromey  <tom@tromey.com>
13118
13119         * printcmd.c (_initialize_printcmd): Add usage to printf.
13120
13121 2018-03-14  Yao Qi  <qiyao@sourceware.org>
13122
13123         * MAINTAINERS: Update my email address.
13124
13125 2018-03-13  Tom Tromey  <tom@tromey.com>
13126
13127         * machoread.c (macho_check_dsym): Change filenamep to a
13128         std::string*.
13129         (macho_symfile_read): Update.
13130         * symfile.c (load_command): Use std::string.
13131
13132 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
13133
13134         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
13135         to error message string.
13136         (riscv_register_name): Use xsnprintf instead of sprintf.
13137         (riscv_insn::fetch_instruction): Use gdb_assert instead of
13138         internal_error.
13139         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
13140         error.
13141         (riscv_push_dummy_call): Likewise.
13142
13143 2018-03-12  Tom Tromey  <tom@tromey.com>
13144
13145         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
13146         Use gdb::byte_vector.
13147         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
13148
13149 2018-03-12  Yao Qi  <yao.qi@linaro.org>
13150
13151         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
13152         parameter type to readable_regcache.
13153         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
13154         the declaration.
13155
13156 2018-03-11  Tom Tromey  <tom@tromey.com>
13157
13158         * dwarf2read.c (struct nextfield): Add initializers.
13159         (struct nextfnfield): Remove.
13160         (struct fnfieldlist): Add initializers.  Remove "length" and
13161         "head", use std::vector.
13162         (struct decl_field_list): Remove.
13163         (struct field_info): Add initializers.
13164         <fields, baseclasses>: Now std::vector.
13165         <nbaseclasses, nfnfields, typedef_field_list_count,
13166         nested_types_list_count>: Remove.
13167         (dwarf2_add_field, dwarf2_add_type_defn)
13168         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
13169         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
13170         (process_structure_scope): Update.
13171
13172 2018-03-11  Tom Tromey  <tom@tromey.com>
13173
13174         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
13175         for use by std::sort.
13176         (build_type_psymtabs_1): Use std::vector.
13177
13178 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
13179
13180         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
13181         and LIBMPFR in the printed configuration.
13182
13183 2018-03-08  Tom Tromey  <tom@tromey.com>
13184
13185         * source.c (get_filename_and_charpos): Use scoped_fd.
13186         * nto-procfs.c (procfs_open_1): Use scoped_fd.
13187         (procfs_pidlist): Likewise.
13188         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
13189         (iterate_over_mappings): Likewise.
13190
13191 2018-03-08  Tom Tromey  <tom@tromey.com>
13192
13193         * infcall.c (struct call_return_meta_info)
13194         <stack_temporaries_enabled>: Remove.
13195         (get_call_return_value, call_function_by_hand_dummy): Update.
13196         * thread.c (disable_thread_stack_temporaries): Remove.
13197         (enable_thread_stack_temporaries): Remove.
13198         (thread_stack_temporaries_enabled_p): Return bool.
13199         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
13200         (get_last_thread_stack_temporary): Update.
13201         * eval.c (evaluate_subexp): Update.
13202         * gdbthread.h (class enable_thread_stack_temporaries): Now a
13203         class, not a function.
13204         (value_ptr, value_vec): Remove typedefs.
13205         (class thread_info) <stack_temporaries_enabled>: Now bool.
13206         <stack_temporaries>: Now a std::vector.
13207         (thread_stack_temporaries_enabled_p)
13208         (value_in_thread_stack_temporaries): Return bool.
13209
13210 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
13211
13212         * remote.c (putpkt_binary): Fix omitted bytes reporting.
13213         (getpkt_or_notif_sane_1): Likewise.
13214
13215 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
13216
13217         * build-id.c (build_id_to_debug_bfd): Use std::string.
13218
13219 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
13220
13221         * build-id.c (find_separate_debug_file_by_buildid): Return
13222         std::string.
13223         * build-id.h (find_separate_debug_file_by_buildid): Return
13224         std::string.
13225         * coffread.c (coff_symfile_read): Adjust to std::string.
13226         * elfread.c (elf_symfile_read): Adjust to std::string.
13227         * symfile.c (separate_debug_file_exists): Change parameter to
13228         std::string.
13229         (find_separate_debug_file): Return std::string.
13230         (find_separate_debug_file_by_debuglink): Return std::string.
13231         * symfile.h (find_separate_debug_file_by_debuglink): Return
13232         std::string.
13233
13234 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
13235
13236         * common/xml-utils.c (xml_escape_text): Move code to...
13237         (xml_escape_text_append): ... this new function.
13238         * common/xml-utils.h (xml_escape_text_append): New declaration.
13239         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
13240         New function.
13241         (_initialize_xml_utils): register test_xml_escape_text_append as
13242         a selftest.
13243
13244 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
13245
13246         * defs.h: Remove MAX_REGISTER_SIZE.
13247         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
13248         asserts.
13249         * python/py-unwind.c (pyuw_sniffer): Likewise.
13250
13251 2018-03-07  Tom Tromey  <tom@tromey.com>
13252
13253         * linux-tdep.c (linux_info_proc): Update.
13254         * target.h (struct target_ops) <to_fileio_readlink>: Return
13255         optional<string>.
13256         (target_fileio_readlink): Return optional<string>.
13257         * remote.c (remote_hostio_readlink): Return optional<string>.
13258         * inf-child.c (inf_child_fileio_readlink): Return
13259         optional<string>.
13260         * target.c (target_fileio_readlink): Return optional<string>.
13261
13262 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
13263
13264         * regcache.c (cooked_read_test): Add riscv to the list of
13265         architectures that have a save_reggroup.
13266
13267 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
13268
13269         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
13270         value is not a dynamic class object.
13271
13272 2018-03-06  Tom Tromey  <tom@tromey.com>
13273
13274         * rust-exp.y: Formatting fixes.
13275
13276 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13277
13278         * riscv-tdep.c (riscv_register_name): Remove target description
13279         support.
13280         (riscv_gdbarch_init): Remove target description check.
13281
13282 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13283
13284         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
13285         comment.
13286         * riscv-tdep.h: Likewise.
13287
13288 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13289
13290         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
13291         (riscv_pseudo_register_write): Delete.
13292         (riscv_gdbarch_init): Remove all use of pseudo registers.
13293
13294 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
13295
13296         * record-btrace.c (btrace_print_lines): Replace cleanup
13297         parameter with RAII equivalents.
13298         (btrace_insn_history): Replace cleanup with RAII equivalents.
13299         * ui-out.h (make_cleanup_ui_out_list_begin_end,
13300         make_cleanup_ui_out_tuple_begin_end): Remove.
13301         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
13302         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
13303         make_cleanup_ui_out_list_begin_end): Remove.
13304
13305 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
13306
13307         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
13308         parameter types to std::vector.  Use bool.
13309         (record_btrace_wait): Replace VEC(tp_t) with
13310         std::vector<thread_info *>.
13311         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
13312
13313 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
13314
13315         * record-btrace.c (record_btrace_disable_callback): Remove.
13316         (struct scoped_btrace_disable): New.
13317         (record_btrace_open): Use scoped_btrace_disable.
13318
13319 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13320
13321         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
13322         reading values from registers.
13323
13324 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13325
13326         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
13327         where appropriate.
13328
13329 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13330
13331         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
13332         change parameter type.  Use GDB's print functions, and use
13333         core_addr_to_string where appropriate.
13334         (riscv_push_dummy_call): Use core_addr_to_string where
13335         appropriate, update call to riscv_print_arg_location, and reindent
13336         a few lines.
13337         (riscv_return_value): Update call to riscv_print_arg_location.
13338
13339 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13340             Tim Newsome <tim@sifive.com>
13341             Albert Ou <a0u@eecs.berkeley.edu>
13342             Darius Rad <darius@bluespec.com>
13343
13344         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
13345         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
13346         (ALLDEPFILES): Add riscv-tdep.c
13347         * configure.tgt: Add riscv support.
13348         * riscv-tdep.c: New file.
13349         * riscv-tdep.h: New file.
13350         * NEWS: Mention new target.
13351         * MAINTAINERS: Add entry for riscv.
13352
13353 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13354
13355         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
13356         fields within aggregates.
13357
13358 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
13359
13360         * record-btrace.c (btrace_print_lines): Change type of flags to
13361         gdb_disassembly_flags.
13362
13363 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13364
13365         * fbsd-nat.c: Include "inf-ptrace.h".
13366         (USE_SIGTRAP_SIGINFO): Conditionally define.
13367         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
13368         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
13369         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
13370         function.
13371         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
13372         Likewise.
13373         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
13374         Likewise.
13375         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
13376         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
13377         "supports_stopped_by_hw_breakpoint" target methods.
13378
13379 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13380
13381         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
13382         * fbsd-nat.c (debug_fbsd_nat): New variable.
13383         (show_fbsd_nat_debug): New function.
13384         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
13385         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
13386
13387 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13388
13389         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
13390         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
13391         prototype.
13392         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
13393         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
13394         method.
13395
13396 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13397
13398         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
13399         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
13400
13401 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13402
13403         * charset.c (struct charset_vector): New.
13404         (charsets): Change type to charset_vector.
13405         (find_charset_names): Adjust.
13406         (add_one): Adjust.
13407         (_initialize_charset): Adjust.
13408
13409 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13410
13411         * progspace.h (struct program_space) <deleted_solibs>: Change
13412         type to std::vector<std::string>.
13413         * progspace.c (clear_program_space_solib_cache): Adjust.
13414         * breakpoint.c (print_solib_event): Adjust.
13415         (check_status_catch_solib): Adjust.
13416         * solib.c (update_solib_list): Adjust.
13417         * ui-out.h (class ui_out) <field_string>: New overload.
13418         * ui-out.c (ui_out::field_string): New overload.
13419
13420 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13421
13422         * progspace.h (struct program_space): Add constructor and
13423         destructor, initialize fields.
13424         (add_program_space): Remove.
13425         * progspace.c (add_program_space): Rename to...
13426         (program_space::program_space): ... this.
13427         (release_program_space): Rename to...
13428         (program_space::~program_space): ... this.
13429         (delete_program_space): Use delete to delete program_space.
13430         (initialize_progspace): Use new to allocate program_space.
13431         * inferior.c (add_inferior_with_spaces): Likewise.
13432         (clone_inferior_command): Likewise.
13433         * infrun.c (follow_fork_inferior): Likewise.
13434         (handle_vfork_child_exec_or_exit): Likewise.
13435
13436 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13437
13438         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
13439         (delim_string_to_char_ptr_vec): Return std::vector of
13440         gdb::unique_xmalloc_ptr.
13441         (dirnames_to_char_ptr_vec_append): Take std::vector of
13442         gdb::unique_xmalloc_ptr.
13443         (dirnames_to_char_ptr_vec): Return std::vector of
13444         gdb::unique_xmalloc_ptr.
13445         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
13446         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
13447         (delim_string_to_char_ptr_vec): Return an std::vector of
13448         gdb::unique_xmalloc_ptr, adjust the code.
13449         (dirnames_to_char_ptr_vec_append): Take an std::vector of
13450         gdb::unique_xmalloc_ptr, adjust the code.
13451         (dirnames_to_char_ptr_vec): Return an std::vector of
13452         gdb::unique_xmalloc_ptr, adjust the code.
13453         * auto-load.c (auto_load_safe_path_vec): Change type to
13454         std::vector of gdb::unique_xmalloc_ptr.
13455         (auto_load_expand_dir_vars): Return an std::vector of
13456         gdb::unique_xmalloc_ptr, adjust the code.
13457         (auto_load_safe_path_vec_update): Adjust.
13458         (filename_is_in_auto_load_safe_path_vec): Adjust.
13459         (auto_load_objfile_script_1): Adjust.
13460         * build-id.c (build_id_to_debug_bfd): Adjust.
13461         * linux-thread-db.c (thread_db_load_search): Adjust.
13462         * source.c (add_path): Adjust.
13463         (openp): Adjust.
13464         * symfile.c (find_separate_debug_file): Adjust.
13465         * utils.c (do_free_char_ptr_vec): Remove.
13466         (make_cleanup_free_char_ptr_vec): Remove.
13467
13468 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
13469
13470         PR gdb/22907
13471         * common/pathstuff.c: Conditionally include "<windows.h>".
13472
13473 2018-03-01  Georg Sauthoff  <mail@georg.so>
13474
13475         PR gdb/22888
13476         * gcore.in: Quote variables and switch interpreter to bash.
13477
13478 2018-03-01  Tom Tromey  <tom@tromey.com>
13479
13480         * dwarf2read.c (alloc_discriminant_info): Fix default_index
13481         assertion.  Add assertion for discriminant_index.
13482         (quirk_rust_enum): Use correct base type name in univariant case.
13483
13484 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
13485
13486         * record.c (get_call_history_modifiers): Return a
13487         record_print_flags.
13488         (cmd_record_call_history): Adjust.
13489         * record-btrace.c (record_btrace_call_history): Adjust.
13490         (record_btrace_call_history_range): Adjust.
13491         (record_btrace_call_history_from): Adjust.
13492         * target-debug.h (target_debug_print_record_print_flags): New.
13493         * target-delegates.c: Re-generate.
13494         * target.c (target_call_history): Change flags type.
13495         (target_call_history_from): Likewise.
13496         (target_call_history_range): Likewise.
13497         * target.h (struct target_ops) <target_call_history>: Likewise.
13498         (target_call_history_from): Likewise.
13499         (target_call_history_range): Likewise.
13500
13501 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
13502             Simon Marchi  <simon.marchi@polymtl.ca>
13503
13504         * common/common-utils.c: Include "sys/stat.h".
13505         (is_regular_file): Move here from "source.c"; change return
13506         type to "bool".
13507         * common/common-utils.h (is_regular_file): New prototype.
13508         * common/pathstuff.c (contains_dir_separator): New function.
13509         * common/pathstuff.h (contains_dir_separator): New prototype.
13510         * source.c: Don't include "sys/stat.h".
13511         (is_regular_file): Move to "common/common-utils.c".
13512
13513 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
13514
13515         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
13516         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
13517         * auto-load.c: Include "common/pathstuff.h".
13518         * common/common-def.h (current_directory): Move here.
13519         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
13520         function.
13521         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
13522         prototype.
13523         * common/pathstuff.c: New file.
13524         * common/pathstuff.h: New file.
13525         * compile/compile.c: Include "common/pathstuff.h".
13526         * defs.h (current_directory): Move to "common/common-defs.h".
13527         * dwarf2read.c: Include "common/pathstuff.h".
13528         * exec.c: Likewise.
13529         * guile/scm-safe-call.c: Likewise.
13530         * linux-thread-db.c: Likewise.
13531         * main.c: Likewise.
13532         * nto-tdep.c: Likewise.
13533         * objfiles.c: Likewise.
13534         * source.c: Likewise.
13535         * symtab.c: Likewise.
13536         * utils.c: Include "common/pathstuff.h".
13537         (gdb_realpath): Move to "common/pathstuff.c".
13538         (gdb_realpath_keepfile): Likewise.
13539         (gdb_abspath): Likewise.
13540         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
13541         (gdb_realpath_keepfile): Likewise.
13542         (gdb_abspath): Likewise.
13543
13544 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
13545
13546         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
13547         wildcard process pid for super_resume for kernels with a
13548         specific bug.
13549
13550 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
13551
13552         * compile/compile.c (get_args): Add additional comments
13553         explaining function.
13554
13555 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
13556             Tom Tromey  <tom@tromey.com>
13557
13558         * target.h (memory_write_request_s): Remove typedef.  Don't define
13559         VEC.
13560         (target_write_memory_blocks): Change argument to std::vector.
13561         (struct memory_write_request): Add constructor.
13562         * target-memory.c (compare_block_starting_address): Return bool.
13563         Change argument types.
13564         (claim_memory): Change arguments to use std::vector.
13565         (split_regular_and_flash_blocks, blocks_to_erase)
13566         (compute_garbled_blocks): Likewise.
13567         (cleanup_request_data, cleanup_write_requests_vector): Remove.
13568         (target_write_memory_blocks): Change argument to std::vector.
13569         * symfile.c (struct load_section_data): Add constructor and
13570         destructor.  Use std::vector for "requests".
13571         (struct load_progress_data): Add initializers.
13572         (load_section_callback): Update.  Use "new".
13573         (clear_memory_write_data): Remove.
13574         (generic_load): Update.
13575
13576 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
13577
13578         * arch/aarch64.h: Use common/tdesc.h.
13579
13580 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
13581
13582         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
13583         architecture with a 64-bit ABI.
13584
13585 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
13586
13587         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
13588         ahead of target description loading.
13589
13590 2018-02-26  Tom Tromey  <tom@tromey.com>
13591
13592         * stack.c (backtrace_command_1): Update.
13593         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
13594         of "flags".
13595         * python/py-framefilter.c (py_print_frame)
13596         (gdbpy_apply_frame_filter): Change type of "flags".
13597         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
13598         of "flags".
13599         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
13600         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
13601         * extension.h (enum frame_filter_flag): Rename from
13602         frame_filter_flags.
13603         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
13604         (apply_ext_lang_frame_filter): Change type of "flags".
13605         * extension.c (apply_ext_lang_frame_filter): Change type of
13606         "flags".
13607         * extension-priv.h (struct extension_language_ops)
13608         <apply_frame_filter>: Change type of "flags".
13609
13610 2018-02-26  Tom Tromey  <tom@tromey.com>
13611
13612         PR python/16497:
13613         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
13614         off-by-one in py_end computation.
13615         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
13616         PRINT_MORE_FRAMES.
13617         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
13618         constant.
13619
13620 2018-02-26  Tom Tromey  <tom@tromey.com>
13621
13622         * dwarf2read.c (struct variant_field): New.
13623         (struct nextfield) <variant>: New field.
13624         (dwarf2_add_field): Handle DW_TAG_variant_part.
13625         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
13626         discriminated union.
13627         (read_structure_type): Handle DW_TAG_variant_part.
13628         (handle_struct_member_die): New function, extracted from
13629         process_structure_scope.  Handle DW_TAG_variant.
13630         (process_structure_scope): Handle discriminated unions.  Call
13631         handle_struct_member_die.
13632
13633 2018-02-26  Tom Tromey  <tom@tromey.com>
13634
13635         * rust-lang.h (rust_last_path_segment): Declare.
13636         * rust-lang.c (rust_last_path_segment): Now public.  Change
13637         contract.
13638         (struct disr_info): Remove.
13639         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
13640         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
13641         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
13642         (rust_enum_p, rust_enum_variant): New function.
13643         (rust_underscore_fields): Remove "offset" parameter.
13644         (rust_print_enum): New function.
13645         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
13646         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
13647         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
13648         enums.
13649         (rust_internal_print_type): New function, from rust_print_type.
13650         Remove enum code.
13651         (rust_print_type): Call rust_internal_print_type.
13652         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
13653         Update enum handling.
13654         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
13655         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
13656         (rust_union_quirks): New functions.
13657         (process_full_comp_unit, process_full_type_unit): Call
13658         rust_union_quirks.
13659         (process_structure_scope): Update rust_unions if necessary.
13660
13661 2018-02-26  Tom Tromey  <tom@tromey.com>
13662
13663         * value.h (value_union_variant): Declare.
13664         * valops.c (value_union_variant): New function.
13665         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
13666         (struct discriminant_info): New.
13667         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
13668         enumerator.
13669         (struct main_type) <flag_discriminated_union>: New field.
13670
13671 2018-02-26  Tom Tromey  <tom@tromey.com>
13672
13673         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13674         unittests/unpack-selftests.c.
13675         * unittests/unpack-selftests.c: New file.
13676         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
13677
13678 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13679
13680         * dwarf2read.c (struct partial_die_info) <read>: New method.
13681         (read_partial_die): Remove the declaration.
13682         (load_partial_dies): Update.
13683         (partial_die_info::partial_die_info):
13684         (read_partial_die): Change it to partial_die_info::read.
13685
13686 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13687
13688         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
13689         (fixup_partial_die): Remove declaration.
13690         (scan_partial_symbols): Update.
13691         (partial_die_parent_scope): Likewise.
13692         (partial_die_full_name): Likewise.
13693         (fixup_partial_die): Change it to partial_die_info::fixup.
13694
13695 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13696
13697         * dwarf2read.c (read_partial_die): Update the declaration.
13698         (load_partial_dies): Caller update.
13699         (read_partial_die): Remove one argument abbrev_len.
13700
13701 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13702
13703         * dwarf2read.c (struct partial_die_info): Add ctor, delete
13704         assignment operator.
13705         (load_partial_dies): Use ctor and copy ctor.
13706         (read_partial_die): Update.
13707         (dwarf2_cu::find_partial_die): Use ctor.
13708
13709 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13710
13711         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
13712         (find_partial_die_in_comp_unit): Change it to
13713         dwarf2_cu::find_partial_die.
13714         (find_partial_die): Update.
13715
13716 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13717
13718         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
13719         is NULL.
13720
13721 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13722
13723         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
13724
13725 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
13726
13727         * arch/amd64.h: Use common/tdesc.h.
13728         * arch/i386.c: Likewise.
13729         * arch/i386.h: Likewise.
13730         * arch/tic6x.c: Likewise.
13731         * arch/tdesc.h: Move file from here...
13732         * common/tdesc.h: ...to here.
13733         * features/aarch64-core.c: Regenerate.
13734         * features/aarch64-fpu.c: Regenerate.
13735         * features/i386/32bit-avx.c: Regenerate.
13736         * features/i386/32bit-avx512.c: Regenerate.
13737         * features/i386/32bit-core.c: Regenerate.
13738         * features/i386/32bit-linux.c: Regenerate.
13739         * features/i386/32bit-mpx.c: Regenerate.
13740         * features/i386/32bit-pkeys.c: Regenerate.
13741         * features/i386/32bit-sse.c: Regenerate.
13742         * features/i386/64bit-avx.c: Regenerate.
13743         * features/i386/64bit-avx512.c: Regenerate.
13744         * features/i386/64bit-core.c: Regenerate.
13745         * features/i386/64bit-linux.c: Regenerate.
13746         * features/i386/64bit-mpx.c: Regenerate.
13747         * features/i386/64bit-pkeys.c: Regenerate.
13748         * features/i386/64bit-segments.c: Regenerate.
13749         * features/i386/64bit-sse.c: Regenerate.
13750         * features/i386/x32-core.c: Regenerate.
13751         * features/tic6x-c6xp.c: Regenerate.
13752         * features/tic6x-core.c: Regenerate.
13753         * features/tic6x-gp.c: Regenerate.
13754         * target-descriptions.c: Use common/tdesc.h.
13755         * target-descriptions.h: Likewise.
13756
13757 2018-02-24  Tom Tromey  <tom@tromey.com>
13758
13759         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
13760         (try_thread_db_load_from_dir, thread_db_load_search): Use
13761         std::string.
13762         (info_auto_load_libthread_db_compare): Return bool.  Change
13763         argument types.
13764         (info_auto_load_libthread_db): Use std::vector, std::string.
13765         Remove cleanups.
13766
13767 2018-02-24  Tom Tromey  <tom@tromey.com>
13768
13769         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
13770         std::string.
13771         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
13772         std::string*.
13773         * gdbarch.c: Rebuild.
13774         * gdbarch.h: Rebuild.
13775         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
13776         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
13777         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
13778         std::string*.
13779
13780 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
13781
13782         * gdbtypes.h (sect_offset): Change type to uint64_t.
13783         (sect_offset_str): New function.
13784         * dwarf2read.c (create_addrmap_from_aranges): Use
13785         sect_offset_str.
13786         (error_check_comp_unit_head): Likewise.
13787         (create_debug_type_hash_table): Likewise.
13788         (read_cutu_die_from_dwo): Likewise.
13789         (init_cutu_and_read_dies): Likewise.
13790         (init_cutu_and_read_dies_no_follow): Likewise.
13791         (process_psymtab_comp_unit_reader): Likewise.
13792         (partial_die_parent_scope): Likewise.
13793         (peek_die_abbrev): Likewise.
13794         (process_queue): Likewise.
13795         (dwarf2_physname): Likewise.
13796         (read_namespace_alias): Likewise.
13797         (read_import_statement): Likewise.
13798         (create_dwo_cu_reader): Likewise.
13799         (create_cus_hash_table): Likewise.
13800         (lookup_dwo_cutu): Likewise.
13801         (inherit_abstract_dies): Likewise.
13802         (read_func_scope): Likewise.
13803         (read_call_site_scope): Likewise.
13804         (dwarf2_add_member_fn): Likewise.
13805         (read_common_block): Likewise.
13806         (read_module_type): Likewise.
13807         (read_typedef): Likewise.
13808         (read_subrange_type): Likewise.
13809         (load_partial_dies): Likewise.
13810         (read_partial_die): Likewise.
13811         (find_partial_die): Likewise.
13812         (read_str_index): Likewise.
13813         (dwarf2_string_attr): Likewise.
13814         (build_error_marker_type): Likewise.
13815         (lookup_die_type): Likewise.
13816         (dump_die_shallow): Likewise.
13817         (follow_die_ref): Likewise.
13818         (dwarf2_fetch_die_loc_sect_off): Likewise.
13819         (dwarf2_fetch_constant_bytes): Likewise.
13820         (follow_die_sig): Likewise.
13821         (get_signatured_type): Likewise.
13822         (get_DW_AT_signature_type): Likewise.
13823         (dwarf2_find_containing_comp_unit): Likewise.
13824         (set_die_type): Likewise.
13825
13826 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
13827
13828         * arch/aarch64.c: Include "common-defs.h".
13829         * arch/amd64.c: Likewise.
13830         * arch/i386.c: Likewise.
13831
13832 2018-02-21  Tom Tromey  <tom@tromey.com>
13833
13834         * value.h: (extract_field_op): Update.
13835         * eval.c (extract_field_op): Return a const char *.
13836         * expression.h (parse_expression_for_completion): Update.
13837         * completer.c (complete_expression): Update.
13838         (add_struct_fields): Make fieldname const.
13839         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
13840         (mark_completion_tag, parse_exp_in_context_1): Update.
13841         (parse_expression_for_completion): Change "name" to
13842         unique_xmalloc_ptr*.
13843
13844 2018-02-21  Tom Tromey  <tom@tromey.com>
13845
13846         * infcall.c (call_function_by_hand_dummy): Use std::vector.
13847
13848 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13849
13850         * avr-tdep.c (avr_read_pc): Change parameter type to
13851         readable_regcache.
13852         * gdbarch.sh (read_pc): Likewise.
13853         * gdbarch.c: Re-generated.
13854         * gdbarch.h: Re-generated.
13855         * hppa-tdep.c (hppa_read_pc): Change parameter type to
13856         readable_regcache.
13857         * ia64-tdep.c (ia64_read_pc): Likewise.
13858         * mips-tdep.c (mips_read_pc): Likewise.
13859         * spu-tdep.c (spu_read_pc): Likewise.
13860
13861 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13862
13863         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
13864         * regcache-dump.c: New file.
13865         * regcache.c: Move register_dump to regcache-dump.c.
13866         (maintenance_print_registers): Likewise.
13867         (maintenance_print_raw_registers): Likewise.
13868         (maintenance_print_cooked_registers): Likewise.
13869         (maintenance_print_register_groups): Likewise.
13870         (maintenance_print_remote_registers): Likewise.
13871         (_initialize_regcache): Likewise.
13872         * regcache.h (register_dump): Moved from regcache.c.
13873
13874 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13875
13876         * regcache.c (regcache::regcache): Update.
13877         (regcache::invalidate): Move it to detached_regcache::invalidate.
13878         (get_thread_arch_aspace_regcache): Update.
13879         (regcache::raw_update): Update.
13880         (regcache::cooked_read): Remove some code.
13881         (regcache::cooked_read_value): Likewise.
13882         (regcache::raw_write): Remove assert on m_readonly_p.
13883         (regcache::raw_supply_integer): Move it to
13884         detached_regcache::raw_supply_integer.
13885         (regcache::raw_supply_zeroed): Likewise.
13886         * regcache.h (detached_regcache) <raw_supply_integer>: New
13887         declaration.
13888         <raw_supply_zeroed, invalidate>: Likewise.
13889         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
13890         <invalidate>: Likewise.
13891         <m_readonly_p>: Removed.
13892
13893 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13894
13895         * infcmd.c (get_return_value): Let stop_regs point to
13896         get_current_regcache.
13897         * regcache.c (regcache::regcache): Remove.
13898         (register_dump_reg_buffer): New class.
13899         (regcache_print): Adjust.
13900         * regcache.h (regcache): Remove constructors.
13901
13902 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13903
13904         * regcache.c (class register_dump): New class.
13905         (register_dump_regcache, register_dump_none): New class.
13906         (register_dump_remote, register_dump_groups): New class.
13907         (regcache_print): Update.
13908         * regcache.h (regcache_dump_what): Move it to regcache.c.
13909         (regcache) <dump>: Remove.
13910
13911 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13912
13913         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
13914          reg_buffer_rw *.
13915         (jit_unwind_reg_set_impl): Call raw_supply.
13916         (jit_frame_sniffer): Use reg_buffer_rw.
13917         * record-full.c (record_full_core_regbuf): Change its type.
13918         (record_full_core_open_1): Use reg_buffer_rw.
13919         (record_full_close): Likewise.
13920         (record_full_core_fetch_registers): Use regcache->raw_supply.
13921         (record_full_core_store_registers): Likewise.
13922         * regcache.c (regcache::get_register_status): Move it to
13923         reg_buffer.
13924         (regcache_raw_set_cached_value): Remove.
13925         (regcache::raw_set_cached_value): Remove.
13926         (regcache::raw_write): Call raw_supply.
13927         (regcache::raw_supply): Move it to reg_buffer_rw.
13928         * regcache.h (regcache_raw_set_cached_value): Remove.
13929         (reg_buffer_rw): New class.
13930
13931 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13932
13933         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
13934         readonly_detached_regcache.
13935         (dummy_frame_prev_register): Use regcache->cooked_read.
13936         * frame.c (frame_save_as_regcache): Change return type.
13937         (frame_pop): Update.
13938         * frame.h (frame_save_as_regcache): Update declaration.
13939         * inferior.h (get_infcall_suspend_state_regcache): Update
13940         declaration.
13941         * infrun.c (infcall_suspend_state) <registers>: use
13942         readonly_detached_regcache.
13943         (save_infcall_suspend_state): Don't use regcache_dup.
13944         (get_infcall_suspend_state_regcache): Change return type.
13945         * linux-fork.c (struct fork_info) <savedregs>: Change to
13946         readonly_detached_regcache.
13947         <pc>: New field.
13948         (fork_save_infrun_state): Don't use regcache_dup.
13949         (info_checkpoints_command): Adjust.
13950         * mi/mi-main.c (register_changed_p): Update declaration.
13951         (mi_cmd_data_list_changed_registers): Use
13952         readonly_detached_regcache.
13953         (register_changed_p): Change parameter type to
13954         readonly_detached_regcache.
13955         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
13956         readonly_detached_regcache.
13957         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
13958         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
13959         New.
13960         (regcache::save): Move it to reg_buffer.
13961         (regcache::restore): Change parameter type.
13962         (regcache_dup): Remove.
13963         * regcache.h (reg_buffer) <save>: New method.
13964         (readonly_detached_regcache): New class.
13965         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
13966         readonly_detached_regcache.
13967         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
13968
13969 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13970
13971         * frame.c (frame_save_as_regcache): Use regcache method save.
13972         (frame_pop): Use regcache method restore.
13973         * infrun.c (restore_infcall_suspend_state): Likewise.
13974         * linux-fork.c (fork_load_infrun_state): Likewise.
13975         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
13976         save.
13977         * regcache.c (regcache_save): Remove.
13978         (regcache::restore): More asserts.
13979         (regcache_cpy): Remove.
13980         * regcache.h (regcache_save): Remove the declaration.
13981         (regcache::restore): Move from private to public.
13982         Remove the friend declaration of regcache_cpy.
13983         (regcache_cpy): Remove declaration.
13984
13985 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13986
13987         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
13988         parameter type to 'readable_regcache *'.
13989         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
13990         * arm-tdep.c (arm_neon_quad_read): Likewise.
13991         (arm_pseudo_read): Likewise.
13992         * avr-tdep.c (avr_pseudo_register_read): Likewise.
13993         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
13994         * frv-tdep.c (frv_pseudo_register_read): Likewise.
13995         * gdbarch.c: Re-generated.
13996         * gdbarch.h: Re-generated.
13997         * gdbarch.sh (pseudo_register_read): Change parameter type to
13998         'readable_regcache *'.
13999         (pseudo_register_read_value): Likewise.
14000         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
14001         (h8300_pseudo_register_read): Likewise.
14002         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
14003         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
14004         (i386_pseudo_register_read_into_value): Likewise.
14005         (i386_pseudo_register_read_value): Likewise.
14006         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
14007         declaration.
14008         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
14009         * m32c-tdep.c (m32c_raw_read): Likewise.
14010         (m32c_read_flg): Likewise.
14011         (m32c_banked_register): Likewise.
14012         (m32c_banked_read): Likewise.
14013         (m32c_sb_read): Likewise.
14014         (m32c_part_read): Likewise.
14015         (m32c_cat_read): Likewise.
14016         (m32c_r3r2r1r0_read): Likewise.
14017         (m32c_pseudo_register_read): Likewise.
14018         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
14019         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
14020         (mep_pseudo_cr64_read): Likewise.
14021         (mep_pseudo_register_read): Likewise.
14022         * mips-tdep.c (mips_pseudo_register_read): Likewise.
14023         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
14024         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
14025         * regcache.c (regcache::raw_read): Move it to readable_regcache.
14026         (regcache::cooked_read): Likewise.
14027         (regcache::cooked_read_value): Likewise.
14028         (regcache_cooked_read_signed):
14029         (regcache::cooked_read): Likewise.
14030         * regcache.h (readable_regcache): New class.
14031         (regcache): Inherit readable_regcache.  Move some methods to
14032         readable_regcache.
14033         * rl78-tdep.c (rl78_pseudo_register_read): Change
14034         parameter type to 'readable_regcache *'.
14035         * rs6000-tdep.c (do_regcache_raw_read): Remove.
14036         (e500_pseudo_register_read): Change parameter type to
14037         'readable_regcache *'.
14038         (dfp_pseudo_register_read): Likewise.
14039         (vsx_pseudo_register_read): Likewise.
14040         (efpr_pseudo_register_read): Likewise.
14041         * s390-tdep.c (s390_pseudo_register_read): Likewise.
14042         * sh-tdep.c (sh_pseudo_register_read): Likewise.
14043         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
14044         (sh64_pseudo_register_read): Likewise.
14045         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
14046         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
14047         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
14048         (spu_pseudo_register_read): Likewise.
14049         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
14050         (xtensa_pseudo_register_read): Likewise.
14051
14052 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14053
14054         * regcache.c (regcache::regcache): Call reg_buffer ctor.
14055         (regcache::arch): Move it to reg_buffer::arch.
14056         (regcache::register_buffer): Likewise.
14057         (regcache::assert_regnum): Likewise.
14058         (regcache::num_raw_registers): Likewise.
14059         * regcache.h (reg_buffer): New class.
14060         (regcache): Inherit reg_buffer.
14061
14062 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
14063
14064         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
14065         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
14066
14067 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
14068
14069         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
14070
14071 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
14072
14073         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
14074         (SFILES): Remove common/*.c files.
14075         (COMMON_OBS): Remove some *.o files built from common/*.c files.
14076         * common/common.host: Add common reference.
14077         * configure.ac: Likewise.
14078         * configure: Regenerate.
14079
14080 2018-02-16  Yao Qi  <yao.qi@linaro.org>
14081
14082         * block.c (block_namespace_info): Inherit allocate_on_obstack.
14083         (block_initialize_namespace): Use new.
14084         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
14085         (dwarf2_free_objfile): Use delete.
14086         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
14087         (copy_type_recursive): Use new.
14088         * gdb_obstack.h (allocate_on_obstack): New.
14089
14090 2018-02-15  Yao Qi  <yao.qi@linaro.org>
14091
14092         PR gdb/22849
14093         * inferior.c (exit_inferior_1): Reset inf->control.
14094
14095 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
14096
14097         * ada-lang.c (ada_to_fixed_value_create): Delete advance
14098         declaration.
14099
14100 2018-02-14  Pedro Alves  <palves@redhat.com>
14101
14102         * frame-unwind.c (frame_unwind_try_unwinder): Always call
14103         frame_cleanup_after_sniffer on exception.
14104
14105 2018-02-14  Tom Tromey  <tom@tromey.com>
14106
14107         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
14108         const.
14109         (solib_bfd_open): Make pathname const.
14110         * solib.c (solib_bfd_open): Make pathname const.
14111         * solib-spu.c (spu_bfd_fopen): Make name const.
14112         (spu_bfd_open): Make pathname const.
14113         * solib-darwin.c (darwin_bfd_open): Make pathname const.
14114         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
14115
14116 2018-02-14  Tom Tromey  <tom@tromey.com>
14117
14118         * symfile.c (symfile_bfd_open): Update.
14119         * source.h (openp, source_full_path_of, find_and_open_source):
14120         Change argument type to unique_xmalloc_ptr.
14121         * source.c (openp): Take a unique_xmalloc_ptr.
14122         (source_full_path_of, find_and_open_source): Likewise.
14123         (open_source_file, symtab_to_fullname): Update.
14124         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
14125         unique_xmalloc_ptr.
14126         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
14127         (exec_file_find): Update.
14128         * psymtab.c (psymtab_to_fullname): Update.
14129         * nto-tdep.h (nto_find_and_open_solib): Update.
14130         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
14131         unique_xmalloc_ptr.
14132         * exec.c (exec_file_attach): Update.
14133         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
14134         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
14135
14136 2018-02-14  Tom Tromey  <tom@tromey.com>
14137
14138         * solib.c: Include source.h.
14139         * nto-tdep.c: Include source.h.
14140         * mi/mi-cmd-env.c: Include source.h.
14141         * infcmd.c: Include source.h.
14142         * exec.c: Include source.h.
14143         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
14144         (add_path, directory_switch, source_path, init_source_path): Move
14145         declarations...
14146         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
14147         (add_path, directory_switch, source_path, init_source_path):
14148         ...here.
14149
14150 2018-02-14  Tom Tromey  <tom@tromey.com>
14151
14152         * solist.h (exec_file_find, solib_find): Return
14153         unique_xmalloc_ptr.
14154         (solib_bfd_fopen): Take a const char *.
14155         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
14156         (exec_file_find, solib_find): Likewise.
14157         (solib_bfd_fopen): Do not take ownership of "pathname".
14158         (solib_bfd_open): Use unique_xmalloc_ptr.
14159         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
14160         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
14161         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
14162         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
14163
14164 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
14165
14166         * ada-lang.c (name_match_type_from_name): Remove reference to
14167         ada_name_for_lookup in function's documentation.
14168         * ada-lang.h (ada_name_for_lookup): Delete declaration.
14169
14170 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
14171
14172         * defs.h (enum openp_flags): New enum.
14173         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
14174         Move to enum openp_flags.
14175         (openp_flags): New enum flags.
14176         (openp): Change parameter type to openp_flags.
14177         * source.c (openp): Change parameter type to openp_flags.
14178         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
14179         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
14180
14181 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
14182
14183         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
14184         per-command.
14185
14186 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
14187
14188         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
14189         into...
14190         (class dwarf2_queue_guard): ...the destructor of this new class.
14191         (dw2_do_instantiate_symtab): Create instance of the new class
14192         dwarf2_queue_guard, remove cleanup.
14193
14194 2018-02-09  Tom Tromey  <tom@tromey.com>
14195
14196         * source.c (find_source_lines): Don't reference past the end of
14197         the vector.
14198
14199 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14200
14201         * remote.c (remote_btrace_maybe_reopen): Change error message.
14202         * btrace.c (btrace_enable): Likewise.
14203         (parse_xml_btrace): Likewise.
14204         (parse_xml_btrace_conf): Likewise.
14205
14206 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14207
14208         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
14209         (linux_enable_pt, linux_enable_bts): Call
14210         diagnose_perf_event_open_fail.
14211
14212 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14213
14214         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
14215         Remove parameter and change return type.  Update callers.  Move it.
14216         (linux_enable_bts, linux_enable_pt): Improve error message.
14217         (linux_enable_pt): Remove zero buffer size check.
14218         (linux_enable_btrace): Improve error messages.  Remove NULL return
14219         check.
14220
14221 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14222
14223         * btrace.c (btrace_enable): Remove target_supports_btrace call.
14224         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
14225         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
14226         (linux_supports_pt, linux_supports_btrace): Remove.
14227         (linux_enable_bts): Call cpu_supports_bts.
14228         * nat/linux-btrace.h (linux_supports_btrace): Remove.
14229         * remote.c (remote_supports_btrace): Remove.
14230         (init_remote_ops): Remove remote_supports_btrace.
14231         * target-delegates.c: Regenerated.
14232         * target.c (target_supports_btrace): Remove.
14233         * target.h (target_ops) <to_supports_btrace>: Remove
14234         (target_supports_btrace): Remove.
14235         * x86-linux-nat.c (x86_linux_create_target): Remove
14236         linux_supports_btrace.
14237
14238 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14239
14240         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
14241         btrace failed.
14242         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
14243         exception and use message in own exception.
14244
14245 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14246
14247         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
14248         (perf_event_pt_event_type): Use gdb_file_up.
14249         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
14250         scoped_fd, and scoped_mmap.
14251
14252 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14253
14254         * common/scoped_mmap.h: New.
14255         * unittests/scoped_mmap-selftest.c: New.
14256         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14257         unittests/scoped_mmap-selftest.c.
14258
14259 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14260
14261         * common/scoped_fd.h: New.
14262         * unittests/scoped_fd-selftest.c: New.
14263         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14264         unittests/scoped_fd-selftest.c.
14265
14266 2018-02-09  Tom Tromey  <tom@tromey.com>
14267
14268         * auto-load.c (auto_load_section_scripts): Use
14269         gdb::unique_xmalloc_ptr.
14270
14271 2018-02-09  Tom Tromey  <tom@tromey.com>
14272
14273         * auto-load.c (execute_script_contents): Use std::string.
14274
14275 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
14276
14277         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
14278         Python function, rather than a new command.
14279
14280 2018-02-08  Tom Tromey  <tom@tromey.com>
14281
14282         * solib.c (solib_find_1): Use std::string.
14283         (solib_bfd_fopen): Use unique_xmalloc_ptr.
14284
14285 2018-02-08  Tom Tromey  <tom@tromey.com>
14286
14287         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
14288
14289 2018-02-08  Tom Tromey  <tom@tromey.com>
14290
14291         * source.c (find_source_lines): Use gdb::def_vector.
14292
14293 2018-02-08  Tom Tromey  <tom@tromey.com>
14294
14295         * macrocmd.c (struct temporary_macro_definition): New.
14296         (macro_define_command): Use temporary_macro_definition.  Remove
14297         cleanups.
14298         (free_macro_definition_ptr): Remove.
14299
14300 2018-02-08  Tom Tromey  <tom@tromey.com>
14301
14302         * macroexp.c (maybe_expand): Use std::string.
14303
14304 2018-02-08  Tom Tromey  <tom@tromey.com>
14305
14306         * macroexp.c (struct macro_buffer): Add initializers for some
14307         members.
14308         (init_buffer, init_shared_buffer, free_buffer)
14309         (free_buffer_return_text): Remove.
14310         (macro_buffer): New constructors.
14311         (~macro_buffer): New destructor.
14312         (macro_buffer::set_shared): New method.
14313         (macro_buffer::resize_buffer, macro_buffer::appendc)
14314         (macro_buffer::appendmem): Now methods, not free functions.
14315         (set_token, append_tokens_without_splicing, stringify)
14316         (macro_stringify): Update.
14317         (gather_arguments): Change return type.  Remove argc_p argument,
14318         add args_ptr argument.  Use std::vector.
14319         (substitute_args): Remove argc argument.  Accept std::vector.
14320         (expand): Update.  Use std::vector.
14321         (scan, macro_expand, macro_expand_next): Update.
14322
14323 2018-02-08  Tom Tromey  <tom@tromey.com>
14324
14325         * symtab.c (default_collect_symbol_completion_matches_break_on):
14326         Use unique_xmalloc_ptr.
14327         * macroscope.h: (sal_macro_scope, user_macro_scope)
14328         (default_macro_scope): Return unique_xmalloc_ptr.
14329         * macroscope.c (sal_macro_scope, user_macro_scope)
14330         (default_macro_scope): Return unique_xmalloc_ptr.
14331         * macroexp.h (macro_expand, macro_expand_once): Return
14332         unique_xmalloc_ptr.
14333         * macroexp.c (macro_expand, macro_expand_once): Return
14334         unique_xmalloc_ptr.
14335         * macrocmd.c (macro_expand_command, macro_expand_once_command)
14336         (info_macro_command, info_macros_command): Use
14337         unique_xmalloc_ptr.
14338         * compile/compile-c-support.c (write_macro_definitions): Use
14339         unique_xmalloc_ptr.
14340         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
14341
14342 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
14343
14344         * value.c (value_static_field): Assign field type instead of
14345         containing type when returning an optimized out value.
14346
14347 2018-02-06  Yao Qi  <yao.qi@linaro.org>
14348
14349         * ft32-tdep.c (ft32_read_pc): Remove.
14350         (ft32_write_pc): Remove.
14351         (ft32_gdbarch_init): Update.
14352         * m32r-tdep.c (m32r_read_pc): Remove.
14353         (m32r_gdbarch_init): Update.
14354         * mep-tdep.c (mep_read_pc): Remove.
14355         (mep_gdbarch_init): Update.
14356         * microblaze-tdep.c (microblaze_write_pc): Remove.
14357         (microblaze_gdbarch_init): Update.
14358         * mn10300-tdep.c (mn10300_read_pc): Remove.
14359         (mn10300_write_pc): Remove.
14360         (mn10300_gdbarch_init): Update.
14361         * moxie-tdep.c (moxie_read_pc): Remove.
14362         (moxie_write_pc): Remove.
14363         (moxie_gdbarch_init): Update.
14364
14365 2018-02-06  Yao Qi  <yao.qi@linaro.org>
14366
14367         * expprint.c (print_subexp_standard): Handle
14368         OP_F77_UNDETERMINED_ARGLIST.
14369         (dump_subexp_body_standard): Likewise.
14370
14371 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
14372
14373         * target-descriptions.c (tdesc_element_visitor) Add empty
14374         implementations.
14375         (tdesc_type): Move make_gdb_type from here.
14376         (tdesc_type_builtin): Likewise.
14377         (tdesc_type_vector): Likewise.
14378         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
14379         (make_gdb_type_struct): Move from tdesc_type_with_fields.
14380         (make_gdb_type_union): Likewise.
14381         (make_gdb_type_flags): Likewise.
14382         (make_gdb_type_enum): Likewise.
14383         (make_gdb_type): New function.
14384         (tdesc_register_type): Use static make_gdb_type.
14385
14386 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
14387
14388         * infcmd.c (default_print_one_register_info): Align natural-format
14389         column values consistently one under another.
14390         (pad_to_column): New function.
14391
14392 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
14393
14394         * dwarf2read.c (dwarf2_physname): Move commment.
14395
14396 2018-02-01  Leszek Swirski  <leszeks@google.com>
14397
14398         * varobj.c (varobj_formatted_print_options): Allow recursive
14399         pretty printing if pretty printing is enabled.
14400
14401 2018-02-01  Leszek Swirski  <leszeks@google.com>
14402
14403         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
14404         names after a structop as a filename.
14405
14406 2018-02-01  Yao Qi  <yao.qi@linaro.org>
14407
14408         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
14409         (arm_record_coproc_data_proc): Likewise.
14410
14411 2018-02-01  Yao Qi  <yao.qi@linaro.org>
14412
14413         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
14414
14415 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
14416
14417         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
14418         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
14419
14420 2018-01-31  Pedro Alves  <palves@redhat.com>
14421
14422         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
14423         * inflow.c (child_terminal_save_inferior): Wrap reference to
14424         tcgetpgrp in HAVE_TERMIOS_H.
14425         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
14426         _WIN32.
14427         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
14428         always iterate over all inferiors.
14429         (gdbsim_cntrl_c): Adjust.
14430         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
14431
14432 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
14433
14434         * gdbtypes.c (lookup_array_range_type): Make sure the array's
14435         index type is objfile-owned if the element type is as well.
14436
14437 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
14438
14439         GDB 8.1 released.
14440
14441 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14442
14443         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
14444         "features/s390x-linux64.c".
14445         (_initialize_s390_linux_tdep): Remove initialization of tdescs
14446         s390_linux32 and s390x_linux64.
14447         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
14448         default tdesc.
14449         * s390-tdep.c: Include "features/s390-linux32.c" and
14450         "features/s390x-linux64.c".
14451         (s390_tdesc_valid): Add check for tdesc_has_registers.
14452         (s390_gdbarch_init): Make sure there is always a valid tdesc.
14453         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
14454         tdesc_s390x_linux64.
14455         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
14456         tdesc_s390x_linux64 to...
14457         * s390-tdep.h: ...here.
14458
14459 2018-01-30  Pedro Alves  <palves@redhat.com>
14460
14461         PR gdb/13211
14462         * config.in, configure: Regenerate.
14463         * configure.ac: Check for getpgid.
14464         * go32-nat.c (go32_pass_ctrlc): New.
14465         (go32_target): Install it.
14466         * inf-child.c (inf_child_target): Install
14467         child_terminal_save_inferior, child_pass_ctrlc and
14468         child_interrupt.
14469         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
14470         (inf_ptrace_target): No longer install it.
14471         * infcmd.c (interrupt_target_1): Adjust.
14472         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
14473         (child_interrupt): Declare.
14474         (inferior::terminal_state): New.
14475         * inflow.c (struct terminal_info): Update comments.
14476         (inferior_process_group): Delete.
14477         (terminal_is_ours): Delete.
14478         (gdb_tty_state): New.
14479         (child_terminal_init): Adjust.
14480         (is_gdb_terminal, sharing_input_terminal_1)
14481         (sharing_input_terminal): New functions.
14482         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
14483         Set the process's actual process group in the foreground if
14484         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
14485         mark terminal as the inferior's if not sharing GDB's terminal.
14486         Don't check attach_flag.
14487         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
14488         pass down a target_terminal_state.
14489         (child_terminal_save_inferior): New, factored out from ...
14490         (child_terminal_ours_1): ... this.  Handle
14491         target_terminal_state::is_ours_for_output.
14492         (child_interrupt, child_pass_ctrlc): New.
14493         (inflow_inferior_exit): Clear the inferior's terminal_state.
14494         (copy_terminal_info): Copy the inferior's terminal state.
14495         (_initialize_inflow): Remove reference to terminal_is_ours.
14496         * inflow.h (inferior_process_group): Delete.
14497         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
14498         * procfs.c (procfs_target): Don't install procfs_interrupt.
14499         (procfs_interrupt): Delete.
14500         * remote.c (remote_serial_quit_handler): Adjust.
14501         (remote_interrupt): Remove ptid parameter.  Adjust.
14502         * target-delegates.c: Regenerate.
14503         * target.c: Include "terminal.h".
14504         (target_terminal::terminal_state): Rename to ...
14505         (target_terminal::m_terminal_state): ... this.
14506         (target_terminal::init): Adjust.
14507         (target_terminal::inferior): Adjust to per-inferior
14508         terminal_state.
14509         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
14510         (target_terminal::ours, target_terminal::ours_for_output): Use
14511         target_terminal_is_ours_kind.
14512         (target_interrupt): Remove ptid parameter.  Adjust.
14513         (default_target_pass_ctrlc): Adjust.
14514         * target.h (target_ops::to_terminal_save_inferior): New field.
14515         (target_ops::to_interrupt): Remove ptid_t parameter.
14516         (target_interrupt): Remove ptid_t parameter.  Update comment.
14517         (target_pass_ctrlc): Update comment.
14518         * target/target.h (target_terminal_state): New scoped enum,
14519         factored out of ...
14520         (target_terminal::terminal_state): ... here.
14521         (target_terminal::inferior): Update comments.
14522         (target_terminal::restore_inferior): New.
14523         (target_terminal::is_inferior, target_terminal::is_ours)
14524         (target_terminal::is_ours_for_output): Adjust.
14525         (target_terminal::scoped_restore_terminal_state): Adjust to
14526         rename, and call restore_inferior() instead of inferior().
14527         (target_terminal::scoped_restore_terminal_state::m_state): Change
14528         type.
14529         (target_terminal::terminal_state): Rename to ...
14530         (target_terminal::m_terminal_state): ... this and change type.
14531
14532 2018-01-30  Pedro Alves  <palves@redhat.com>
14533
14534         * linux-nat.c (wait_for_signal): New function.
14535         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
14536         directly.
14537         (async_terminal_is_ours)
14538         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
14539         (linux_nat_add_target): Don't override
14540         to_terminal_inferior/to_terminal_ours.
14541
14542 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
14543
14544         * remote.c (remote_follow_fork): Don't call "detach_inferior".
14545
14546 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
14547
14548         * dwarf2read.c (free_dwo_files): Add forward-declaration.
14549         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
14550         dwarf2_per_objfile_free here.
14551         (dwarf2_per_objfile_free): Remove.
14552         (_initialize_dwarf2_read): Don't register
14553         dwarf2_per_objfile_free as a registry cleanup.
14554
14555 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
14556
14557         Avoid compilation errors in MinGW native builds
14558
14559         The error is triggered by including python-internal.h, and the
14560         error message is:
14561
14562              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
14563                       from build-gnulib/import/math.h:27,
14564                       from d:/usr/Python26/include/pyport.h:235,
14565                       from d:/usr/Python26/include/Python.h:58,
14566                       from python/python-internal.h:94,
14567                       from python/py-arch.c:24:
14568              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
14569         using ::hypot;
14570                 ^~~~~
14571
14572         This happens because Python headers define 'hypot' to expand t
14573         '_hypot' in the Windows builds.
14574         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
14575         'hypoth'.  This avoids a compilation error.
14576
14577 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
14578
14579         * MAINTAINERS (Write After Approval): Fix ordering.
14580
14581 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
14582
14583         * MAINTAINERS (Write After Approval): Add Alan Hayward.
14584
14585 2018-01-26  Alan Modra  <amodra@gmail.com>
14586
14587         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
14588         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
14589         Remove nop.  Make const.  Comment.
14590         (powerpc32_plt_stub_so_2): New.
14591         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
14592         Correct count.  Update uses.
14593         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
14594         Move common code reading PLT entry word.  Correct
14595         powerpc32_plt_stub PLT address calculation.
14596         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
14597         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
14598         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
14599         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
14600         (ppc64_standard_linkage8): Likewise.
14601         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
14602         Correct insns description.
14603         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
14604
14605 2018-01-24  Pedro Alves  <palves@redhat.com>
14606
14607         GCC PR libstdc++/83906
14608         * gdbtypes.c (operator==(const dynamic_prop &,
14609         const dynamic_prop &)): New.
14610         (operator==(const range_bounds &, const range_bounds &)): New.
14611         (check_types_equal): Use them instead of memcmp.
14612         * gdbtypes.h (operator==(const dynamic_prop &,
14613         const dynamic_prop &)): Declare.
14614         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
14615         (operator==(const range_bounds &, const range_bounds &)): Declare.
14616         (operator!=(const range_bounds &, const range_bounds &)): Declare.
14617
14618 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14619
14620         * s390-linux-tdep.c (s390_record_address_mask)
14621         (s390_record_calc_disp_common, s390_record_calc_disp)
14622         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
14623         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
14624         (s390_process_record): Move to s390-tdep.c.
14625         (s390_linux_init_abi_any): Adjust.
14626         * s390-tdep.c (s390_record_address_mask)
14627         (s390_record_calc_disp_common, s390_record_calc_disp)
14628         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
14629         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
14630         (s390_process_record): Moved from s390-linux-tdep.c
14631         (s390_gdbarch_init): Adjust.
14632
14633 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14634
14635         * s390-linux-nat.c (s390-tdep.h): New include.
14636         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
14637         (HFILES_NO_SRCDIR): Add s390-tdep.h.
14638         (ALLDEPFILES): Add s390-tdep.c.
14639         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
14640         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
14641         * s390-tdep.h: ...this.  New file.
14642         * s390-linux-tdep.c (s390-tdep.h): New include.
14643         (_initialize_s390_tdep): Rename to...
14644         (_initialize_s390_linux_tdep): ...this and adjust.
14645         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
14646         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
14647         s390-tdep.h.
14648         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
14649         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
14650         (s390_is_partial_instruction, s390_software_single_step)
14651         (is_non_branch_ril, s390_displaced_step_copy_insn)
14652         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
14653         (s390_prologue_data, s390_addr, s390_store, s390_load)
14654         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
14655         (s390_register_call_saved, s390_guess_tracepoint_registers)
14656         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
14657         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
14658         (s390_pseudo_register_name, s390_pseudo_register_type)
14659         (s390_pseudo_register_read, s390_pseudo_register_write)
14660         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
14661         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
14662         (s390_addr_bits_remove, s390_address_class_type_flags)
14663         (s390_address_class_type_flags_to_name)
14664         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
14665         (s390_function_arg_float, s390_function_arg_vector)
14666         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
14667         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
14668         (s390_frame_align, s390_register_return_value, s390_return_value)
14669         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
14670         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
14671         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
14672         (s390_trad_frame_prev_register, s390_unwind_cache)
14673         (s390_prologue_frame_unwind_cache)
14674         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
14675         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
14676         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
14677         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
14678         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
14679         (s390_frame_base_address, s390_local_base_address)
14680         (s390_frame_base, s390_gcc_target_options)
14681         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
14682         (s390_validate_reg_range, s390_tdesc_valid)
14683         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
14684         * s390-tdep.c: ...this.  New file.
14685
14686 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14687
14688         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
14689         (s390_process_record, s390_gdbarch_tdep_alloc)
14690         (s390_linux_init_abi_any): Use/set new hook.
14691
14692 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14693
14694         * s390-linux-tdep.c (osabi.h): New include.
14695         (s390_linux_init_abi_31, s390_linux_init_abi_64)
14696         (s390_linux_init_abi_any): New functions.
14697         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
14698
14699 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14700
14701         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
14702         tdesc_has_registers check
14703
14704 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14705
14706         * s390-linux-tdep.c (s390_tdesc_valid): New function.
14707         (s390_validate_reg_range): New macro.
14708         (s390_gdbarch_init): Adjust.
14709
14710 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14711
14712         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
14713         (s390_gdbarch_tdep_alloc): Adjust.
14714         (s390_gdbarch_init): Adjust.
14715
14716 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14717
14718         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
14719         <have_tdb>: Change type to bool.
14720         (s390_gdbarch_tdep_alloc): Adjust.
14721         (s390_gdbarch_init): Adjust.
14722
14723 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14724
14725         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
14726         (gdbarch_tdep) <have_upper, have_vx>: New fields.
14727         (s390_gdbarch_tdep_alloc): New function.
14728         (s390_gdbarch_init): Allocate tdep at start and use its fields
14729         instead of separate variables.
14730
14731 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14732
14733         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
14734         when looking for cached gdbarch and add comment for remaining.
14735
14736 2018-01-22  Pedro Alves  <palves@redhat.com>
14737             Sergio Durigan Junior  <sergiodj@redhat.com>
14738
14739         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
14740         case.
14741
14742 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
14743
14744         * MAINTAINERS: Update my company e-mail address.
14745
14746 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14747
14748         * regcache.c (cooked_write_test): New function.
14749         (_initialize_regcache): Register the test.
14750
14751 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14752
14753         * ia64-tdep.c (ia64_pseudo_register_read): Call
14754         regcache->cooked_read instead of regcache_cooked_read_unsigned.
14755         * m32c-tdep.c (m32c_cat_read): Likewise.
14756         (m32c_r3r2r1r0_read): Likewise.
14757         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
14758         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
14759
14760 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14761
14762         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
14763         method raw_read instead of regcache_raw_read.
14764         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
14765         * arm-tdep.c (arm_neon_quad_read): Likewise.
14766         * avr-tdep.c (avr_pseudo_register_read): Likewise.
14767         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
14768         * frv-tdep.c (frv_pseudo_register_read): Likewise.
14769         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
14770         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
14771         (i386_pseudo_register_read_into_value): Likewise.
14772         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
14773         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
14774         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
14775         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
14776         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
14777         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
14778         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
14779         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
14780         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
14781
14782 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14783
14784         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
14785         * configure.tgt: Remove target mt.
14786         * mt-tdep.c: Remove.
14787         * regcache.c (cooked_read_test): Remove the check for mt.
14788
14789 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14790
14791         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
14792         instead of gdbarch_pseudo_register_read_value.
14793
14794 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
14795
14796         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
14797         language is Ada.
14798
14799 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
14800
14801         * linespec.c (create_sals_line_offset): Remove code that preserved
14802         the symtab_and_line's line number.
14803
14804 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14805
14806         * varobj.c (varobj_create): Don't set valid_block when creating a
14807         floating varobj.
14808
14809 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14810
14811         * varobj.c (varobj_create): Remove out of date comment.
14812
14813 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14814
14815         PR mi/20395
14816         * ada-exp.y (write_var_from_sym): Pass extra parameter when
14817         updating innermost block.
14818         * parse.c (innermost_block_tracker::update): Take extra type
14819         parameter, and check types match before updating innermost block.
14820         (write_dollar_variable): Update innermost block for registers.
14821         * parser-defs.h (enum innermost_block_tracker_type): New enum.
14822         (innermost_block_tracker::innermost_block_tracker): Initialise
14823         m_types member.
14824         (innermost_block_tracker::reset): Take type parameter.
14825         (innermost_block_tracker::update): Take type parameter, and pass
14826         type through as needed.
14827         (innermost_block_tracker::m_types): New member.
14828         * varobj.c (varobj_create): Pass type when reseting innermost
14829         block.
14830
14831 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14832
14833         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
14834         * ada-lang.c (resolve_subexp): Likewise.
14835         * breakpoint.c (set_breakpoint_condition) Likewise.
14836         (watch_command_1) Likewise.
14837         * c-exp.y (variable): Likewise.
14838         * d-exp.y (PrimaryExpression): Likewise.
14839         * f-exp.y (variable): Likewise.
14840         * go-exp.y (variable): Likewise.
14841         * m2-exp.y (variable): Likewise.
14842         * objfiles.c (objfile::~objfile): Likewise.
14843         * p-exp.y (variable): Likewise.
14844         * parse.c (innermost_block): Change type.
14845         * parser-defs.h (class innermost_block_tracker): New.
14846         (innermost_block): Change to innermost_block_tracker.
14847         * printcmd.c (display_command): Switch to innermost_block API.
14848         (do_one_display): Likewise.
14849         * rust-exp.y (do_one_display): Likewise.
14850         * symfile.c (clear_symtab_users): Likewise.
14851         * varobj.c (varobj_create): Switch to innermost_block API, replace
14852         use of innermost_block with block stored on varobj object.
14853
14854 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14855
14856         * expression.h (innermost_block): Remove declaration.
14857         * varobj.c: Add 'parser-defs.h' include.
14858
14859 2018-01-19  Tom Tromey  <tom@tromey.com>
14860
14861         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
14862         symbols in the static and global blocks.
14863
14864 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
14865
14866         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
14867         gdb_ptrace.h, and move including gdb_wait.h ...
14868         * nat/linux-ptrace.h: ... to here.
14869
14870 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14871
14872         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
14873         inf_ptrace_detach_success.
14874         (inf_ptrace_detach_success): Add inferior parameter, use it
14875         instead of inferior_ptid, pass it to detach_inferior.
14876         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
14877         parameter.
14878         * inferior.c (detach_inferior): Add overload that takes an
14879         inferior object.
14880         * inferior.h (detach_inferior): Likewise.
14881         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
14882         use inferior_ptid, adjust call to inf_ptrace_detach_success.
14883         * linux-thread-db.c (thread_db_detach): Use inf parameter.
14884
14885 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14886
14887         * target.h (struct target_ops) <to_detach>: Add inferior
14888         parameter.
14889         (target_detach): Likewise.
14890         * target.c (dispose_inferior): Pass inferior down.
14891         (target_detach): Pass inferior down.  Assert that it is equal to
14892         the current inferior.
14893         * aix-thread.c (aix_thread_detach): Pass inferior down.
14894         * corefile.c (core_file_command): Pass current_inferior() down.
14895         * corelow.c (core_detach): Add inferior parameter.
14896         * darwin-nat.c (darwin_detach): Likewise.
14897         * gnu-nat.c (gnu_detach): Likewise.
14898         * inf-ptrace.c (inf_ptrace_detach): Likewise.
14899         * infcmd.c (detach_command): Pass current_inferior() down to
14900         target_detach.
14901         * infrun.c (follow_fork_inferior): Pass parent_inf to
14902         target_detach.
14903         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
14904         target_detach.
14905         * linux-nat.c (linux_nat_detach): Add inferior parameter.
14906         * linux-thread-db.c (thread_db_detach): Likewise.
14907         * nto-procfs.c (procfs_detach): Likewise.
14908         * procfs.c (procfs_detach): Likewise.
14909         * record.c (record_detach): Likewise.
14910         * record.h (struct inferior): Forward-declare.
14911         (record_detach): Add inferior parameter.
14912         * remote-sim.c (gdbsim_detach): Likewise.
14913         * remote.c (remote_detach_1): Likewise.
14914         (remote_detach): Likewise.
14915         (extended_remote_detach): Likewise.
14916         * sol-thread.c (sol_thread_detach): Likewise.
14917         * target-debug.h (target_debug_print_inferior_p): New macro.
14918         * target-delegates.c: Re-generate.
14919         * top.c (kill_or_detach): Pass inferior down to target_detach.
14920         * windows-nat.c (windows_detach): Add inferior parameter.
14921
14922 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14923
14924         * target.h (struct target_ops) <to_detach>: Remove args
14925         parameter.
14926         (target_detach): Likewise.
14927         * target.c (dispose_inferior): Adjust.
14928         (target_detach): Remove args parameter, adjust.
14929         * aix-thread.c (aix_thread_detach): Adjust.
14930         * corefile.c (core_file_command): Adjust.
14931         * corelow.c (core_detach): Adjust.
14932         * darwin-nat.c (darwin_detach): Adjust.
14933         * gnu-nat.c (gnu_detach): Adjust.
14934         * inf-ptrace.c (inf_ptrace_detach): Adjust.
14935         * infcmd.c (detach_command): Adjust
14936         * infrun.c (follow_fork_inferior): Adjust.
14937         (handle_vfork_child_exec_or_exit): Adjust.
14938         * linux-fork.c (linux_fork_detach): Remove args parameter.
14939         * linux-fork.h (linux_fork_detach): Likewise.
14940         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
14941         * linux-thread-db.c (thread_db_detach): Likewise.
14942         * nto-procfs.c (procfs_detach): Likewise.
14943         * procfs.c (procfs_detach): Likewise.
14944         (do_detach): Remove signo parameter.
14945         * record.c (record_detach): Remove args parameter.
14946         * record.h (record_detach): Likewise.
14947         * remote-sim.c (gdbsim_detach): Likewise.
14948         * remote.c (remote_detach_1): Likewise.
14949         (remote_detach): Likewise.
14950         (extended_remote_detach): Likewise.
14951         * sol-thread.c (sol_thread_detach): Likewise.
14952         * target-delegates.c: Re-generate.
14953         * top.c (struct qt_args) <args>: Remove field.
14954         (kill_or_detach): Don't pass args.
14955         (quit_force): Don't set args.
14956         * windows-nat.c (windows_detach): Remove args parameter.
14957
14958 2018-01-19  Yao Qi  <yao.qi@linaro.org>
14959
14960         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
14961         (arm_linux_init_abi): Install it.
14962
14963 2018-01-19  Yao Qi  <yao.qi@linaro.org>
14964
14965         * osabi.c (gdb_osabi_names): Extend the regexp for
14966         arm-linux-gnueabihf.
14967
14968 2018-01-18  Yao Qi  <yao.qi@linaro.org>
14969
14970         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
14971         m_abbrevs.
14972         (abbrev_table::add_abbrev): Update.
14973         (abbrev_table::lookup_abbrev): Update.
14974
14975 2018-01-18  Yao Qi  <yao.qi@linaro.org>
14976
14977         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
14978
14979 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
14980
14981         * compile/compile.c (compile_to_object): Convert "triplet_rx"
14982         to "std::string".
14983
14984 2018-01-17  Tom Tromey  <tom@tromey.com>
14985
14986         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
14987
14988 2018-01-17  Tom Tromey  <tom@tromey.com>
14989
14990         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
14991         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
14992         (create_array_type_with_stride): Update.
14993         * dwarf2read.c (set_die_type): Update.
14994
14995 2018-01-17  Tom Tromey  <tom@tromey.com>
14996
14997         * dwarf2read.c (delayed_method_info): Remove typedef.
14998         (dwarf2_cu::method_info): Now a std::vector.
14999         (add_to_method_list): Update.
15000         (free_delayed_list): Remove.
15001         (compute_delayed_physnames): Update.
15002         (process_full_comp_unit, process_full_type_unit): Clear the method
15003         list.  Remove cleanups.
15004         (psymtab_include_file_name): Add name_holder parameter.  Use
15005         unique_xmalloc_ptr.
15006         (dwarf_decode_lines): Update.
15007
15008 2018-01-17  Tom Tromey  <tom@tromey.com>
15009             Simon Marchi  <simon.marchi@ericsson.com>
15010
15011         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
15012         (dwarf2_per_objfile::free_cached_comp_units)
15013         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
15014         (init_cutu_and_read_dies_no_follow): Update.
15015         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
15016         (dwarf2_cu::~dwarf2_cu): New.
15017         (free_heap_comp_unit, free_stack_comp_unit): Remove.
15018         (age_cached_comp_units, free_one_cached_comp_unit): Update.
15019
15020 2018-01-17  Tom Tromey  <tom@tromey.com>
15021             Simon Marchi  <simon.marchi@ericsson.com>
15022
15023         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
15024         (struct die_reader_specs) <abbrev_table>: New member.
15025         (struct abbrev_table): Add constructor.
15026         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
15027         <abbrev_obstack>: Now an auto_obstack.
15028         (abbrev_table_up): New typedef.
15029         (init_cu_die_reader): Add abbrev_table parameter.
15030         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
15031         Add result_dwo_abbrev_table.
15032         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
15033         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
15034         Update.
15035         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
15036         parameter.
15037         (skip_children): Update.
15038         (abbrev_table::alloc_abbrev): Rename from
15039         abbrev_table_alloc_abbrev.
15040         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
15041         (abbrev_table::lookup_abbrev): Rename from
15042         abbrev_table_lookup_abbrev.
15043         (abbrev_table_read_table): Return abbrev_table_up.
15044         (abbrev_table_free, abbrev_table_free_cleanup)
15045         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
15046         (load_partial_dies): Update.
15047
15048 2018-01-17  Tom Tromey  <tom@tromey.com>
15049
15050         * dwarf2read.c (dwarf2_compute_name): Update comment.
15051         (read_func_scope, read_variable): Update.
15052         (new_symbol): Remove.
15053         (new_symbol_full): Rename to new_symbol.
15054
15055 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
15056
15057         PR gdb/16577
15058         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
15059         a warning instead of throwing an error, set section size to 0 and return
15060         NULL.
15061         * gdb_bfd.h (gdb_bfd_map_section): Update description.
15062
15063 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
15064
15065         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
15066         std::string.
15067         (linux_ptrace_attach_fail_reason_string): Likewise.
15068         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
15069         Likewise.
15070         (linux_ptrace_attach_fail_reason_string): Likewise.
15071         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
15072
15073 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
15074
15075         * linux-nat.c (linux_nat_attach): Remove xstrdup.
15076
15077 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
15078
15079         PR gdb/21559
15080         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
15081         checking for fs_base/gs_base fields in struct user_regs_struct.
15082         * configure: Regenerate.
15083
15084 2018-01-17  Yao Qi  <yao.qi@linaro.org>
15085
15086         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
15087         function.
15088         (aarch64_linux_init_abi): Install it to gdbarch hook
15089         gcc_target_options.
15090
15091 2018-01-15  Pedro Alves  <palves@redhat.com>
15092
15093         * common/signals-state-save-restore.c
15094         (save_original_signals_state): Fix typos.
15095
15096 2017-01-12  Tom Tromey  <tom@tromey.com>
15097             Sergio Durigan Junior  <sergiodj@redhat.com>
15098
15099         * Makefile.in (install-only): Install gdb-add-index.
15100
15101 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
15102
15103         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
15104
15105 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
15106
15107         * infrun.c (keep_going_pass_signal): Clear step-over info when
15108         insert_breakpoints fails.
15109
15110 2018-01-11  Pedro Alves  <palves@redhat.com>
15111
15112         PR gdb/22583
15113         * infrun.c (resume): Rename to ...
15114         (resume_1): ... this.
15115         (resume): Reimplement as wrapper around resume_1.
15116
15117 2018-01-11  Pedro Alves  <palves@redhat.com>
15118
15119         PR remote/22597
15120         * remote.c (remote_parse_stop_reply): Default to the last-set
15121         general thread instead of to 'magic_null_ptid'.
15122
15123 2018-01-10  Pedro Alves  <palves@redhat.com>
15124
15125         * language.h (language_get_symbol_name_matcher): Rename ...
15126         (get_symbol_name_matcher): ... this.
15127         * language.c (language_get_symbol_name_matcher): Ditto.
15128         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
15129         callers adjusted.
15130
15131 2018-01-10  Pedro Alves  <palves@redhat.com>
15132
15133         PR gdb/22670
15134         * dwarf2read.c
15135         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
15136         Adjust to use language_get_symbol_name_matcher instead of
15137         language_defn::la_get_symbol_name_matcher.
15138         * language.c (language_get_symbol_name_matcher): If in Ada mode
15139         and the lookup name is a verbatim match, return Ada's matcher.
15140         * language.h (language_get_symbol_name_matcher): Adjust comment.
15141         (ada_lookup_name_info::verbatim_p):: New method.
15142
15143 2018-01-10  Pedro Alves  <palves@redhat.com>
15144
15145         PR gdb/22670
15146         * ada-lang.c (ada_collect_symbol_completion_matches): If the
15147         minsym's language is language_auto or language_cplus, pass down
15148         language_ada instead.
15149         * symtab.c (compare_symbol_name): Don't frob symbol language here.
15150
15151 2018-01-10  Pedro Alves  <palves@redhat.com>
15152
15153         PR gdb/22670
15154         * minsyms.c (linkage_name_str): New function.
15155         (iterate_over_minimal_symbols): Use it.
15156
15157 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15158
15159         * NEWS: Document that 'info proc' now works on FreeBSD.
15160
15161 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15162
15163         * configure.ac: Check for kinfo_getfile in libutil.
15164         * configure: Regenerate.
15165         * config.in: Regenerate.
15166         * fbsd-nat.c: Include "fbsd-tdep.h".
15167         (fbsd_fetch_cmdline): New.
15168         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
15169         rather than calling error.
15170         (fbsd_info_proc): New.
15171         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
15172         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
15173         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
15174
15175 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15176
15177         * fbsd-nat.c (struct free_deleter): Remove.
15178         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
15179
15180 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15181
15182         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
15183         NULL for an empty pathname.
15184
15185 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15186
15187         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
15188         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
15189         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
15190         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
15191         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
15192         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
15193         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
15194         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
15195         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
15196         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
15197         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
15198         (fbsd_core_fetch_timeval, fbsd_print_sigset)
15199         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
15200         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
15201         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
15202
15203 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
15204
15205         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
15206         (gnu_xfer_auxv): New function.
15207         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
15208         TARGET_OBJECT_AUXV.
15209
15210 2018-01-08  Yao Qi  <yao.qi@linaro.org>
15211             Simon Marchi  <simon.marchi@ericsson.com>
15212
15213         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
15214         common/selftest.c.
15215         (COMMON_OBS): Remove selftest.o.
15216         * configure.ac: Append selftest-arch.c and common/selftest.c to
15217         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
15218         * configure: Re-generated.
15219         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
15220         GDB_SELF_TEST.
15221         (maintenance_info_selftests): Likewise.
15222
15223 2018-01-08  Xavier Roirand  <roirand@adacore.com>
15224
15225         * ada-valprint.c (val_print_packed_array_elements): Use
15226         proper number of elements when printing an array indexed
15227         by an enumeration type.
15228
15229 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15230
15231         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
15232         (dw2_get_file_names_reader): Adjust.
15233         (lookup_dwo_signatured_type): Adjust.
15234         (lookup_dwp_signatured_type): Adjust.
15235         (lookup_signatured_type): Adjust.
15236         (create_type_unit_group): Adjust.
15237         (get_type_unit_group): Adjust.
15238         (process_psymtab_comp_unit_reader): Adjust.
15239         (build_type_psymtabs_reader): Adjust.
15240         (scan_partial_symbols): Adjust.
15241         (add_partial_symbol): Adjust.
15242         (add_partial_subprogram): Adjust.
15243         (peek_die_abbrev): Adjust.
15244         (fixup_go_packaging): Adjust.
15245         (process_imported_unit_die): Adjust.
15246         (dwarf2_compute_name): Adjust.
15247         (dwarf2_physname): Adjust.
15248         (read_import_statement): Adjust.
15249         (handle_DW_AT_stmt_list): Adjust.
15250         (read_file_scope): Adjust.
15251         (read_func_scope): Adjust.
15252         (read_lexical_block_scope): Adjust.
15253         (read_call_site_scope): Adjust.
15254         (read_variable): Adjust.
15255         (dwarf2_rnglists_process): Adjust.
15256         (dwarf2_ranges_process): Adjust.
15257         (dwarf2_ranges_read): Adjust.
15258         (dwarf2_get_pc_bounds): Adjust.
15259         (dwarf2_record_block_ranges): Adjust.
15260         (dwarf2_add_field): Adjust.
15261         (dwarf2_add_member_fn): Adjust.
15262         (read_structure_type): Adjust.
15263         (process_structure_scope): Adjust.
15264         (read_enumeration_type): Adjust.
15265         (read_array_type): Adjust.
15266         (mark_common_block_symbol_computed): Adjust.
15267         (read_common_block): Adjust.
15268         (read_namespace_type): Adjust.
15269         (read_namespace): Adjust.
15270         (read_module_type): Adjust.
15271         (read_tag_pointer_type): Adjust.
15272         (read_tag_ptr_to_member_type): Adjust.
15273         (read_tag_string_type): Adjust.
15274         (read_subroutine_type): Adjust.
15275         (read_typedef): Adjust.
15276         (read_base_type): Adjust.
15277         (attr_to_dynamic_prop): Adjust.
15278         (read_subrange_type): Adjust.
15279         (read_unspecified_type): Adjust.
15280         (dwarf2_read_abbrevs): Adjust.
15281         (load_partial_dies): Adjust.
15282         (read_partial_die): Adjust.
15283         (find_partial_die): Adjust.
15284         (guess_partial_die_structure_name): Adjust.
15285         (fixup_partial_die): Adjust.
15286         (read_attribute_value): Adjust.
15287         (read_addr_index): Adjust.
15288         (read_addr_index_from_leb128): Adjust.
15289         (read_str_index): Adjust.
15290         (dwarf2_string_attr): Adjust.
15291         (get_debug_line_section): Adjust.
15292         (dwarf_decode_line_header): Adjust.
15293         (lnp_state_machine::check_line_address): Adjust.
15294         (dwarf_decode_lines_1): Adjust.
15295         (dwarf_decode_lines): Adjust.
15296         (dwarf2_start_symtab): Adjust.
15297         (var_decode_location): Adjust.
15298         (new_symbol_full): Adjust.
15299         (dwarf2_const_value_data): Adjust.
15300         (dwarf2_const_value_attr): Adjust.
15301         (dwarf2_const_value): Adjust.
15302         (die_type): Adjust.
15303         (die_containing_type): Adjust.
15304         (build_error_marker_type): Adjust.
15305         (lookup_die_type): Adjust.
15306         (guess_full_die_structure_name): Adjust.
15307         (anonymous_struct_prefix): Adjust.
15308         (determine_prefix): Adjust.
15309         (dwarf2_name): Adjust.
15310         (follow_die_ref_or_sig): Adjust.
15311         (follow_die_offset): Adjust.
15312         (follow_die_ref): Adjust.
15313         (follow_die_sig_1): Adjust.
15314         (follow_die_sig): Adjust.
15315         (get_signatured_type): Adjust.
15316         (get_DW_AT_signature_type): Adjust.
15317         (decode_locdesc): Adjust.
15318         (dwarf_decode_macros): Adjust.
15319         (cu_debug_loc_section): Adjust.
15320         (fill_in_loclist_baton): Adjust.
15321         (dwarf2_symbol_mark_computed): Adjust.
15322         (init_one_comp_unit): Don't assign
15323         dwarf2_cu::dwarf2_per_objfile.
15324         (set_die_type): Adjust.
15325
15326 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15327
15328         * dwarf2read.c (struct mapped_debug_names): Add constructor.
15329         <dwarf2_per_objfile>: New field.
15330         (dwarf2_per_objfile): Remove global.
15331         (get_dwarf2_per_objfile): New function.
15332         (set_dwarf2_per_objfile): New function.
15333         (dwarf2_build_psymtabs_hard): Change objfile parameter to
15334         dwarf2_per_objfile.
15335         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
15336         (read_abbrev_offset): Likewise.
15337         (read_indirect_string): Likewise.
15338         (read_indirect_line_string): Likewise.
15339         (read_indirect_string_at_offset): Likewise.
15340         (read_indirect_string_from_dwz): Likewise.
15341         (dwarf2_find_containing_comp_unit): Change objfile parameter to
15342         dwarf2_per_objfile.
15343         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
15344         (create_all_comp_units): Change objfile parameter to
15345         dwarf2_per_objfile.
15346         (create_all_type_units): Likewise.
15347         (process_queue): Add dwarf2_per_objfile parameter.
15348         (read_and_check_comp_unit_head): Likewise.
15349         (lookup_dwo_unit_in_dwp): Likewise.
15350         (get_dwp_file): Likewise.
15351         (process_cu_includes): Likewise.
15352         (struct free_dwo_file_cleanup_data): New struct.
15353         (dwarf2_has_info): Use get_dwarf2_per_objfile and
15354         set_dwarf2_per_objfile.
15355         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
15356         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
15357         context, adjust calls.
15358         (dw2_instantiate_symtab): Likewise.
15359         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
15360         (dw2_get_cu): Likewise.
15361         (create_cu_from_index_list): Change objfile parameter to
15362         dwarf2_per_objfile.
15363         (create_cus_from_index_list): Get dwarf2_per_objfile from
15364         context, adjust calls.
15365         (create_cus_from_index): Likewise.
15366         (create_signatured_type_table_from_index): Change objfile
15367         parameter to dwarf2_per_objfile.
15368         (create_signatured_type_table_from_debug_names): Change objfile
15369         parameter to dwarf2_per_objfile.
15370         (create_addrmap_from_index): Likewise.
15371         (create_addrmap_from_aranges): Likewise.
15372         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
15373         (dw2_setup): Remove.
15374         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
15375         context.
15376         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
15377         get_dwarf2_per_objfile.
15378         (dw2_forget_cached_source_info): Likewise.
15379         (dw2_map_symtabs_matching_filename): Likewise.
15380         (struct dw2_symtab_iterator) <index>: Remove.
15381         <dwarf2_per_objfile>: New field.
15382         (dw2_symtab_iter_init): Replace index parameter with
15383         dwarf2_per_objfile.
15384         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
15385         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
15386         (dw2_print_stats): Likewise.
15387         (dw2_dump): Likewise.
15388         (dw2_expand_symtabs_for_function): Likewise.
15389         (dw2_expand_all_symtabs): Likewise.
15390         (dw2_expand_symtabs_with_fullname): Likewise.
15391         (dw2_expand_marked_cus): Replace index and objfile parameters
15392         with dwarf2_per_objfile.
15393         (dw_expand_symtabs_matching_file_matcher): Add
15394         dwarf2_per_objfile parameter and adjust calls.
15395         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
15396         adjust calls.
15397         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
15398         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
15399         adjust calls.
15400         (create_cus_from_debug_names_list): Replace objfile parameter
15401         with dwarf2_per_objfile and adjust calls.
15402         (create_cus_from_debug_names): Likewise.
15403         (dwarf2_read_debug_names): Likewise.
15404         (mapped_debug_names::namei_to_name): Adjust call.
15405         (dw2_debug_names_iterator::next): Likewise.
15406         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
15407         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
15408         (dw2_debug_names_dump): Likewise.
15409         (dw2_debug_names_expand_symtabs_for_function): Likewise.
15410         (dw2_debug_names_expand_symtabs_matching): Likewise.
15411         (dwarf2_initialize_objfile): Likewise.
15412         (dwarf2_build_psymtabs): Likewise.
15413         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
15414         this_cu.
15415         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
15416         (read_and_check_comp_unit_head): Likewise.
15417         (read_abbrev_offset): Likewise.
15418         (create_debug_type_hash_table): Likewise.
15419         (create_debug_types_hash_table): Likewise.
15420         (create_all_type_units): Replace objfile parameter with
15421         dwarf2_per_objfile.
15422         (add_type_unit): Add dwarf2_per_objfile parameter.
15423         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
15424         with dwarf2_per_objfile.
15425         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
15426         (lookup_dwp_signatured_type): Likewise.
15427         (lookup_signatured_type): Likewise.
15428         (read_cutu_die_from_dwo): Likewise.
15429         (init_tu_and_read_dwo_dies): Likewise.
15430         (init_cutu_and_read_dies): Likewise.
15431         (init_cutu_and_read_dies_no_follow): Likewise.
15432         (allocate_type_unit_groups_table): Add objfile parameter.
15433         (create_type_unit_group): Use dwarf2_per_objfile from cu.
15434         (get_type_unit_group): Likewise.
15435         (process_psymtab_comp_unit): Update call.
15436         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
15437         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
15438         (print_tu_stats): Likewise.
15439         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
15440         in void* parameter.
15441         (build_type_psymtabs): Change objfile parameter to
15442         dwarf2_per_objfile.
15443         (process_skeletonless_type_unit): Use dwarf2_per_objfile
15444         passed in void* parameter.
15445         (process_skeletonless_type_units): Change objfile parameter to
15446         dwarf2_per_objfile.
15447         (set_partial_user): Likewise.
15448         (dwarf2_build_psymtabs_hard): Likewise.
15449         (read_comp_units_from_section): Likewise.
15450         (create_all_comp_units): Likewise.
15451         (scan_partial_symbols): Update calls.
15452         (add_partial_symbol): Likewise.
15453         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
15454         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
15455         (process_queue): Add dwarf2_per_objfile parameter.
15456         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
15457         (compute_compunit_symtab_includes): Likewise.
15458         (process_cu_includes): Add dwarf2_per_objfile parameter.
15459         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
15460         (process_full_type_unit): Likewise.
15461         (process_imported_unit_die): Update call.
15462         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
15463         (read_file_scope): Likewise.
15464         (allocate_dwo_file_hash_table): Add objfile parameter.
15465         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
15466         (create_cus_hash_table): Likewise.
15467         (create_dwp_hash_table): Likewise.
15468         (create_dwo_unit_in_dwp_v1): Likewise.
15469         (create_dwp_v2_section): Likewise.
15470         (create_dwo_unit_in_dwp_v2): Likewise.
15471         (lookup_dwo_unit_in_dwp): Likewise.
15472         (try_open_dwop_file): Likewise.
15473         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
15474         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
15475         cleanup to include a reference to dwarf2_per_objfile.
15476         (open_dwp_file): Add dwarf2_per_objfile parameter.
15477         (open_and_init_dwp_file): Likewise.
15478         (get_dwp_file): Likewise.
15479         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
15480         (queue_and_load_all_dwo_tus): Update call.
15481         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
15482         data.
15483         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
15484         (dwarf2_ranges_process): Likewise.
15485         (dwarf2_get_pc_bounds): Likewise.
15486         (mark_common_block_symbol_computed): Likewise.
15487         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
15488         (dwarf2_read_abbrevs): Update call.
15489         (read_partial_die): Use dwarf2_per_objfile from cu.
15490         (find_partial_die): Likewise.
15491         (fixup_partial_die): Likewise.
15492         (read_attribute_value): Likewise.
15493         (read_indirect_string_at_offset_from): Add objfile parameter.
15494         (read_indirect_string_at_offset): Add dwarf2_per_objfile
15495         parameter.
15496         (read_indirect_string_from_dwz): Add objfile parameter.
15497         (read_indirect_string): Add objfile parameter.
15498         (read_addr_index_1): Add dwarf2_per_objfile parameter.
15499         (read_addr_index): Use dwarf2_per_objfile from cu.
15500         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
15501         call dw2_setup.
15502         (read_str_index): Use dwarf2_per_objfile from cu.
15503         (get_debug_line_section): Likewise.
15504         (read_formatted_entries): Add dwarf2_per_objfile parameter.
15505         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
15506         (new_symbol_full): Use dwarf2_per_objfile from cu.
15507         (build_error_marker_type): Likewise.
15508         (lookup_die_type): Likewise.
15509         (determine_prefix): Likewise.
15510         (follow_die_offset): Likewise.
15511         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
15512         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
15513         (dwarf2_fetch_die_type_sect_off): Likewise.
15514         (dwarf2_get_die_type): Likewise.
15515         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
15516         (get_signatured_type): Likewise.
15517         (get_DW_AT_signature_type): Likewise.
15518         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
15519         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
15520         (cu_debug_loc_section): Likewise.
15521         (fill_in_loclist_baton): Likewise.
15522         (dwarf2_symbol_mark_computed): Likewise.
15523         (dwarf2_find_containing_comp_unit): Change objfile parameter to
15524         dwarf2_per_objfile.
15525         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
15526         parameter.
15527         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
15528         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
15529         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
15530         (set_die_type): Use dwarf2_free_objfile from cu.
15531         (get_die_type_at_offset): Likewise.
15532         (dwarf2_per_objfile_free): Don't assign global variable.
15533         (debug_names) <constructor>: Add dwarf2_per_objfile
15534         parameter, update m_debugstrlookup construction.
15535         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
15536         parameter.
15537         <m_dwarf2_per_objfile>: New field.
15538         <lookup>: Use m_dwarf2_per_objfile.
15539         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
15540         (psyms_seen_size): Likewise.
15541         (write_gdbindex): Replace objfile parameter with
15542         dwarf2_per_objfile.
15543         (write_debug_names): Likewise.
15544         (write_psymtabs_to_index): Likewise.
15545         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
15546         calls.
15547
15548 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15549
15550         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
15551         <dwarf2_per_objfile>: New field.
15552         (struct dwarf2_per_cu_data) <objfile>: Remove.
15553         <dwarf2_per_objfile>: New field.
15554         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
15555         of objfile.
15556         (create_signatured_type_table_from_index): Likewise.
15557         (create_debug_type_hash_table): Likewise.
15558         (fill_in_sig_entry_from_dwo_entry): Likewise.
15559         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
15560         (create_type_unit_group): Assign dwarf2_per_objfile instead of
15561         objfile.
15562         (create_partial_symtab): Access objfile through
15563         dwarf2_per_objfile.
15564         (process_psymtab_comp_unit_reader): Likewise.
15565         (read_comp_units_from_section): Likewise.
15566         (scan_partial_symbols): Likewise.
15567         (add_partial_symbol): Likewise.
15568         (add_partial_subprogram): Likewise.
15569         (peek_die_abbrev): Likewise.
15570         (fixup_go_packaging): Likewise.
15571         (process_full_comp_unit): Likewise.
15572         (process_full_type_unit): Likewise.
15573         (process_imported_unit_die): Likewise.
15574         (dwarf2_compute_name): Likewise.
15575         (dwarf2_physname): Likewise.
15576         (read_import_statement): Likewise.
15577         (create_cus_hash_table): Assign dwarf2_physname instead of
15578         objfile.
15579         (read_func_scope): Access objfile through dwarf2_per_objfile.
15580         (read_lexical_block_scope): Likewise.
15581         (read_call_site_scope): Likewise.
15582         (read_variable): Likewise.
15583         (dwarf2_rnglists_process): Likewise.
15584         (dwarf2_ranges_process): Likewise.
15585         (dwarf2_ranges_read): Likewise.
15586         (dwarf2_record_block_ranges): Likewise.
15587         (dwarf2_add_field): Likewise.
15588         (dwarf2_add_member_fn): Likewise.
15589         (read_structure_type): Likewise.
15590         (process_structure_scope): Likewise.
15591         (read_enumeration_type): Likewise.
15592         (read_array_type): Likewise.
15593         (read_common_block): Likewise.
15594         (read_namespace_type): Likewise.
15595         (read_namespace): Likewise.
15596         (read_module_type): Likewise.
15597         (read_tag_pointer_type): Likewise.
15598         (read_tag_ptr_to_member_type): Likewise.
15599         (read_tag_string_type): Likewise.
15600         (read_subroutine_type): Likewise.
15601         (read_typedef): Likewise.
15602         (read_base_type): Likewise.
15603         (attr_to_dynamic_prop): Likewise.
15604         (read_subrange_type): Likewise.
15605         (read_unspecified_type): Likewise.
15606         (load_partial_dies): Likewise.
15607         (read_partial_die): Likewise.
15608         (find_partial_die): Likewise.
15609         (guess_partial_die_structure_name): Likewise.
15610         (fixup_partial_die): Likewise.
15611         (read_attribute_value): Likewise.
15612         (read_addr_index_from_leb128): Likewise.
15613         (dwarf2_read_addr_index): Likewise.
15614         (dwarf2_string_attr): Likewise.
15615         (lnp_state_machine::check_line_address): Likewise.
15616         (dwarf_decode_lines_1): Likewise.
15617         (dwarf_decode_lines): Likewise.
15618         (dwarf2_start_symtab): Likewise.
15619         (var_decode_location): Likewise.
15620         (new_symbol_full): Likewise.
15621         (dwarf2_const_value_data): Likewise.
15622         (dwarf2_const_value_attr): Likewise.
15623         (dwarf2_const_value): Likewise.
15624         (die_type): Likewise.
15625         (die_containing_type): Likewise.
15626         (lookup_die_type): Likewise.
15627         (guess_full_die_structure_name): Likewise.
15628         (anonymous_struct_prefix): Likewise.
15629         (dwarf2_name): Likewise.
15630         (follow_die_ref_or_sig): Likewise.
15631         (follow_die_offset): Likewise.
15632         (follow_die_ref): Likewise.
15633         (dwarf2_fetch_die_loc_sect_off): Likewise.
15634         (dwarf2_fetch_constant_bytes): Likewise.
15635         (dwarf2_fetch_die_type_sect_off): Likewise.
15636         (dwarf2_get_die_type): Likewise.
15637         (follow_die_sig): Likewise.
15638         (decode_locdesc): Likewise.
15639         (dwarf2_per_cu_objfile): Likewise.
15640         (dwarf2_per_cu_text_offset): Likewise.
15641         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
15642         objfile.
15643         (set_die_type): Access objfile through
15644         dwarf2_per_objfile.
15645
15646 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15647
15648         * valprint.c (converted_character_d): Remove typedef.
15649         (DEF_VEC_O (converted_character_d)): Remove.
15650         (count_next_character): Use std::vector.
15651         (print_converted_chars_to_obstack): Likewise.
15652         (generic_printstr): Likewise.
15653
15654 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15655
15656         * xml-support.h (struct gdb_xml_value): Add constructor.
15657         <value>: Change type to unique_xmalloc_ptr.
15658         (gdb_xml_value_s): Remove typedef.
15659         (DEF_VEC_O (gdb_xml_value_s)): Remove.
15660         (gdb_xml_element_start_handler): Change parameter type to
15661         std::vector.
15662         (xml_find_attribute): Likewise.
15663         * xml-support.c (xml_find_attribute): Change parameter type to
15664         std::vector and adjust.
15665         (gdb_xml_values_cleanup): Remove.
15666         (gdb_xml_parser::start_element): Adjust to std::vector.
15667         (xinclude_start_include): Change paraeter type to std::vector
15668         and adjust.
15669         * btrace.c (check_xml_btrace_version): Likewise.
15670         (parse_xml_btrace_block): Likewise.
15671         (parse_xml_btrace_pt_config_cpu): Likewise.
15672         (parse_xml_btrace_pt): Likewise.
15673         (parse_xml_btrace_conf_bts): Likewise.
15674         (parse_xml_btrace_conf_pt): Likewise.
15675         * memory-map.c (memory_map_start_memory): Likewise.
15676         (memory_map_start_property): Likewise.
15677         * osdata.c (osdata_start_osdata): Likewise.
15678         (osdata_start_item): Likewise.
15679         (osdata_start_column): Likewise.
15680         * remote.c (start_thread): Likewise.
15681         * solib-aix.c (library_list_start_library): Likewise.
15682         (library_list_start_list): Likewise.
15683         * solib-svr4.c (library_list_start_library): Likewise.
15684         (svr4_library_list_start_list): Likewise.
15685         * solib-target.c (library_list_start_segment): Likewise.
15686         (library_list_start_section): Likewise.
15687         (library_list_start_library): Likewise.
15688         (library_list_start_list): Likewise.
15689         * tracepoint.c (traceframe_info_start_memory): Likewise.
15690         (traceframe_info_start_tvar): Likewise.
15691         * xml-syscall.c (syscall_start_syscall): Likewise.
15692         * xml-tdesc.c (tdesc_start_target): Likewise.
15693         (tdesc_start_feature): Likewise.
15694         (tdesc_start_reg): Likewise.
15695         (tdesc_start_union): Likewise.
15696         (tdesc_start_struct): Likewise.
15697         (tdesc_start_flags): Likewise.
15698         (tdesc_start_enum): Likewise.
15699         (tdesc_start_field): Likewise.
15700         (tdesc_start_enum_value): Likewise.
15701         (tdesc_start_vector): Likewise.
15702
15703 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15704
15705         * extension.h (struct xmethod_worker) <clone>: Remove.
15706         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
15707         Remove.
15708         (python_xmethod_worker::clone): Remove.
15709         * valops.c (find_overload_match): Use std::move instead of
15710         clone.
15711
15712 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15713
15714         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
15715         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
15716         <free_xmethod_worker_data>: Remove.
15717         <get_matching_xmethod_workers>: Chance VEC to std::vector.
15718         <get_xmethod_arg_types>: Remove.
15719         <get_xmethod_result_type>: Remove.
15720         <invoke_xmethod>: Remove.
15721         * extension.c (new_xmethod_worker): Remove.
15722         (clone_xmethod_worker): Remove.
15723         (get_matching_xmethod_workers): Return void, pass std::vector by
15724         pointer.
15725         (get_xmethod_arg_types): Rename to...
15726         (xmethod_worker::get_arg_types): ... this, and adjust.
15727         (get_xmethod_result_type): Rename to...
15728         (xmethod_worker::get_result_type): ... this, and adjust.
15729         (invoke_xmethod): Remove.
15730         (free_xmethod_worker): Remove.
15731         (free_xmethod_worker_vec): Remove.
15732         * extension.h (enum ext_lang_rc): Move here from
15733         extension-priv.h.
15734         (struct xmethod_worker): Add constructor and destructor.
15735         <data>: Remove.
15736         <value>: Remove.
15737         <invoke, clone, do_get_result_type, do_get_arg_types>: New
15738         virtual pure methods.
15739         <get_arg_types, get_result_type>: New methods.
15740         (xmethod_worker_ptr): Remove typedef.
15741         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
15742         (xmethod_worker_vec): Remove typedef.
15743         (xmethod_worker_up): New typedef.
15744         (invoke_xmethod): Remove.
15745         (clone_xmethod_worker): Remove.
15746         (free_xmethod_worker): Remove.
15747         (free_xmethod_worker_vec): Remove.
15748         (get_xmethod_arg_types): Remove.
15749         (get_xmethod_result_type): Remove.
15750         * valops.c (find_method_list): Use std::vector, don't use
15751         intermediate vector.
15752         (value_find_oload_method_list): Use std::vector.
15753         (find_overload_match): Use std::vector.
15754         (find_oload_champ): Use std::vector.
15755         * value.c (value_free): Use operator delete.
15756         (value_of_xmethod): Rename to...
15757         (value_from_xmethod): ... this.  Don't assign
15758         xmethod_worker::value, take rvalue-reference.
15759         (result_type_of_xmethod): Adjust.
15760         (call_xmethod): Adjust.
15761         * value.h: Include extension.h.
15762         (struct xmethod_worker): Don't forward-declare.
15763         (value_of_xmethod): Rename to...
15764         (value_from_xmethod): ... this, take rvalue-reference.
15765         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
15766         (struct python_xmethod_worker): ... this, add constructor and
15767         destructor.
15768         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
15769         (gdbpy_free_xmethod_worker_data): Rename to...
15770         (python_xmethod_worker::~python_xmethod_worker): ... this and
15771         adjust.
15772         (gdbpy_clone_xmethod_worker_data): Rename to...
15773         (python_xmethod_worker::clone): ... this and adjust.
15774         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
15775         temporary vector.
15776         (gdbpy_get_xmethod_arg_types): Rename to...
15777         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
15778         (gdbpy_get_xmethod_result_type): Rename to...
15779         (python_xmethod_worker::do_get_result_type): ... this and
15780         adjust.
15781         (gdbpy_invoke_xmethod): Rename to...
15782         (python_xmethod_worker::invoke): ... this and adjust.
15783         (new_python_xmethod_worker): Rename to...
15784         (python_xmethod_worker::python_xmethod_worker): ... this and
15785         adjust.
15786         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
15787         Remove.
15788         (gdbpy_free_xmethod_worker_data): Remove.
15789         (gdbpy_get_matching_xmethod_workers): Use std::vector.
15790         (gdbpy_get_xmethod_arg_types): Remove.
15791         (gdbpy_get_xmethod_result_type): Remove.
15792         (gdbpy_invoke_xmethod): Remove.
15793         * python/python.c (python_extension_ops): Remove obsolete
15794         callbacks.
15795
15796 2018-01-05  Pedro Alves  <palves@redhat.com>
15797
15798         PR gdb/18653
15799         * common/signals-state-save-restore.c
15800         (save_original_signals_state): New parameter 'quiet'.  Warn if we
15801         find a custom handler preinstalled, instead of internal erroring.
15802         But only warn if !quiet.
15803         * common/signals-state-save-restore.h
15804         (save_original_signals_state): New parameter 'quiet'.
15805         * main.c (captured_main_1): Move save_original_signals_state call
15806         after option handling, and pass QUIET.
15807
15808 2018-01-05  Pedro Alves  <palves@redhat.com>
15809
15810         * spu-tdep.c (spu_catch_start): Pass
15811         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
15812
15813 2018-01-05  Pedro Alves  <palves@redhat.com>
15814
15815         PR gdb/22670
15816         * ada-lang.c (literal_symbol_name_matcher): New function.
15817         (ada_get_symbol_name_matcher): Use it for
15818         symbol_name_match_type::SEARCH_NAME.
15819         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
15820         it down instead of assuming symbol_name_match_type::FULL.
15821         * block.h (block_lookup_symbol): New parameter 'match_type'.
15822         * c-valprint.c (print_unpacked_pointer): Use
15823         lookup_symbol_search_name instead of lookup_symbol.
15824         * compile/compile-object-load.c (get_out_value_type): Pass down
15825         symbol_name_match_type::SEARCH_NAME.
15826         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
15827         symbol_name_match_type::FULL.
15828         * cp-support.c (cp_get_symbol_name_matcher): Handle
15829         symbol_name_match_type::SEARCH_NAME.
15830         * infrun.c (insert_exception_resume_breakpoint): Use
15831         lookup_symbol_search_name.
15832         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
15833         * psymtab.c (maintenance_check_psymtabs): Use
15834         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
15835         * stack.c (print_frame_args): Use lookup_symbol_search_name and
15836         SYMBOL_SEARCH_NAME.
15837         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
15838         if symbol_name_match_type::SEARCH_NAME.
15839         (lookup_symbol_in_language): Pass down
15840         symbol_name_match_type::FULL.
15841         (lookup_symbol_search_name): New.
15842         (lookup_language_this): Pass down
15843         symbol_name_match_type::SEARCH_NAME.
15844         (lookup_symbol_aux, lookup_local_symbol): New parameter
15845         'match_type'.  Pass it down.
15846         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
15847         (lookup_symbol_search_name): New declaration.
15848         (lookup_symbol_in_block): New 'match_type' parameter.
15849
15850 2018-01-05  Pedro Alves  <palves@redhat.com>
15851
15852         PR gdb/22670
15853         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
15854         ada_lookup_symbol.
15855         (ada_lookup_symbol): Reimplement in terms of
15856         ada_lookup_symbol_list, bits factored out from
15857         ada_lookup_encoded_symbol.
15858
15859 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15860
15861         * ada-exp.y (write_object_renaming): When subscripting an array
15862         using a symbol as the index, pass the block in call to
15863         ada_lookup_encoded_symbol when looking that symbol up.
15864
15865 2018-01-05  Jerome Guitton  <guitton@adacore.com>
15866
15867         * ada-lang.c (ada_array_length): Use ada_index_type instead of
15868         TYPE_INDEX_TYPE.
15869
15870 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15871
15872         * ada-lang.c (ada_to_fixed_value_create): Add handling of
15873         the case where VALUE_LVAL (val0) is not lval_memory.
15874
15875 2018-01-05  Xavier Roirand  <roirand@adacore.com>
15876
15877         * ada-valprint.c (print_optional_low_bound): Handle
15878         character-indexed array printing like boolean-indexed array
15879         printing.
15880
15881 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15882
15883         * NEWS: Create a new section for the next release branch.
15884         Rename the section of the current branch, now that it has
15885         been cut.
15886
15887 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15888
15889         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
15890         * version.in: Bump version to 8.1.50.DATE-git.
15891
15892 2018-01-03  Xavier Roirand  <roirand@adacore.com>
15893
15894         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
15895         Add field.
15896         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
15897         Add field.
15898         (default_exception_support_info) <catch_handlers_sym>: Add field.
15899         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
15900         (ada_exception_name_addr_1): Add "catch handlers" handling.
15901         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
15902         Update all callers.
15903         (create_excep_cond_exprs) <ex>: Add parameter.
15904         (re_set_exception): Update create_excep_cond_exprs call.
15905         (print_it_exception, print_one_exception, print_mention_exception)
15906         (print_recreate_exception): Add "catch handler" handling.
15907         (allocate_location_catch_handlers, re_set_catch_handlers)
15908         (check_status_catch_handlers, print_it_catch_handlers)
15909         (print_one_catch_handlers, print_mention_catch_handlers)
15910         (print_recreate_catch_handlers): New function.
15911         (catch_handlers_breakpoint_ops): New variable.
15912         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
15913         Add parameter.  Add "catch handler" handling.
15914         (ada_exception_sym_name, ada_exception_breakpoint_ops):
15915         Add "catch handler" handling.
15916         (ada_exception_catchpoint_cond_string): Add "catch handler"
15917         handling.
15918         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
15919         call.
15920         (catch_ada_handlers_command): New function.
15921         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
15922         operations structure.
15923         (_initialize_ada_language): Add "catch handlers" command entry.
15924         * NEWS: Document "catch handlers" feature.
15925
15926 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15927
15928         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
15929         account when creating the array type of the slice.
15930         (ada_value_slice): Likewise.
15931
15932 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15933
15934         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
15935         New enum value.
15936         (create_array_type_with_stride): Add byte_stride_prop parameter.
15937         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
15938         New parameter.  Update all callers in this file.
15939         (array_type_has_dynamic_stride): New function.
15940         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
15941         of arrays with dynamic byte strides.
15942         * dwarf2read.c (read_array_type): Add support for dynamic
15943         DW_AT_byte_stride attributes.
15944
15945 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15946
15947         * dwarf2read.c (read_unspecified_type): Treat
15948         DW_TAG_enumeration_type DIEs from Ada units as stubs.
15949
15950 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15951
15952         Update copyright year range in all GDB files.
15953
15954 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
15955
15956         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
15957         and gdb/testsuite/gdb.base/step-line.c.
15958
15959 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15960
15961         * copyright.py (main): Dump the contents of
15962         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
15963         even if BY_HAND is empty.
15964
15965 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15966
15967         * top.c (print_gdb_version): Update Copyright year in version
15968         message.
15969
15970 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15971
15972         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
15973
15974 For older changes see ChangeLog-2017.
15975 \f
15976 Local Variables:
15977 mode: change-log
15978 left-margin: 8
15979 fill-column: 74
15980 version-control: never
15981 coding: utf-8
15982 End: