Pass return_method to _push_dummy_call
[external/binutils.git] / gdb / ChangeLog
1 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
2
3         * aarch64-tdep.c (aarch64_push_dummy_call): Replace arg with
4         return_method.
5         * alpha-tdep.c (alpha_push_dummy_call): Likewise.
6         * amd64-tdep.c (amd64_push_arguments): Likewise.
7         (amd64_push_dummy_call): Likewise.
8         * amd64-windows-tdep.c (amd64_windows_push_arguments): Likewise.
9         * arc-tdep.c (arc_push_dummy_call): Likewise.
10         * arm-tdep.c (arm_push_dummy_call): Likewise.
11         * avr-tdep.c (avr_push_dummy_call): Likewise.
12         * bfin-tdep.c (bfin_push_dummy_call): Likewise.
13         * cris-tdep.c (cris_push_dummy_call): Likewise.
14         * csky-tdep.c (csky_push_dummy_call): Likewise.
15         * frv-tdep.c (frv_push_dummy_call): Likewise.
16         * gdbarch.c: Regenerate.
17         * gdbarch.h: Regenerate.
18         * gdbarch.sh (gdbarch_push_dummy_call): Replace arg with
19         return_method.
20         * h8300-tdep.c (h8300_push_dummy_call): Likewise.
21         * hppa-tdep.c (hppa32_push_dummy_call): Likewise.
22         (hppa64_push_dummy_call): Likewise.
23         * i386-darwin-tdep.c (i386_darwin_push_dummy_call): Likewise.
24         * i386-tdep.c (i386_push_dummy_call): Likewise.
25         * ia64-tdep.c (ia64_push_dummy_call): Likewise.
26         * infcall.c (call_function_by_hand_dummy): Likewise.
27         * iq2000-tdep.c (iq2000_push_dummy_call): Likewise.
28         * lm32-tdep.c (lm32_push_dummy_call): Likewise.
29         * m32c-tdep.c (m32c_push_dummy_call): Likewise.
30         * m32r-tdep.c (m32r_push_dummy_call): Likewise.
31         * m68hc11-tdep.c (m68hc11_push_dummy_call): Likewise.
32         * m68k-tdep.c (m68k_push_dummy_call): Likewise.
33         * mep-tdep.c (mep_push_dummy_call): Likewise.
34         * mips-tdep.c (mips_eabi_push_dummy_call): Likewise.
35         (mips_n32n64_push_dummy_call): Likewise.
36         (mips_o32_push_dummy_call): Likewise.
37         (mips_o64_push_dummy_call): Likewise.
38         * mn10300-tdep.c (mn10300_push_dummy_call): Likewise.
39         * msp430-tdep.c (msp430_push_dummy_call): Likewise.
40         * nds32-tdep.c (nds32_push_dummy_call): Likewise.
41         * nios2-tdep.c (nios2_push_dummy_call): Likewise.
42         * or1k-tdep.c (or1k_push_dummy_call): Likewise.
43         * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Likewise.
44         (ppc64_sysv_abi_push_dummy_call): Likewise.
45         * ppc-tdep.h (ppc_sysv_abi_push_dummy_call): Likewise.
46         (ppc64_sysv_abi_push_dummy_call): Likewise.
47         * riscv-tdep.c (riscv_push_dummy_call): Likewise.
48         * rl78-tdep.c (rl78_push_dummy_call): Likewise.
49         * rs6000-aix-tdep.c (rs6000_push_dummy_call): Likewise.
50         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Likewise.
51         * rx-tdep.c (rx_push_dummy_call): Likewise.
52         * s390-tdep.c (s390_push_dummy_call): Likewise.
53         * score-tdep.c (score_push_dummy_call): Likewise.
54         * sh-tdep.c (sh_push_dummy_call_fpu): Likewise.
55         (sh_push_dummy_call_nofpu): Likewise.
56         * sparc-tdep.c (sparc32_store_arguments): Likewise.
57         (sparc32_push_dummy_call): Likewise.
58         * sparc64-tdep.c (sparc64_store_arguments): Likewise.
59         (sparc64_push_dummy_call): Likewise.
60         * spu-tdep.c (spu_push_dummy_call): Likewise.
61         * tic6x-tdep.c (tic6x_push_dummy_call): Likewise.
62         * tilegx-tdep.c (tilegx_push_dummy_call): Likewise.
63         * v850-tdep.c (v850_push_dummy_call): Likewise.
64         * vax-tdep.c (vax_push_dummy_call): Likewise.
65         * xstormy16-tdep.c (xstormy16_push_dummy_call): Likewise.
66         * xtensa-tdep.c (xtensa_push_dummy_call): Likewise.
67
68 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
69
70         * gdbarch.sh (enum function_call_return_method): Add enum.
71         * gdbarch.h: Regenerate.
72         * infcall.c (call_function_by_hand_dummy): Replace vars with enum.
73
74 2018-11-15  Joel Brobecker  <brobecker@adacore.com>
75
76         * unittests/copy_bitwise-selftests.c: New file.
77         * utils.c (selftests::bits_to_str, selftests::check_copy_bitwise)
78         (selftests::copy_bitwise_tests): Delete, moving this code to
79         unittests/copy_bitwise-selftests.c instead.
80         (_initialize_utils): Do not register copy_bitwise tests.
81         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
82         unittests/copy_bitwise-selftests.c.
83
84 2018-11-14  Joel Brobecker  <brobecker@adacore.com>
85
86         * ada-lang.c (move_bits): Delete. Update all callers to use
87         copy_bitwise instead.
88         * dwarf2loc.c (copy_bitwise, bits_to_str::bits_to_str)
89         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
90         Move from here to utils.c.
91         (_initialize_dwarf2loc): Remove call to register copy_bitwise
92         selftests.
93         * utils.h (copy_bitwise): Add declaration.
94         * utils.c (copy_bitwise, bits_to_str::bits_to_str)
95         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
96         Moved here from dwarf2loc.c.
97         (_initialize_utils): Register copy_bitwise selftests.
98
99 2018-11-14  Jim Wilson  <jimw@sifive.com>
100
101         * riscv-tdep.c (struct riscv_arg_info): New field is_unnamed.
102         (riscv_call_arg_scalar_int): If unnamed arg with twice xlen alignment,
103         then increment next_regnum if odd.
104         (riscv_arg_location): New arg is_unnamed.  Set ainfo->is_unnamed.
105         (riscv_push_dummy_call): New local ftype.  Call check_typedef to set
106         function type.  Pass new arg to riscv_arg_location based on function
107         type.
108         (riscv_return_value): Pass new arg to riscv_arg_location.
109
110         * riscv-tdep.c (BIGGEST_ALIGNMENT): New.
111         (riscv_type_alignment) <TYPE_CODE_ARRAY>: If TYPE_VECTOR, return min
112         of TYPE_LENGTH and BIGGEST_ALIGNMENT.
113
114         * riscv-tdep.c (riscv_call_arg_scalar_int): Use std::min when
115         setting len.  New local align, set to max of arg align and xlen,
116         and pass to first riscv_assign_stack_location call.
117
118 2018-11-12  Simon Marchi  <simon.marchi@polymtl.ca>
119
120         * skip.c (complete_skip_number): New function.
121         (_initialize_step_skip): Add completers to some skip commands.
122
123 2018-11-09  Tom Tromey  <tom@tromey.com>
124
125         * remote.c (remote_g_packet_guess_s): Remove typedef and DEF_VEC.
126         (struct remote_g_packet_data): Derive from allocate_on_obstack.
127         <guesses>: Now a std::vector.
128         (remote_g_packet_data_init, register_remote_g_packet_guess):
129         Update.
130         (remote_read_description_p): Update.  Return bool.
131         (remote_target::read_description): Update.
132         (struct remote_g_packet_guess): Add constructor.
133
134 2018-11-09  Tom Tromey  <tom@tromey.com>
135
136         * common/scoped_fd.h (class scoped_fd): Add move constructor and
137         move assignment operator.
138         * psymtab.c (psymtab_to_fullname): Update.
139         * source.h (open_source_file): Return scoped_fd.
140         (find_and_open_source): Likewise.
141         * source.c (open_source_file): Return scoped_fd.
142         (get_filename_and_charpos): Update.
143         (print_source_lines_base): Update.  Use scoped_fd::to_file.
144         (forward_search_command): Likewise.
145         (reverse_search_command): Likewise.
146         (find_and_open_source): Return scoped_fd.
147         * tui/tui-source.c (tui_set_source_content): Update.  Use
148         gdb_file_up.
149
150 2018-11-09  John Baldwin  <jhb@FreeBSD.org>
151
152         * minsyms.c (minimal_symbol_reader::install): Fix unsigned
153         overflow.
154
155 2018-11-09  Hafiz Abid Qadeer  <abidh@codesourcery.com>
156
157         * configure: Regenerate.
158
159 2018-11-09  Tom de Vries  <tdevries@suse.de>
160
161         * symtab.c (symbol_set_names): Call symbol_find_demangled_name
162         unconditionally, to set the language of the symbol.  Manage freeing
163         returned pointer using gdb::unique_xmalloc_ptr.
164
165 2018-11-08  Tom Tromey  <tom@tromey.com>
166
167         * record.c (require_record_target): Upper-case "<TAB>".
168
169 2018-11-08  Tom Tromey  <tom@tromey.com>
170
171         * python/lib/gdb/command/pretty_printers.py
172         (InfoPrettyPrinter.invoke): Don't indent "objfile" heading.
173
174 2018-11-08  Tom Tromey  <tom@tromey.com>
175
176         PR gdb/23555:
177         PR gdb/23838:
178         * target.h (target_supports_terminal_ours): Return bool.
179         * target.c (target_supports_terminal_ours): Handle case where
180         current_top_target returns nullptr.  Return bool.
181
182 2018-11-08  Joel Brobecker  <brobecker@adacore.com>
183
184         * aarch64-tdep.c (aapcs_is_vfp_call_or_return_candidate_1):
185         return the correct count for potential HFAs.
186
187 2018-11-08  Jan Beulich  <jbeulich@suse.com>
188
189         * i387-tdep.c (i387_supply_xsave): Split handling of
190         X86_XSTATE_ZMM_H and X86_XSTATE_ZMM.
191         (i387_collect_xsave): Likewise.
192
193 2018-11-08  Andrew Burgess  <andrew.burgess@embecosm.com>
194
195         * riscv-tdep.c (riscv_insn::decode): Update header comment.
196         (riscv_frame_this_id): Catch errors thrown while building the
197         frame cache, leave the frame id as the default, which is the outer
198         frame id.
199
200 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
201
202         * ada-lang.c (read_atcb): Only set task_info->called_task if
203         task_info->state == Entry_Caller_Sleep.
204         (print_ada_task_info): Do not check task_info->state before
205         checking task_info->called_task.
206         (info_task): Likewise.
207
208 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
209
210         * ada-tasks.c (read_atcb): Clear task_info before computing
211         the value of each of its fields.
212
213 2018-11-07  Andrew Burgess  <andrew.burgess@embecosm.com>
214
215         * dwarf2read.c (dwarf2_init_integer_type): Check for name being
216         NULL before dereferencing it.
217
218 2018-11-06  Tom de Vries  <tdevries@suse.de>
219
220         * linux-tdep.c (linux_vsyscall_range_raw): Use xmalloc to allocate
221         program headers.
222
223 2018-11-06  Max Filippov  <jcmvbkbc@gmail.com>
224
225         * configure.tgt (xtensa*-*-linux*): Change to xtensa*-*-*linux*
226         so that it applies to uclinux as well.
227
228 2018-11-06  Marius Muench  <marius.muench@eurecom.fr>
229
230         * arm-tdep.c (arm_scan_prologue): Don't dereference FP reg
231         when on AAPCS.
232
233 2018-11-06  John Baldwin  <jhb@FreeBSD.org>
234
235         * riscv-fbsd-nat.c (getregs_supplies): Return true for
236         RISCV_CSR_SSTATUS_REGNUM.
237
238 2018-11-04  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
239
240         * source.c (open_source_file): Fix leak by transferring the
241         current s->fullname to the unique_xmalloc_ptr fullname given
242         to find_and_open_source.
243
244 2018-11-04  Tom Tromey  <tom@tromey.com>
245
246         * varobj.c (install_default_visualizer): Update.
247         * python/python-internal.h (gdbpy_get_varobj_pretty_printer):
248         Return gdbpy_ref.
249         * python/py-prettyprint.c (search_pp_list): Return gdbpy_ref.
250         (find_pretty_printer_from_progspace)
251         (find_pretty_printer_from_gdb, find_pretty_printer)
252         (gdbpy_get_varobj_pretty_printer): Return gdbpy_ref.
253         (gdbpy_get_varobj_pretty_printer, gdbpy_default_visualizer):
254         Update.
255
256 2018-11-04  Tom Tromey  <tom@tromey.com>
257
258         * python/python.c (gdbpy_parameter_value): Update.
259         * python/python-internal.h (python_string_to_unicode)
260         (python_string_to_target_python_string)
261         (host_string_to_python_string): Return gdbpy_ref.
262         * python/py-utils.c (python_string_to_unicode)
263         (unicode_to_encoded_python_string)
264         (unicode_to_target_python_string)
265         (python_string_to_target_string)
266         (python_string_to_target_python_string): Return gdbpy_ref.
267         (python_string_to_host_string): Update.
268         (host_string_to_python_string): Return gdbpy_ref.
269         * python/py-symtab.c (stpy_get_filename, stpy_get_producer)
270         (stpy_fullname): Update.
271         * python/py-progspace.c (pspy_get_filename, pspy_solib_name):
272         Update.
273         * python/py-prettyprint.c (print_string_repr): Update.
274         * python/py-objfile.c (objfpy_get_filename, objfpy_get_username)
275         (objfpy_get_build_id): Update.
276         * python/py-breakpoint.c (bppy_get_location)
277         (bppy_get_expression, bppy_get_condition, bppy_get_commands):
278         Update.
279
280 2018-11-04  Tom Tromey  <tom@tromey.com>
281
282         * python/python-internal.h (gdb_py_object_from_longest)
283         (gdb_py_object_from_ulongest): Return gdbpy_ref.
284         * python/py-value.c (valpy_int): Update.
285         * python/py-utils.c (gdb_py_object_from_longest): Return
286         gdbpy_ref.
287         (gdb_py_object_from_ulongest): Likewise.
288         * python/py-type.c (typy_get_alignof): Update.
289         * python/py-linetable.c (ltpy_get_all_source_lines)
290         (ltpy_entry_get_line, ltpy_entry_get_pc): Update.
291         * python/py-block.c (blpy_get_start, blpy_get_end): Update.
292
293 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
294
295         * ada-lang.c (_initialize_ada_language): Fix typo.
296
297 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
298
299         * language.c (type): Remove.
300         (_initialize_language): Remove assignment to type.
301
302 2018-11-02  Joel Brobecker  <brobecker@adacore.com>
303
304         * aarch64-ravenscar-thread.h, aarch64-ravenscar-thread.c: New files.
305         * aarch64-tdep.c: #include "aarch64-ravenscar-thread.h".
306         (aarch64_gdbarch_init): Add call to register_aarch64_ravenscar_ops.
307         * Makefile.in (ALL_64_TARGET_OBS): Add aarch64-ravenscar-thread.o.
308         (HFILES_NO_SRCDIR): Add aarch64-ravenscar-thread.h.
309         (ALLDEPFILES): Add aarch64-ravenscar-thread.c.
310         * configure.tgt (cpu_obs) [aarch64*-*-*]: Add ravenscar-thread.o
311         and aarch64-ravenscar-thread.o.
312         * NEWS: Add entry documenting Ravenscar tasking support
313         on AArch64 ELF.
314
315 2018-11-02  Matthew Malcomson  <matthew.malcomson@arm.com>
316
317         * symtab.c (info_functions_command): Initialize quiet flag.
318         * stack.c (info_args_command): Likewise.
319
320 2018-11-01  Jim Wilson  <jimw@sifive.com>
321
322         * riscv-tdep.c (riscv_breakpoint_kind_from_pc): New local unaligned_p.
323         Set if pcptr if unaligned.  Return 2 if unaligned_p true.  Update
324         debugging messages.
325
326 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
327
328         * ada-lang.c (ada_watch_location_expression): New function.
329         (ada_language_defn): Set la_watch_location_expression to
330         ada_watch_location_expression.
331
332 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
333
334         * print-utils.c (int_string): Remove unnecessary trailing spaces.
335
336 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
337
338         * rs6000-tdep.c (skip_prologue): Fix potential negative left
339         shifting.
340
341 2018-11-01  Jerome Guitton  <guitton@adacore.com>
342             Joel Brobecker  <brobecker@adacore.com>
343
344         * defs.h (enum gdb_osabi): Add GDB_OSABI_PIKEOS.
345         * osabi.c (gdb_osabi_names): Add name for GDB_OSABI_PIKEOS.
346         * arm-pikeos-tdep.c: New file.
347         * configure.tgt: Add arm-pikeos-tdep.o to the case of ARM
348         embedded system.
349         * Makefile.in (ALL_TARGET_OBS): Add arm-pikeos-tdep.o.
350
351 2018-11-01  Simon Marchi  <simon.marchi@ericsson.com>
352
353         * common/pathstuff.c (get_standard_temp_dir): New.
354         * common/pathstuff.h (get_standard_temp_dir): New.
355         * config.in: Re-generate.
356         * configure: Re-generate.
357         * configure.ac: Don't check for mkdtemp.
358         * gnulib/aclocal-m4-deps.mk: Re-generate.
359         * gnulib/aclocal.m4: Re-generate.
360         * gnulib/config.in: Re-generate.
361         * gnulib/configure: Re-generate.
362         * gnulib/import/Makefile.am: Re-generate.
363         * gnulib/import/Makefile.in: Re-generate.
364         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
365         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
366         * gnulib/import/m4/mkdtemp.m4: New file.
367         * gnulib/import/mkdtemp.c: New file.
368         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES):
369         Add mkdtemp module.
370         * unittests/mkdir-recursive-selftests.c (test): Use
371         get_standard_temp_dir.
372         (_initialize_mkdir_recursive_selftests): Remove HAVE_MKDTEMP
373         ifdef.
374         * compile/compile.c (get_compile_file_tempdir): Likewise.
375
376 2018-11-01  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
377
378         * rs6000-aix-tdep.c: Include "trad-frame.h" and "frame-unwind.h".
379         (SIG_FRAME_LR_OFFSET64): New define.
380         (SIG_FRAME_FP_OFFSET64): New define.
381         (aix_sighandle_frame_cache): New Function.
382         (aix_sighandle_frame_this_id): New Function.
383         (aix_sighandle_frame_prev_register): New Function.
384         (aix_sighandle_frame_sniffer): New Function.
385         (aix_sighandle_frame_unwind): New global variable.
386         (rs6000_aix_init_osabi): Install new frame unwinder.
387
388 2018-10-31  Sergio Durigan Junior  <sergiodj@redhat.com>
389
390         PR gdb/23835
391         * common/common-defs.h: Don't redefine _FORTIFY_SOURCE if it's
392         already defined.
393
394 2018-10-31  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
395
396         * ppc-linux-nat.c: Include nat/linux-ptrace.h.
397
398 2018-10-31  Andrew Burgess  <andrew.burgess@embecosm.com>
399
400         * dwarf2read.c (struct dwarf2_cu): Add producer_is_icc field.
401         (producer_is_icc): New function.
402         (check_producer): Set producer_is_icc field on dwarf2_cu.
403         (dwarf2_init_integer_type): New function.
404         (read_base_type): Call dwarf2_init_integer_type instead of
405         init_integer_type in all cases.
406         (dwarf2_cu::dwarf2_cu): Initialise producer_is_icc field.
407         * valprint.c (maybe_negate_by_bytes): Add an assertion that the
408         LEN is greater than 0.
409
410 2018-10-30  Tom Tromey  <tom@tromey.com>
411
412         * main.c (captured_main_1): Check return value of bfd_init.
413
414 2018-10-29  Sergio Durigan Junior  <sergiodj@redhat.com>
415
416         * common/offset-type.h (DEFINE_OFFSET_REL_OP): Delete.
417         Adjust comments.
418
419 2018-10-29  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
420
421         * procfs.c: Include common/pathstuff.h.
422
423 2018-10-28  Andrew Burgess  <andrew.burgess@embecosm.com>
424
425         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
426         Add missing braces.  No functional change.
427
428 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
429
430         * macrocmd.c (info_macro_command): Use report_unrecognized_option_error
431         to report a bad option and fix indentation.
432         * demangle.c (demangle_command): Use report_unrecognized_option_error
433         to report a bad option and correctly report the bad option.
434
435 2018-10-27  Tom Tromey  <tom@tromey.com>
436
437         PR cli/23364:
438         * darwin-nat.c (copied_shell): New global.
439         (may_have_sip): Rename from should_disable_startup_with_shell.
440         (copy_shell_to_cache, maybe_cache_shell): New functions.
441         (darwin_nat_target::create_inferior): Update.  Use
442         copied_shell.
443
444 2018-10-27  Tom Tromey  <tom@tromey.com>
445
446         * unittests/scoped_fd-selftests.c (test_to_file): New function.
447         (run_tests): Call test_to_file.
448         * dwarf-index-write.c (write_psymtabs_to_index): Do not reopen
449         temporary files.
450         * common/scoped_fd.h (scoped_fd::to_file): New method.
451
452 2018-10-27  Tom Tromey  <tom@tromey.com>
453
454         * unittests/scoped_mmap-selftests.c (test_normal): Use
455         gdb_mkostemp_cloexec.
456         * unittests/scoped_fd-selftests.c (test_destroy, test_release):
457         Use gdb_mkostemp_cloexec.
458         * gnulib/aclocal-m4-deps.mk, gnulib/aclocal.m4,
459         gnulib/config.in, gnulib/configure,
460         gnulib/import/Makefile.am, gnulib/import/Makefile.in,
461         gnulib/import/m4/gnulib-cache.m4,
462         gnulib/import/m4/gnulib-comp.m4: Update.
463         * gnulib/import/m4/mkostemp.m4: New file.
464         * gnulib/import/m4/mkstemp.m4: Remove.
465         * gnulib/import/mkostemp.c: New file.
466         * gnulib/import/mkstemp.m4: Remove.
467         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Remove
468         mkstemp, add mkostemp.  Apply new patch.
469         * gnulib/import/stdlib.in.h: Apply patch.
470         * gnulib/patches/0002-mkostemp-mkostemps-Fix-compilation-error-in-C-mode-o.patch:
471         New file.
472         * dwarf-index-write.c (write_psymtabs_to_index): Use
473         gdb_mkostemp_cloexec.
474         * common/filestuff.h (gdb_mkostemp_cloexec): New function.
475
476 2018-10-27  Tom Tromey  <tom@tromey.com>
477
478         * unittests/mkdir-recursive-selftests.c: New file.
479         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
480         unittests/mkdir-recursive-selftests.c.
481         * dwarf-index-cache.c (mkdir_recursive): Move to
482         common/filestuff.c.
483         (index_cache::store): Check return value of mkdir_recursive.
484         (create_dir_and_check, test_mkdir_recursive): Move to new file.
485         (_initialize_index_cache): Don't register test.
486         * common/filestuff.h (mkdir_recursive): Declare.
487         * common/filestuff.c (mkdir_recursive): Move from
488         dwarf-index-cache.c.  Return bool.
489
490 2018-10-27  Tom Tromey  <tom@tromey.com>
491
492         * dwarf-index-write.c (write_psymtabs_to_index): Move
493         make_temp_filename to common/pathstuff.c.
494         * common/pathstuff.h (make_temp_filename): Declare.
495         * common/pathstuff.c (make_temp_filename): New function, moved
496         from dwarf-index-write.c.
497
498 2018-10-27  Tom Tromey  <tom@tromey.com>
499
500         * procfs.c (procfs_target::create_inferior): Use get_shell.
501         * cli/cli-cmds.c (shell_escape): Use get_shell.
502         * windows-nat.c (windows_nat_target::create_inferior): Use
503         get_shell.
504         * common/pathstuff.c (get_shell): New function.
505         * nat/fork-inferior.c (SHELL_FILE, get_startup_shell): Remove.
506         (fork_inferior): Use get_shell.
507         * common/pathstuff.h (get_shell): Declare.
508
509 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
510
511         * NEWS: Mention changes to 'info [args|functions|locals|variables]'
512
513 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
514
515         * stack.c (print_variable_and_value_data): Add preg and treg.
516         (print_frame_local_vars): Add quiet, regexp and t_regexp arguments,
517         and update callers.
518         (print_frame_arg_vars): Likewise.
519         (prepare_reg): New function.
520         (info_locals_command): Extract info print args and use them.
521         (info_args_command): Likewise.
522         (_initialize_stack): Modify on-line help.
523         * symtab.c (treg_matches_sym_type_name): New function.
524         (search_symbols): New arg t_regexp.
525         (symtab_symbol_info): New args quiet, regexp, t_regexp.
526         (info_variables_command): Extract info print args and use them.
527         (info_functions_command): Likewise.
528         (info_types_command): Update call to symtab_symbol_info.
529         (_initialize_symtab): Modify on-line help.
530         * symtab.h (treg_matches_sym_type_name): New function.
531         (search_symbols): New t_regexp arg.
532
533 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
534
535         * cli-utils.c (extract_arg_maybe_quoted): New function.
536         (extract_info_print_args): New function.
537         (info_print_args_help): New function.
538         (report_unrecognized_option_error): New function.
539         * cli-utils.h (extract_arg_maybe_quoted): New function.
540         (extract_info_print_args): New function.
541         (info_print_args_help): New function.
542         (report_unrecognized_option_error): New function.
543
544 2018-10-26  Tom Tromey  <tom@tromey.com>
545
546         * dwarf2read.c (recursively_compute_inclusions): Use std::vector.
547         (compute_compunit_symtab_includes): Update.
548         * symtab.h: (symtab_ptr): Remove typedef.  Don't define a VEC.
549         (compunit_symtab_ptr): Likewise.
550
551 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
552
553         * fbsd-tdep.c (fbsd_print_auxv_entry): Only use
554         default_print_auxv_entry for specific tag values.
555
556 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
557
558         * fbsd-tdep.c (fbsd_print_auxv_entry): Handle AT_FREEBSD_HWCAP2.
559
560 2018-10-26  Jim Wilson  <jimw@sifive.com>
561
562         * riscv-linux-tdep.c: Include tramp-frame.h and trad-frame.h.
563         (riscv_linux_sigframe_init): Declare.
564         (RISCV_INST_LI_A7_SIGRETURN, RISCV_INT_ECALL): New.
565         (riscv_linux_sigframe): New.
566         (SIGFRAME_SIGINFO_SIZE, UCONTEXT_MCONTEXT_OFFSET): New.
567         (riscv_linux_sigframe_init): Define.
568         (riscv_linux_init_abi): Call tramp_frame_prepend_unwinder.
569
570         * riscv-tdep.c (riscv_isa_xlen): Refer to riscv-tdep.h comment.
571         (riscv_isa_flen): Likewise.  Drop static.
572         * riscv-tdep.h (riscv_isa_xlen): Move riscv-tdep.c comment to here.
573         (riscv_isa_flen): Likewise.  Declare.
574
575 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
576             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
577
578         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_htm_vsx32l)
579         (tdesc_powerpc_isa207_htm_vsx64l): Declare.
580         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TM_SPRREGSET)
581         (PPC32_LINUX_SIZEOF_CGPRREGSET, PPC64_LINUX_SIZEOF_CGPRREGSET)
582         (PPC_LINUX_SIZEOF_CFPRREGSET, PPC_LINUX_SIZEOF_CVMXREGSET)
583         (PPC_LINUX_SIZEOF_CVSXREGSET, PPC_LINUX_SIZEOF_CPPRREGSET)
584         (PPC_LINUX_SIZEOF_CDSCRREGSET, PPC_LINUX_SIZEOF_CTARREGSET):
585         Define.
586         (struct ppc_linux_features) <htm>: New field.
587         (ppc_linux_no_features): Add initializer for htm field.
588         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
589         new tdescs.
590         * nat/ppc-linux.h (PPC_FEATURE2_HTM, NT_PPC_TM_CGPR)
591         (NT_PPC_TM_CFPR, NT_PPC_TM_CVMX, NT_PPC_TM_CVSX)
592         (NT_PPC_TM_SPR, NT_PPC_TM_CTAR, NT_PPC_TM_CPPR, NT_PPC_TM_CDSCR):
593         Define if not already defined.
594         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-htm-vsx32l
595         and rs6000/powerpc-isa207-htm-vsx64l.
596         (XMLTOC): Add rs6000/powerpc-isa207-htm-vsx32l.xml and
597         rs6000/powerpc-isa207-htm-vsx64l.xml.
598         * features/rs6000/power-htm-spr.xml: New file.
599         * features/rs6000/power-htm-core.xml: New file.
600         * features/rs6000/power64-htm-core.xml: New file.
601         * features/rs6000/power-htm-fpu.xml: New file.
602         * features/rs6000/power-htm-altivec.xml: New file.
603         * features/rs6000/power-htm-vsx.xml: New file.
604         * features/rs6000/power-htm-ppr.xml: New file.
605         * features/rs6000/power-htm-dscr.xml: New file.
606         * features/rs6000/power-htm-tar.xml: New file.
607         * features/rs6000/powerpc-isa207-htm-vsx32l.xml: New file.
608         * features/rs6000/powerpc-isa207-htm-vsx64l.xml: New file.
609         * features/rs6000/powerpc-isa207-htm-vsx32l.c: Generate.
610         * features/rs6000/powerpc-isa207-htm-vsx64l.c: Generate.
611         * regformats/rs6000/powerpc-isa207-htm-vsx32l.dat: Generate.
612         * regformats/rs6000/powerpc-isa207-htm-vsx64l.dat: Generate.
613         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
614         fetch_regset with HTM regsets.
615         (store_register, store_ppc_registers): Call store_regset with HTM
616         regsets.
617         (ppc_linux_nat_target::read_description): Set htm field in the
618         features struct if needed.
619         * ppc-linux-tdep.c: Include
620         features/rs6000/powerpc-isa207-htm-vsx32l.c and
621         features/rs6000/powerpc-isa207-htm-vsx64l.c.
622         (ppc32_regmap_tm_spr, ppc32_regmap_cgpr, ppc64_le_regmap_cgpr)
623         (ppc64_be_regmap_cgpr, ppc32_regmap_cfpr, ppc32_le_regmap_cvmx)
624         (ppc32_be_regmap_cvmx, ppc32_regmap_cvsx, ppc32_regmap_cppr)
625         (ppc32_regmap_cdscr, ppc32_regmap_ctar): New globals.
626         (ppc32_linux_tm_sprregset, ppc32_linux_cgprregset)
627         (ppc64_be_linux_cgprregset, ppc64_le_linux_cgprregset)
628         (ppc32_linux_cfprregset, ppc32_le_linux_cvmxregset)
629         (ppc32_be_linux_cvmxregset, ppc32_linux_cvsxregset)
630         (ppc32_linux_cpprregset, ppc32_linux_cdscrregset)
631         (ppc32_linux_ctarregset): New globals.
632         (ppc_linux_cgprregset, ppc_linux_cvmxregset): New functions.
633         (ppc_linux_collect_core_cpgrregset): New function.
634         (ppc_linux_iterate_over_regset_sections): Call back with the htm
635         regsets.
636         (ppc_linux_core_read_description): Check if the tm spr section is
637         present and set htm in the features struct.
638         (_initialize_ppc_linux_tdep): Call
639         initialize_tdesc_powerpc_isa207_htm_vsx32l and
640         initialize_tdesc_powerpc_isa207_htm_vsx64l.
641         * ppc-linux-tdep.h (ppc_linux_cgprregset, ppc_linux_cvmxregset):
642         Declare.
643         (ppc32_linux_tm_sprregset, ppc32_linux_cfprregset)
644         (ppc32_linux_cvsxregset, ppc32_linux_cpprregset)
645         (ppc32_linux_cdscrregset, ppc32_linux_ctarregset): Declare.
646         * ppc-tdep.h (struct gdbarch_tdep) <have_htm_spr, have_htm_core>:
647         New fields.
648         <have_htm_fpu, have_htm_altivec, have_htm_vsx>:
649         Likewise.
650         <ppc_cppr_regnum, ppc_cdscr_regnum, ppc_ctar_regnum>: Likewise.
651         <ppc_cdl0_regnum, ppc_cvsr0_regnum, ppc_cefpr0_regnum>: Likewise.
652         (enum) <PPC_TFHAR_REGNUM, PPC_TEXASR_REGNUM, PPC_TFIAR_REGNUM>:
653         New enum fields.
654         <PPC_CR0_REGNUM, PPC_CCR_REGNUM, PPC_CXER_REGNUM>: Likewise.
655         <PPC_CLR_REGNUM, PPC_CCTR_REGNUM, PPC_CF0_REGNUM>: Likewise.
656         <PPC_CFPSCR_REGNUM, PPC_CVR0_REGNUM, PPC_CVSCR_REGNUM>: Likewise.
657         <PPC_CVRSAVE_REGNUM, PPC_CVSR0_UPPER_REGNUM>: Likewise.
658         <PPC_CPPR_REGNUM, PPC_CDSCR_REGNUM>: Likewise.
659         <PPC_CTAR_REGNUM>: Likewise.
660         (PPC_IS_TMSPR_REGNUM, PPC_IS_CKPTGP_REGNUM, PPC_IS_CKPTFP_REGNUM)
661         (PPC_IS_CKPTVMX_REGNUM, PPC_IS_CKPTVSX_REGNUM): Define.
662         * rs6000-tdep.c (IS_CDFP_PSEUDOREG, IS_CVSX_PSEUDOREG)
663         (IS_CEFP_PSEUDOREG): Define.
664         (rs6000_register_name): Hide the upper halves of checkpointed VSX
665         registers.  Return names for the checkpointed DFP, VSX, and EFP
666         pseudo registers.
667         (rs6000_pseudo_register_type): Remove initial assert and raise an
668         internal error in the else clause instead.  Return types for the
669         checkpointed DFP, VSX, and EFP pseudo registers.
670         (dfp_pseudo_register_read, dfp_pseudo_register_write): Handle
671         checkpointed DFP pseudo registers.
672         (vsx_pseudo_register_read, vsx_pseudo_register_write): Handle
673         checkpointed VSX pseudo registers.
674         (efp_pseudo_register_read, efp_pseudo_register_write): Rename
675         from efpr_pseudo_register_read and
676         efpr_pseudo_register_write.  Handle checkpointed EFP pseudo
677         registers.
678         (rs6000_pseudo_register_read, rs6000_pseudo_register_write):
679         Handle checkpointed DFP, VSX, and EFP registers.
680         (dfp_ax_pseudo_register_collect, vsx_ax_pseudo_register_collect)
681         (efp_ax_pseudo_register_collect): New functions.
682         (rs6000_ax_pseudo_register_collect): Move DFP, VSX and EFP pseudo
683         register logic to new functions.  Handle checkpointed DFP, VSX,
684         and EFP pseudo registers.
685         (rs6000_gdbarch_init): Look for and validate the htm features.
686         Include checkpointed DFP, VSX and EFP pseudo-registers.
687         * NEWS: Mention access to PPR, DSCR, TAR, EBB/PMU registers and
688         HTM registers.
689
690 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
691
692         * rs6000-tdep.c (rs6000_gdbarch_init): Reject tdescs with vsx but
693         without altivec or fpu.
694
695 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
696             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
697
698         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_EBBREGSET)
699         (PPC_LINUX_SIZEOF_PMUREGSET): Declare.
700         * nat/ppc-linux.h (PPC_FEATURE2_EBB, NT_PPC_EBB, NT_PPC_PMU):
701         Define if not already defined.
702         * features/rs6000/power-ebb.xml: New file.
703         * features/rs6000/power-linux-pmu.xml: New file.
704         * features/rs6000/powerpc-isa207-vsx32l.xml: Include ebb and pmu
705         features.
706         * features/rs6000/powerpc-isa207-vsx64l.xml: Likewise.
707         * features/rs6000/powerpc-isa207-vsx32l.c: Re-generate.
708         * features/rs6000/powerpc-isa207-vsx64l.c: Re-generate.
709         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Re-generate.
710         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Re-generate.
711         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
712         fetch_regset with ebb and pmu regsets.
713         (store_register, store_ppc_registers): Call store_regset with ebb
714         and pmu regsets.
715         (ppc_linux_nat_target::read_description): Set isa207 field in the
716         features struct if ebb and pmu are avaiable.
717         * ppc-linux-tdep.c (ppc32_regmap_ebb, ppc32_regmap_pmu)
718         (ppc32_linux_ebbregset, ppc32_linux_pmuregset): New globals.
719         (ppc_linux_iterate_over_regset_sections): Call back with the ebb
720         and pmu regsets.
721         (ppc_linux_core_read_description): Check if the pmu section is
722         present and set isa207 in the features struct.
723         * ppc-linux-tdep.h (ppc32_linux_ebbregset)
724         (ppc32_linux_pmuregset): Declare.
725         * ppc-tdep.h (struct gdbarch_tdep) <ppc_mmcr0_regnum>: New field.
726         <ppc_mmcr2_regnum, ppc_siar_regnum, ppc_sdar_regnum>: New fields.
727         <ppc_sier_regnum>: New field.
728         (enum): <PPC_BESCR_REGNUM, PPC_EBBHR_REGNUM, PPC_EBBRR_REGNUM>:
729         New enum values.
730         <PPC_MMCR0_REGNUM, PPC_MMCR2_REGNUM, PPC_SIAR_REGNUM>: New enum
731         values.
732         <PPC_SDAR_REGNUM, PPC_SIER_REGNUM>: New enum values.
733         (PPC_IS_EBB_REGNUM, PPC_IS_PMU_REGNUM): Define.
734         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate the
735         ebb and pmu features.
736
737 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
738             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
739
740         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_vsx32l)
741         (tdesc_powerpc_isa207_vsx64l): Declare.
742         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TARREGSET): Define.
743         (struct ppc_linux_features) <isa207>: New field.
744         (ppc_linux_no_features): Add initializer for isa207 field.
745         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
746         new tdescs.
747         * nat/ppc-linux.h (PPC_FEATURE2_ARCH_2_07, PPC_FEATURE2_TAR)
748         (NT_PPC_TAR): Define if not already defined.
749         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-vsx32l and
750         rs6000/powerpc-isa207-vsx64l.
751         (XMLTOC): Add rs6000/powerpc-isa207-vsx32l.xml and
752         rs6000/powerpc-isa207-vsx64l.xml.
753         * features/rs6000/power-tar.xml: New file.
754         * features/rs6000/powerpc-isa207-vsx32l.xml: New file.
755         * features/rs6000/powerpc-isa207-vsx64l.xml: New file.
756         * features/rs6000/powerpc-isa207-vsx32l.c: Generate.
757         * features/rs6000/powerpc-isa207-vsx64l.c: Generate.
758         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Generate.
759         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Generate.
760         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
761         fetch_regset with the TAR regset.
762         (store_register, store_ppc_registers): Call store_regset with the
763         TAR regset.
764         (ppc_linux_nat_target::read_description): Set isa207 field in the
765         features struct if needed.
766         * ppc-linux-tdep.c: Include
767         features/rs6000/powerpc-isa207-vsx32l.c and
768         features/rs6000/powerpc-isa207-vsx64l.c.
769         (ppc32_regmap_tar, ppc32_linux_tarregset): New globals.
770         (ppc_linux_iterate_over_regset_sections): Call back with the tar
771         regset.
772         (ppc_linux_core_read_description): Check if the tar section is
773         present and set isa207 in the features struct.
774         (_initialize_ppc_linux_tdep): Call
775         initialize_tdesc_powerpc_isa207_vsx32l and
776         initialize_tdesc_powerpc_isa207_vsx64l.
777         * ppc-linux-tdep.h (ppc32_linux_tarregset): Declare.
778         * ppc-tdep.h (gdbarch_tdep) <ppc_tar_regnum>: New field.
779         (enum) <PPC_TAR_REGNUM>: New enum value.
780         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate tar
781         feature.
782         (ppc_process_record_op31): Record changes to TAR.
783
784 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
785             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
786
787         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa205_ppr_dscr_vsx32l)
788         (tdesc_powerpc_isa205_ppr_dscr_vsx64l): Declare.
789         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_PPRREGSET)
790         (PPC_LINUX_SIZEOF_DSCRREGSET): Define.
791         (struct ppc_linux_features) <ppr_dscr>: New field.
792         (ppc_linux_no_features): Add initializer for ppr_dscr field.
793         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
794         new tdescs.
795         * nat/ppc-linux.h (PPC_FEATURE2_DSCR, NT_PPC_PPR, NT_PPC_DSCR):
796         Define if not already defined.
797         * features/Makefile (WHICH): Add
798         rs6000/powerpc-isa205-ppr-dscr-vsx32l and
799         rs6000/powerpc-isa205-ppr-dscr-vsx64l.
800         (XMLTOC): Add rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml and
801         rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml.
802         * features/rs6000/power-dscr.xml: New file.
803         * features/rs6000/power-ppr.xml: New file.
804         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml: New file.
805         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml: New file.
806         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c: Generate.
807         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c: Generate.
808         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx32l.dat: Generate.
809         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx64l.dat: Generate.
810         * ppc-linux-nat.c: Include <sys/uio.h>.
811         (fetch_regset, store_regset, check_regset): New functions.
812         (fetch_register, fetch_ppc_registers): Call fetch_regset with
813         DSCR and PPR regsets.
814         (store_register, store_ppc_registers): Call store_regset with
815         DSCR and PPR regsets.
816         (ppc_linux_get_hwcap2): New function.
817         (ppc_linux_nat_target::read_description): Call
818         ppc_linux_get_hwcap2 and check_regset, set ppr_dscr field in the
819         features struct if needed.
820         * ppc-linux-tdep.c: Include
821         features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c and
822         features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c.
823         (ppc32_regmap_ppr, ppc32_regmap_dscr, ppc32_linux_pprregset)
824         (ppc32_linux_dscrregset): New globals.
825         (ppc_linux_iterate_over_regset_sections): Call back with the ppr
826         and dscr regsets.
827         (ppc_linux_core_read_description): Check if the ppr and dscr
828         sections are present and set ppr_dscr in the features struct.
829         (_initialize_ppc_linux_tdep): Call
830         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx32l and
831         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx64l.
832         * ppc-linux-tdep.h (ppc32_linux_pprregset)
833         (ppc32_linux_dscrregset): Declare.
834         * ppc-tdep.h (struct gdbarch_tdep) <ppc_ppr_regnum>: New field.
835         <ppc_dscr_regnum>: New field.
836         (enum) <PPC_PPR_REGNUM, PPC_DSCR_REGNUM>: New enum values.
837         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate ppr
838         and dscr features.
839         (ppc_process_record_op31): Record changes to PPR and DSCR.
840
841 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
842
843         * rs6000-tdep.c (rs6000_gdbarch_init): Replace line wrapping by a
844         second initializer line for the have_* variables.  Initialize
845         have_fpu to 0 instead of 1.
846
847 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
848
849         * arch/ppc-linux-common.c (ppc_linux_match_description):
850         Parenthesize tdesc assignements and indent them properly.
851
852 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
853
854         * ppc-linux-nat.c (fetch_register): Change if statement to else
855         if.
856         (store_register): Likewise.
857
858 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
859
860         * rs6000-tdep.c: Remove reggroups.h include.
861         (rs6000_pseudo_register_reggroup_p): Remove.
862         (rs6000_gdbarch_init): Remove call to
863         set_tdesc_pseudo_register_reggroup_p.
864
865 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
866
867         * reggroups.c (default_register_reggroup_p): Return true for
868         decfloat registers and float_reggroup.
869
870 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
871
872         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): Remove.
873         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): Replace
874         ppc_linux_collect_vrregset by regcache_collect_regset.
875
876 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
877
878         * linux-tdep.c (linux_collect_regset_section_cb): Use
879         std::vector<gdb_byte> instead of char * and malloc for buf.
880         Remove xfree.
881
882 2018-10-26  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
883
884         * xcoffread.c (read_xcoff_symtab): Pass deduced language to
885         symtab_start instead of always using language_unknown.
886
887 2018-10-26  Andrew Burgess  <andrew.burgess@embecosm.com>
888
889         * riscv-tdep.c (riscv_read_misa_reg): Update comment, remove
890         READ_P parameter, catch and ignore register access errors from
891         either the old or new MISA location.
892         (riscv_has_feature): Update call to riscv_read_misa_reg.
893
894 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
895
896         * python/py-function.c (convert_values_to_python): Return
897         gdbpy_ref<>.  Add header comment.
898         (fnpy_call): Adjust.
899
900 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
901
902         * python/py-cmd.c (cmdpy_completer_helper): Return gdbpy_ref<>.
903         (cmdpy_completer_handle_brkchars): Adjust.
904         (cmdpy_completer): Adjust.
905
906 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
907
908         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
909         Pass correct regnum to raw_supply_zeroed.
910
911 2018-10-23  Hafiz Abid Qadeer  <abidh@codesourcery.com>
912
913         * regcache.c (cooked_read_test): Add CSKY to the list of
914         architectures with a save_reggroup
915
916 2018-10-23  Simon Marchi  <simon.marchi@polymtl.ca>
917
918         PR gdb/23368
919         * infrun.c (follow_exec): In the follow_exec_mode_new case,
920         transfer terminal state from old new new inferior.
921         * terminal.h (swap_terminal_info): New function.
922         * inflow.c (swap_terminal_info): New function.
923
924 2018-10-23  Tom Tromey  <tom@tromey.com>
925
926         * record-btrace.c (get_thread_current_frame_id): Rename from
927         get_thread_current_frame.  Return a frame_id.
928         (record_btrace_start_replaying): Update.
929
930 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
931
932         * riscv-tdep.c (riscv_register_name): Use the user-friendly names
933         for CSRs.
934
935 2018-10-23  Joel Brobecker  <brobecker@adacore.com>
936
937         * riscv-tdep.c (riscv_gdbarch_init): Set the gdbarch's
938         have_nonsteppable_watchpoint attribute to 1.
939
940 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
941
942         * riscv-tdep.c (riscv_gdb_reg_names): Update comment, and all
943         register names.
944         (struct register_alias): Rename to...
945         (struct riscv_register_alias): ...this, and update comment.
946         (riscv_register_aliases): Update type, and alias names.  Remove
947         CSR names from this list.
948         (riscv_register_name): Use riscv_gdb_reg_names for int and float
949         register names.  Add an extra assertion.
950         (riscv_is_regnum_a_named_csr): New function.
951         (riscv_register_reggroup_p): Use riscv_is_regnum_a_named_csr.
952
953 2018-10-22  Jim Wilson  <jimw@sifive.com>
954
955         * riscv-tdep.c (riscv_push_dummy_call) <in_reg>: Check for value in
956         FP reg smaller than FP reg size, and fill with -1 instead of 0.
957
958         * riscv-tdep.c (riscv_fpreg_d_type, riscv_fpreg_q_type): New.
959         (riscv_register_type): Use them.
960         (riscv_print_one_register_info): Handle union of floats same as float.
961         * riscv-tdep.h (struct gdbarch_tdep): Add riscv_fpreg_d_type and
962         riscv_fpreg_q_type fields.
963
964 2018-10-21  Simon Marchi  <simon.marchi@ericsson.com>
965
966         * gdbarch.sh (gdbarch_num_cooked_regs): New.
967         * gdbarch.h: Re-generate.
968         * ax-gdb.c (gen_expr): Use gdbarch_num_cooked_regs.
969         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
970         * eval.c (evaluate_subexp_standard): Likewise.
971         * findvar.c (value_of_register): Likewise.
972         (value_of_register_lazy): Likewise.
973         (address_from_register): Likewise.
974         * frame.c (get_frame_register_bytes): Likewise.
975         * gdbarch-selftests.c (register_to_value_test): Likewise.
976         * h8300-tdep.c (h8300_register_type): Likewise.
977         * i386-tdep.c (i386_dbx_reg_to_regnum): Likewise.
978         (i386_svr4_reg_to_regnum): Likewise.
979         * infcmd.c (default_print_registers_info): Likewise.
980         (registers_info): Likewise.
981         (print_vector_info): Likewise.
982         (default_print_float_info): Likewise.
983         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
984         * mdebugread.c (mdebug_reg_to_regnum): Likewise.
985         * mi/mi-main.c (mi_cmd_data_list_register_names): Likewise.
986         (mi_cmd_data_list_changed_registers): Likewise.
987         (mi_cmd_data_list_register_values): Likewise.
988         (mi_cmd_data_write_register_values): Likewise.
989         (mi_cmd_trace_frame_collected): Likewise.
990         * mips-tdep.c (print_gp_register_row): Likewise.
991         (mips_print_registers_info): Likewise.
992         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
993         * regcache.c (init_regcache_descr): Likewise.
994         (register_size): Likewise.
995         (register_dump::dump): Likewise.
996         (cooked_read_test): Likewise.
997         (cooked_write_test): Likewise.
998         * rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
999         (rs6000_gdbarch_init): Likewise.
1000         * stabsread.c (stab_reg_to_regnum): Likewise.
1001         * stack.c (info_frame_command): Likewise.
1002         * target-descriptions.c (tdesc_register_name): Likewise.
1003         * trad-frame.c (trad_frame_alloc_saved_regs): Likewise.
1004         * tui/tui-regs.c (tui_show_register_group): Likewise.
1005         * user-regs.c (user_reg_map_name_to_regnum): Likewise.
1006         (user_reg_map_regnum_to_name): Likewise.
1007         (value_of_user_reg): Likewise.
1008         (maintenance_print_user_registers): Likewise.
1009         * xtensa-tdep.c (xtensa_find_register_by_name): Likewise.
1010         (xtensa_register_name): Likewise.
1011         (xtensa_register_type): Likewise.
1012         (xtensa_reg_to_regnum): Likewise.
1013         (xtensa_pseudo_register_read): Likewise.
1014         (xtensa_pseudo_register_write): Likewise.
1015
1016 2018-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
1017
1018         * amd64-tdep.c (amd64_pseudo_register_read_value): Use
1019         correctly-sized buffer with raw_read.
1020         (amd64_pseudo_register_write): Use correctly-sized buffer for
1021         raw_read/raw_write.
1022
1023 2018-10-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1024
1025         * typeprint.c (_initialize_typeprint): Fix wrong prefixname arg
1026         in add_prefix_cmd of set print type.
1027
1028 2018-10-19  Tom Tromey  <tom@tromey.com>
1029
1030         PR tui/18388:
1031         * NEWS: Mention tabset deprecation.
1032         * tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
1033         (update_tab_width): New function.
1034         (tui_set_tab_width, tui_show_tab_width): New functions.
1035         (tui_set_tab_width_command): Use update_tab_width.
1036         (_initialize_tui_win): Move to end of file.  Deprecate "tabset".
1037         Add new "set tui tab-width" command.
1038         * tui/tui-source.c (tui_set_source_content): Update.
1039         * tui/tui-disasm.c (tui_set_disassem_content): Update.
1040         * tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
1041         Don't declare.
1042         (tui_tab_width): Declare.
1043         * tui/tui-data.c (default_tab_len, tui_default_tab_len)
1044         (tui_set_default_tab_len): Remove.
1045
1046 2018-10-19  Tom Tromey  <tom@tromey.com>
1047
1048         * tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
1049         (key_is_backspace, tui_getc): Don't declare.
1050         * tui/tui-io.c (key_is_start_sequence): Now static.
1051         (key_is_end_sequence, key_is_backspace): Remove.
1052         (tui_getc): Now static.
1053
1054 2018-10-19  Tom Tromey  <tom@tromey.com>
1055
1056         * symfile.c (reread_symbols): Clear "static_links".
1057
1058 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
1059
1060         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
1061         define.
1062         (aarch64_linux_sigframe_init): Extra boundary checks.
1063
1064 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
1065
1066         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
1067         the possibly non-existent tdesc type 'vec128', but the type of raw
1068         register v16 instead.
1069
1070 2018-10-19  Gary Benson <gbenson@redhat.com>
1071
1072         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
1073
1074 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
1075
1076         PR cli/23785
1077         * cli/cli-dump.c (restore_binary_file): Check if "file" is
1078         NULL.
1079
1080 2018-10-17  Paul Koning  <paul_koning@dell.com>
1081
1082         * charset.c (convert_between_encodings): Fix unsigned overflow.
1083
1084 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
1085
1086         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
1087         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
1088         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
1089         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
1090         New functions.
1091         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
1092         and fbsd_info_proc_mappings_header.
1093         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
1094         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
1095         New.
1096
1097 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
1098
1099         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
1100         Solaris Maintainer.
1101
1102 2018-10-15  Tom Tromey  <tom@tromey.com>
1103
1104         * tui/tui.c (strcat_to_buf): Remove casts.
1105         * tui/tui-winsource.c (tui_show_source_line)
1106         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
1107         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
1108         * tui/tui-windata.c (tui_first_data_item_displayed)
1109         (tui_delete_data_content_windows, tui_erase_data_content)
1110         (tui_display_all_data, tui_display_data_from)
1111         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
1112         * tui/tui-win.c (tui_set_win_height)
1113         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
1114         casts.
1115         * tui/tui-win.c (tui_resize_all): Remove casts.
1116         (tui_scroll_backward_command, tui_set_focus)
1117         (tui_set_tab_width_command): Likewise.
1118         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
1119         * tui/tui-regs.c (tui_show_register_group): Remove cast.
1120         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
1121         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
1122         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
1123         Remove casts.
1124
1125 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
1126
1127         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
1128         AArch64/ARM maintainer.
1129
1130 2018-10-11  Gary Benson <gbenson@redhat.com>
1131
1132         * interps.h (interp::m_name): Make private and mutable.
1133         * interps.c (interp::~interp): Free m_name.
1134
1135 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
1136             Simon Marchi <simark@simark.ca>
1137
1138         * README (`configure' options): Add documentation for new
1139         "--enable-unit-tests" option.
1140         * acinclude.m4: Include "selftest.m4".
1141         * configure: Regenerate.
1142         * configure.ac: Use "GDB_AC_SELFTEST".
1143         * maint.c (maintenance_selftest): Update message informing
1144         that selftests have been disabled.
1145         (maintenance_info_selftests): Likewise.
1146         * selftest.m4: New file.
1147
1148 2018-10-10  Gary Benson <gbenson@redhat.com>
1149
1150         * remote.c (remote_target::remote_send_printf): Add
1151         missing va_end found by Coverity.
1152
1153 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
1154
1155         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
1156
1157 2018-10-09  Tom Tromey  <tom@tromey.com>
1158
1159         * configure: Rebuild.
1160         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
1161         * NEWS: Update --enable-ubsan documentation.
1162
1163 2018-10-09  Gary Benson <gbenson@redhat.com>
1164
1165         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
1166         found by Coverity.
1167
1168 2018-10-08  Tom Tromey  <tom@tromey.com>
1169
1170         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
1171         variable.
1172         (riscv_fbsd_init_abi): Likewise.
1173
1174 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
1175         * valops.c (value_struct_elt_for_reference): Rename local variable
1176         to work around the shadowing a previous local warning.
1177
1178 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
1179
1180         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
1181         * NEWS: Mention new FreeBSD/riscv native configuration.
1182         * configure.host: Add riscv*-*-freebsd*.
1183         * configure.nat: Likewise.
1184         * riscv-fbsd-nat.c: New file.
1185
1186 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
1187
1188         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
1189         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
1190         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
1191         * NEWS: Mention new FreeBSD/riscv target.
1192         * configure.tgt: Add riscv*-*-freebsd*.
1193         * riscv-fbsd-tdep.c: New file.
1194         * riscv-fbsd-tdep.h: New file.
1195
1196 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
1197
1198         * regcache.h (struct regcache_map_entry): Note that this type can
1199         be used with traditional frame caches.
1200         * trad-frame.c (trad_frame_set_reg_regmap): New.
1201         * trad-frame.h (trad_frame_set_reg_regmap): New.
1202
1203 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
1204
1205         PR c++/16841
1206         * valops.c (get_virtual_base_offset): New function.
1207         (value_struct_elt_for_reference): Use it to get virtual base offset
1208         and add it in calculating class member address.
1209
1210 2018-10-08   John Darrington <john@darrington.wattle.id.au>
1211
1212     * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
1213       (check_producer): Check if the producer is codewarrior.
1214       (producer_is_codewarrior): New function.
1215       (lnp_state_machine::record_line): Ignore is_stmt flag for records
1216        produced by codewarrior.
1217       (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
1218
1219 2018-10-06  Tom Tromey  <tom@tromey.com>
1220
1221         PR python/19399:
1222         * python/py-inferior.c: Add "architecture" entry.
1223         (infpy_architecture): New function.
1224
1225 2018-10-06  Tom Tromey  <tom@tromey.com>
1226
1227         PR python/21765:
1228         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
1229         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
1230         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
1231         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
1232
1233 2018-10-06  Tom Tromey  <tom@tromey.com>
1234
1235         PR build/17077:
1236         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
1237         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
1238         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
1239         #include.
1240
1241 2018-10-06  Tom Tromey  <tom@tromey.com>
1242
1243         * python/py-breakpoint.c (bppy_get_location): Handle a
1244         bp_breakpoint without a location.
1245
1246 2018-10-06  Tom Tromey  <tom@tromey.com>
1247
1248         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
1249         (_RegEx): Reformat help text.
1250         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
1251         (AnyCallerIs, AnyCallerMatches): Reformat help text.
1252         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
1253         text.
1254         * python/lib/gdb/command/xmethods.py (InfoXMethod)
1255         (EnableXMethod, DisableXMethod): Remove help indentation.
1256         Capitalize meta-syntactic variables.
1257         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
1258         (EnableUnwinder, DisableUnwinder): Remove help indentation.
1259         Capitalize meta-syntactic variables.
1260         * python/lib/gdb/command/explore.py (ExploreCommand)
1261         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
1262         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
1263         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
1264         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
1265         Remove help indentation.
1266         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
1267         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
1268         (DisableFrameFilter, SetFrameFilterPriority)
1269         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
1270
1271 2018-10-06  Tom Tromey  <tom@tromey.com>
1272
1273         PR tui/28819:
1274         * tui/tui-io.c (gdb_wgetch): New function.
1275         (tui_mld_getc, tui_getc): Use it.
1276
1277 2018-10-05  Tom Tromey  <tom@tromey.com>
1278
1279         * sol-thread.c (sol_thread_target::wait): Rename inner
1280         "save_ptid".
1281
1282 2018-10-04  Tom Tromey  <tom@tromey.com>
1283
1284         * configure: Rebuild.
1285         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
1286
1287 2018-10-04  Tom Tromey  <tom@tromey.com>
1288
1289         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
1290         declaration of "block".
1291
1292 2018-10-04  Tom Tromey  <tom@tromey.com>
1293
1294         * common/filestuff.c (fdwalk): Remove inner declaration of
1295         "result".
1296
1297 2018-10-04  Tom Tromey  <tom@tromey.com>
1298
1299         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
1300         "structs_addr" and hoist declaration.
1301
1302 2018-10-04  Tom Tromey  <tom@tromey.com>
1303
1304         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
1305         variable "size".
1306
1307 2018-10-04  Tom Tromey  <tom@tromey.com>
1308
1309         * mdebugread.c (parse_partial_symbols): Use std::string.
1310
1311 2018-10-04  Tom Tromey  <tom@tromey.com>
1312
1313         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
1314         * p-valprint.c (pascal_val_print): Split inner "i" variable.
1315         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
1316         header.
1317         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
1318         more inner scope.
1319         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
1320         * varobj.c (varobj_update): Rename inner "newobj",
1321         "type_changed".
1322         * valprint.c (generic_emit_char): Rename inner "buf".
1323         * valops.c (find_overload_match): Rename inner "temp".
1324         (value_struct_elt_for_reference): Declare "v" in more inner
1325         scope.
1326         * v850-tdep.c (v850_push_dummy_call): Rename "len".
1327         * unittests/array-view-selftests.c (run_tests): Rename inner
1328         "vec".
1329         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
1330         header.
1331         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
1332         "tsv" in more inner scope.
1333         (print_one_static_tracepoint_marker): Rename inner
1334         "tuple_emitter".
1335         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
1336         (tic6x_push_dummy_call): Don't redeclare "addr".
1337         * target-float.c: Declare "dto" lower.
1338         * symtab.c (lookup_local_symbol): Rename inner "sym".
1339         (find_pc_sect_line): Rename inner "pc".
1340         * stack.c (print_frame): Don't redeclare "gdbarch".
1341         (return_command): Rename inner "gdbarch".
1342         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
1343         "sp".
1344         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
1345         header.
1346         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
1347         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
1348         scope.
1349         * remote.c (remote_target::update_thread_list): Don't redeclare
1350         "tp".
1351         (remote_target::process_initial_stop_replies): Rename inner
1352         "thread".
1353         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
1354         (remote_target::wait_as): Don't redeclare "stop_reply".
1355         (remote_target::get_thread_local_address): Rename inner
1356         "result".
1357         (remote_target::get_tib_address): Likewise.
1358
1359         * regcache.c (cooked_read_test): Rename "regnum".
1360         * record-btrace.c (cmd_record_btrace_start): Rename inner
1361         "exception".
1362         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
1363         loop header.
1364         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
1365         header.
1366         (ppu2spu_sniffer): Rename inner "buf".
1367         * parse.c (operator_check_standard): Rename inner "type",
1368         "objfile".
1369         * p-valprint.c (pascal_val_print): Introduce new scope for
1370         "low_bound", "high_bound".
1371         * p-exp.y (yylex): Declare "i" in loop header.
1372         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
1373         Lower declaration of "s".
1374         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
1375         header.
1376         (nios2_push_dummy_call): Rename "len".
1377         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
1378         "buf".
1379         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
1380         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
1381         (linux_xfer_osdata_modules): Likewise.
1382         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
1383         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
1384         (mips_o64_push_dummy_call): Likewise.
1385         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
1386         "op".
1387         * mi/mi-main.c (list_available_thread_groups): Rename inner
1388         "tuple_emitter".
1389         (mi_cmd_data_read_memory): Rename inner "opts".
1390         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
1391         "tuple_emitter".
1392         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
1393         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
1394         more inner scope.
1395         (parse_partial_symbols): Rename inner "pst", "p", "name"
1396         * main.c (captured_main_1): Rename inner "i"s.
1397         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
1398         "oso2".
1399         * linux-tdep.c (linux_info_proc): Rename inner "filename".
1400         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
1401         * infrun.c (handle_no_resumed): Don't redeclare "thread".
1402         (handle_signal_stop): Rename inner "gdbarch".
1403         (handle_command): Declare "signum" in loop header.
1404         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
1405         "status".
1406         (examine_prologue): Rename inner "sol" and "sof".
1407         (ia64_extract_return_value): Rename inner "val".  Declare another
1408         "val" in a more inner scope.
1409         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
1410         inner scope.
1411         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
1412         "except".
1413         * findvar.c (default_read_var_value): Don't redeclare "addr".
1414         * f-exp.y (yylex): Declare "i" in loop header.
1415         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
1416         Rename inner "type", "expect_type".
1417         (evaluate_subexp_for_sizeof): Rename inner "pc".
1418         * elfread.c (elf_symfile_read): Rename inner "abfd".
1419         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
1420         "bytes_read".
1421         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
1422         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
1423         (dwarf_decode_line_header): Rename inner "lh".
1424         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
1425         "offset".  Declare "i" in loop header.
1426         (disassemble_dwarf_expression): Rename inner "addr_size".
1427         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
1428         inner "result".
1429         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
1430         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
1431         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
1432         "inner_list_emitter".
1433         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
1434         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
1435         declaration in a block.
1436         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
1437         * cp-valprint.c (cp_print_value_fields): Don't redeclare
1438         "obstack_final_size".
1439         * cp-support.c (inspect_type): Declare "i" in loop header.
1440         * compile/compile.c (compile_instance::insert_symbol_error):
1441         Rename inner "e".
1442         * common/agent.c (agent_run_command): Remove inner "ret"
1443         declaration.
1444         * coffread.c (coff_symfile_read): Rename inner "name".
1445         (coff_symfile_read): Rename inner "abfd".
1446         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
1447         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
1448         "high".
1449         * c-exp.y (lex_one_token): Move "len" declaration lower.
1450         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
1451         "gdbarch".
1452         (create_exception_master_breakpoint): Likewise.  Don't redeclare
1453         "b".
1454         (watch_command_1): Declare "mark" later.
1455         (clear_command): Don't shadow "a" or "b".
1456         (delete_command): Rename inner "b".
1457         (delete_trace_command): Likewise.
1458         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
1459         "op".
1460         (arm_gdbarch_init): Remove inner "e_flags".
1461         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
1462         "offset" in inner blocks.
1463
1464 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
1465
1466         * dwarf-index-write.c (file_write): Don't write if the vector is
1467         empty.
1468
1469 2018-10-05  Tom de Vries  <tdevries@suse.de>
1470
1471         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
1472         PyArg_ParseTuple call.
1473
1474 2018-10-05  Tom de Vries  <tdevries@suse.de>
1475
1476         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
1477         PyArg_ParseTuple call.
1478
1479 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
1480
1481         * psymtab.c (recursively_search_psymtabs): Reformat parameters
1482         to avoid exceeding 80 characters per line limit.
1483
1484 2018-10-04  Tom Tromey  <tom@tromey.com>
1485
1486         * symfile.c (syms_from_objfile_1, finish_new_objfile)
1487         (reread_symbols): Update.
1488         * complaints.h (clear_complaints): Remove argument.
1489         * complaints.c (enum complaint_series): Remove.
1490         (series): Remove global.
1491         (complaint_internal): Update.
1492         (clear_complaints): Remove argument.
1493
1494 2018-10-04  Tom Tromey  <tom@tromey.com>
1495
1496         * symfile.c (symbol_file_add_with_addrs): Do not print "no
1497         debugging symbols" message if there is a separate debug objfile.
1498
1499 2018-10-04  Tom Tromey  <tom@tromey.com>
1500
1501         PR cli/19551:
1502         * symfile.c (symbol_file_add_with_addrs): Update output.
1503         * psymtab.c (require_partial_symbols): Update output.
1504
1505 2018-10-04  Tom Tromey  <tom@tromey.com>
1506
1507         PR cli/22234:
1508         * complaints.c: Emit \n.
1509
1510 2018-10-04  Tom Tromey  <tom@tromey.com>
1511
1512         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
1513         (separate_debug_file_exists, find_separate_debug_file)
1514         (add_symbol_file_command, reread_symbols, allocate_symtab)
1515         (allocate_compunit_symtab): Use filtered printing, not
1516         unfiltered.
1517         * psymtab.c (require_partial_symbols, dump_psymtab)
1518         (allocate_psymtab): Use filtered printing, not unfiltered.
1519
1520 2018-10-04  Tom Tromey  <tom@tromey.com>
1521
1522         * complaints.c (complaint_internal): Correctly check complaint
1523         count.
1524
1525 2018-10-04  Tom Tromey  <tom@tromey.com>
1526
1527         * complaints.h (struct complaints): Remove declaration.
1528         * complaints.c (clear_complaints): Remove an unused variable.
1529
1530 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1531
1532         * MAINTAINERS (Write After Approval): Add self.
1533
1534 2018-10-03  Tom Tromey  <tom@tromey.com>
1535
1536         * guile/scm-value.c (gdbscm_value_to_string): Initialize
1537         "buffer_contents".
1538         * coffread.c (coff_symtab_read): Initialize "newobj".
1539
1540 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
1541
1542         * dwarf2read.c (read_func_scope): Remove struct keyword in
1543         range-based for.
1544
1545 2018-10-03  Tom Tromey  <tom@tromey.com>
1546
1547         * README: Mention --enable-ubsan.
1548         * NEWS: Mention --enable-ubsan.
1549         * acinclude.m4: Include sanitize.m4.
1550         * configure: Rebuild.
1551         * configure.ac: Call AM_GDB_UBSAN.
1552         * sanitize.m4: New file.
1553
1554 2018-10-03  Tom Tromey  <tom@tromey.com>
1555
1556         * expression.h (enum exp_opcode): Use uint8_t as base type.
1557         * expprint.c (op_name): Handle invalid opcodes.
1558
1559 2018-10-03  Tom Tromey  <tom@tromey.com>
1560
1561         * parse.c (prefixify_expression): Add assert.
1562         (parse_exp_in_context_1): Throw exception if the expression is
1563         empty.
1564
1565 2018-10-03  Tom Tromey  <tom@tromey.com>
1566
1567         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
1568
1569 2018-10-03  Tom Tromey  <tom@tromey.com>
1570
1571         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
1572
1573 2018-10-03  Tom Tromey  <tom@tromey.com>
1574
1575         * dwarf2read.c (read_subrange_type): Make "negative_mask"
1576         unsigned.
1577
1578 2018-10-03  Tom Tromey  <tom@tromey.com>
1579
1580         * findvar.c (extract_integer): Do work in an unsigned type.
1581
1582 2018-10-03  Tom Tromey  <tom@tromey.com>
1583
1584         * common/enum-flags.h (enum_flags::operator~): Add static assert.
1585         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
1586         base type.
1587         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
1588         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
1589         type.
1590         * c-lang.h (enum c_string_type_values): Use unsigned as base
1591         type.
1592         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
1593
1594 2018-10-03  Tom Tromey  <tom@tromey.com>
1595
1596         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
1597         <~dwarf2_frame_state_reg_info>: Update.
1598         <dwarf2_frame_state_reg_info>: Update.
1599         <alloc_regs>: Add assertion.  Update.
1600         <reg>: Now a std::vector.
1601         <num_regs>: Remove.
1602         <swap>: Update.
1603         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
1604         (execute_cfa_program_test, dwarf2_frame_cache): Update.
1605
1606 2018-10-03  Tom Tromey  <tom@tromey.com>
1607
1608         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
1609
1610 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1611
1612         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
1613
1614 2018-10-02  Tom Tromey  <tom@tromey.com>
1615
1616         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
1617
1618 2018-10-02  John Darrington <john@darrington.wattle.id.au>
1619
1620         * NEWS: Mention changed commands.
1621         * ser-uds.c: New file.
1622         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
1623         * configure: Regenerate.
1624         * Makefile.in: Add new file.
1625         * serial.c (serial_open): Check if filename is a socket
1626           and lookup the appropriate interface accordingly.
1627
1628 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
1629
1630         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
1631         define.
1632         (AARCH64_EXTRA_MAGIC): Likewise.
1633         (AARCH64_FPSIMD_MAGIC): Likewise.
1634         (AARCH64_SVE_MAGIC): Likewise.
1635         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
1636         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
1637         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
1638         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
1639         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
1640         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
1641         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
1642         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
1643         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
1644         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
1645         (read_aarch64_ctx): Add function.
1646         (aarch64_linux_sigframe_init): Detect FP registers.
1647
1648 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
1649
1650         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
1651         (AARCH64_D0_REGNUM): Likewise.
1652         (AARCH64_S0_REGNUM): Likewise.
1653         (AARCH64_H0_REGNUM): Likewise.
1654         (AARCH64_B0_REGNUM): Likewise.
1655         (AARCH64_SVE_V0_REGNUM): Likewise.
1656         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
1657         (AARCH64_D0_REGNUM): Likewise.
1658         (AARCH64_S0_REGNUM): Likewise.
1659         (AARCH64_H0_REGNUM): Likewise.
1660         (AARCH64_B0_REGNUM): Likewise.
1661         (AARCH64_SVE_V0_REGNUM): Likewise.
1662
1663 2018-10-01  Gary Benson <gbenson@redhat.com>
1664
1665         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
1666         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
1667         prfpregset_t instead of gdb_prfpregset_t.
1668         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
1669         * configure, config.in: Rebuild.
1670
1671 2018-10-01  Gary Benson <gbenson@redhat.com>
1672
1673         * common/gdb_proc_service.h: New file, factored out from...
1674         * gdb_proc_service.h: Moved common code to the above file.
1675         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
1676
1677 2018-10-01  Gary Benson <gbenson@redhat.com>
1678
1679         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
1680         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
1681
1682 2018-10-01  Gary Benson <gbenson@redhat.com>
1683
1684         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
1685         (AC_CHECK_HEADERS): Check for linux/elf.h.
1686         * configure, config.in: Rebuild.
1687         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
1688         doesn't define elf_fpregset_t.
1689
1690 2018-10-01  Gary Benson <gbenson@redhat.com>
1691
1692         * gdb_proc_service.h: Whitespace change.
1693
1694 2018-10-01  Tom Tromey  <tom@tromey.com>
1695
1696         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
1697         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
1698         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
1699
1700 2018-10-01  Tom Tromey  <tom@tromey.com>
1701
1702         * README: Minor change.
1703
1704 2018-09-30  Pedro Alves  <palves@redhat.com>
1705
1706         * darwin-nat-info.c (darwin_debug_regions_recurse)
1707         (info_mach_exceptions_command): Remove unused local variables.
1708         * darwin-nat.c (darwin_decode_notify_message)
1709         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
1710         (darwin_stop_inferior, darwin_setup_exceptions)
1711         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
1712         (darwin_nat_target::attach, darwin_nat_target::detach)
1713         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
1714         local variables.
1715         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
1716         variables.
1717
1718 2018-09-29  Tom Tromey  <tom@tromey.com>
1719
1720         * README: Remove some leftover text.
1721
1722 2018-09-29  Tom Tromey  <tom@tromey.com>
1723
1724         * PROBLEMS: Rewrite.
1725         * README: Update.
1726
1727 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
1728
1729         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
1730         case with explicit breakpoint kind.
1731         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
1732         'additional_info' and related logic.
1733         (riscv_debug_breakpoints): New variable.
1734         (riscv_breakpoint_kind_from_pc): Use the length of the existing
1735         instruction to determine the breakpoint kind.
1736         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
1737         flag.  Update description of 'set/show riscv
1738         use-compressed-breakpoints' flag.
1739
1740 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
1741
1742         (NEWS): Mention changes to frame related commands.
1743         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
1744         (add_prefix_cmd_suppress_notification): New function.
1745         (add_com_suppress_notification): Call
1746         add_cmd_suppress_notification.
1747         * command.h (add_cmd_suppress_notification): Declare.
1748         (add_prefix_cmd_suppress_notification): Declare.
1749         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
1750         (parse_frame_specification): Moved from stack.c, with
1751         simplification to handle a single argument.
1752         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
1753         switch to the selected frame.  Add a header comment.
1754         * stack.c: Remove 'safe-ctype.h' include.
1755         (find_frame_for_function): Add declaration.
1756         (find_frame_for_address): New function.
1757         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
1758         (frame_selection_by_function_completer): New function.
1759         (info_frame_command): Rename to...
1760         (info_frame_command_core): ...this, and update parameter types.
1761         (select_frame_command): Rename to...
1762         (select_frame_command_core): ...this, and update parameter types.
1763         (frame_command): Rename to...
1764         (frame_command_core): ...this, and update parameter types.
1765         (class frame_command_helper): New class to wrap implementations of
1766         frame related sub-commands.
1767         (frame_apply_cmd_list): New static global.
1768         (frame_cmd_list): Make static.
1769         (select_frame_cmd_list): New global for sub-commands.
1770         (info_frame_cmd_list): New global for sub-commands.
1771         (_initialize_stack): Register sub-commands for 'frame',
1772         'select-frame', and 'info frame'.  Update 'frame apply' commands
1773         to use frame_apply_cmd_list.  Move function local static
1774         frame_apply_list to file static frame_apply_cmd_list for
1775         consistency.
1776         * stack.h (select_frame_command): Delete declarationn.
1777         (select_frame_for_mi): Declare new function.
1778
1779 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
1780
1781         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
1782         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
1783         and NOP.
1784
1785 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
1786
1787         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
1788
1789 2018-09-26  Tom Tromey  <tom@tromey.com>
1790
1791         * valops.c (auto_abandon): Remove dead code.
1792
1793 2018-09-26  Tom Tromey  <tom@tromey.com>
1794
1795         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
1796
1797 2018-09-24  Tom Tromey  <tom@tromey.com>
1798
1799         * common/pathstuff.c (get_standard_cache_dir): Make
1800         "xdg_cache_home" and "home" const.
1801         * top.c (init_history): Make "tmpenv" const.
1802         * main.c (get_init_files): Make "homedir" const.
1803
1804 2018-09-23  Tom Tromey  <tom@tromey.com>
1805
1806         PR python/18852:
1807         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
1808
1809 2018-09-23  Tom Tromey  <tom@tromey.com>
1810
1811         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
1812         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
1813         * python/python-internal.h (gdbpy_handle_exception): Declare.
1814         * python/py-utils.c (gdbpy_handle_exception): New function.
1815
1816 2018-09-23  Tom Tromey  <tom@tromey.com>
1817
1818         PR python/17284:
1819         * python/py-type.c (typy_template_argument): Check for negative
1820         argument number.
1821
1822 2018-09-23  Tom Tromey  <tom@tromey.com>
1823
1824         PR python/14062:
1825         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
1826
1827 2018-09-23  Tom Tromey  <tom@tromey.com>
1828
1829         PR python/18170:
1830         * python/py-value.c (valpy_int): Allow conversion from pointer
1831         type.
1832
1833 2018-09-23  Tom Tromey  <tom@tromey.com>
1834
1835         PR python/20126:
1836         * python/py-value.c (valpy_int): Respect type sign.
1837
1838 2018-09-23  Tom Tromey  <tom@tromey.com>
1839
1840         PR python/18352;
1841         * python/py-value.c (valpy_float): Allow conversions from int or
1842         char.
1843         (valpy_int, valpy_long): Allow conversions from float.
1844
1845 2018-09-23  Tom Tromey  <tom@tromey.com>
1846
1847         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
1848         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
1849
1850 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1851
1852         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
1853         __sighndlr.
1854         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
1855
1856 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
1857
1858         * windows-nat.c (windows_nat_target::wait): Remove a spurious
1859         target_terminal::ours().
1860
1861 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
1862
1863         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
1864         of vl to ULONGEST.
1865
1866 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
1867
1868         * breakpoint.c (update_inserted_breakpoint_locations): Remove
1869         redundant condition.
1870
1871 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1872
1873         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
1874
1875         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
1876         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
1877         * sol-thread.c (ps_pdmodel): Don't guard definition.
1878
1879         * procfs.c: Fix formatting.
1880
1881         * procfs.c (sysset_t_alloc): Remove.
1882         (create_procinfo): Use XNEW instead of sysset_t_alloc.
1883         (procfs_debug_inferior): Likewise.
1884         (procfs_set_exec_trap): Likewise.
1885         (proc_set_traced_sysentry): Don't allocate argp dynamically.
1886         (proc_set_traced_sysexit): Likewise.
1887
1888         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
1889         (dead_procinfo): Likewise.
1890         (proc_warn): Likewise.
1891         (proc_error): Likewise.
1892         (proc_get_LDT_entry): Likewise.
1893         (do_attach): Likewise.
1894         (procfs_target::pid_to_str): Likewise.
1895         (iterate_over_mappings): Likewise.
1896
1897         * procfs.c (create_procinfo): Fix ARI warning.
1898         (proc_get_status): Likewise.
1899         (proc_stop_process): Likewise.
1900         (proc_run_process): Likewise.
1901         (proc_kill): Likewise.
1902         (proc_get_LDT_entry): Likewise.
1903         (procfs_find_LDT_entry): Likewise.
1904         (proc_update_threads): Likewise.
1905         (proc_iterate_over_threads): Likewise.
1906         (do_attach): Likewise.
1907         (procfs_xfer_memory): Likewise.
1908         (invalidate_cache): Likewise.
1909         (procfs_target::resume): Likewise.
1910         (procfs_init_inferior): Likewise.
1911         (procfs_set_exec_trap): Likewise.
1912         (procfs_target::thread_alive): Likewise.
1913         (procfs_target::pid_to_exec_file): Likewise.
1914         (iterate_over_mappings): Likewise.
1915         (procfs_target::make_corefile_notes): Likewise.
1916         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
1917
1918         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
1919         (procfs_find_LDT_entry): Likewise.
1920         * sol-thread.c (ps_lgetLDT): Likewise.
1921
1922 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1923
1924         PR tdep/17903
1925         * procfs.c (procfs_target): Declare pid_to_exec_file.
1926         (procfs_target::pid_to_exec_file): New.
1927
1928 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1929
1930         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
1931         renaming.
1932         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
1933         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
1934
1935 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1936
1937         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
1938         (supply_fpregset, fill_fpregset): Move ...
1939         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
1940         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
1941         Remove references to ioctl-based procfs.
1942         Include <sys/reg.h>.
1943         Remove PR_MODEL_NATIVE guards.
1944         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
1945         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
1946
1947 2018-09-19  Xavier Roirand  <roirand@adacore.com>
1948
1949         PR gdb/20981:
1950         * solib-darwin.c (darwin_get_dyld_bfd): New function.
1951         (darwin_solib_get_all_image_info_addr_at_init): Update call.
1952         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
1953
1954 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
1955
1956         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
1957         (fbsd_print_sockaddr_in6): Likewise.
1958
1959 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
1960             Chris January  <chris.january@arm.com>
1961
1962         * eval.c (skip_undetermined_arglist): Skip argument list helper.
1963         (evaluate_subexp_standard): Return a dummy type when
1964         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
1965         OP_F77_UNDETERMINED_ARGLIST case.
1966         * expression.h (enum noside): Update comment.
1967
1968 2018-09-19  George Vasick <george.vasick@oracle.com>
1969
1970         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
1971
1972 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
1973             April Chin <april.chin@oracle.com>
1974             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1975
1976         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
1977         uint_t lwpid_t.
1978         (create_procinfo): Print pids in /proc without leading zeros.
1979
1980 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
1981
1982         * nios2-tdep.c (nios2_gcc_target_options): New.
1983         (nios2_gdb_arch_init): Install new hook.
1984
1985 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
1986
1987         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
1988         New file.
1989         * update-gnulib.sh: Apply patch.
1990         * configure: Re-generate.
1991
1992 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1993
1994         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
1995         description.  Make "info proc" command descriptions more
1996         consistent.
1997
1998 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1999
2000         * NEWS: Mention 'info proc files' command.
2001
2002 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2003
2004         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
2005         descriptors for IP_FILES and IP_ALL.
2006
2007 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2008
2009         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
2010         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
2011         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
2012         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
2013         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
2014         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
2015         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
2016         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
2017         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
2018         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
2019         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
2020         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
2021         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
2022         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
2023         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
2024         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
2025         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
2026         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
2027         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
2028         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
2029         (struct fbsd_sockaddr_un): New types.
2030         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
2031         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
2032         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
2033         (fbsd_core_info_proc_files): New functions.
2034         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
2035         IP_ALL.
2036         * fbsd-tdep.h (fbsd_info_proc_files_header)
2037         (fbsd_info_proc_files_entry): New.
2038
2039 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2040
2041         * defs.h (enum info_proc_what) [IP_FILES]: New value.
2042         * infcmd.c (info_proc_cmd_files): New function.
2043         (_initialize_infcmd): Register 'info proc files' command.
2044
2045 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2046
2047         * gnulib/aclocal-m4-deps.mk: Re-generate.
2048         * gnulib/aclocal.m4: Re-generate.
2049         * gnulib/config.in: Re-generate.
2050         * gnulib/configure: Re-generate.
2051         * gnulib/import/Makefile.am: Re-generate.
2052         * gnulib/import/Makefile.in: Re-generate.
2053         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
2054         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
2055         * gnulib/import/arpa_inet.in.h: New file.
2056         * gnulib/import/inet_ntop.c: New file.
2057         * gnulib/import/m4/arpa_inet_h.m4: New file.
2058         * gnulib/import/m4/inet_ntop.m4: New file.
2059         * gnulib/import/m4/netinet_in_h.m4: New file.
2060         * gnulib/import/m4/socklen.m4: New file.
2061         * gnulib/import/m4/sockpfaf.m4: New file.
2062         * gnulib/import/m4/stdalign.m4: New file.
2063         * gnulib/import/m4/sys_uio_h.m4: New file.
2064         * gnulib/import/netinet_in.in.h: New file.
2065         * gnulib/import/stdalign.in.h: New file.
2066         * gnulib/import/sys_socket.c: New file.
2067         * gnulib/import/sys_socket.in.h: New file.
2068         * gnulib/import/sys_uio.in.h: New file.
2069         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
2070         module.
2071
2072 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2073
2074         * gnulib/aclocal-m4-deps.mk: New file.
2075         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
2076         deterministically.
2077
2078 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2079
2080         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
2081         KVE_PATH.
2082
2083 2018-09-18  Tom Tromey  <tom@tromey.com>
2084
2085         * compile/compile-object-load.c (struct
2086         link_hash_table_cleanup_data): Add constructor and destructor.
2087         Use DISABLE_COPY_AND_ASSIGN.
2088         (~link_hash_table_cleanup_data): Rename from
2089         link_hash_table_free.  Now a destructor.
2090         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
2091
2092 2018-09-18  Tom Tromey  <tom@tromey.com>
2093
2094         * compile/compile-object-run.c (do_module_cleanup): Use delete.
2095         * compile/compile-object-load.c (struct munmap_list): Move to
2096         header file.
2097         (munmap_list::add): Rename from munmap_list_add; rewrite.
2098         (munmap_list::~munmap_list): Rename from munmap_list_free.
2099         (munmap_listp_free_cleanup): Remove.
2100         (compile_object_load): Update.
2101         * compile/compile-object-load.h (struct munmap_list): Move from
2102         compile-object-load.c.  Rewrite.
2103
2104 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
2105
2106         * aarch64-tdep.c (pass_in_v): Use register size.
2107         (aarch64_extract_return_value): Likewise.
2108         (aarch64_store_return_value): Likewise.
2109
2110 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2111
2112         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
2113         rlim_t.
2114
2115 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2116
2117         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
2118         Fix short help line.
2119
2120 2018-09-17  Tom Tromey  <tom@tromey.com>
2121
2122         PR python/20445:
2123         * configure: Rebuild.
2124         * configure.ac: Conditionally use -DNDEBUG for Python.
2125
2126 2018-09-17  Tom Tromey  <tom@tromey.com>
2127
2128         * configure: Rebuild.
2129         * configure.ac: Use gmp as a library dependency when checking for
2130         mpfr.
2131
2132 2018-09-17  Pedro Alves  <palves@redhat.com>
2133
2134         * python/py-inferior.c (find_inferior_object): Delete.
2135
2136 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
2137
2138         * compile/compile-cplus-types.c
2139         (compile_cplus_instance::enter_scope): Don't use new_scope after
2140         std::move.
2141
2142 2018-09-17  Tom Tromey  <tom@tromey.com>
2143
2144         * common/pathstuff.c (get_standard_cache_dir): Use
2145         ~/Library/Caches on macOS.
2146         * common/pathstuff.h (get_standard_cache_dir): Update comment.
2147
2148 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
2149
2150         PR python/23669
2151         * breakpoint.c (commands_cmd_element): New.
2152         (_initialize_breakpoint): Assign commands_cmd_element.
2153         * breakpoint.h (commands_cmd_element): New.
2154         * cli/cli-script.c (while_cmd_element, if_command,
2155         define_cmd_element): New.
2156         (command_name_equals): Remove.
2157         (process_next_line): Compare commands by pointer, not by name.
2158         (_initialize_cli_script): Assign the various cmd_list_element
2159         variables.
2160         * compile/compile.c (compile_cmd_element): New.
2161         (_initialize_compile): Assign compile_cmd_element.
2162         * compile/compile.h (compile_cmd_element): New.
2163         * guile/guile.c (guile_cmd_element): New.
2164         (install_gdb_commands): Assign guile_cmd_element.
2165         * guile/guile.h (guile_cmd_element): New.
2166         * python/python.c (python_cmd_element): New.
2167         (_initialize_python): Assign python_cmd_element.
2168         * python/python.h (python_cmd_element): New.
2169         * tracepoint.c (while_stepping_cmd_element): New.
2170         (_initialize_tracepoint): Assign while_stepping_cmd_element.
2171         * tracepoint.h (while_stepping_cmd_element): New.
2172
2173 2018-09-17  Tom Tromey  <tom@tromey.com>
2174
2175         * infrun.c (save_infcall_suspend_state): Return
2176         infcall_suspend_state_up.
2177         (save_infcall_control_state): Return infcall_control_state_up.
2178         * inferior.h (save_infcall_suspend_state)
2179         (save_infcall_control_state): Declare later.  Return unique
2180         pointers.
2181
2182 2018-09-17  Tom Tromey  <tom@tromey.com>
2183
2184         * infrun.c (struct stop_context): Declare constructor,
2185         destructor, "changed" method.
2186         (stop_context::stop_context): Rename from save_stop_context.
2187         (stop_context::~stop_context): Rename from
2188         release_stop_context_cleanup.
2189         (normal_stop): Update.
2190         (stop_context::changed): Rename from stop_context_changed.  Return
2191         bool.
2192
2193 2018-09-17  Tom Tromey  <tom@tromey.com>
2194
2195         * inferior.h (struct infcall_suspend_state_deleter): New.
2196         (infcall_suspend_state_up): New typedef.
2197         (struct infcall_control_state_deleter): New.
2198         (infcall_control_state_up): New typedef.
2199         (make_cleanup_restore_infcall_suspend_state)
2200         (make_cleanup_restore_infcall_control_state): Don't declare.
2201         * infcall.c (call_function_by_hand_dummy): Update.
2202         * infrun.c (do_restore_infcall_suspend_state_cleanup)
2203         (make_cleanup_restore_infcall_suspend_state): Remove.
2204         (do_restore_infcall_control_state_cleanup)
2205         (make_cleanup_restore_infcall_control_state): Remove.
2206
2207 2018-09-17  Tom Tromey  <tom@tromey.com>
2208
2209         * gdbthread.h (struct thread_control_state): Add initializer.
2210         (class thread_info) <control>: Remove initializer.
2211         * inferior.h (struct inferior_control_state): Add initializer.
2212         (class inferior) <control>: Remove initializer.
2213         (exit_inferior_1): Update.
2214         * infrun.c (struct infcall_control_state): Add constructors.
2215         (save_infcall_control_state): Use new.
2216         (restore_infcall_control_state, discard_infcall_control_state):
2217         Use delete.
2218
2219 2018-09-17  Tom Tromey  <tom@tromey.com>
2220
2221         * infrun.c (struct infcall_suspend_state) <registers>: Now a
2222         unique_ptr.
2223         <siginfo_data>: Now a unique_xmalloc_ptr.
2224         (save_infcall_suspend_state, restore_infcall_suspend_state)
2225         (discard_infcall_suspend_state)
2226         (get_infcall_suspend_state_regcache): Update.
2227
2228 2018-09-17  Tom Tromey  <tom@tromey.com>
2229
2230         * gdbthread.h (struct thread_suspend_state): Add initializers.
2231         (class thread_info) <suspend>: Remove initializer.
2232         * infrun.c (struct infcall_suspend_state): Add initializers.
2233         (save_infcall_suspend_state): Use new.
2234         (discard_infcall_suspend_state): Use delete.
2235
2236 2018-09-16  Tom Tromey  <tom@tromey.com>
2237
2238         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
2239         Remove.
2240         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
2241         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
2242         (py_varobj_iter_new): Likewise.
2243         (py_varobj_get_iterator): Use gdbpy_ref.
2244
2245 2018-09-16  Tom Tromey  <tom@tromey.com>
2246
2247         * python/py-threadevent.c (py_get_event_thread): Simplify.
2248         * python/py-inferior.c (infpy_thread_from_thread_handle):
2249         Return immediately after calling thread_to_thread_object.  Use
2250         Py_RETURN_NONE.
2251         (thread_to_thread_object): Set the exception on a NULL return.
2252
2253 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
2254
2255         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
2256
2257 2018-09-16  Tom Tromey  <tom@tromey.com>
2258
2259         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
2260         Remove.
2261
2262 2018-09-16  Tom Tromey  <tom@tromey.com>
2263
2264         * python/python-internal.h (thread_to_thread_object): Change
2265         return type.
2266         * python/py-inferior.c (thread_to_thread_object): Return a new
2267         reference.
2268         (infpy_thread_from_thread_handle): Update.
2269         * python/py-infthread.c (gdbpy_selected_thread): Update.
2270         * python/py-stopevent.c (create_stop_event_object): Update.
2271         * python/py-threadevent.c (py_get_event_thread): Return a new
2272         reference.
2273         (py_get_event_thread): Update.
2274         * python/py-event.h (py_get_event_thread): Change return type.
2275         * python/py-continueevent.c (create_continue_event_object):
2276         Update.
2277
2278 2018-09-16  Tom Tromey  <tom@tromey.com>
2279
2280         * python/py-progspace.c (pspy_get_objfiles): Update.
2281         * python/python-internal.h (objfile_to_objfile_object): Change
2282         return type.
2283         * python/py-newobjfileevent.c (create_new_objfile_event_object):
2284         Update.
2285         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
2286         Update.
2287         * python/python.c (gdbpy_get_current_objfile): Update.
2288         (gdbpy_objfiles): Update.
2289         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
2290         Update.
2291         (objfile_to_objfile_object): Return a new reference.
2292         * python/py-symtab.c (stpy_get_objfile): Update.
2293         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
2294         Update.
2295
2296 2018-09-16  Tom Tromey  <tom@tromey.com>
2297
2298         * python/py-inferior.c (infpy_get_progspace): Update.
2299         * python/python-internal.h (pspace_to_pspace_object): Change
2300         return type.
2301         * python/py-newobjfileevent.c
2302         (create_clear_objfiles_event_object): Update.
2303         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
2304         Update.
2305         * python/python.c (gdbpy_get_current_progspace): Update.
2306         (gdbpy_progspaces): Update.
2307         * python/py-progspace.c (pspace_to_pspace_object): Return a new
2308         reference.
2309         * python/py-objfile.c (objfpy_get_progspace): Update.
2310         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
2311         Update.
2312
2313 2018-09-16  Tom Tromey  <tom@tromey.com>
2314
2315         * python/lib/gdb/__init__.py (current_progspace, objfiles)
2316         (solib_name, block_for_pc, find_pc_line): New functions.
2317         (execute_unwinders): Update.
2318         * python/py-block.c (gdbpy_block_for_pc): Remove.
2319         * python/py-inferior.c (infpy_get_progspace): New function.
2320         (inferior_object_getset) <progspace>: Add.
2321         * python/py-progspace.c (pspy_objfiles): Rewrite.
2322         (pspy_solib_name, pspy_block_for_pc)
2323         (pspy_find_pc_line, pspy_is_valid): New functions.
2324         (progspace_object_methods): Add entries for solib_name,
2325         block_for_pc, find_pc_line, is_valid.
2326         * python/python-internal.h (gdbpy_block_for_pc)
2327         (build_objfiles_list): Don't declare.
2328         * python/python.c: Don't include solib.h.
2329         (gdbpy_solib_name, gdbpy_find_pc_line)
2330         (gdbpy_get_current_progspace, build_objfiles_list)
2331         (gdbpy_objfiles): Remove.
2332         (GdbMethods) <current_progspace, objfiles, block_for_pc,
2333         solib_name, find_pc_line>: Remove entries.
2334
2335 2018-09-16  Tom Tromey  <tom@tromey.com>
2336
2337         * top.c (new_ui_command): Use GNU style for metasyntactic
2338         variables.
2339         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
2340         variables.
2341         * maint.c (maintenance_translate_address): Remove "<>" around
2342         text.
2343         * interps.c (interpreter_exec_cmd): Use GNU style for
2344         metasyntactic variables.
2345         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
2346         metasyntactic variables.
2347         * tracepoint.c (tfind_range_command): Use GNU style for
2348         metasyntactic variables.
2349         (tfind_outside_command): Likewise.
2350         (_initialize_tracepoint): Likewise.
2351         * remote.c (extended_remote_target::create_inferior): Use GNU
2352         style for metasyntactic variables.
2353         * sparc64-tdep.c (adi_examine_command): Use GNU style for
2354         metasyntactic variables.
2355         (adi_assign_command): Likewise.
2356
2357 2018-09-16  Tom Tromey  <tom@tromey.com>
2358
2359         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
2360         metasyntactic variables.  Print message if no disassembler options
2361         are available.
2362
2363 2018-09-15  Tom Tromey  <tom@tromey.com>
2364
2365         * infcmd.c (get_inferior_args): Return const char *.
2366         * inferior.h (get_inferior_args): Return type now const.
2367         * linux-tdep.c (linux_fill_prpsinfo): Update.
2368         * procfs.c (procfs_target::make_corefile_notes): Update.
2369
2370 2018-09-07  Tom Tromey  <tom@tromey.com>
2371
2372         * python/python.c (execute_gdb_command): Call bpstat_do_actions
2373         inside the TRY.
2374
2375 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
2376
2377         * nios2-tdep.c (nios2_type_align): New.
2378         (nios2_gdb_arch_init): Install type_align hook.
2379
2380 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
2381
2382         * eval.c (fake_method::fake_method): Call xzalloc directly for a
2383         type that is neither object file owned, nor gdbarch owned.
2384         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
2385         gdbarch is non-NULL.
2386         (alloc_type_instance): Allocate non-objfile owned types on the
2387         gdbarch obstack.
2388         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
2389         using TYPE_ALLOC to ensure memory is allocated on the correct
2390         obstack.
2391         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
2392         obstack, or the gdbarch obstack.
2393         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
2394
2395 2018-09-14  Tom Tromey  <tom@tromey.com>
2396
2397         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
2398         block.
2399
2400 2018-09-14  Tom Tromey  <tom@tromey.com>
2401
2402         * nat/fork-inferior.c (get_startup_shell): Remove "static".
2403
2404 2018-09-13  Tom Tromey  <tom@tromey.com>
2405
2406         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
2407         static.
2408
2409 2018-09-13  Tom Tromey  <tom@tromey.com>
2410
2411         * exec.c (try_open_exec_file): Use std::string.
2412
2413 2018-09-13  Tom Tromey  <tom@tromey.com>
2414
2415         * utils.h (gdb_bfd_errmsg): Return std::string.
2416         * exec.c (exec_file_attach): Update.
2417         * compile/compile-object-load.c (compile_object_load): Update.
2418         * utils.c (gdb_bfd_errmsg): Return std::string.
2419
2420 2018-09-13  Tom Tromey  <tom@tromey.com>
2421
2422         * procfs.c (struct procinfo_deleter): New.
2423         (procinfo_up): New typedef.
2424         (do_destroy_procinfo_cleanup): Remove.
2425         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
2426
2427 2018-09-13  Tom Tromey  <tom@tromey.com>
2428
2429         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
2430
2431 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2432 2018-09-13  Tom Tromey  <tom@tromey.com>
2433
2434         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
2435         (pspy_get_objfiles): New function.
2436         (progspace_object_methods): New.
2437         (pspace_object_type): Add tp_methods callback.
2438         * python/python-internal.h (build_objfiles_list): New
2439         declaration.
2440         * python/python.c (build_objfiles_list): New function.
2441         (gdbpy_objfiles): Implement using build_objfiles_list.
2442         * NEWS: Mention the Progspace.objfiles method.
2443
2444 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2445
2446         * python/py-inferior.c (infpy_get_progspace): New function.
2447         (inferior_object_getset): Add progspace property.
2448         * NEWS: Mention the new property.
2449
2450 2018-09-13  Tom Tromey  <tom@tromey.com>
2451
2452         PR rust/23650:
2453         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
2454
2455 2018-09-13  Tom Tromey  <tom@tromey.com>
2456
2457         PR rust/23626:
2458         * rust-lang.c (rust_enum_variant): Now static.
2459         (rust_empty_enum_p): New function.
2460         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
2461         Handle empty enum.
2462
2463 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2464
2465         * python/py-inferior.c (infpy_repr): New.
2466         (inferior_object_type): Register infpy_repr.
2467         * python/py-objfile.c (objfpy_repr): New.
2468         (objfile_object_type): Register objfpy_repr.
2469
2470 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
2471
2472         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
2473
2474 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
2475
2476         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
2477         typo.
2478
2479 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
2480
2481         * common/common-utils.c: Don't include '<sys/stat.h>'.
2482         (is_regular_file): Move to...
2483         * common/filestuff.c (is_regular_file): ... here.
2484         * common/common-utils.h (is_regular_file): Move to...
2485         * common/filestuff.h (is_regular_file): ... here.
2486
2487 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
2488
2489         * skip.c (debug_skip): New variable.
2490         (skiplist_entry::do_skip_file_p): Add debug output.
2491         (skiplist_entry::do_skip_gfile_p): Likewise.
2492         (skiplist_entry::skip_function_p): Likewise.
2493         (_initialize_step_skip): Create debug command.
2494         * NEWS: Mention set/show debug skip.
2495
2496 2018-09-11  Xavier Roirand  <roirand@adacore.com>
2497
2498         * darwin-nat.c (should_disable_startup_with_shell):
2499         New function.
2500         (darwin_nat_target::create_inferior): Add call.
2501
2502 2018-09-11  Xavier Roirand  <roirand@adacore.com>
2503
2504         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
2505         inf_port, msg_state>: Initialize.
2506         (struct darwin_thread_info) <signaled, single_step>: Change
2507         type and initialize.
2508         (struct darwin_thread_info) <event>: Initialize.
2509
2510 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2511
2512         PR gdb/23555
2513         PR gdb/23558
2514         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
2515         guesses.
2516
2517 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2518
2519         Revert:
2520         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
2521
2522         PR gdb/23555
2523         PR gdb/23558
2524         * gnulib/aclocal.m4: Regenerate.
2525         * gnulib/config.in: Regenerate.
2526         * gnulib/configure: Regenerate.
2527         * gnulib/import/Makefile.am: Update.
2528         * gnulib/import/Makefile.in: Update.
2529         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
2530         * gnulib/import/_Noreturn.h: ... this.
2531         * gnulib/import/alloca.in.h: Update.
2532         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
2533         * gnulib/import/arg-nonnull.h: ... this.
2534         * gnulib/import/assure.h: Update.
2535         * gnulib/import/at-func.c: Update.
2536         * gnulib/import/basename-lgpl.c: Update.
2537         * gnulib/import/extra/snippet/c++defs.h: Rename to...
2538         * gnulib/import/c++defs.h: ... this.
2539         * gnulib/import/canonicalize-lgpl.c: Update.
2540         * gnulib/import/cdefs.h: Update.
2541         * gnulib/import/chdir-long.c: Update.
2542         * gnulib/import/chdir-long.h: Update.
2543         * gnulib/import/cloexec.c: Update.
2544         * gnulib/import/cloexec.h: Update.
2545         * gnulib/import/close.c: Update.
2546         * gnulib/import/closedir.c: Update.
2547         * gnulib/import/config.charset: Update.
2548         * gnulib/import/dirent-private.h: Update.
2549         * gnulib/import/dirent.in.h: Update.
2550         * gnulib/import/dirfd.c: Update.
2551         * gnulib/import/dirname-lgpl.c: Update.
2552         * gnulib/import/dirname.h: Update.
2553         * gnulib/import/dosname.h: Update.
2554         * gnulib/import/dup-safer-flag.c: Update.
2555         * gnulib/import/dup-safer.c: Update.
2556         * gnulib/import/dup.c: Update.
2557         * gnulib/import/dup2.c: Update.
2558         * gnulib/import/errno.in.h: Update.
2559         * gnulib/import/error.c: Update.
2560         * gnulib/import/error.h: Update.
2561         * gnulib/import/exitfail.c: Update.
2562         * gnulib/import/exitfail.h: Update.
2563         * gnulib/import/extra/update-copyright: Update.
2564         * gnulib/import/fchdir.c: Update.
2565         * gnulib/import/fcntl.c: Update.
2566         * gnulib/import/fcntl.in.h: Update.
2567         * gnulib/import/fd-hook.c: Update.
2568         * gnulib/import/fd-hook.h: Update.
2569         * gnulib/import/fd-safer-flag.c: Update.
2570         * gnulib/import/fd-safer.c: Update.
2571         * gnulib/import/fdopendir.c: Update.
2572         * gnulib/import/filename.h: Update.
2573         * gnulib/import/filenamecat-lgpl.c: Update.
2574         * gnulib/import/filenamecat.h: Update.
2575         * gnulib/import/flexmember.h: Update.
2576         * gnulib/import/float+.h: Update.
2577         * gnulib/import/float.c: Update.
2578         * gnulib/import/float.in.h: Update.
2579         * gnulib/import/fnmatch.c: Update.
2580         * gnulib/import/fnmatch.in.h: Update.
2581         * gnulib/import/fnmatch_loop.c: Update.
2582         * gnulib/import/fpucw.h: Update.
2583         * gnulib/import/frexp.c: Update.
2584         * gnulib/import/frexpl.c: Update.
2585         * gnulib/import/fstat.c: Update.
2586         * gnulib/import/fstatat.c: Update.
2587         * gnulib/import/getcwd-lgpl.c: Update.
2588         * gnulib/import/getcwd.c: Update.
2589         * gnulib/import/getdtablesize.c: Update.
2590         * gnulib/import/getlogin_r.c: Update.
2591         * gnulib/import/getprogname.c: Update.
2592         * gnulib/import/getprogname.h: Update.
2593         * gnulib/import/gettext.h: Update.
2594         * gnulib/import/gettimeofday.c: Update.
2595         * gnulib/import/glob-libc.h: Update.
2596         * gnulib/import/glob.c: Update.
2597         * gnulib/import/glob.in.h: Update.
2598         * gnulib/import/glob_internal.h: Update.
2599         * gnulib/import/glob_pattern_p.c: Update.
2600         * gnulib/import/globfree.c: Update.
2601         * gnulib/import/hard-locale.c: Update.
2602         * gnulib/import/hard-locale.h: Update.
2603         * gnulib/import/intprops.h: Update.
2604         * gnulib/import/inttypes.in.h: Update.
2605         * gnulib/import/isnan.c: Update.
2606         * gnulib/import/isnand-nolibm.h: Update.
2607         * gnulib/import/isnand.c: Update.
2608         * gnulib/import/isnanl-nolibm.h: Update.
2609         * gnulib/import/isnanl.c: Update.
2610         * gnulib/import/itold.c: Update.
2611         * gnulib/import/libc-config.h: Update.
2612         * gnulib/import/limits.in.h: Update.
2613         * gnulib/import/localcharset.c: Update.
2614         * gnulib/import/localcharset.h: Update.
2615         * gnulib/import/localtime-buffer.c: Update.
2616         * gnulib/import/localtime-buffer.h: Update.
2617         * gnulib/import/lstat.c: Update.
2618         * gnulib/import/m4/00gnulib.m4: Update.
2619         * gnulib/import/m4/__inline.m4: Update.
2620         * gnulib/import/m4/absolute-header.m4: Update.
2621         * gnulib/import/m4/alloca.m4: Update.
2622         * gnulib/import/m4/builtin-expect.m4: Update.
2623         * gnulib/import/m4/canonicalize.m4: Update.
2624         * gnulib/import/m4/chdir-long.m4: Update.
2625         * gnulib/import/m4/close.m4: Update.
2626         * gnulib/import/m4/closedir.m4: Update.
2627         * gnulib/import/m4/configmake.m4: Update.
2628         * gnulib/import/m4/d-ino.m4: Update.
2629         * gnulib/import/m4/d-type.m4: Update.
2630         * gnulib/import/m4/dirent_h.m4: Update.
2631         * gnulib/import/m4/dirfd.m4: Update.
2632         * gnulib/import/m4/dirname.m4: Update.
2633         * gnulib/import/m4/double-slash-root.m4: Update.
2634         * gnulib/import/m4/dup.m4: Update.
2635         * gnulib/import/m4/dup2.m4: Update.
2636         * gnulib/import/m4/eealloc.m4: Update.
2637         * gnulib/import/m4/environ.m4: Update.
2638         * gnulib/import/m4/errno_h.m4: Update.
2639         * gnulib/import/m4/error.m4: Update.
2640         * gnulib/import/m4/exponentd.m4: Update.
2641         * gnulib/import/m4/exponentl.m4: Update.
2642         * gnulib/import/m4/extensions.m4: Update.
2643         * gnulib/import/m4/extern-inline.m4: Update.
2644         * gnulib/import/m4/fchdir.m4: Update.
2645         * gnulib/import/m4/fcntl-o.m4: Update.
2646         * gnulib/import/m4/fcntl.m4: Update.
2647         * gnulib/import/m4/fcntl_h.m4: Update.
2648         * gnulib/import/m4/fdopendir.m4: Update.
2649         * gnulib/import/m4/filenamecat.m4: Update.
2650         * gnulib/import/m4/flexmember.m4: Update.
2651         * gnulib/import/m4/float_h.m4: Update.
2652         * gnulib/import/m4/fnmatch.m4: Update.
2653         * gnulib/import/m4/fnmatch_h.m4: Update.
2654         * gnulib/import/m4/fpieee.m4: Update.
2655         * gnulib/import/m4/frexp.m4: Update.
2656         * gnulib/import/m4/frexpl.m4: Update.
2657         * gnulib/import/m4/fstat.m4: Update.
2658         * gnulib/import/m4/fstatat.m4: Update.
2659         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
2660         * gnulib/import/m4/getcwd-path-max.m4: Update.
2661         * gnulib/import/m4/getcwd.m4: Update.
2662         * gnulib/import/m4/getdtablesize.m4: Update.
2663         * gnulib/import/m4/getlogin.m4: Update.
2664         * gnulib/import/m4/getlogin_r.m4: Update.
2665         * gnulib/import/m4/getpagesize.m4: Update.
2666         * gnulib/import/m4/getprogname.m4: Update.
2667         * gnulib/import/m4/gettimeofday.m4: Update.
2668         * gnulib/import/m4/glibc21.m4: Update.
2669         * gnulib/import/m4/glob.m4: Update.
2670         * gnulib/import/m4/glob_h.m4: Update.
2671         * gnulib/import/m4/gnulib-cache.m4: Update.
2672         * gnulib/import/m4/gnulib-common.m4: Update.
2673         * gnulib/import/m4/gnulib-comp.m4: Update.
2674         * gnulib/import/m4/gnulib-tool.m4: Update.
2675         * gnulib/import/m4/hard-locale.m4: Update.
2676         * gnulib/import/m4/include_next.m4: Update.
2677         * gnulib/import/m4/inttypes-pri.m4: Update.
2678         * gnulib/import/m4/inttypes.m4: Update.
2679         * gnulib/import/m4/isnand.m4: Update.
2680         * gnulib/import/m4/isnanl.m4: Update.
2681         * gnulib/import/m4/largefile.m4: Update.
2682         * gnulib/import/m4/limits-h.m4: Update.
2683         * gnulib/import/m4/localcharset.m4: Update.
2684         * gnulib/import/m4/locale-fr.m4: Update.
2685         * gnulib/import/m4/locale-ja.m4: Update.
2686         * gnulib/import/m4/locale-zh.m4: Update.
2687         * gnulib/import/m4/localtime-buffer.m4: Update.
2688         * gnulib/import/m4/longlong.m4: Update.
2689         * gnulib/import/m4/lstat.m4: Update.
2690         * gnulib/import/m4/malloc.m4: Update.
2691         * gnulib/import/m4/malloca.m4: Update.
2692         * gnulib/import/m4/math_h.m4: Update.
2693         * gnulib/import/m4/mbrtowc.m4: Update.
2694         * gnulib/import/m4/mbsinit.m4: Update.
2695         * gnulib/import/m4/mbsrtowcs.m4: Update.
2696         * gnulib/import/m4/mbstate_t.m4: Update.
2697         * gnulib/import/m4/memchr.m4: Update.
2698         * gnulib/import/m4/memmem.m4: Update.
2699         * gnulib/import/m4/mempcpy.m4: Update.
2700         * gnulib/import/m4/memrchr.m4: Update.
2701         * gnulib/import/m4/mkdir.m4: Update.
2702         * gnulib/import/m4/mkstemp.m4: Update.
2703         * gnulib/import/m4/mmap-anon.m4: Update.
2704         * gnulib/import/m4/mode_t.m4: Update.
2705         * gnulib/import/m4/msvc-inval.m4: Update.
2706         * gnulib/import/m4/msvc-nothrow.m4: Update.
2707         * gnulib/import/m4/multiarch.m4: Update.
2708         * gnulib/import/m4/nocrash.m4: Update.
2709         * gnulib/import/m4/off_t.m4: Update.
2710         * gnulib/import/m4/onceonly.m4: Update.
2711         * gnulib/import/m4/open-cloexec.m4: Update.
2712         * gnulib/import/m4/open.m4: Update.
2713         * gnulib/import/m4/openat.m4: Update.
2714         * gnulib/import/m4/opendir.m4: Update.
2715         * gnulib/import/m4/pathmax.m4: Update.
2716         * gnulib/import/m4/rawmemchr.m4: Update.
2717         * gnulib/import/m4/readdir.m4: Update.
2718         * gnulib/import/m4/readlink.m4: Update.
2719         * gnulib/import/m4/realloc.m4: Update.
2720         * gnulib/import/m4/rename.m4: Update.
2721         * gnulib/import/m4/rewinddir.m4: Update.
2722         * gnulib/import/m4/rmdir.m4: Update.
2723         * gnulib/import/m4/save-cwd.m4: Update.
2724         * gnulib/import/m4/secure_getenv.m4: Update.
2725         * gnulib/import/m4/setenv.m4: Update.
2726         * gnulib/import/m4/signal_h.m4: Update.
2727         * gnulib/import/m4/ssize_t.m4: Update.
2728         * gnulib/import/m4/stat-time.m4: Update.
2729         * gnulib/import/m4/stat.m4: Update.
2730         * gnulib/import/m4/std-gnu11.m4: Update.
2731         * gnulib/import/m4/stdbool.m4: Update.
2732         * gnulib/import/m4/stddef_h.m4: Update.
2733         * gnulib/import/m4/stdint.m4: Update.
2734         * gnulib/import/m4/stdio_h.m4: Update.
2735         * gnulib/import/m4/stdlib_h.m4: Update.
2736         * gnulib/import/m4/strchrnul.m4: Update.
2737         * gnulib/import/m4/strdup.m4: Update.
2738         * gnulib/import/m4/strerror.m4: Update.
2739         * gnulib/import/m4/string_h.m4: Update.
2740         * gnulib/import/m4/strstr.m4: Update.
2741         * gnulib/import/m4/strtok_r.m4: Update.
2742         * gnulib/import/m4/sys_socket_h.m4: Update.
2743         * gnulib/import/m4/sys_stat_h.m4: Update.
2744         * gnulib/import/m4/sys_time_h.m4: Update.
2745         * gnulib/import/m4/sys_types_h.m4: Update.
2746         * gnulib/import/m4/tempname.m4: Update.
2747         * gnulib/import/m4/time_h.m4: Update.
2748         * gnulib/import/m4/unistd-safer.m4: Update.
2749         * gnulib/import/m4/unistd_h.m4: Update.
2750         * gnulib/import/m4/warn-on-use.m4: Update.
2751         * gnulib/import/m4/wchar_h.m4: Update.
2752         * gnulib/import/m4/wchar_t.m4: Update.
2753         * gnulib/import/m4/wctype_h.m4: Update.
2754         * gnulib/import/m4/wint_t.m4: Update.
2755         * gnulib/import/malloc.c: Update.
2756         * gnulib/import/malloc/scratch_buffer.h: Update.
2757         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
2758         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
2759         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
2760         * gnulib/import/malloca.c: Update.
2761         * gnulib/import/malloca.h: Update.
2762         * gnulib/import/malloca.valgrind: Update.
2763         * gnulib/import/math.in.h: Update.
2764         * gnulib/import/mbrtowc.c: Update.
2765         * gnulib/import/mbsinit.c: Update.
2766         * gnulib/import/mbsrtowcs-impl.h: Update.
2767         * gnulib/import/mbsrtowcs-state.c: Update.
2768         * gnulib/import/mbsrtowcs.c: Update.
2769         * gnulib/import/memchr.c: Update.
2770         * gnulib/import/memmem.c: Update.
2771         * gnulib/import/mempcpy.c: Update.
2772         * gnulib/import/memrchr.c: Update.
2773         * gnulib/import/mkdir.c: Update.
2774         * gnulib/import/mkstemp.c: Update.
2775         * gnulib/import/msvc-inval.c: Update.
2776         * gnulib/import/msvc-inval.h: Update.
2777         * gnulib/import/msvc-nothrow.c: Update.
2778         * gnulib/import/msvc-nothrow.h: Update.
2779         * gnulib/import/open.c: Update.
2780         * gnulib/import/openat-die.c: Update.
2781         * gnulib/import/openat-priv.h: Update.
2782         * gnulib/import/openat-proc.c: Update.
2783         * gnulib/import/openat.c: Update.
2784         * gnulib/import/openat.h: Update.
2785         * gnulib/import/opendir.c: Update.
2786         * gnulib/import/pathmax.h: Update.
2787         * gnulib/import/pipe-safer.c: Update.
2788         * gnulib/import/rawmemchr.c: Update.
2789         * gnulib/import/readdir.c: Update.
2790         * gnulib/import/readlink.c: Update.
2791         * gnulib/import/realloc.c: Update.
2792         * gnulib/import/ref-add.sin: Update.
2793         * gnulib/import/ref-del.sin: Update.
2794         * gnulib/import/rename.c: Update.
2795         * gnulib/import/rewinddir.c: Update.
2796         * gnulib/import/rmdir.c: Update.
2797         * gnulib/import/same-inode.h: Update.
2798         * gnulib/import/save-cwd.c: Update.
2799         * gnulib/import/save-cwd.h: Update.
2800         * gnulib/import/scratch_buffer.h: Update.
2801         * gnulib/import/secure_getenv.c: Update.
2802         * gnulib/import/setenv.c: Update.
2803         * gnulib/import/signal.in.h: Update.
2804         * gnulib/import/stat-time.c: Update.
2805         * gnulib/import/stat-time.h: Update.
2806         * gnulib/import/stat-w32.c: Update.
2807         * gnulib/import/stat-w32.h: Update.
2808         * gnulib/import/stat.c: Update.
2809         * gnulib/import/stdbool.in.h: Update.
2810         * gnulib/import/stddef.in.h: Update.
2811         * gnulib/import/stdint.in.h: Update.
2812         * gnulib/import/stdio.in.h: Update.
2813         * gnulib/import/stdlib.in.h: Update.
2814         * gnulib/import/str-two-way.h: Update.
2815         * gnulib/import/strchrnul.c: Update.
2816         * gnulib/import/strdup.c: Update.
2817         * gnulib/import/streq.h: Update.
2818         * gnulib/import/strerror-override.c: Update.
2819         * gnulib/import/strerror-override.h: Update.
2820         * gnulib/import/strerror.c: Update.
2821         * gnulib/import/string.in.h: Update.
2822         * gnulib/import/stripslash.c: Update.
2823         * gnulib/import/strnlen1.c: Update.
2824         * gnulib/import/strnlen1.h: Update.
2825         * gnulib/import/strstr.c: Update.
2826         * gnulib/import/strtok_r.c: Update.
2827         * gnulib/import/sys_stat.in.h: Update.
2828         * gnulib/import/sys_time.in.h: Update.
2829         * gnulib/import/sys_types.in.h: Update.
2830         * gnulib/import/tempname.c: Update.
2831         * gnulib/import/tempname.h: Update.
2832         * gnulib/import/time.in.h: Update.
2833         * gnulib/import/unistd--.h: Update.
2834         * gnulib/import/unistd-safer.h: Update.
2835         * gnulib/import/unistd.in.h: Update.
2836         * gnulib/import/unsetenv.c: Update.
2837         * gnulib/import/verify.h: Update.
2838         * gnulib/import/extra/snippet/warn-on-use.h: Update.
2839         * gnulib/import/wchar.in.h: Update.
2840         * gnulib/import/wctype.in.h: Update.
2841         * gnulib/import/xalloc-oversized.h: Update.
2842         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
2843         "53e2c179f26a890fa6685af4b6c1397ee370433b".
2844
2845 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
2846
2847         * record-btrace.c (get_thread_current_frame): Remove
2848         old_inferior_ptid.
2849
2850 2018-09-10  Jerome Guitton  <guitton@adacore.com>
2851
2852         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
2853         with check_tag to 1 if and only if the type is tagged and the
2854         component being searched cannot been found in the current
2855         view. Otherwise, always call ada_to_fixed_type with
2856         check_tag to 0.
2857
2858 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2859
2860         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
2861         declaration.
2862         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
2863         * ada-varobj.c (ada_varobj_get_number_of_children,
2864         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
2865
2866 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2867
2868         * ada-valprint.c (ada_value_print): Use type instead of
2869         enclosing type.
2870
2871 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2872
2873         * ada-lang.c (ada_value_subscript): Handle case when parameter is
2874         an array of access to unconstrained array.
2875
2876 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2877
2878         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
2879         (ada_check_typedef): Use it.
2880
2881 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2882
2883         * ada-varobj.c (ada_varobj_describe_struct_child)
2884         (ada_varobj_describe_child): Handle union case like struct one.
2885
2886 2018-09-10  Tom Tromey  <tom@tromey.com>
2887
2888         PR python/18380:
2889         * python/python.c (_initialize_python): Make example in "python"
2890         help work in Python 3.
2891
2892 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
2893
2894         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
2895         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
2896         $(EXEEXT) to the script, as it is not a program.
2897
2898 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
2899
2900         * python/py-prettyprint.c (pretty_print_one_value): Return
2901         gdbpy_ref<>.
2902         (print_string_repr): Adjust.
2903         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
2904         * python/python-internal.h (apply_varobj_pretty_printer): Return
2905         gdbpy_ref<>.
2906         * varobj.c (varobj_value_get_print_value): Adjust.
2907
2908 2018-09-08  Tom Tromey  <tom@tromey.com>
2909
2910         PR python/16047:
2911         * python/py-prettyprint.c (pretty_print_one_value): Check for
2912         to_string method.
2913
2914 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2915
2916         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
2917         replace_operator_with_call.
2918
2919 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2920
2921         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
2922
2923 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2924
2925         * ada-typeprint.c (print_range): Print the bounds using TYPE
2926         rather than its TYPE_TARGET_TYPE.
2927
2928 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2929
2930         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
2931         call to ada_to_fixed_value_create.
2932
2933 2018-09-08  Jerome Guitton  <guitton@adacore.com>
2934
2935         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
2936
2937 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2938
2939         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
2940         by calls to error.
2941
2942 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2943
2944         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
2945         Move update of loop variable "fi".
2946
2947 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2948
2949         * ada-lang.c (value_assign_to_component): In the case of
2950         big-endian targets, extract the bits of the given VAL
2951         using an src_offset of zero if container is not a scalar.
2952
2953 2018-09-06  Simon Ser  <contact@emersion.fr>
2954
2955         PR gdb/23105
2956         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
2957         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
2958         * fbsd-tdep.c (fbsd_make_note_desc): New.
2959         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
2960         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
2961         * target.h (enum target_object) Add FreeBSD-specific
2962         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
2963
2964 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2965
2966         * compile/compile-c.h (generate_c_for_variable_locations):
2967         Change reference to pointer.
2968         * compile/compile-c-support.c (compile_program) <compute>:
2969         Likewise.
2970         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
2971         (generate_c_for_for_one_variable): Likewise
2972         (generate_c_for_variable_locations): Likewise
2973         * compile/compile-c-types.c (compile_c_instance::convert_type):
2974         Likewise
2975         * compile/compile-cplus-symbols.c (convert_one_symbol):
2976         std::move the scope passed to enter_scope.
2977         * compile/compile-cplus-types.c
2978         (compile_cplus_instance::enter_scope): Make parameter
2979         rvalue-reference.
2980         (compile_cplus_instance::new_scope): Change reference to
2981         pointer.
2982         (compile_cplus_instance::convert_type): Likewise
2983         (compile_cplus_convert_typedef): std::move the scope passed to
2984         enter_scope.
2985         (compile_cplus_convert_struct_or_union): Likewise.
2986         (compile_cplus_convert_enum): Likewise.
2987         (compile_cplus_convert_namespace): Likewise.
2988         * compile/compile-cplus.h (compile_cplus_instance)
2989         <enter_scope>: Make parameter rvalue-reference.
2990         * compile/compile-internal.h (compile_instance)
2991         <get_cached_type>: Likewise
2992         * compile/compile-loc2c.c (push): Likewise
2993         (pushf): Likewise
2994         (unary): Likewise
2995         (binary): Likewise
2996         (print_label): Likewise
2997         (pushf_register_address): Likewise
2998         (pushf_register): Likewise
2999         (do_compile_dwarf_expr_to_c): Likewise
3000         (compile_dwarf_expr_to_c): Likewise
3001         (compile_dwarf_bounds_to_c): Likewise
3002         * compile/compile.c (compile_instance::get_cached_type):
3003         Likewise
3004         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
3005         (compile_dwarf_bounds_to_c): Likewise
3006         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
3007         (dwarf2_compile_property_to_c): Likewise
3008         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
3009         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
3010         Likewise
3011
3012 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3013
3014         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
3015         * tui/tui-data.c (init_content_element): Don't initialize it.
3016
3017 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3018
3019         * tui/tui-data.h (struct tui_win_info)
3020         <detail::opaque>: Remove.
3021         * tui/tui-data.c (init_win_info): Remove assignment.
3022
3023 2018-09-05  Tom Tromey  <tom@tromey.com>
3024
3025         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
3026         -Wformat-nonliteral.
3027         * target-float.c (host_float_ops<T>::to_string)
3028         (host_float_ops<T>::from_string): Use
3029         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
3030         * configure: Rebuild.
3031
3032 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
3033
3034         * printcmd.c (printf_c_string): Use
3035         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
3036         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
3037
3038 2018-09-05  Tom Tromey  <tom@tromey.com>
3039
3040         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
3041
3042 2018-09-05  Tom de Vries  <tdevries@suse.de>
3043
3044         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
3045         with resolve_abstract_p == true.
3046         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
3047         defaulting to false. Propagate resolve_abstract_p to
3048         dwarf2_fetch_die_loc_sect_off.
3049         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
3050         parameter, defaulting to false.
3051         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
3052         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
3053         parameter.
3054         * dwarf2read.h (struct die_info): Forward-declare.
3055         (die_info_ptr): New typedef.
3056         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
3057
3058 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
3059
3060         GDB 8.2 released.
3061
3062 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
3063             Pedro Alves  <palves@redhat.com>
3064
3065         * gnulib/Makefile.in (aclocal_m4_deps): Move to
3066         "aclocal-m4-deps.mk".  Include file here.
3067         $(srcdir)/aclocal.m4: Add "configure.ac".
3068         * gnulib/aclocal-m4-deps.mk: New file.
3069         * gnulib/update-gnulib.sh: Automatically update
3070         "aclocal-m4-deps.mk".
3071
3072 2018-09-04  Tom Tromey  <tom@tromey.com>
3073
3074         * configure: Rebuild.
3075         * configure.ac: Remove multi-ice code.
3076
3077 2018-09-04  Tom Tromey  <tom@tromey.com>
3078
3079         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
3080         (ada-exp.o): Update.
3081
3082 2018-09-04  Tom Tromey  <tom@tromey.com>
3083
3084         * Makefile.in (printcmd.o, target-float.o): Remove.
3085         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
3086
3087 2018-09-04  Tom Tromey  <tom@tromey.com>
3088
3089         * gnulib/Makefile.in: Remove obsolete comment.
3090         * Makefile.in: Remove obsolete comment.
3091
3092 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
3093
3094         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
3095         line with '+'.
3096
3097 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
3098
3099         * riscv-tdep.c: Add 'prologue-value.h' include.
3100         (struct riscv_unwind_cache): New struct.
3101         (riscv_debug_unwinder): New global.
3102         (riscv_scan_prologue): Update arguments, capture register details
3103         from prologue scan.
3104         (riscv_skip_prologue): Reformat arguments line, move end of
3105         prologue calculation into riscv_scan_prologue.
3106         (riscv_frame_cache): Update return type, create
3107         riscv_unwind_cache, scan the prologue, and fill in remaining cache
3108         details.
3109         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
3110         (riscv_frame_prev_register): Use the trad_frame within the
3111         riscv_unwind_cache.
3112         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
3113         flag.
3114
3115 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
3116
3117         * trad-frame.h (trad_frame_set_realreg): Declare.
3118         (trad_frame_set_addr): Declare.
3119         * trad-frame.c (trad_frame_set_realreg): Define new function.
3120         (trad_frame_set_addr): Define new function.
3121         (trad_frame_set_reg_realreg): Use new function.
3122         (trad_frame_set_reg_addr): Use new function.
3123
3124 2018-09-01  Keith Seitz  <keiths@redhat.com>
3125
3126         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
3127         pulongest instead of "%lld".
3128         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
3129         ATTRIBUTE_UNUSED.
3130
3131 2018-08-31  Tom Tromey  <tom@tromey.com>
3132
3133         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
3134         variant part type.
3135
3136 2018-08-31  Pedro Alves  <palves@redhat.com>
3137
3138         * gdbarch.h: Regenerate.
3139
3140 2018-08-31  Pedro Alves  <palves@redhat.com>
3141
3142         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
3143         * target.h (Hardware watchpoint interfaces): Describe
3144         continuable/steppable/non-steppable watchpoints.
3145         * gdbarch.h, gdbarch.c: Regenerate.
3146
3147 2018-08-31  Pedro Alves  <palves@redhat.com>
3148
3149         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
3150         Delete.
3151         * s390-linux-nat.c
3152         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
3153         * target.h (target_ops::have_continuable_watchpoint): Delete.
3154         (target_have_continuable_watchpoint): Delete.
3155         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
3156         * target-delegates.c: Regenerate.
3157
3158 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
3159
3160         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
3161         the files present in "gnulib/import/m4/".
3162
3163 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
3164
3165         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
3166         c.sw, c.swsp, and c.sdsp.
3167
3168 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
3169
3170         * riscv-tdep.c (struct riscv_inferior_data): Delete.
3171         (riscv_read_misa_reg): Don't cache value read into inferior data.
3172         (riscv_new_inferior_data): Delete.
3173         (riscv_inferior_data_cleanup): Delete.
3174         (riscv_inferior_data): Delete.
3175         (riscv_invalidate_inferior_data): Delete.
3176         (_initialize_riscv_tdep): Remove initialisation of inferior data.
3177
3178 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
3179
3180         * compile/compile-cplus-types.c
3181         (compile_cplus_instance::leave_scope): Take the address of scope
3182         object.
3183         (compile_cplus_instance::convert_qualified_base): Compare quals
3184         to 0.
3185
3186 2018-08-30  Keith Seitz  <keiths@redhat.com>
3187
3188         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
3189         Use "%s" and host_address_to_string instead of "%p" in printf.
3190
3191 2018-08-29  Keith Seitz  <keiths@redhat.com>
3192
3193         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
3194         and compile-cplus-types.c.
3195         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
3196         * c-lang.c (cplus_language_defn): Set C++ compile functions.
3197         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
3198         Declare.
3199         * compile/compile-c-support.c: Include compile-cplus.h.
3200         (load_libcompile): Templatize.
3201         (get_compile_context): "New" function.
3202         (c_get_compile_context): Use get_compile_context.
3203         (cplus_get_compile_context): New function.
3204         (cplus_push_user_expression, cplus_pop_user_expression)
3205         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
3206         (cplus_compute_program): Define new structs/functions.
3207         * compile/compile-cplus-symmbols.c: New file.
3208         * compile/compile-cplus-types.c: New file.
3209         * compile/compile-cplus.h: New file.
3210         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
3211         Declare.
3212         * compile/compile-object-load.c (get_out_value_type): Use
3213         strncmp_iw when comparing symbol names.
3214         (compile_object_load): Add mst_bss and mst_data.
3215         * compile/compile.c (_initialize_compile): Remove
3216         -Wno-implicit-function-declaration from `compile_args'.
3217         * compile/gcc-cp-plugin.h: New file.
3218         * NEWS: Mention C++ compile support and new debug options.
3219
3220 2018-08-29  Keith Seitz  <keiths@redhat.com>
3221
3222         * linespec.c (collect_info::add_symbol): Make virtual.
3223         (struct symbol_searcher_collect_info): New struct.
3224         (symbol_searcher::find_all_symbols): New method.
3225         * symtab.h (class symbol_searcher): New class.
3226
3227 2018-08-29  Keith Seitz  <keiths@redhat.com>
3228
3229         * linespec.c (struct linespec) <function_symbols, label_symbols>:
3230         Change to vector of block_symbol.  Update all users.
3231         (struct collect_info) <symbols>: Likewise.
3232         (collect_info::add_symbol): Take block_symbol as argument.
3233         Update all callers.
3234         (decode_compound_collector) <m_symbols>: Change type to vector
3235         of block_symbol.  Update all users.
3236         (decode_compound_collector::operator ()): Change parameter type
3237         to block_symbol.
3238         (find_method, find_function_symbols, find_linespec_symbols)
3239         (find_label_symbols_in_block, find_label_symbols): Change symbol
3240         vectors to block_symbol vectors.
3241         * symtab.h (symbol_found_callback_ftype): Change parameter type to
3242         block_symbol.
3243
3244 2018-08-29  Keith Seitz  <keiths@redhat.com>
3245
3246         * linespec.c (symbolp): Remove typedef and VEC definitions.
3247         (bound_minimal_symbol_d): Likewise.
3248
3249 2018-08-29  Keith Seitz  <keiths@redhat.com>
3250
3251         * linespec.c (decode_compound_collector::decode_compound_collector):
3252         Remove initialization for `m_symtabs'.
3253         (decode_compound_collector::release_symbols): Change return type
3254         to std::vector.  Update all callers.
3255         (class decode_compound_collector) <m_symbols>: Change type to
3256         std::vector.
3257         (lookup_prefix_sym): Change return type to std::vector.  Update all
3258         callers.
3259         (compare_symbols): Remove.
3260         (std_compare_symbols): Rename to `compare_symbols'.
3261         (find_method): Change `sym_classes' parameter to std::vector.
3262         Update all callers.  Use std::sort to sort sym_classes.
3263         (find_linespec_symbols): Remove cleanup.
3264
3265 2018-08-29  Keith Seitz  <keiths@redhat.com>
3266
3267         * linespec.c (struct linespec) <minimal_symbols>: Change type to
3268         std::vector.  Update all users.
3269         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
3270         (struct collect_info) <minimal_symbols>: Likewise.
3271         (compare_msymbols): Return bool.  Change parameters to const
3272         bound_minimal_symbol references.
3273         (find_method, find_function_symbols, find_linespec_symbols): Change
3274         `minsyms' parameter to std::vector.  Update all callers.
3275
3276 2018-08-29  Keith Seitz  <keiths@redhat.com>
3277
3278         * linespec.c (struct linespec) <label_symbols>: Change type to
3279         std::vector.  Update all users.
3280         (find_label_symbols_in_block): Change `result' parameter to
3281         std::vector.  Update all callers.
3282         (find_label_symbols): Return std::vector.  Update all callers.
3283
3284 2018-08-29  Keith Seitz  <keiths@redhat.com>
3285
3286         * linespec.c (struct linespec) <function_symbols>: Change type to
3287         std::vector.  Update all users.
3288         (struct collect_info) <function_symbols>: Likewise.
3289         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
3290         (std_compare_symbols): New function.
3291         (find_method, find_function_symbols, find_linespec_symbols)
3292         (find_label_symbols_in_block): Change `symbols' parameter to
3293         std::vector.  Update all callers.
3294         (find_label_symbols): Likewise for `function_symbols' and
3295         `label_funcs_ret'.
3296
3297 2018-08-29  Keith Seitz  <keiths@redhat.com>
3298
3299         * linespec.c (symtab_vector_up): Define.
3300         (struct linespec) <file_symtabs>: Change type to std::vector *.
3301         Update all uses.
3302         (struct collect_info) <file_symtabs>: Likewise.
3303         (collect_symtabs_from_filename): Return symtab_vector_up.
3304         Update all callers.
3305         (decode_objc): Remove cleanup.
3306         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
3307         (symtab_collector::release_symtabs): Return symtab_vector_up.
3308         Update all callers.
3309         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
3310         Update all users.
3311         (collect_symtabs_from_filename, symtabs_from_filename): Return
3312         symtab_vector_up.  Update all callers.
3313
3314 2018-08-29  Tom Tromey  <tom@tromey.com>
3315
3316         * csky-tdep.c (csky_analyze_prologue): Use
3317         core_addr_to_string_nz.
3318
3319 2018-08-29  Tom Tromey  <tom@tromey.com>
3320
3321         * windows-nat.c (struct xlate_exception) <them>: Change type to
3322         DWORD.
3323         (xlate): Fix formatting.  Remove last entry.
3324         (struct xlate_exception, xlate): Comment out.
3325         (windows_nat_target::resume): Use ranged for.
3326
3327 2018-08-29  Jim Wilson  <jimw@sifive.com>
3328
3329         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
3330         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
3331         of NT_PRFPREG.
3332         (riscv_linux_nat_target::store_registers): Likewise.
3333
3334 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
3335
3336         PR gdb/23555
3337         PR gdb/23558
3338         * gnulib/aclocal.m4: Regenerate.
3339         * gnulib/config.in: Regenerate.
3340         * gnulib/configure: Regenerate.
3341         * gnulib/import/Makefile.am: Update.
3342         * gnulib/import/Makefile.in: Update.
3343         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
3344         * gnulib/import/_Noreturn.h: ... this.
3345         * gnulib/import/alloca.in.h: Update.
3346         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
3347         * gnulib/import/arg-nonnull.h: ... this.
3348         * gnulib/import/assure.h: Update.
3349         * gnulib/import/at-func.c: Update.
3350         * gnulib/import/basename-lgpl.c: Update.
3351         * gnulib/import/extra/snippet/c++defs.h: Rename to...
3352         * gnulib/import/c++defs.h: ... this.
3353         * gnulib/import/canonicalize-lgpl.c: Update.
3354         * gnulib/import/cdefs.h: Update.
3355         * gnulib/import/chdir-long.c: Update.
3356         * gnulib/import/chdir-long.h: Update.
3357         * gnulib/import/cloexec.c: Update.
3358         * gnulib/import/cloexec.h: Update.
3359         * gnulib/import/close.c: Update.
3360         * gnulib/import/closedir.c: Update.
3361         * gnulib/import/config.charset: Update.
3362         * gnulib/import/dirent-private.h: Update.
3363         * gnulib/import/dirent.in.h: Update.
3364         * gnulib/import/dirfd.c: Update.
3365         * gnulib/import/dirname-lgpl.c: Update.
3366         * gnulib/import/dirname.h: Update.
3367         * gnulib/import/dosname.h: Update.
3368         * gnulib/import/dup-safer-flag.c: Update.
3369         * gnulib/import/dup-safer.c: Update.
3370         * gnulib/import/dup.c: Update.
3371         * gnulib/import/dup2.c: Update.
3372         * gnulib/import/errno.in.h: Update.
3373         * gnulib/import/error.c: Update.
3374         * gnulib/import/error.h: Update.
3375         * gnulib/import/exitfail.c: Update.
3376         * gnulib/import/exitfail.h: Update.
3377         * gnulib/import/extra/update-copyright: Update.
3378         * gnulib/import/fchdir.c: Update.
3379         * gnulib/import/fcntl.c: Update.
3380         * gnulib/import/fcntl.in.h: Update.
3381         * gnulib/import/fd-hook.c: Update.
3382         * gnulib/import/fd-hook.h: Update.
3383         * gnulib/import/fd-safer-flag.c: Update.
3384         * gnulib/import/fd-safer.c: Update.
3385         * gnulib/import/fdopendir.c: Update.
3386         * gnulib/import/filename.h: Update.
3387         * gnulib/import/filenamecat-lgpl.c: Update.
3388         * gnulib/import/filenamecat.h: Update.
3389         * gnulib/import/flexmember.h: Update.
3390         * gnulib/import/float+.h: Update.
3391         * gnulib/import/float.c: Update.
3392         * gnulib/import/float.in.h: Update.
3393         * gnulib/import/fnmatch.c: Update.
3394         * gnulib/import/fnmatch.in.h: Update.
3395         * gnulib/import/fnmatch_loop.c: Update.
3396         * gnulib/import/fpucw.h: Update.
3397         * gnulib/import/frexp.c: Update.
3398         * gnulib/import/frexpl.c: Update.
3399         * gnulib/import/fstat.c: Update.
3400         * gnulib/import/fstatat.c: Update.
3401         * gnulib/import/getcwd-lgpl.c: Update.
3402         * gnulib/import/getcwd.c: Update.
3403         * gnulib/import/getdtablesize.c: Update.
3404         * gnulib/import/getlogin_r.c: Update.
3405         * gnulib/import/getprogname.c: Update.
3406         * gnulib/import/getprogname.h: Update.
3407         * gnulib/import/gettext.h: Update.
3408         * gnulib/import/gettimeofday.c: Update.
3409         * gnulib/import/glob-libc.h: Update.
3410         * gnulib/import/glob.c: Update.
3411         * gnulib/import/glob.in.h: Update.
3412         * gnulib/import/glob_internal.h: Update.
3413         * gnulib/import/glob_pattern_p.c: Update.
3414         * gnulib/import/globfree.c: Update.
3415         * gnulib/import/hard-locale.c: Update.
3416         * gnulib/import/hard-locale.h: Update.
3417         * gnulib/import/intprops.h: Update.
3418         * gnulib/import/inttypes.in.h: Update.
3419         * gnulib/import/isnan.c: Update.
3420         * gnulib/import/isnand-nolibm.h: Update.
3421         * gnulib/import/isnand.c: Update.
3422         * gnulib/import/isnanl-nolibm.h: Update.
3423         * gnulib/import/isnanl.c: Update.
3424         * gnulib/import/itold.c: Update.
3425         * gnulib/import/libc-config.h: Update.
3426         * gnulib/import/limits.in.h: Update.
3427         * gnulib/import/localcharset.c: Update.
3428         * gnulib/import/localcharset.h: Update.
3429         * gnulib/import/localtime-buffer.c: Update.
3430         * gnulib/import/localtime-buffer.h: Update.
3431         * gnulib/import/lstat.c: Update.
3432         * gnulib/import/m4/00gnulib.m4: Update.
3433         * gnulib/import/m4/__inline.m4: Update.
3434         * gnulib/import/m4/absolute-header.m4: Update.
3435         * gnulib/import/m4/alloca.m4: Update.
3436         * gnulib/import/m4/builtin-expect.m4: Update.
3437         * gnulib/import/m4/canonicalize.m4: Update.
3438         * gnulib/import/m4/chdir-long.m4: Update.
3439         * gnulib/import/m4/close.m4: Update.
3440         * gnulib/import/m4/closedir.m4: Update.
3441         * gnulib/import/m4/configmake.m4: Update.
3442         * gnulib/import/m4/d-ino.m4: Update.
3443         * gnulib/import/m4/d-type.m4: Update.
3444         * gnulib/import/m4/dirent_h.m4: Update.
3445         * gnulib/import/m4/dirfd.m4: Update.
3446         * gnulib/import/m4/dirname.m4: Update.
3447         * gnulib/import/m4/double-slash-root.m4: Update.
3448         * gnulib/import/m4/dup.m4: Update.
3449         * gnulib/import/m4/dup2.m4: Update.
3450         * gnulib/import/m4/eealloc.m4: Update.
3451         * gnulib/import/m4/environ.m4: Update.
3452         * gnulib/import/m4/errno_h.m4: Update.
3453         * gnulib/import/m4/error.m4: Update.
3454         * gnulib/import/m4/exponentd.m4: Update.
3455         * gnulib/import/m4/exponentl.m4: Update.
3456         * gnulib/import/m4/extensions.m4: Update.
3457         * gnulib/import/m4/extern-inline.m4: Update.
3458         * gnulib/import/m4/fchdir.m4: Update.
3459         * gnulib/import/m4/fcntl-o.m4: Update.
3460         * gnulib/import/m4/fcntl.m4: Update.
3461         * gnulib/import/m4/fcntl_h.m4: Update.
3462         * gnulib/import/m4/fdopendir.m4: Update.
3463         * gnulib/import/m4/filenamecat.m4: Update.
3464         * gnulib/import/m4/flexmember.m4: Update.
3465         * gnulib/import/m4/float_h.m4: Update.
3466         * gnulib/import/m4/fnmatch.m4: Update.
3467         * gnulib/import/m4/fnmatch_h.m4: Update.
3468         * gnulib/import/m4/fpieee.m4: Update.
3469         * gnulib/import/m4/frexp.m4: Update.
3470         * gnulib/import/m4/frexpl.m4: Update.
3471         * gnulib/import/m4/fstat.m4: Update.
3472         * gnulib/import/m4/fstatat.m4: Update.
3473         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
3474         * gnulib/import/m4/getcwd-path-max.m4: Update.
3475         * gnulib/import/m4/getcwd.m4: Update.
3476         * gnulib/import/m4/getdtablesize.m4: Update.
3477         * gnulib/import/m4/getlogin.m4: Update.
3478         * gnulib/import/m4/getlogin_r.m4: Update.
3479         * gnulib/import/m4/getpagesize.m4: Update.
3480         * gnulib/import/m4/getprogname.m4: Update.
3481         * gnulib/import/m4/gettimeofday.m4: Update.
3482         * gnulib/import/m4/glibc21.m4: Update.
3483         * gnulib/import/m4/glob.m4: Update.
3484         * gnulib/import/m4/glob_h.m4: Update.
3485         * gnulib/import/m4/gnulib-cache.m4: Update.
3486         * gnulib/import/m4/gnulib-common.m4: Update.
3487         * gnulib/import/m4/gnulib-comp.m4: Update.
3488         * gnulib/import/m4/gnulib-tool.m4: Update.
3489         * gnulib/import/m4/hard-locale.m4: Update.
3490         * gnulib/import/m4/include_next.m4: Update.
3491         * gnulib/import/m4/inttypes-pri.m4: Update.
3492         * gnulib/import/m4/inttypes.m4: Update.
3493         * gnulib/import/m4/isnand.m4: Update.
3494         * gnulib/import/m4/isnanl.m4: Update.
3495         * gnulib/import/m4/largefile.m4: Update.
3496         * gnulib/import/m4/limits-h.m4: Update.
3497         * gnulib/import/m4/localcharset.m4: Update.
3498         * gnulib/import/m4/locale-fr.m4: Update.
3499         * gnulib/import/m4/locale-ja.m4: Update.
3500         * gnulib/import/m4/locale-zh.m4: Update.
3501         * gnulib/import/m4/localtime-buffer.m4: Update.
3502         * gnulib/import/m4/longlong.m4: Update.
3503         * gnulib/import/m4/lstat.m4: Update.
3504         * gnulib/import/m4/malloc.m4: Update.
3505         * gnulib/import/m4/malloca.m4: Update.
3506         * gnulib/import/m4/math_h.m4: Update.
3507         * gnulib/import/m4/mbrtowc.m4: Update.
3508         * gnulib/import/m4/mbsinit.m4: Update.
3509         * gnulib/import/m4/mbsrtowcs.m4: Update.
3510         * gnulib/import/m4/mbstate_t.m4: Update.
3511         * gnulib/import/m4/memchr.m4: Update.
3512         * gnulib/import/m4/memmem.m4: Update.
3513         * gnulib/import/m4/mempcpy.m4: Update.
3514         * gnulib/import/m4/memrchr.m4: Update.
3515         * gnulib/import/m4/mkdir.m4: Update.
3516         * gnulib/import/m4/mkstemp.m4: Update.
3517         * gnulib/import/m4/mmap-anon.m4: Update.
3518         * gnulib/import/m4/mode_t.m4: Update.
3519         * gnulib/import/m4/msvc-inval.m4: Update.
3520         * gnulib/import/m4/msvc-nothrow.m4: Update.
3521         * gnulib/import/m4/multiarch.m4: Update.
3522         * gnulib/import/m4/nocrash.m4: Update.
3523         * gnulib/import/m4/off_t.m4: Update.
3524         * gnulib/import/m4/onceonly.m4: Update.
3525         * gnulib/import/m4/open-cloexec.m4: Update.
3526         * gnulib/import/m4/open.m4: Update.
3527         * gnulib/import/m4/openat.m4: Update.
3528         * gnulib/import/m4/opendir.m4: Update.
3529         * gnulib/import/m4/pathmax.m4: Update.
3530         * gnulib/import/m4/rawmemchr.m4: Update.
3531         * gnulib/import/m4/readdir.m4: Update.
3532         * gnulib/import/m4/readlink.m4: Update.
3533         * gnulib/import/m4/realloc.m4: Update.
3534         * gnulib/import/m4/rename.m4: Update.
3535         * gnulib/import/m4/rewinddir.m4: Update.
3536         * gnulib/import/m4/rmdir.m4: Update.
3537         * gnulib/import/m4/save-cwd.m4: Update.
3538         * gnulib/import/m4/secure_getenv.m4: Update.
3539         * gnulib/import/m4/setenv.m4: Update.
3540         * gnulib/import/m4/signal_h.m4: Update.
3541         * gnulib/import/m4/ssize_t.m4: Update.
3542         * gnulib/import/m4/stat-time.m4: Update.
3543         * gnulib/import/m4/stat.m4: Update.
3544         * gnulib/import/m4/std-gnu11.m4: Update.
3545         * gnulib/import/m4/stdbool.m4: Update.
3546         * gnulib/import/m4/stddef_h.m4: Update.
3547         * gnulib/import/m4/stdint.m4: Update.
3548         * gnulib/import/m4/stdio_h.m4: Update.
3549         * gnulib/import/m4/stdlib_h.m4: Update.
3550         * gnulib/import/m4/strchrnul.m4: Update.
3551         * gnulib/import/m4/strdup.m4: Update.
3552         * gnulib/import/m4/strerror.m4: Update.
3553         * gnulib/import/m4/string_h.m4: Update.
3554         * gnulib/import/m4/strstr.m4: Update.
3555         * gnulib/import/m4/strtok_r.m4: Update.
3556         * gnulib/import/m4/sys_socket_h.m4: Update.
3557         * gnulib/import/m4/sys_stat_h.m4: Update.
3558         * gnulib/import/m4/sys_time_h.m4: Update.
3559         * gnulib/import/m4/sys_types_h.m4: Update.
3560         * gnulib/import/m4/tempname.m4: Update.
3561         * gnulib/import/m4/time_h.m4: Update.
3562         * gnulib/import/m4/unistd-safer.m4: Update.
3563         * gnulib/import/m4/unistd_h.m4: Update.
3564         * gnulib/import/m4/warn-on-use.m4: Update.
3565         * gnulib/import/m4/wchar_h.m4: Update.
3566         * gnulib/import/m4/wchar_t.m4: Update.
3567         * gnulib/import/m4/wctype_h.m4: Update.
3568         * gnulib/import/m4/wint_t.m4: Update.
3569         * gnulib/import/malloc.c: Update.
3570         * gnulib/import/malloc/scratch_buffer.h: Update.
3571         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
3572         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
3573         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
3574         * gnulib/import/malloca.c: Update.
3575         * gnulib/import/malloca.h: Update.
3576         * gnulib/import/malloca.valgrind: Update.
3577         * gnulib/import/math.in.h: Update.
3578         * gnulib/import/mbrtowc.c: Update.
3579         * gnulib/import/mbsinit.c: Update.
3580         * gnulib/import/mbsrtowcs-impl.h: Update.
3581         * gnulib/import/mbsrtowcs-state.c: Update.
3582         * gnulib/import/mbsrtowcs.c: Update.
3583         * gnulib/import/memchr.c: Update.
3584         * gnulib/import/memmem.c: Update.
3585         * gnulib/import/mempcpy.c: Update.
3586         * gnulib/import/memrchr.c: Update.
3587         * gnulib/import/mkdir.c: Update.
3588         * gnulib/import/mkstemp.c: Update.
3589         * gnulib/import/msvc-inval.c: Update.
3590         * gnulib/import/msvc-inval.h: Update.
3591         * gnulib/import/msvc-nothrow.c: Update.
3592         * gnulib/import/msvc-nothrow.h: Update.
3593         * gnulib/import/open.c: Update.
3594         * gnulib/import/openat-die.c: Update.
3595         * gnulib/import/openat-priv.h: Update.
3596         * gnulib/import/openat-proc.c: Update.
3597         * gnulib/import/openat.c: Update.
3598         * gnulib/import/openat.h: Update.
3599         * gnulib/import/opendir.c: Update.
3600         * gnulib/import/pathmax.h: Update.
3601         * gnulib/import/pipe-safer.c: Update.
3602         * gnulib/import/rawmemchr.c: Update.
3603         * gnulib/import/readdir.c: Update.
3604         * gnulib/import/readlink.c: Update.
3605         * gnulib/import/realloc.c: Update.
3606         * gnulib/import/ref-add.sin: Update.
3607         * gnulib/import/ref-del.sin: Update.
3608         * gnulib/import/rename.c: Update.
3609         * gnulib/import/rewinddir.c: Update.
3610         * gnulib/import/rmdir.c: Update.
3611         * gnulib/import/same-inode.h: Update.
3612         * gnulib/import/save-cwd.c: Update.
3613         * gnulib/import/save-cwd.h: Update.
3614         * gnulib/import/scratch_buffer.h: Update.
3615         * gnulib/import/secure_getenv.c: Update.
3616         * gnulib/import/setenv.c: Update.
3617         * gnulib/import/signal.in.h: Update.
3618         * gnulib/import/stat-time.c: Update.
3619         * gnulib/import/stat-time.h: Update.
3620         * gnulib/import/stat-w32.c: Update.
3621         * gnulib/import/stat-w32.h: Update.
3622         * gnulib/import/stat.c: Update.
3623         * gnulib/import/stdbool.in.h: Update.
3624         * gnulib/import/stddef.in.h: Update.
3625         * gnulib/import/stdint.in.h: Update.
3626         * gnulib/import/stdio.in.h: Update.
3627         * gnulib/import/stdlib.in.h: Update.
3628         * gnulib/import/str-two-way.h: Update.
3629         * gnulib/import/strchrnul.c: Update.
3630         * gnulib/import/strdup.c: Update.
3631         * gnulib/import/streq.h: Update.
3632         * gnulib/import/strerror-override.c: Update.
3633         * gnulib/import/strerror-override.h: Update.
3634         * gnulib/import/strerror.c: Update.
3635         * gnulib/import/string.in.h: Update.
3636         * gnulib/import/stripslash.c: Update.
3637         * gnulib/import/strnlen1.c: Update.
3638         * gnulib/import/strnlen1.h: Update.
3639         * gnulib/import/strstr.c: Update.
3640         * gnulib/import/strtok_r.c: Update.
3641         * gnulib/import/sys_stat.in.h: Update.
3642         * gnulib/import/sys_time.in.h: Update.
3643         * gnulib/import/sys_types.in.h: Update.
3644         * gnulib/import/tempname.c: Update.
3645         * gnulib/import/tempname.h: Update.
3646         * gnulib/import/time.in.h: Update.
3647         * gnulib/import/unistd--.h: Update.
3648         * gnulib/import/unistd-safer.h: Update.
3649         * gnulib/import/unistd.in.h: Update.
3650         * gnulib/import/unsetenv.c: Update.
3651         * gnulib/import/verify.h: Update.
3652         * gnulib/import/extra/snippet/warn-on-use.h: Update.
3653         * gnulib/import/wchar.in.h: Update.
3654         * gnulib/import/wctype.in.h: Update.
3655         * gnulib/import/xalloc-oversized.h: Update.
3656         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
3657         "53e2c179f26a890fa6685af4b6c1397ee370433b".
3658
3659 2018-08-16  Gary Benson <gbenson@redhat.com>
3660
3661         PR gdb/13000:
3662         * gdb/main.c (captured_main_1): Exit with nonzero status
3663         in batch mode if the last command to be executed failed.
3664         * NEWS: Mention the above.
3665
3666 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
3667
3668         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
3669         end of warning message.
3670
3671 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3672
3673         PR gdb/22943:
3674         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
3675         (aarch64_extract_return_value): Use
3676         aapcs_is_vfp_call_or_return_candidate.
3677         (aarch64_return_in_memory): Likewise.
3678         (aarch64_store_return_value): Likewise.
3679
3680 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3681
3682         * aarch64-tdep.c
3683         (aapcs_is_vfp_call_or_return_candidate): Make static
3684         (pass_in_v_or_stack): Remove function.
3685         (pass_in_v_vfp_candidate): New function.
3686         (aarch64_push_dummy_call): Check for float register candidates.
3687
3688 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3689
3690         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
3691         (aapcs_is_vfp_call_or_return_candidate_1): New function.
3692         (aapcs_is_vfp_call_or_return_candidate): Likewise.
3693
3694 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
3695
3696         PR build/23399
3697         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
3698         (struct ipa_sym_addresses): Rename to...
3699         (struct ipa_sym_addresses_common): ... this.
3700         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
3701
3702 2018-08-28  Tom Tromey  <tom@tromey.com>
3703
3704         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3705         (token_fifo): Now a std::vector.
3706         (yylex, c_parse): Update.
3707         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3708         (token_fifo): Now a std::vector.
3709         (yylex, d_parse): Update.
3710         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3711         (token_fifo): Now a std::vector.
3712         (yylex, go_parse): Update.
3713
3714 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
3715
3716         * parser-defs.h (struct type_stack) <elements>: Change type to
3717         std::vector<union type_stack_elt>.
3718         <depth, size>: Remove.
3719         * parse.c (parse_exp_in_context_1): Adjust.
3720         (type_stack_reserve): Remove.
3721         (check_type_stack_depth): Remove.
3722         (insert_into_type_stack): Adjust to std::vector.
3723         (insert_type): Likewise.
3724         (push_type): Likewise.
3725         (push_type_int): Likewise.
3726         (insert_type_address_space): Likewise.
3727         (pop_type): Likewise.
3728         (pop_type_int): Likewise.
3729         (pop_typelist): Likewise.
3730         (pop_type_stack): Likewise.
3731         (append_type_stack): Likewise.
3732         (push_type_stack): Likewise.
3733         (get_type_stack): Likewise.
3734         (type_stack_cleanup): Likewise.
3735         (push_typelist): Likewise.
3736         (follow_types): Likewise.
3737         (_initialize_parse): Likewise.
3738
3739 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
3740
3741         * NEWS: Mention csky target.
3742
3743 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
3744             Hafiz Abid Qadeer  <abidh@codesourcery.com>
3745             Don Breazeal  <donb@codesourcery.com>
3746
3747         * csky-linux-tdep.c: New file.
3748         * csky-tdep.c: Likewise.
3749         * csky-tdep.h: Likewise.
3750         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
3751         csky-tdep.o.
3752         (HFILES_NO_SRCDIR): Add csky-tdep.h.
3753         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
3754         * configure.tgt: Add csky support.
3755
3756 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
3757
3758         * python/py-framefilter.c (py_print_frame): Print frame architecture
3759         when printing on an MI output.
3760
3761 2018-08-27  Tom Tromey  <tom@tromey.com>
3762
3763         PR build/23087:
3764         * configure: Rebuild.
3765         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
3766
3767 2018-08-27  Tom Tromey  <tom@tromey.com>
3768
3769         * aarch64-linux-tdep.c
3770         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
3771         casts to int.
3772
3773 2018-08-27  Tom Tromey  <tom@tromey.com>
3774
3775         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
3776         unsigned.
3777         (ppc64_standard_linkage1, ppc64_standard_linkage2)
3778         (ppc64_standard_linkage3, ppc64_standard_linkage4)
3779         (ppc64_standard_linkage5, ppc64_standard_linkage6)
3780         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
3781         unsigned.
3782
3783 2018-08-27  Tom Tromey  <tom@tromey.com>
3784
3785         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
3786         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
3787
3788 2018-08-27  Tom Tromey  <tom@tromey.com>
3789
3790         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
3791         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
3792         ULONGEST_MAX.
3793         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
3794         ULONGEST_MAX.
3795         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
3796         ULONGEST_MAX.
3797         * sparc-linux-tdep.c (sparc32_linux_sigframe)
3798         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
3799         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
3800         ULONGEST_MAX.
3801         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
3802         (ppc64_linux_sigaction_tramp_frame)
3803         (ppc32_linux_sighandler_tramp_frame)
3804         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
3805         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
3806         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
3807         * mn10300-linux-tdep.c (am33_linux_sigframe)
3808         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
3809         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
3810         * mips-linux-tdep.c (mips_linux_o32_sigframe)
3811         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
3812         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
3813         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
3814         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
3815         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
3816         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
3817         * microblaze-linux-tdep.c
3818         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
3819         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
3820         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
3821         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
3822         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
3823         * common/common-types.h (ULONGEST_MAX): New define.
3824         (CORE_ADDR_MAX): Fix formatting.
3825         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
3826         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
3827         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
3828         (arm_linux_rt_sigreturn_tramp_frame)
3829         (arm_eabi_linux_sigreturn_tramp_frame)
3830         (arm_eabi_linux_rt_sigreturn_tramp_frame)
3831         (thumb2_eabi_linux_sigreturn_tramp_frame)
3832         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
3833         (arm_linux_restart_syscall_tramp_frame)
3834         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
3835         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
3836         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
3837         ULONGEST_MAX.
3838         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
3839
3840 2018-08-27  Tom Tromey  <tom@tromey.com>
3841
3842         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
3843         CORE_ADDR_MAX.
3844         * mips-tdep.c (mips_deal_with_atomic_sequence)
3845         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
3846         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
3847         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
3848         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
3849         CORE_ADDR_MAX.
3850         * aarch64-tdep.c (aarch64_software_single_step): Use
3851         CORE_ADDR_MAX.
3852
3853 2018-08-27  Tom Tromey  <tom@tromey.com>
3854
3855         * linespec.c (complete_linespec_component): Add cast to "char".
3856         * completer.c (completion_tracker::build_completion_result): Add
3857         cast to "char".
3858
3859 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3860
3861         * solist.h (struct solist, struct target_so_ops): Fix
3862         indentation.
3863
3864 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3865
3866         * ada-tasks.c (ada_task_info_s): Remove typedef.
3867         (DEF_VEC_O(ada_task_info_s)): Remove.
3868         (struct ada_tasks_inferior_data): Initialize fields.
3869         <task_list>: Make an std::vector.
3870         (get_ada_tasks_inferior_data): Allocate with new.
3871         (ada_get_task_number): Adjust.
3872         (get_task_number_from_id): Likewise.
3873         (valid_task_id): Likewise.
3874         (ada_get_task_info_from_ptid): Likewise.
3875         (iterate_over_live_ada_tasks): Likewise.
3876         (add_ada_task): Likewise.
3877         (read_known_tasks): Likewise.
3878         (ada_build_task_list): Likewise.
3879         (print_ada_task_info): Likewise.
3880         (info_task): Likewise.
3881         (task_command_1): Likewise.
3882
3883 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3884
3885         * ada-lang.c (add_angle_brackets): Return std::string.
3886
3887 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
3888
3889         * python/py-threadevent.c (py_get_event_thread): Initialize
3890         pythread.
3891
3892 2018-08-24  Pedro Alves  <palves@redhat.com>
3893
3894         * python/py-bpevent.c (create_breakpoint_event_object): Use
3895         copy-initialization.
3896         * python/py-continueevent.c (emit_continue_event): Use
3897         copy-initialization.
3898         * python/py-exitedevent.c (create_exited_event_object): Return a
3899         gdbpy_ref<>.
3900         (emit_exited_event): Use copy-initialization.
3901         * python/py-inferior.c (python_new_inferior)
3902         (python_inferior_deleted, add_thread_object): Use
3903         copy-initialization.
3904         * python/py-infevents.c (create_inferior_call_event_object)
3905         (create_register_changed_event_object)
3906         (create_memory_changed_event_object): Return a gdbpy_ref<>.
3907         (emit_inferior_call_event, emit_memory_changed_event)
3908         (emit_register_changed_event): Use copy-initialization.
3909         * python/py-newobjfileevent.c (create_new_objfile_event_object):
3910         Return a gdbpy_ref<>.
3911         (emit_new_objfile_event): Use copy-initialization.
3912         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
3913         (emit_clear_objfiles_event): Use copy-initialization.
3914         * python/py-signalevent.c (create_signal_event_object): Use
3915         copy-initialization.
3916         * python/py-threadevent.c (create_thread_event_object): Use
3917         copy-initialization.
3918
3919 2018-08-24  Pedro Alves  <palves@redhat.com>
3920             Simon Marchi  <simon.marchi@ericsson.com>
3921
3922         PR gdb/23379
3923         * python/py-continueevent.c: Include "gdbthread.h".
3924         (create_continue_event_object): Add intro comment.  Add 'ptid'
3925         parameter.  Use it to find thread to pass to
3926         create_thread_event_object.
3927         (emit_continue_event): Pass PTID down to
3928         create_continue_event_object.
3929         * python/py-event.h (py_get_event_thread): Declare.
3930         (create_thread_event_object): Remove default from 'thread'
3931         parameter.
3932         * python/py-stopevent.c (create_stop_event_object): Use
3933         py_get_event_thread.
3934         * python/py-threadevent.c (get_event_thread): Rename to ...
3935         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
3936         and use it to find the thread.
3937         (create_thread_event_object): Assert that THREAD isn't null.
3938         Don't find the event thread here.
3939
3940 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
3941
3942         * block.h (blockrange, blockranges): New struct declarations.
3943         (struct block): Add new field named `ranges'.
3944         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
3945         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
3946         macros for accessing ranges in struct block.
3947         (make_blockranges): New declaration.
3948         block.c (make_blockranges): New function.
3949         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
3950         for block.
3951         * symtab.h (find_pc_partial_function): Add new parameter `block'.
3952         * blockframe.c (cache_pc_function_block): New static global.
3953         (clear_pc_function_cache): Clear cache_pc_function_block.
3954         (find_pc_partial_function): Move comment to symtab.h.  Add
3955         support for non-contiguous blocks.
3956         * cli/cli-cmds.c (block.h): Include.
3957         (print_disassembly): Handle printing of non-contiguous blocks.
3958         (disassemble_current_function): Likewise.
3959         (disassemble_command): Likewise.
3960
3961         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
3962         BLOCK_START.
3963         * blockframe.c (get_pc_function_start): Likewise.
3964         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
3965         (gcc_symbol_address): Likewise.
3966         * compile/compile-object-run.c (compile_object_run): Likewise.
3967         * compile/compile.c (get_expr_block_and_pc): Likewise.
3968         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
3969         (func_addr_to_tail_call_list): Likewise.
3970         * findvar.c (default_read_var_value): Likewise.
3971         * inline-frame.c (inline_frame_this_id): Likewise.
3972         (skip-inline_frames): Likewise.
3973         * infcmd.c (until_next_command): Likewise.
3974         * linespec.c (convert_linespec_to_sals): Likewise.
3975         * parse.c (parse_exp_in_context_1): Likewise.
3976         * printcmd.c (build_address_symbolic): likewise.
3977         (info_address_command): Likewise.
3978         symtab.c (find_function_start_sal): Likewise.
3979         (skip_prologue_sal): Likewise.
3980         (find_function_alias_target): Likewise.
3981         (find_gnu_ifunc): Likewise.
3982         * stack.c (find_frame_funname): Likewise.
3983         * symtab.c (fixup_symbol_section): Likewise.
3984         (find_function_start_sal): Likewise.
3985         (skip_prologue_sal): Likewsie.
3986         (find_function_alias_target): Likewise.
3987         (find_gnu_ifunc): Likewise.
3988         * tracepoint.c (info_scope_command): Likewise.
3989         * value.c (value_fn_field): Likewise.
3990
3991         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
3992         in place of find_pc_partial_function.
3993         * blockframe.c (find_function_entry_range_from_pc): New function.
3994         * symtab.h (find_function_entry_range_from_pc): Declare and document.
3995         * objfiles.c (objfile_relocate1): Relocate start and end addresses
3996         for each range in a block.
3997
3998
3999 2018-08-23  Xavier Roirand  <roirand@adacore.com>
4000
4001         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
4002         incrementation.
4003
4004 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4005
4006         * solib-svr4.c (read_program_headers_from_bfd): Return
4007         gdb::optional<gdb::byte_vector>.
4008         (svr4_exec_displacement): Adjust.
4009
4010 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4011
4012         * solib-svr4.c (read_program_header): Return
4013         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
4014         (find_program_interpreter): Return
4015         gdb::optional<gdb::byte_vector>.
4016         (scan_dyntag_auxv): Adjust.
4017         (enable_break): Adjust.
4018         (svr4_exec_displacement): Adjust.
4019
4020 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4021
4022         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
4023         * inf-child.c (inf_child_target::terminal_save_inferior): New.
4024
4025 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4026
4027         * guile/scm-string.c (gdbscm_scm_from_printf): Use
4028         string_vprintf.
4029         * guile/scm-utils.c (gdbscm_printf): Likewise.
4030         * serial.c (serial_printf): Likewise.
4031         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
4032
4033 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
4034
4035         * stack.c (print_frame): Print frame architecture when printing on
4036         an MI output.
4037         * NEWS: Mention new "arch" attribute in frame output.
4038
4039 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
4040
4041         * arch/aarch64.h (aarch64_regnum): Update comment.
4042
4043 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
4044
4045         * NEWS: Add SVE to 8.2 section.
4046
4047 2018-08-21  Pedro Alves  <palves@redhat.com>
4048
4049         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
4050         out from gdbscm_parse_function_args.
4051         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
4052         gdbscm_parse_function_args_1.
4053
4054 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
4055
4056         PR gdb/17816
4057         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
4058         operator.
4059
4060 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
4061
4062         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
4063
4064 2018-08-19  Michael Spang  <spang@google.com>
4065
4066         PR gdb/11786
4067         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
4068         for PT_TLS segments.
4069
4070 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
4071
4072         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
4073         dwarf_variable_value.
4074         * dwarf2-frame.c (class dwarf_expr_executor):
4075         Add override for dwarf_variable_value.
4076         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
4077         (class symbol_needs_eval_context): Likewise.
4078         (indirect_synthetic_pointer): Add forward declaration.
4079         (sect_variable_value): New function.
4080         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
4081         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
4082         for DW_OP_GNU_variable_value.
4083
4084 2018-08-16  Tom Tromey  <tom@tromey.com>
4085
4086         * top.c (read_command_file): Update.
4087         (command_line_input): Remove "repeat" argument.
4088         * ada-lang.c (get_selections): Update.
4089         * linespec.c (decode_line_2): Update.
4090         * defs.h (command_line_input): Remove argument.
4091         * cli/cli-script.c (read_next_line): Update.
4092         * python/py-gdb-readline.c: Update.
4093
4094 2018-08-17  Tom Tromey  <tom@tromey.com>
4095
4096         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
4097         command_line_input.
4098
4099 2018-08-15  Tom Tromey  <tom@tromey.com>
4100
4101         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
4102
4103 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
4104
4105         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
4106         If used, use find_pc_partial_function to find address range
4107         to disassemble.
4108         * mi/mi-main.c (mi_cmd_list_features): Report
4109         "data-disassemble-a-option" feature.
4110         * NEWS: Mention new -data-disassemble option -a.
4111
4112 2018-08-13  Tom Tromey  <tom@tromey.com>
4113
4114         * common/common-defs.h (_FORTIFY_SOURCE): Define.
4115
4116 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
4117
4118         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
4119         (aarch64_linux_collect_sve_regset): Likewise.
4120         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
4121         * regcache.h (regcache_map_entry_size): New function.
4122
4123 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
4124
4125         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
4126         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
4127         (SVE_HEADER_VL_LENGTH): Likewise.
4128         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
4129         (SVE_HEADER_FLAGS_LENGTH): Likewise.
4130         (SVE_HEADER_RESERVED_LENGTH): Likewise.
4131         (SVE_HEADER_SIZE_OFFSET): Likewise.
4132         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
4133         (SVE_HEADER_VL_OFFSET): Likewise.
4134         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
4135         (SVE_HEADER_FLAGS_OFFSET): Likewise.
4136         (SVE_HEADER_RESERVED_OFFSET): Likewise.
4137         (SVE_HEADER_SIZE): Likewise.
4138         (aarch64_linux_core_read_vq): Add function.
4139         (aarch64_linux_core_read_description): Check for SVE section.
4140
4141 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
4142
4143         * aarch64-fbsd-tdep.c
4144         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
4145         collect_size.
4146         * aarch64-linux-tdep.c
4147         (aarch64_linux_iterate_over_regset_sections): Likewise.
4148         * alpha-linux-tdep.c
4149         (alpha_linux_iterate_over_regset_sections):
4150         * alpha-nbsd-tdep.c
4151         (alphanbsd_iterate_over_regset_sections): Likewise.
4152         * amd64-fbsd-tdep.c
4153         (amd64fbsd_iterate_over_regset_sections): Likewise.
4154         * amd64-linux-tdep.c
4155         (amd64_linux_iterate_over_regset_sections): Likewise.
4156         * arm-bsd-tdep.c
4157         (armbsd_iterate_over_regset_sections): Likewise.
4158         * arm-fbsd-tdep.c
4159         (arm_fbsd_iterate_over_regset_sections): Likewise.
4160         * arm-linux-tdep.c
4161         (arm_linux_iterate_over_regset_sections): Likewise.
4162         * corelow.c (get_core_registers_cb): Likewise.
4163         (core_target::fetch_registers): Likewise.
4164         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
4165         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
4166         * gdbarch.h (void): Regenerate.
4167         * gdbarch.sh: Add supply_size and collect_size.
4168         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
4169         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
4170         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
4171         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
4172         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
4173         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
4174         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
4175         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
4176         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
4177         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
4178         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
4179         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
4180         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
4181         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
4182         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections): Likewise.
4183         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
4184         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
4185         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
4186         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
4187         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
4188         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
4189         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections): Likewise.
4190         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
4191         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
4192         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
4193         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
4194         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
4195         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
4196         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
4197         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
4198
4199 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
4200
4201         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
4202         with string_printf.
4203
4204 2018-08-10  Keith Seitz  <keiths@redhat.com>
4205
4206         * compile/compile-c-support.c (add_code_header, add_code_footer):
4207         Move into policy class.
4208         (c_push_user_expression, pop_user_expression_nop)
4209         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
4210         (compile_program): New host class.
4211         (c_compile_program): New typedef.
4212         (c_compute_porgram): Use c_compile_program.
4213
4214 2018-08-10  Keith Seitz  <keiths@redhat.com>
4215
4216         * compile/compile-internal.h (compile_instance::~compile_instance):
4217         Remove calls to htab_delete.
4218         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
4219         * compile.c (compile_instance::compile_instance): Initialize
4220         htab unique pointers.
4221         (compile_instance::get_cached_type, compile_instance::insert_type)
4222         (compile_instance::error_symbol_once): Update for unique_ptr.
4223
4224 2018-08-10  Keith Seitz  <keiths@redhat.com>
4225
4226         * compile/compile-c-symbols.c (struct symbol_error)
4227         (hash_symbol_error, eq_symbol_error, del_symbol_error)
4228         (compile_instance::insert_symbol_error)
4229         (compile_instance::error_symbol_once): Move to ...
4230         * compile/compile.c: ... here.
4231
4232 2018-08-10  Keith Seitz  <keiths@redhat.com>
4233
4234         * compile/compile-c-support.c (c_get_compile_context): Use `new'
4235         instead of `new_compile_instance'.
4236         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
4237         Update description.
4238         If the symbol error map is not initialized, create it.
4239         (generate_c_for_for_one_symbol): Do not check/initialize
4240         the symbol error map.
4241         * compile/compile-c-types.c (compile_c_instance): Make a class.
4242         Update all callers.
4243         (compile_instance::compile_instance): Initialize the type cache.
4244         (get_cached_type): New function.
4245         (insert_type): Update description.
4246         (compile_c_instance::m_default_cflags): Define.
4247         (convert_type): Update description.  Use get_cached_type.
4248         (delete_instance): Moved to destructor.
4249         (new_compile_instance): Moved to constructor.
4250         * compile/compile-c.h (compile_c_instance): Make class inheriting
4251         from compile_instance.
4252         <base>: Remove field.
4253         <type_map, symbol_err_map>: Move to base class.
4254         <c_plugin>: Rename to `m_plugin' and remove pointer type.
4255         * compile/compile-internal.h (compile_instance): Make class.
4256         <type_map_t, symbol_err_map_t>: Define.
4257         <fe>: Rename to `m_gcc_fe'.
4258         <scope, block, gcc_target_options>: Add `m_' prefix.
4259         <m_type_map, m_symbol_err_map>: New fields, moved from
4260         compile_c_instance.
4261         <destroy>: Remove.
4262         (convert_type, new_compile_instance): Remove.
4263         * compile/compile.c (cleanup_compile_instance): Remove.
4264         (compile_to_object): Use unique_ptr to eliminate cleanups.
4265         (compile_instance::set_print_callback, compile_instance::version)
4266         (compile_instance::set_verbose)
4267         (compile_instance::set_driver_filename)
4268         (compile_instance::set_triplet_regexp)
4269         (compile_instance::set_arguments)
4270         (compile_instance::set_source_file)
4271         (compile_instance::compile): Define.
4272
4273 2018-08-10  Keith Seitz  <keiths@redhat.com>
4274
4275         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
4276         * compile/compile-c-types.c: Define GCC_METHODN macros and include
4277         gcc-c-fe.def to define C plugin.
4278         (delete_instance): Delete `c_plugin'.
4279         (new_compile_instance): Initialize `c_plugin'.
4280         * compile/compile-c.h: Include gcc_c_plugin.h.
4281         (struct compile_c_instance) <c_plugin>: New member.
4282         * gcc-c-plugin.h: New file.
4283         Update all callers with API change.
4284
4285 2018-08-10  Keith Seitz  <keiths@redhat.com>
4286
4287         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
4288         (HFILES_NO_SRCDIR): ... to here.
4289         Add compile-internal.h and compile-c.h.
4290         * compile/compile-c-support.c: Include compile-c.h.
4291         * compile/compile-c-symbols.c: Include compile-c.h.
4292         (generate_c_for_variable_locations): Update comment.
4293         * compile/compile-c-types.c: Include compile-c.h.
4294         * compile/compile-c.h: New file -- moved C language declarations
4295         from other files here.
4296         * compile/compile-internal.h: Do not include hashtab.h or
4297         common/enum-flags.h.
4298         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
4299         (gcc_convert_symbol, gcc_symbol_address)
4300         (generate_c_for_variable_locations, c_get_mode_for_size)
4301         (c_get_range_decl_name): Definitions moved to compile-c.h.
4302         * compile/compile-loc2c.c: Include compile-c.h.
4303
4304 2018-08-10  Keith Seitz  <keiths@redhat.com>
4305
4306         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
4307         (c_symbol_substitution_name): ... this.
4308         Update all callers.
4309
4310 2018-08-10  Keith Seitz  <keiths@redhat.com>
4311
4312         * compile/compile-c-support.c (c_compute_program): Use
4313         unique_xmalloc_ptr to eliminate cleanup.
4314         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
4315         Return a unique_xmalloc_ptr and eliminate cleanup.
4316         * compile/compile-internal.h (generate_c_for_variable_locations):
4317         Return unique_xmalloc_ptr and update description.
4318
4319 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
4320
4321         * corelow.c (core_target::get_core_register_section): Rename
4322         min_size to section_min_size.
4323
4324 2018-08-09  Jim Wilson  <jimw@sifive.com>
4325
4326         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
4327         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
4328         * NEWS: Mention new GNU/Linux RISC-V target.
4329         * configure.host: Add riscv*-*-linux*.
4330         * configure.nat: Add riscv*.
4331         * configure.tgt: Add riscv*-*-linux*.
4332         * riscv-linux-nat.c: New file.
4333         * riscv-linux-tdep.c: New file.
4334
4335 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4336
4337         * infrun.c (resume): Make static, add forward declaration.
4338         (proceed): Update header comment.
4339         * infrun.h (resume): Delete declaration.
4340
4341 2018-08-09  Tom Tromey  <tom@tromey.com>
4342
4343         * riscv-tdep.h: Minor formatting fixes.
4344
4345 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
4346
4347         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
4348         * dwarf-index-cache.c (create_dir_and_check): Likewise.
4349         (test_mkdir_recursive): Likewise.
4350         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
4351
4352 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4353
4354         * valarith.c (value_subscripted_rvalue): If an array is not in
4355         memory, and we don't know the upper bound, then we can't know that
4356         the requested element exists or not.
4357
4358 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
4359
4360         * target.c (str_comma_list_concat_elem): Fix typo in comment.
4361         (target_options_to_string): Add comment.
4362
4363 2018-08-08  Tom Tromey  <tom@tromey.com>
4364
4365         * unittests/scoped_mmap-selftests.c: Check result of "write".
4366
4367 2018-08-08  Jim Wilson  <jimw@sifive.com>
4368
4369         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
4370         (decode_register_index_short): New.
4371         (decode_j_type_insn, decode_cj_type_insn): New.
4372         (decode_b_type_insn, decode_cb_type_insn): New.
4373         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
4374         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
4375         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
4376         is_c_sw_insn instead of is_sw_insn.
4377         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
4378         (riscv_software_single_step): New.
4379         * riscv-tdep.h (riscv_software_single_step): Declare.
4380
4381         * riscv-tdep.c (riscv_isa_xlen): Drop static.
4382         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
4383
4384 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
4385
4386         PR gdb/18050:
4387         * target.c (dispose_inferior): Don't dispose of inferiors that are
4388         already killed.
4389
4390 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
4391
4392         * remote.c (remote_target::download_tracepoint): Change char* to
4393         const char*.
4394
4395 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
4396
4397         * target.h (target_options_to_string): Return an std::string.
4398         * target.c (str_comma_list_concat_elem): Return void, use
4399         std::string.
4400         (do_option): Likewise.
4401         (target_options_to_string): Return an std::string.
4402         * linux-nat.c (linux_nat_target::wait): Adjust.
4403         * target-debug.h (target_debug_print_options): Adjust.
4404
4405 2018-08-07  Tom Tromey  <tom@tromey.com>
4406
4407         * Makefile.in (CPPFLAGS): New variable.
4408         (INTERNAL_CPPFLAGS): Use it.
4409
4410 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4411
4412         * NEWS: Mention the index cache.
4413
4414 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4415
4416         * common/pathstuff.h (get_standard_cache_dir): New.
4417         * common/pathstuff.c (get_standard_cache_dir): New.
4418         * build-id.h (build_id_to_string): New.
4419         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
4420         DEBUG_STR_SUFFIX): Move to here.
4421         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
4422         DEBUG_STR_SUFFIX): Move from there.
4423         (write_psymtabs_to_index): Make non-static, add basename
4424         parameter.  Write to temporary files, rename when done.
4425         (save_gdb_index_command): Adjust call to
4426         write_psymtabs_to_index.
4427         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
4428         field.
4429         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
4430         (get_gdb_index_contents_from_cache): New.
4431         (get_gdb_index_contents_from_cache_dwz): New.
4432         (dwarf2_initialize_objfile): Read index from cache.
4433         (dwarf2_build_psymtabs): Save to index.
4434         * dwarf-index-cache.h: New file.
4435         * dwarf-index-cache.c: New file.
4436         * dwarf-index-write.h: New file.
4437
4438 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4439
4440         * gnulib/aclocal.m4: Re-generate.
4441         * gnulib/config.in: Re-generate.
4442         * gnulib/configure: Re-generate.
4443         * gnulib/import/Makefile.am: Re-generate.
4444         * gnulib/import/Makefile.in: Re-generate.
4445         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
4446         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
4447         * gnulib/import/m4/mkdir.m4: New file.
4448         * gnulib/import/mkdir.c: New file.
4449         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
4450         module.
4451
4452 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4453
4454         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
4455         * common/scoped_mmap.c: New file.
4456         * common/scoped_mmap.h (destroy): New method.
4457         (~scoped_mmap, reset): Use destroy.
4458         (scoped_mmap): New move constructor.
4459         (mmap_file): New declaration.
4460         * unittests/scoped_mmap-selftests.c (test_normal,
4461         test_invalid_filename, run_tests): New functions.
4462         (_initialize_scoped_mmap_selftests): Register selftest.
4463
4464 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4465
4466         * dwarf2read.c (read_gdb_index_from_section): Rename to...
4467         (read_gdb_index_from_buffer): ... this.  Remove section
4468         parameter, add buffer parameter.
4469         (get_gdb_index_contents_ftype,
4470         get_gdb_index_contents_dwz_ftype): New typedefs.
4471         (dwarf2_read_gdb_index): Add callback parameters to get the
4472         index contents.
4473         (get_gdb_index_contents_from_section): New.
4474         (dwarf2_initialize_objfile): Update call to
4475         dwarf2_read_gdb_index.
4476
4477 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4478
4479         * common/filestuff.h (gdb_fopen_cloexec): New overload.
4480         (gdb_open_cloexec): Likewise.
4481         * nat/linux-osdata.c (command_from_pid): Use string_printf.
4482         (commandline_from_pid): Likewise.
4483         (linux_xfer_osdata_threads): Likewise.
4484         (linux_xfer_osdata_fds): Likewise.
4485         * ada-lang.c (is_package_name): Likewise.
4486         * auxv.c (procfs_xfer_auxv): Likewise.
4487         * breakpoint.c (print_one_breakpoint_location): Use
4488         uiout::field_fmt.
4489         (print_one_catch_solib): Use string_printf.
4490         * coff-pe-read.c (add_pe_exported_sym): Likewise.
4491         (add_pe_forwarded_sym): Likewise.
4492         * dwarf2read.c (create_type_unit_group): Likewise.
4493         (build_error_marker_type): Likewise.
4494         * infcall.c (get_function_name): Likewise.
4495         * valprint.c (print_converted_chars_to_obstack): Likewise.
4496         * xtensa-tdep.c (xtensa_register_type): Likewise.
4497
4498 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
4499
4500         * remote.c (remote_target::download_tracepoint): Fix format
4501         string errors.
4502
4503 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4504
4505         * tracefile.c: Include common/byte-vector.h.
4506         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
4507         with trace_regblock_size if needed.  Update uses of buf.
4508
4509 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4510
4511         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
4512         std::vector<unsigned char>.
4513         * tracepoint.c (collection_list::collection_list): Remove
4514         m_regs_mask initializer from initializer list.  Resize
4515         m_regs_mask using the largest remote register number.
4516         (collection_list::add_remote_register): Remove size check on
4517         m_regs_mask.  Use at to access element.
4518         (collection_list::stringify): Change type of temp_buf to
4519         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
4520         stringify the register mask.  Use pack_hex_byte for the register
4521         mask.
4522
4523 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4524
4525         * tracepoint.h (class collection_list) <add_register>: Remove.
4526         <add_remote_register, add_ax_registers, add_local_register>:
4527         Declare.
4528         <add_memrange>: Add scope parameter.
4529         * tracepoint.c (encode_actions_1): Likewise.
4530         (collection_list::add_register): Rename to ...
4531         (collection_list::add_remote_register): ... this.  Update
4532         comment.
4533         (collection_list::add_ax_registers, add_local_register): New
4534         methods.
4535         (collection_list::add_memrange): Add scope parameter.  Call
4536         add_local_register instead of add_register.
4537         (finalize_tracepoint_aexpr): New function.
4538         (collection_list::collect_symbol): Update calls to add_memrange.
4539         Call add_local_register instead of add_register.  Call
4540         add_ax_registers.  Call finalize_tracepoint_aexpr.
4541         (encode_actions_1): Get remote regnos for $reg action.  Call
4542         add_remote_register, add_ax_registers, and add_local_register.
4543         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
4544         (validate_actionline): Call finalize_tracepoint_aexpr.
4545
4546 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4547
4548         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
4549         Replace array buf with gdb::char_vector buf, of size
4550         get_remote_packet_size ().  Replace references to buf and
4551         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
4552         and xsnprintf with snprintf.  Raise errors if the buffer is too
4553         small.
4554
4555 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4556
4557         * remote.c (remote_target::download_tracepoint): Fix the has_more
4558         predicate in the QTDP action list iteration.
4559
4560 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4561
4562         * remote.c (remote_target::download_tracepoint): Fix indentation
4563         in for block.
4564
4565 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4566
4567         * proc-api.c (_initialize_proc_api): Remove c, unused.
4568         * procfs.c (procfs_init_inferior): Remove signals, unused.
4569         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
4570         unused.
4571
4572 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
4573             Andrew Burgess  <andrew.burgess@embecosm.com>
4574
4575         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
4576         'W_STOPCODE (0)' as this could be ambiguous.
4577
4578 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
4579
4580         * ser-tcp.c (net_open): Fix thinko when deciding whether to
4581         disable TCP's Nagle algorithm (use "ai_protocol" instead of
4582         "ai_socktype").
4583
4584 2018-08-02  Tom Tromey  <tom@tromey.com>
4585
4586         PR symtab/16842.
4587         * dwarf2read.c (read_func_scope): Set symtab on template parameter
4588         symbols.
4589         (process_structure_scope): Likewise.
4590
4591 2018-08-02  Xavier Roirand  <roirand@adacore.com>
4592
4593         PR gdb/22629:
4594         * darwin-nat.c (darwin_kill_inferior): Fix handling of
4595         kill inferior.
4596
4597 2018-08-02  Tom Tromey  <tom@tromey.com>
4598
4599         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
4600         (darwin_suspend_inferior, darwin_resume_inferior)
4601         (darwin_decode_notify_message, darwin_resume_inferior_threads)
4602         (darwin_check_new_threads): Check result of get_darwin_inferior.
4603
4604 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
4605
4606         GDB 8.1.1 released.
4607
4608 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
4609
4610         * varobj.c (varobj_get_path_expr_parent): Report an error if
4611         parent is a dynamic varobj.
4612
4613 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
4614
4615         * gnulib/aclocal.m4: Re-generate.
4616         * gnulib/config.in: Re-generate.
4617         * gnulib/configure: Re-generate.
4618         * gnulib/import/Makefile.in: Re-generate.
4619         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
4620         * gnulib/import/m4/onceonly.m4: Re-generate.
4621
4622 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
4623
4624         * target-descriptions.c (struct xml_test_tdesc): New.
4625         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
4626         (record_xml_tdesc): Update.
4627         (maintenance_check_xml_descriptions): Update.
4628         * target-descriptions.h (record_xml_tdesc): Update comment.
4629
4630 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
4631
4632         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
4633         checking array bounds are defined.
4634
4635 2018-07-30  Tom Tromey  <tom@tromey.com>
4636
4637         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
4638         irreflexivity violation.
4639
4640 2018-07-30  Tom Tromey  <tom@tromey.com>
4641
4642         * cli/cli-decode.c (lookup_cmd): Remove lint code.
4643         * value.c (unpack_long): Remove lint code.
4644         * valops.c (value_ind): Remove lint code.
4645         * valarith.c (value_x_binop, value_x_unop, value_equal)
4646         (value_pos): Remove lint code.
4647
4648 2018-07-28  Tom de Vries  <tdevries@suse.de>
4649
4650         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
4651         with undefined upper bound as <optimized out>.
4652
4653 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
4654
4655         * gcore.in: Rename variable "name" to "prefix".  Expand
4656         "usage" text.
4657
4658 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
4659
4660         * windows-nat.c (windows_nat_target::create_inferior): Update to
4661         call close() in global namespace.
4662
4663 2018-07-26  Tom Tromey  <tom@tromey.com>
4664
4665         * dwarf-index-write.c (add_address_entry): Don't add objfile
4666         offsets.
4667         * dbxread.c (find_stab_function): Rename from
4668         find_stab_function_addr.  Return a bound_minimal_symbol.
4669         (read_dbx_symtab): Use raw_text_low, raw_text_high.
4670         Don't add objfile offsets.
4671         (end_psymtab): Use raw_text_low, raw_text_high,
4672         MSYMBOL_VALUE_RAW_ADDRESS.
4673         (read_ofile_symtab): Update.
4674         (process_one_symbol): Update.
4675         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
4676         offsets.
4677         (dw2_relocate): Remove.
4678         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
4679         searching addrmap.
4680         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
4681         Update.
4682         (process_psymtab_comp_unit_reader, add_partial_symbol)
4683         (add_partial_subprogram, dwarf2_ranges_read): Update.
4684         (load_partial_dies): Update.
4685         (add_address_entry): Don't add objfile offsets.
4686         (dwarf2_build_include_psymtabs): Update.
4687         (create_addrmap_from_aranges): Don't add objfile offsets.
4688         (dw2_find_pc_sect_compunit_symtab): Update.
4689         * mdebugread.c (parse_symbol): Don't add objfile offsets.
4690         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
4691         Update.
4692         (parse_partial_symbols): Don't add objfile offsets.  Use
4693         raw_text_low, raw_text_high.  Update.
4694         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
4695         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
4696         or call 'relocate' quick function.  Clear psymbol_map.
4697         * psympriv.h (struct partial_symbol) <address>: Add section
4698         offset.
4699         <set_unrelocated_address>: Rename from set_address.
4700         <raw_text_low, raw_text_high>: New methods.
4701         <text_low, text_high>: Add objfile parameter.
4702         (add_psymbol_to_bcache): Add 'section' parameter.  Call
4703         set_unrelocated_address.
4704         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4705         (find_pc_psymbol): Update.
4706         (fixup_psymbol_section, relocate_psymtabs): Remove.
4707         (dump_psymtab, psym_functions): Update.
4708         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
4709         parameter.
4710         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
4711         (start_psymtab_common): Update.
4712         * symfile-debug.c (debug_qf_relocate): Remove.
4713         (debug_sym_quick_functions): Update.
4714         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
4715         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
4716         Update.
4717
4718 2018-07-26  Tom Tromey  <tromey@redhat.com>
4719
4720         * dbxread.c (end_psymtab): Use text_high_valid and
4721         text_low_valid.
4722         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
4723         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
4724         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
4725         Update comment.
4726         <text_low_valid, text_high_valid>: New fields.
4727         <set_text_low, set_text_high>: Update.
4728         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
4729
4730 2018-07-26  Tom Tromey  <tom@tromey.com>
4731
4732         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
4733         Update.
4734         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
4735         textlow and texthigh fields.
4736         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
4737         Update.
4738         * mdebugread.c (parse_lines, parse_partial_symbols)
4739         (psymtab_to_symtab_1): Update.
4740         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
4741         Rename fields.  Update comment.  Now private.
4742         <text_low, text_high, set_text_low, set_text_high>: New methods.
4743         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4744         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
4745         (start_psymtab_common, maintenance_info_psymtabs)
4746         (maintenance_check_psymtabs): Update.
4747         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
4748         texthigh fields.
4749         (scan_xcoff_symtab): Update.
4750
4751 2018-07-26  Tom Tromey  <tromey@redhat.com>
4752
4753         * psympriv.h (struct partial_symbol) <unrelocated_address,
4754         address, set_address>: New methods.
4755         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
4756         (fixup_psymbol_section, relocate_psymtabs): Update.
4757         (print_partial_symbols): Add 'objfile' parameter.  Update.
4758         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
4759         Update.
4760
4761 2018-07-26  Tom Tromey  <tom@tromey.com>
4762
4763         * dwarf-index-write.c (write_psymbols, debug_names::insert)
4764         (debug_names::write_psymbols): Update.
4765         * psympriv.h (struct partial_symbol): Derive from
4766         general_symbol_info.
4767         <obj_section>: New method.
4768         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
4769         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4770         (find_pc_sect_psymbol, fixup_psymbol_section)
4771         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
4772         (print_partial_symbols, recursively_search_psymtabs)
4773         (compare_psymbols, psymbol_hash, psymbol_compare)
4774         (add_psymbol_to_bcache, maintenance_check_psymtabs)
4775         (psymbol_name_matches, psym_fill_psymbol_map): Update.
4776
4777 2018-07-26  Tom Tromey  <tromey@redhat.com>
4778
4779         * dbxread.c (end_psymtab): Remove dead code.
4780
4781 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
4782
4783         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
4784         DWARF unwinders are disabled.
4785         * dwarf2-frame.c: Add dwarf2read.h include.
4786         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
4787         disabled.
4788         (dwarf2_frame_unwinders_enabled_p): Define.
4789         (show_dwarf_unwinders_enabled_p): New function.
4790         (_initialize_dwarf2_frame): Register switch to control DWARF
4791         unwinder use.
4792         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
4793         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
4794         (show_dwarf_cmdlist): Remove static keyword.
4795         * dwarf2read.h (set_dwarf_cmdlist): Declare.
4796         (show_dwarf_cmdlist): Declare.
4797         * NEWS: Document new feature.
4798
4799 2018-07-26  Tom de Vries  <tdevries@suse.de>
4800
4801         PR breakpoints/23366
4802         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
4803
4804 2018-07-26  Tom de Vries  <tdevries@suse.de>
4805
4806         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
4807         DW_AT_count can't be translated to a dynamic prop.
4808
4809 2018-07-25  Tom de Vries  <tdevries@suse.de>
4810
4811         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
4812         try/catch.
4813
4814 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
4815
4816         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
4817
4818 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
4819
4820         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
4821
4822 2018-07-24  Keith Seitz  <keiths@redhat.comt
4823
4824         PR symtab/23010
4825         * dwarf2read.c (dw2_add_symbol_to_list): New function.
4826         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
4827         instead of add_symbol_to_list.
4828         (read_file_scope): Call prepare_one_comp_unit before reading
4829         any other DIEs.
4830
4831 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
4832
4833         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
4834
4835 2018-07-24  Tom Tromey  <tom@tromey.com>
4836
4837         * utils.c (malloc, realloc, free): Don't declare.
4838         * configure, config.in: Rebuild.
4839         * configure.ac: Don't check for declarations of free, malloc, or
4840         realloc.
4841
4842 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
4843
4844         * aarch64-linux-nat.c
4845         (aarch64_linux_nat_target::stopped_data_address): Remove unused
4846         variable.
4847         * arm-linux-nat.c (fetch_regs): Likewise.
4848         (store_regs): Likewise.
4849         (fetch_vfp_regs): Likewise.
4850         (store_vfp_regs): Likewise.
4851         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
4852         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
4853         (arm_linux_nat_target::insert_watchpoint): Likewise.
4854         (arm_linux_nat_target::remove_watchpoint): Likewise.
4855         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
4856         Likewise.
4857         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
4858         Likewise.
4859         * ppc-linux-nat.c (fetch_register): Likewise.
4860         (fetch_all_gp_regs): Likewise.
4861         (fetch_ppc_registers): Likewise.
4862         (store_all_gp_regs): Likewise.
4863         (store_ppc_registers): Likewise.
4864         (hwdebug_insert_point): Likewise.
4865         (can_use_watchpoint_cond_accel): Likewise.
4866         * remote-sim.c (gdb_os_write_stdout): Likewise.
4867
4868 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
4869             Tom Tromey  <tom@tromey.com>
4870
4871         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
4872         test for it.
4873         * configure: Rebuild.
4874
4875 2018-07-22  Tom Tromey  <tom@tromey.com>
4876
4877         * regformats/regdat.sh: Define xmltarget_${name} inside
4878         #ifndef IN_PROCESS_AGENT.
4879
4880 2018-07-22  Tom Tromey  <tom@tromey.com>
4881
4882         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
4883
4884 2018-07-22  Tom Tromey  <tom@tromey.com>
4885
4886         * symfile.c (reread_symbols): Notify iter, not objfile.
4887
4888 2018-07-22  Tom Tromey  <tom@tromey.com>
4889
4890         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
4891         Use arch_ops.
4892         (ravenscar_thread_target::prepare_to_store): Likewise.
4893
4894 2018-07-22  Tom Tromey  <tom@tromey.com>
4895
4896         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
4897         unused variable.  Call value_fetch_lazy when needed.
4898         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
4899         Remove unused variable.  Call value_fetch_lazy when needed.
4900
4901 2018-07-22  Tom Tromey  <tom@tromey.com>
4902
4903         * m32c-tdep.c (mark_dma): Return void.
4904         (make_regs): Remove unused declarations.
4905
4906 2018-07-22  Tom Tromey  <tom@tromey.com>
4907
4908         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
4909         cmdscm_get_valid_command_smob_arg_unsafe for effect.
4910         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
4911         bkscm_get_valid_block_smob_arg_unsafe for effect.
4912
4913 2018-07-22  Tom Tromey  <tom@tromey.com>
4914
4915         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
4916         value_type.
4917
4918 2018-07-22  Tom Tromey  <tom@tromey.com>
4919
4920         * windows-nat.c (saved_context): Conditionally define.
4921         * remote.c (remote_target::remote_btrace_maybe_reopen):
4922         Conditionally declare "warned".
4923         * inflow.c (sigquit_ours): Conditionally define.
4924         (new_tty): Move "tty" declaration inside #if.
4925         * guile/guile.c (guile_datadir): Conditionally define.
4926         * charset.c (set_be_le_names): Move some declarations inside #if.
4927         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
4928         #if.
4929         (parse_xml_btrace_conf): Likewise.
4930
4931 2018-07-22  Tom Tromey  <tom@tromey.com>
4932
4933         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
4934
4935 2018-07-22  Tom Tromey  <tom@tromey.com>
4936
4937         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
4938         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
4939         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
4940         * buildsym-legacy.c (get_macro_table): Remove unused variable.
4941         * stack.c (frame_apply_level_command): Remove unused variable.
4942         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
4943         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
4944         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
4945         unused variable.
4946         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
4947         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
4948         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
4949         variable.
4950         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
4951         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
4952         variable.
4953         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
4954         Remove unused variable.
4955         * cli/cli-script.c (recurse_read_control_structure): Remove unused
4956         variable.
4957         * common/tdesc.c (print_xml_feature::visit): Remove unused
4958         variable.
4959         * compile/compile-object-load.c (store_regs): Remove unused
4960         variables.
4961         * complaints.c (clear_complaints): Remove unused variable.
4962         * corelow.c (core_target_open): Remove unused variable.
4963         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
4964         variable.
4965         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
4966         variable.
4967         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
4968         variable.
4969         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
4970         variable.
4971         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
4972         variable.
4973         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
4974         variable.
4975         * ia64-tdep.c (examine_prologue): Remove unused variable.
4976         * infcall.c (run_inferior_call): Remove unused variable.
4977         * inferior.c (exit_inferior): Remove unused variable.
4978         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
4979         * linespec.c (decode_line_2): Remove unused variable.
4980         * linux-nat.c (super_close): Remove.
4981         * linux-tdep.c (linux_info_proc): Remove unused variable.
4982         * mi/mi-main.c (mi_execute_command): Remove unused variable.
4983         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
4984         Remove unused variable.
4985         * parse.c (find_minsym_type_and_address): Remove unused variable.
4986         * printcmd.c (info_symbol_command, printf_floating): Remove unused
4987         variable.
4988         * python/py-breakpoint.c (bppy_set_commands): Remove unused
4989         variable.
4990         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
4991         variables.
4992         * record-btrace.c (record_btrace_target::store_registers): Remove
4993         unused variable.
4994         (cmd_show_record_btrace_cpu): Remove unused variable.
4995         * riscv-tdep.c (riscv_register_reggroup_p)
4996         (riscv_push_dummy_call, riscv_return_value): Remove unused
4997         variable.
4998         * rust-exp.y (literal): Remove unused variable.
4999         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
5000         unused variable.
5001         <STRUCTOP_ANONYMOUS>: Likewise.
5002         * s390-linux-tdep.c (s390_linux_init_abi_31)
5003         (s390_linux_init_abi_64): Remove unused variable.
5004         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
5005         (file_select_thread, net_windows_open, _initialize_ser_windows):
5006         Remove unused variables.
5007         * symtab.c (find_pc_sect_line): Remove unused variable.
5008         * target-memory.c (compute_garbled_blocks): Remove unused
5009         variable.
5010         (target_write_memory_blocks): Remove unused variable.
5011         * target.c (target_stack::unpush): Remove unused variables.
5012         * tracepoint.c (start_tracing, all_tracepoint_actions)
5013         (merge_uploaded_trace_state_variables)
5014         (print_one_static_tracepoint_marker): Remove unused variable.
5015         * unittests/basic_string_view/element_access/char/1.cc (test01):
5016         Remove unused variable.
5017         * windows-nat.c (windows_continue, windows_add_all_dlls)
5018         (do_initial_windows_stuff, windows_nat_target::create_inferior):
5019         Remove unused variables.
5020
5021 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
5022
5023         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
5024         attr_profile in HAVE_ELF.
5025         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
5026         HAVE_ELF.
5027
5028 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
5029
5030         * frame.c (frame_register_unwind): Change parameter name.
5031         (frame_unwind_register): Likewise.
5032         (frame_unwind_register_value): Likewise.
5033         (frame_unwind_register_signed): Likewise.
5034         (frame_unwind_register_unsigned): Likewise.
5035         * frame.h (frame_register_unwind): Likewise.
5036         (frame_unwind_register): Likewise.
5037         (frame_unwind_register_value): Likewise.
5038         (frame_unwind_register_signed): Likewise.
5039         (frame_unwind_register_unsigned): Likewise.
5040         (frame_unwind_arch): Likewise.
5041
5042 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
5043
5044         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
5045         ISA maintenance.
5046
5047 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
5048
5049         * mips-linux-nat.c (mips_linux_nat_target::read_description):
5050         Call `get_ptrace_pid' rather than extracting the ptrace PID by
5051         hand.
5052
5053 2018-07-20  Keith Seitz  <keiths@redhat.com>
5054
5055         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
5056         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
5057         m_compunit_symtab, m_language>: Add "m_" prefix.
5058         Update all uses.
5059         * buildsym.c: Update all uses.
5060
5061 2018-07-20  Tom Tromey  <tom@tromey.com>
5062
5063         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
5064         * buildsym.h (record_line_ftype): Remove typedef.
5065
5066 2018-07-20  Tom Tromey  <tom@tromey.com>
5067
5068         * buildsym-legacy.h (augment_type_symtab): Don't declare.
5069         (end_expandable_symtab): Likewise.
5070         (end_symtab_get_static_block): Likewise.
5071         (end_symtab_from_static_block): Likewise.
5072         * buildsym-legacy.c (augment_type_symtab): Remove.
5073         (end_expandable_symtab): Remove.
5074         (end_symtab_get_static_block): Remove.
5075         (end_symtab_from_static_block): Remove.
5076
5077 2018-07-20  Tom Tromey  <tom@tromey.com>
5078
5079         * dwarf2read.c: Include buildsym.h.
5080         (struct dwarf2_cu) <builder>: New method.
5081         (fixup_go_packaging): Update.
5082         (process_full_comp_unit, process_full_type_unit): Update.  Don't
5083         use scoped_free_pendings.
5084         (using_directives): Add "cu" parameter, remove "language".
5085         (read_import_statement, setup_type_unit_groups, )
5086         (read_func_scope, read_lexical_block_scope)
5087         (dwarf2_record_block_ranges, read_namespace): Update.
5088         (lnp_state_machine::lnp_state_machine): Add cu parameter.
5089         (lnp_state_machine::handle_end_sequence): Update.
5090         (class lnp_state_machine) <m_cu>: New member.
5091         <m_record_line_callback>: Remove.
5092         <m_currently_recording_lines>: New member.
5093         (lnp_state_machine::handle_set_file): Update.
5094         (noop_record_line): Remove.
5095         (dwarf_record_line_p): Add cu parameter.
5096         (dwarf_record_line_1, dwarf_finish_line): Likewise.
5097         (lnp_state_machine::record_line)
5098         (lnp_state_machine::lnp_state_machine)
5099         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
5100         (dwarf_decode_lines): Update.
5101         (dwarf2_start_subfile): Add cu parameter.
5102         (dwarf2_start_symtab, new_symbol): Update.
5103         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
5104         Remove dwarf2_per_objfile parameter.
5105         (dwarf_decode_macros): Update.
5106
5107 2018-07-20  Tom Tromey  <tom@tromey.com>
5108
5109         * stabsread.c (define_symbol): Update.
5110         * buildsym-legacy.h (get_buildsym_compunit): Declare.
5111         * dwarf2read.c (new_symbol): Update.
5112         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
5113         * cp-namespace.c: Include buildsym.h.
5114         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
5115         * buildsym-legacy.c (get_buildsym_compunit): New function.
5116
5117 2018-07-20  Tom Tromey  <tom@tromey.com>
5118
5119         * xcoffread.c: Include buildsym-legacy.h.
5120         * windows-nat.c: Include buildsym-legacy.h.
5121         * stabsread.c: Include buildsym-legacy.h.
5122         * mdebugread.c: Include buildsym-legacy.h.
5123         * buildsym-legacy.h: New file.
5124         * buildsym-legacy.c: New file, from buildsym.c.
5125         * go32-nat.c: Include buildsym-legacy.h.
5126         * dwarf2read.c: Include buildsym-legacy.h.
5127         * dbxread.c: Include buildsym-legacy.h.
5128         * cp-namespace.c: Include buildsym-legacy.h.
5129         * coffread.c: Include buildsym-legacy.h.
5130         * buildsym.h: Move some contents to buildsym-legacy.h.
5131         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
5132         buildsym-legacy.c.
5133         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
5134
5135 2018-07-20  Tom Tromey  <tom@tromey.com>
5136
5137         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
5138         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
5139         (buildsym_compunit::buildsym_compunit)
5140         (buildsym_compunit::~buildsym_compunit)
5141         (buildsym_compunit::get_macro_table): Define.
5142
5143 2018-07-20  Tom Tromey  <tom@tromey.com>
5144
5145         * buildsym.c (reset_symtab_globals): Remove.
5146         (buildsym_compunit::end_symtab_from_static_block): Update.
5147         (buildsym_compunit::augment_type_symtab): Update.
5148         (end_symtab_from_static_block): Call free_buildsym_compunit.
5149         (augment_type_symtab, end_symtab, end_expandable_symtab):
5150         Likewise.
5151
5152 2018-07-20  Tom Tromey  <tom@tromey.com>
5153
5154         * arch-utils.c: Do not include buildsym.h.
5155         * mipsread.c: Do not include buildsym.h.
5156         * machoread.c: Do not include buildsym.h.
5157         * elfread.c: Do not include buildsym.h.
5158
5159 2018-07-20  Tom Tromey  <tom@tromey.com>
5160
5161         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
5162         initialization.
5163         (buildsym_compunit): Add new constructor.
5164         (struct buildsym_compunit) <get_last_source_file, finish_block,
5165         record_block_range, start_subfile, patch_subfile_names,
5166         push_subfile, pop_subfile, record_line, get_compunit_symtab,
5167         set_last_source_start_addr, get_last_source_start_addr,
5168         get_local_using_directives, set_local_using_directives,
5169         get_global_using_directives, outermost_context_p,
5170         get_current_context_stack, get_context_stack_depth,
5171         get_current_subfile, get_local_symbols, get_file_symbols,
5172         get_global_symbols, record_debugformat, record_producer,
5173         push_context, pop_context, end_symtab_get_static_block,
5174         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
5175         New public methods.
5176         <record_pending_block, finish_block_internal, make_blockvector,
5177         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
5178         private methods.
5179         Update all users.
5180
5181 2018-05-22  Tom Tromey  <tom@tromey.com>
5182
5183         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
5184         parameter.
5185         (finish_block_internal): Update.
5186
5187 2018-07-20  Tom Tromey  <tom@tromey.com>
5188
5189         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
5190         parameter.
5191         (finish_block_internal): Update.
5192
5193 2018-07-20  Tom Tromey  <tom@tromey.com>
5194
5195         * buildsym.h (EXTERN): Don't define or undef.
5196         * buildsym.c (EXTERN): Don't define.
5197
5198 2018-07-20  Tom Tromey  <tom@tromey.com>
5199
5200         * buildsym.c: Remove TODO comment.
5201
5202 2018-07-20  Tom Tromey  <tom@tromey.com>
5203
5204         * coffread.c (coff_symtab_read): Update.
5205         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
5206         (xcoff_new_init): Update.
5207         * mipsread.c (mipscoff_new_init): Update.
5208         * mdebugread.c (mdebug_build_psymtabs): Update.
5209         * elfread.c (elf_new_init): Update.
5210         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
5211         Update.
5212         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
5213         (coffstab_build_psymtabs, elfstab_build_psymtabs)
5214         (stabsect_build_psymtabs): Update.
5215         * buildsym.h (buildsym_init): Don't declare.
5216         * buildsym.c: Update comment.
5217         (prepare_for_building): Remove.
5218         (start_symtab, restart_symtab): Update.
5219         (reset_symtab_globals): Update comment.
5220         (buildsym_init): Remove.
5221
5222 2018-07-20  Tom Tromey  <tom@tromey.com>
5223
5224         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
5225         * stabsread.c (patch_block_stabs, define_symbol, read_type)
5226         (read_enum_type, common_block_start, common_block_end)
5227         (cleanup_undefined_types_1, finish_global_stabs): Update.
5228         * mdebugread.c (psymtab_to_symtab_1): Update.
5229         * dwarf2read.c (fixup_go_packaging, read_func_scope)
5230         (read_lexical_block_scope, new_symbol): Update.
5231         * dbxread.c (process_one_symbol): Update.
5232         * coffread.c (coff_symtab_read, process_coff_symbol)
5233         (coff_read_enum_type): Update.
5234         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
5235         declare.
5236         (get_local_symbols, get_file_symbols, get_global_symbols): New
5237         functions.
5238         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
5239         m_global_symbols.
5240         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
5241         (~scoped_free_pendings): Update.
5242         (finish_block, prepare_for_building, reset_symtab_globals)
5243         (end_symtab_get_static_block, end_symtab_with_blockvector)
5244         (augment_type_symtab, push_context): Update.
5245         (get_local_symbols, get_file_symbols, get_global_symbols): New
5246         functions.
5247         (buildsym_init): Update.
5248
5249 2018-07-20  Tom Tromey  <tom@tromey.com>
5250
5251         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
5252         (process_full_type_unit): Likewise.
5253         (dwarf2_start_symtab): Set list_in_scope.
5254
5255 2018-07-20  Tom Tromey  <tom@tromey.com>
5256
5257         * dwarf2read.c (process_psymtab_comp_unit_reader)
5258         (build_type_psymtabs_reader): Do not set list_in_scope.
5259
5260 2018-07-20  Tom Tromey  <tom@tromey.com>
5261
5262         * buildsym.c (free_pendings): Remove.
5263         (add_symbol_to_list, scoped_free_pendings)
5264         (finish_block_internal, buildsym_init): Update.
5265
5266 2018-07-20  Tom Tromey  <tom@tromey.com>
5267
5268         * xcoffread.c (read_xcoff_symtab): Update.
5269         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
5270         Update.
5271         * dbxread.c (process_one_symbol): Update.
5272         * coffread.c (coff_symtab_read): Update.
5273         * buildsym.h (finish_block): Update.
5274         * buildsym.c (finish_block): Remove "listhead" argument.
5275         (end_symtab_get_static_block): Update.
5276
5277 2018-07-20  Tom Tromey  <tom@tromey.com>
5278
5279         * buildsym.h (class scoped_free_pendings): Remove constructor.
5280         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
5281         method.
5282         <m_pending_block_obstack, m_pending_blocks>: New members.
5283         (pending_block_obstack, pending_blocks): Remove.
5284         (scoped_free_pendings::scoped_free_pendings): Default.
5285         (~scoped_free_pendings): Update.
5286         (free_pending_blocks): Remove.
5287         (finish_block_internal, record_pending_block, make_blockvector)
5288         (end_symtab_get_static_block, augment_type_symtab, push_context)
5289         (buildsym_init): Update.
5290
5291 2018-07-20  Tom Tromey  <tom@tromey.com>
5292
5293         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
5294         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
5295         members.
5296         (pending_addrmap, pending_addrmap_obstack)
5297         (pending_addrmap_interesting): Remove.
5298         (scoped_free_pendings, record_block_range, make_blockvector)
5299         (prepare_for_building, reset_symtab_globals, buildsym_init):
5300         Update.
5301
5302 2018-07-20  Tom Tromey  <tom@tromey.com>
5303
5304         * xcoffread.c (process_linenos): Update.
5305         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
5306         * mdebugread.c (psymtab_to_symtab_1): Update.
5307         * dwarf2read.c (setup_type_unit_groups)
5308         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
5309         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
5310         * dbxread.c (process_one_symbol): Update.
5311         * coffread.c (coff_symtab_read, enter_linenos)
5312         (process_coff_symbol): Update.
5313         * buildsym.h (current_subfile): Don't declare.
5314         (get_current_subfile): Declare.
5315         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
5316         member.
5317         (start_subfile, free_buildsym_compunit, push_subfile)
5318         (prepare_for_building, start_symtab): Update.
5319         (get_current_subfile): New function.
5320
5321 2018-07-20  Tom Tromey  <tom@tromey.com>
5322
5323         * coffread.c (coff_symtab_read): Update.
5324         * xcoffread.c (read_xcoff_symtab): Update.
5325         * dwarf2read.c (new_symbol): Update.
5326         (read_func_scope, read_lexical_block_scope): Update.
5327         * dbxread.c (process_one_symbol): Update.
5328         * buildsym.h (context_stack, context_stack_depth): Don't declare.
5329         (outermost_context_p): Remove macro.
5330         (outermost_context_p, get_current_context_stack)
5331         (get_context_stack_depth): Declare.
5332         (pop_context): Return struct context_stack.
5333         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
5334         member.
5335         (context_stack_size): Remove.
5336         (INITIAL_CONTEXT_STACK_SIZE): Remove.
5337         (prepare_for_building, end_symtab_get_static_block)
5338         (augment_type_symtab, push_context): Update.
5339         (pop_context): Return struct context_stack.
5340         (outermost_context_p, get_current_context_stack)
5341         (get_context_stack_depth): New functions.
5342         (buildsym_init): Update.
5343
5344 2018-07-20  Tom Tromey  <tom@tromey.com>
5345
5346         * rust-exp.y: Now a pure parser.  Update all rules.
5347         (%union): Move earlier.
5348         (current_parser, work_obstack): Remove globals.
5349         (rust_parser, ~rust_parser): Update.
5350         (class rust_parser) <copy_name, concat3, crate_name, super_name,
5351         lex_character, lex_number, lex_string, lex_identifier,
5352         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
5353         convert_name, convert_params_to_expression,
5354         convert_ast_to_expression, ast_basic_type, ast_operation,
5355         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
5356         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
5357         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
5358         ast_array_type, ast_slice_type, ast_reference_type,
5359         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
5360         (rust_parse): Update.
5361         (rustyyerror, rustyylex): Add parser parameter.
5362         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
5363         (rust_lex_stringish_test, rust_lex_test_sequence)
5364         (rust_lex_test_trailing_dot, rust_lex_test_completion)
5365         (rust_lex_test_push_back, rust_lex_tests): Update.
5366
5367 2018-07-19  Pedro Alves  <palves@redhat.com>
5368
5369         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
5370         gdb::unique_xmalloc_ptr.
5371         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
5372         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
5373         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
5374         copy-initialization.
5375         * guile/scm-pretty-print.c (ppscm_print_children): Use
5376         gdb::unique_xmalloc_ptr instead of cleanups.
5377         (gdbscm_apply_val_pretty_printer): Remove cleanups.
5378         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
5379         gdb::unique_xmalloc_ptr.
5380         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
5381         Adjust to use gdb::unique_xmalloc_ptr.
5382         * guile/scm-utils.c (extract_arg): Adjust.
5383         * guile/scm-value.c (gdbscm_value_field): Adjust to use
5384         gdb::unique_xmalloc_ptr instead of a cleanup.
5385
5386 2018-07-19  Tom Tromey  <tom@tromey.com>
5387
5388         * utils.c (do_value_free_to_mark)
5389         (make_cleanup_value_free_to_mark): Remove.
5390         * utils.h (make_cleanup_value_free_to_mark): Remove.
5391
5392 2018-07-19  Pedro Alves  <palves@redhat.com>
5393
5394         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
5395         forwarding reference.
5396
5397 2018-07-18  Pedro Alves  <palves@redhat.com>
5398
5399         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
5400         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
5401         cleanup.
5402
5403 2018-07-18  Pedro Alves  <palves@redhat.com>
5404
5405         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
5406         exceptions.
5407         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
5408         (gdbscm_wrap): New.
5409         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
5410         directly instead of a cleanup.
5411         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
5412         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
5413         (vlscm_binop_gdbthrow): New, factored out from ...
5414         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
5415         (vlscm_rich_compare): Use gdbscm_wrap.
5416         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
5417         instead of a cleanup.
5418         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
5419         cleanup.
5420         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
5421         Use xfree directly instead of a cleanup.
5422         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
5423         Adjust to use gdbscm_wrap and scoped_value_mark.
5424         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
5425         (gdbscm_value_address, gdbscm_value_dereference)
5426         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
5427         scoped_value_mark.
5428         (gdbscm_value_dynamic_type): Use scoped_value_mark.
5429         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
5430         scoped_value_mark.
5431         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
5432         gdbscm_wrap and scoped_value_mark.
5433         (gdbscm_value_to_string): Use xfree directly instead of a
5434         cleanup.  Move 'buffer' unique_ptr to TRY scope.
5435         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
5436         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
5437         scoped_value_mark.
5438         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
5439         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
5440         scoped_value_mark.
5441         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
5442         gdbscm_wrap.
5443
5444 2018-07-18  Tom de Vries  <tdevries@suse.de>
5445
5446         * findvar.c (default_read_var_value): Also resolve dynamic type for
5447         LOC_OPTIMIZED_OUT vars.
5448
5449 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
5450
5451         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
5452         decoding.
5453
5454 2018-07-17  Tom Tromey  <tom@tromey.com>
5455
5456         * guile/scm-param.c (pascm_set_func, pascm_show_func)
5457         (compute_enum_list, pascm_set_param_value_x)
5458         (gdbscm_parameter_value): Update.
5459         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
5460         (gdbscm_scm_to_host_string): Update.
5461         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
5462         Update.
5463         * guile/scm-cmd.c (cmdscm_add_completion): Update.
5464         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
5465         * guile/scm-string.c (gdbscm_scm_to_string): Return
5466         unique_xmalloc_ptr.
5467         (gdbscm_scm_to_host_string): Likewise.
5468
5469 2018-07-17  Tom Tromey  <tom@tromey.com>
5470
5471         * guile/guile.c (gdbscm_eval_from_control_command): Update.
5472         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
5473         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
5474         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
5475         unique_xmalloc_ptr.
5476
5477 2018-07-17  Tom Tromey  <tom@tromey.com>
5478
5479         * guile/scm-param.c (pascm_signal_setshow_error): Update.
5480         * guile/guile-internal.h (gdbscm_exception_message_to_string):
5481         Update.
5482         * guile/scm-cmd.c (cmdscm_function): Update.
5483         * guile/scm-pretty-print.c
5484         (ppscm_print_exception_unless_memory_error): Update.
5485         * guile/scm-exception.c (gdbscm_exception_message_to_string):
5486         Return unique_xmalloc_ptr.
5487
5488 2018-07-17  Tom Tromey  <tom@tromey.com>
5489
5490         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
5491         Use string_printf.
5492
5493 2018-07-17  Jim Wilson  <jimw@sifive.com>
5494
5495         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
5496         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
5497         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
5498         unecessary braces after EF_RISCV_RVC test.  Delete call to
5499         set_gdbarch_decr_pc_after_break.
5500
5501         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
5502         RISCV_LAST_FP_REGNUM + 1.
5503         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
5504
5505 2018-07-17  Tom Tromey  <tom@tromey.com>
5506
5507         * configure.ac: Remove --disable-gdbcli.
5508         * configure: Rebuild.
5509         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
5510         (SUBDIR_CLI_CFLAGS): Remove.
5511         (SFILES): Use SUBDIR_CLI_SRCS.
5512         (COMMON_OBS): Use SUBDIR_CLI_OBS.
5513
5514 2018-07-17  Tom Tromey  <tom@tromey.com>
5515
5516         PR gdb/18624:
5517         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
5518
5519 2018-07-16  Jim Wilson  <jimw@sifive.com>
5520
5521         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
5522
5523 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5524
5525         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
5526         variable.
5527         (libunwind_frame_sniffer): Likewise.
5528         (libunwind_frame_prev_register): Likewise.
5529         (libunwind_sigtramp_frame_sniffer): Likewise.
5530         * ia64-tdep.c (ia64_access_reg): Likewise.
5531         (ia64_access_rse_reg): Likewise.
5532         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
5533         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
5534
5535 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5536
5537         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
5538
5539 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5540
5541         * remote-sim.c (gdbsim_target::close,
5542         gdbsim_target::mourn_inferior): Remove unused variables.
5543
5544 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
5545
5546         * ia64-tdep.c (ktab_buf): New global.
5547         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
5548         (get_kernel_table): Adjust.
5549
5550 2018-07-16  Tom Tromey  <tom@tromey.com>
5551
5552         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
5553         * dwarf2read.c (using_directives, new_symbol): Use
5554         outermost_context_p.
5555         * dbxread.c (process_one_symbol): Use outermost_context_p.
5556         * coffread.c (coff_symtab_read): Use outermost_context_p.
5557
5558 2018-07-16  Tom Tromey  <tom@tromey.com>
5559
5560         * dwarf2read.c (using_directives, read_func_scope)
5561         (read_lexical_block_scope): Update.
5562         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
5563         * buildsym.h (local_using_directives, global_using_directives):
5564         Don't declare.
5565         (get_local_using_directives, set_local_using_directives)
5566         (get_global_using_directives): Declare.
5567         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
5568         m_global_using_directives>: New members.
5569         (finish_block_internal, prepare_for_building)
5570         (reset_symtab_globals, end_symtab_get_static_block)
5571         (push_context): Update.
5572         (get_local_using_directives, set_local_using_directives)
5573         (get_global_using_directives): New functions.
5574         (buildsym_init): Update.
5575
5576 2018-07-16  Tom Tromey  <tom@tromey.com>
5577
5578         * xcoffread.c (xcoff_initial_scan): Don't call
5579         free_pending_blocks.
5580         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
5581         * buildsym.h (class scoped_free_pendings): Add constructor.
5582         (free_pending_blocks): Don't declare.
5583         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
5584         (free_pending_blocks): Now static.
5585
5586 2018-07-16  Tom Tromey  <tom@tromey.com>
5587
5588         * buildsym.h (push_subfile, pop_subfile): Update declarations.
5589         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
5590         member.
5591         (struct subfile_stack): Remove.
5592         (subfile_stack): Remove.
5593         (push_subfile, pop_subfile, buildsym_init): Update.
5594
5595 2018-07-16  Tom Tromey  <tom@tromey.com>
5596
5597         * buildsym.c (push_subfile): Use gdb_assert.
5598         (pop_subfile): Use gdb_assert.
5599
5600 2018-07-16  Tom Tromey  <tom@tromey.com>
5601
5602         * buildsym.h (merge_symbol_lists): Remove.
5603         * buildsym.c (merge_symbol_lists): Remove.
5604
5605 2018-07-16  Tom Tromey  <tom@tromey.com>
5606
5607         * stabsread.c (scan_file_globals): Update comment.
5608         * stabsread.h (scan_file_globals): Move from buildsym.h.
5609         * buildsym.h (scan_file_globals): Move to stabsread.h.
5610
5611 2018-07-16  Tom Tromey  <tom@tromey.com>
5612
5613         * xcoffread.c (xcoff_new_init): Update.
5614         * mipsread.c (mipscoff_new_init): Update.
5615         * mdebugread.c (mdebug_build_psymtabs): Update.
5616         * elfread.c (elf_new_init): Update.
5617         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
5618         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
5619         * buildsym.h (buildsym_new_init): Don't declare.
5620         * buildsym.c (buildsym_new_init): Remove.
5621
5622 2018-07-16  Tom Tromey  <tom@tromey.com>
5623
5624         * stabsread.h (within_function): Move from buildsym.h.
5625         * stabsread.c (start_stabs): Clear within_function.
5626         * coffread.c (coff_start_symtab): Clear within_function.
5627         * buildsym.h (within_function): Move to stabsread.h.
5628         * buildsym.c (prepare_for_building): Update.
5629
5630 2018-07-16  Tom Tromey  <tom@tromey.com>
5631
5632         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
5633         * dwarf2read.c (dwarf2_start_symtab): Don't set
5634         processing_gcc_compilation.
5635         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
5636
5637 2018-07-16  Tom Tromey  <tom@tromey.com>
5638
5639         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
5640         (next_symbol_text_func): Move from buildsym.h.
5641         * stabsread.c (hashname): Move from buildsym.c.
5642         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
5643         (next_symbol_text_func, hashname): Move to stabsread.h.
5644         * buildsym.c: Don't include bcache.h
5645         (hashname): Move to stasbread.c.
5646
5647 2018-07-16  Tom Tromey  <tom@tromey.com>
5648
5649         * buildsym.h (context_stack_size): Don't declare.
5650         * buildsym.c (context_stack_size): New global.
5651
5652 2018-07-16  Tom Tromey  <tom@tromey.com>
5653
5654         * dbxread.c (processing_acc_compilation): New global.
5655         * buildsym.h (processing_acc_compilation): Don't declare.
5656
5657 2018-07-16  Tom Tromey  <tom@tromey.com>
5658
5659         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
5660         * dbxread.c (read_ofile_symtab): Update.
5661         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
5662         * buildsym.h (last_source_start_addr): Remove.
5663         (set_last_source_start_addr, get_last_source_start_addr):
5664         Declare.
5665         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
5666         parameter.
5667         (struct buildsym_compunit) <m_last_source_start_addr>: New
5668         member.
5669         (prepare_for_building): Remove start_addr parameter.
5670         (start_symtab, restart_symtab, end_symtab_get_static_block)
5671         (end_symtab_with_blockvector): Update.
5672         (set_last_source_start_addr, get_last_source_start_addr): New
5673         functions.
5674
5675 2018-07-16  Tom Tromey  <tom@tromey.com>
5676
5677         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
5678         member.
5679         (have_line_numbers): Remove.
5680         (record_line, prepare_for_building, end_symtab_get_static_block)
5681         (augment_type_symtab): Update.
5682
5683 2018-07-16  Tom Tromey  <tom@tromey.com>
5684
5685         * buildsym.c (~buildsym_compunit): Free the macro table.
5686         (struct buildsym_compunit) <get_macro_table, release_macros>: New
5687         methods.
5688         <m_pending_macros>: New member.
5689         (pending_macros): Remove.
5690         (~scoped_free_pendings, get_macro_table, prepare_for_building)
5691         (reset_symtab_globals, end_symtab_get_static_block)
5692         (end_symtab_with_blockvector, augment_type_symtab)
5693         (buildsym_init): Update.
5694
5695 2018-07-16  Tom Tromey  <tom@tromey.com>
5696
5697         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
5698         parameter.
5699         (buildsym_compunit::set_last_source_file): New method.
5700         <m_last_source_file>: New member.
5701         (prepare_for_building): Remove "name" parameter.
5702         (start_symtab, restart_symtab, reset_symtab_globals): Update.
5703         (last_source_file): Remove.
5704         (set_last_source_file, get_last_source_file): Update.
5705
5706 2018-07-16  Tom Tromey  <tom@tromey.com>
5707
5708         * buildsym.c (prepare_for_building): Add assert.
5709
5710 2018-07-16  Tom Tromey  <tom@tromey.com>
5711
5712         * buildsym.c (~buildsym_compunit): Update.
5713         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
5714         (start_subfile, patch_subfile_names)
5715         (end_symtab_with_blockvector): Update.
5716
5717 2018-07-16  Tom Tromey  <tom@tromey.com>
5718
5719         * buildsym.c (struct buildsym_compunit): Add constructor,
5720         destructor, initializers.
5721         (start_buildsym_compunit): Remove.
5722         (free_buildsym_compunit): Use "delete".
5723         (start_symtab, restart_symtab): Use "new".
5724
5725 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
5726
5727         * symfile.c (set_objfile_default_section_offset): Remove struct
5728         keyword.
5729
5730 2018-07-14  Stafford Horne  <shorne@gmail.com>
5731
5732         * (Responsible Maintainers): Add myself as or1k maintainer.
5733
5734 2018-07-13  Tom Tromey  <tom@tromey.com>
5735
5736         * symfile.c (set_objfile_default_section_offset): Use extra braces
5737         around initializer.
5738
5739 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
5740
5741         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
5742         non-branching basr.
5743
5744 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5745
5746         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5747         unittests/cli-utils-selftests.c
5748         * unittests/cli-utils-selftests.c: New file.
5749
5750 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5751
5752         * NEWS: Mention new commands. Mention change to 'thread apply'.
5753
5754 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5755
5756         * thread.c (thr_try_catch_cmd): New function.
5757         (thread_apply_all_command): Handle qcs flags.
5758         (thread_apply_command): Handle qcs flags.
5759         (taas_command): New function.
5760         (tfaas_command): New function.
5761         (_initialize_thread): Update to setup the new commands 'taas
5762         and 'tfaas'. Change doc string for 'thread apply'.
5763
5764 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5765
5766         * stack.c: (trailing_outermost_frame): New function, mostly
5767         extracted from backtrace_command_1.
5768         (leading_innermost_frame): New function.
5769         (backtrace_command_1): Update to call trailing_outermost_frame.
5770         (frame_apply_command_count): New function.
5771         (frame_apply_level_command): New function.
5772         (frame_apply_all_command): New function.
5773         (frame_apply_command): New function.
5774         (faas_command): New function.
5775         (frame_cmd_list): New variable.
5776         (_initialize_stack): Update to setup the new commands 'frame apply'
5777         and 'faas'.
5778
5779 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5780
5781         * cli-utils.c (number_or_range_parser::get_number): Only handle
5782         numbers or convenience var as numbers.
5783         (parse_flags): New function.
5784         (parse_flags_qcs): New function.
5785         (number_or_range_parser::finished): Ensure parsing end is detected
5786         before end of string.
5787         * cli-utils.h (parse_flags): New function.
5788         (parse_flags_qcs): New function.
5789         (number_or_range_parser): Remove m_finished bool.
5790         (number_or_range_parser::skip_range): Set m_in_range to false.
5791
5792 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
5793
5794         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
5795         on Windows.
5796
5797 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
5798             Jan Kratochvil  <jan.kratochvil@redhat.com>
5799             Paul Fertser  <fercerpav@gmail.com>
5800             Tsutomu Seki  <sekiriki@gmail.com>
5801             Pedro Alves  <palves@redhat.com>
5802
5803         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5804         'unittests/parse-connection-spec-selftests.c'.
5805         (COMMON_SFILES): Add 'common/netstuff.c'.
5806         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
5807         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
5808         * common/netstuff.c: New file.
5809         * common/netstuff.h: New file.
5810         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
5811         (wait_for_connect): Update comment.  New parameter
5812         'gdb::optional<int> sock' instead of 'struct serial *scb'.
5813         Use 'sock' directly instead of 'scb->fd'.
5814         (try_connect): New function, with code from 'net_open'.
5815         (net_open): Rewrite main loop to deal with multiple
5816         sockets/addresses.  Handle IPv6-style hostnames; implement
5817         support for IPv6 connections.
5818         * unittests/parse-connection-spec-selftests.c: New file.
5819
5820 2018-07-11  Pedro Alves  <palves@redhat.com>
5821
5822         PR gdb/23377
5823         * remote.c (remote_target::remote_detach_pid): Call
5824         set_current_process.
5825
5826 2018-07-11  Pedro Alves  <palves@redhat.com>
5827
5828         * h8300-tdep.c (h8300_gdbarch_init): Remove
5829         set_gdbarch_ecoff_reg_to_regnum calls.
5830
5831 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
5832
5833         PR c++/23373
5834         * c-typeprint.c (c_type_print_base_struct_union): Don't print
5835         offsets/sizes for static members of a class/struct.
5836
5837 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
5838
5839         * target-descriptions.c (tdesc_register_bitsize): Rename.
5840         * target-descriptions.h (tdesc_register_bitsize): Likewise.
5841         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
5842         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
5843
5844 2018-07-10  Tom Tromey  <tom@tromey.com>
5845
5846         * breakpoint.c (moribund_locations): Now static and a
5847         std::vector.
5848         (breakpoint_init_inferior, moribund_breakpoint_here_p)
5849         (build_bpstat_chain, update_global_location_list)
5850         (breakpoint_retire_moribund): Update.
5851         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
5852         VEC.
5853
5854 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
5855
5856         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
5857         (riscv_register_reggroup_p): Use new function, remove unneeded
5858         parenthesis.
5859         (riscv_push_dummy_call): Extend assert to compare against xlen or
5860         flen based on register type.
5861
5862 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
5863
5864         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
5865
5866 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5867
5868         * remote.c (show_hardware_watchpoint_limit): New function.
5869         (show_hardware_watchpoint_length_limit): New function.
5870         (show_hardware_breakpoint_limit): New function.
5871         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
5872         where appropriate, update help text.
5873
5874 2018-07-09  Tom Tromey  <tom@tromey.com>
5875
5876         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
5877         (CLIBS): Don't mention NAT_CLIBS.
5878
5879 2018-07-09  Tom Tromey  <tom@tromey.com>
5880
5881         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
5882         (LIBGDB_OBS, clean mostlyclean): Update.
5883         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
5884
5885 2018-07-09  Tom Tromey  <tom@tromey.com>
5886
5887         * Makefile.in (%.c: %.y): Use ECHO_YACC.
5888         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
5889         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
5890
5891 2018-07-09  Tom Tromey  <tom@tromey.com>
5892
5893         * Makefile.in (ALLDEPFILES): Remove exec.c.
5894         (COMMON_OBS): Remove exec.o.
5895         (COMMON_SFILES): Add exec.c.
5896
5897 2018-07-09  Tom Tromey  <tom@tromey.com>
5898
5899         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
5900
5901 2018-07-09  Tom Tromey  <tom@tromey.com>
5902
5903         * Makefile.in (clean mostlyclean): Remove stamp-version.
5904         (version.c): Depend on stamp-version.
5905         (stamp-version): New rule, from version.c rule.
5906
5907 2018-07-09  Tom Tromey  <tom@tromey.com>
5908
5909         * Makefile.in (init.c): Depend on stamp-init.
5910         (stamp-init): New rule, from init.c rule.
5911         (clean mostlyclean): Remove stamp-init.
5912
5913 2018-07-09  Tom Tromey  <tom@tromey.com>
5914
5915         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
5916         SUBDIR_GCC_COMPILE_SRCS.
5917
5918 2018-07-09  Tom Tromey  <tom@tromey.com>
5919
5920         * Makefile.in (init.c): Remove some unused sed rules.
5921
5922 2018-07-09  Tom Tromey  <tom@tromey.com>
5923
5924         * Makefile.in (TSOBS): Remove.
5925         (INIT_FILES): Update.
5926         (LIBGDB_OBS): Update.
5927         (COMMON_SFILES): Add inflow.c.
5928         (SFILES): Remove inflow.c.
5929
5930 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
5931
5932         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
5933
5934 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
5935
5936         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
5937         get_saveloc_name, is_signal_frame_name, step_name,
5938         init_remote_name, create_addr_space_name,
5939         destroy_addr_space_name, search_unwind_table_name,
5940         find_dyn_list_name): Constify.
5941
5942 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
5943
5944         * darwin-nat.c (darwin_pthread_kill): New function.
5945         (darwin_resume_thread): Use darwin_pthread_kill.
5946
5947 2018-07-05  Tom de Vries  <tdevries@suse.de>
5948
5949         * macroexp.c (macro_buffer) <operator=>: New member function.
5950
5951 2018-07-04  Tom Tromey  <tom@tromey.com>
5952
5953         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
5954
5955 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
5956
5957         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
5958         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
5959         * maint.c: Likewise.
5960         * top.c: Likewise.
5961
5962 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
5963
5964         * NEWS: Create a new section for the next release branch.
5965         Rename the section of the current branch, now that it has
5966         been cut.
5967
5968 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
5969
5970         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
5971         * version.in: Bump version to 8.2.50.DATE-git.
5972
5973 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
5974             Pedro Alves  <palves@redhat.com>
5975
5976         * linux-nat.c (linux_init_ptrace): Rename to ...
5977         (linux_init_ptrace_procfs): ... this.  Call
5978         linux_proc_init_warnings.
5979         (linux_nat_target::post_attach)
5980         (linux_nat_target::post_startup_inferior): Adjust.
5981         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
5982         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
5983
5984 2018-07-04  Tom de Vries  <tdevries@suse.de>
5985
5986         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
5987         check ...
5988         (read_comp_unit_head): ... here.
5989
5990 2018-07-03  Tom Tromey  <tom@tromey.com>
5991
5992         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
5993         (stop_tracing, tstatus_command)
5994         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
5995         (print_one_static_tracepoint_marker): Update.
5996         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
5997         std::vector.
5998         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
5999         VEC.
6000         (all_tracepoints, static_tracepoints_here): Return std::vector.
6001
6002 2018-07-03  Tom Tromey  <tom@tromey.com>
6003
6004         * common/ptid.c (ptid_equal): Remove.
6005         * common/ptid.h (ptid_equal): Don't declare.
6006         * ada-tasks.c: Update.
6007         * breakpoint.c: Update.
6008         * common/agent.c: Update.
6009         * corelow.c: Update.
6010         * darwin-nat-info.c: Update.
6011         * darwin-nat.c: Update.
6012         * dcache.c: Update.
6013         * dtrace-probe.c: Update.
6014         * dummy-frame.c: Update.
6015         * fbsd-nat.c: Update.
6016         * frame.c: Update.
6017         * gdbthread.h: Update.
6018         * gnu-nat.c: Update.
6019         * go32-nat.c: Update.
6020         * inf-loop.c: Update.
6021         * inf-ptrace.c: Update.
6022         * infcall.c: Update.
6023         * infcmd.c: Update.
6024         * inflow.c: Update.
6025         * infrun.c: Update.
6026         * linux-fork.c: Update.
6027         * linux-nat.c: Update.
6028         * linux-thread-db.c: Update.
6029         * mi/mi-cmd-var.c: Update.
6030         * mi/mi-interp.c: Update.
6031         * mi/mi-main.c: Update.
6032         * nto-procfs.c: Update.
6033         * ppc-linux-tdep.c: Update.
6034         * procfs.c: Update.
6035         * python/py-inferior.c: Update.
6036         * python/py-record-btrace.c: Update.
6037         * python/py-record.c: Update.
6038         * ravenscar-thread.c: Update.
6039         * regcache.c: Update.
6040         * remote-sim.c: Update.
6041         * remote.c: Update.
6042         * sol-thread.c: Update.
6043         * solib.c: Update.
6044         * target.c: Update.
6045         * tui/tui-stack.c: Update.
6046         * varobj.c: Update.
6047         * windows-nat.c: Update.
6048         * windows-tdep.c: Update.
6049
6050 2018-07-03  Tom Tromey  <tom@tromey.com>
6051
6052         * common/ptid.c (ptid_match): Remove.
6053         * common/ptid.h (ptid_match): Don't declare.
6054         * fbsd-nat.c: Update.
6055         * infcmd.c: Update.
6056         * infrun.c: Update.
6057         * linux-nat.c: Update.
6058         * record-btrace.c: Update.
6059         * regcache.c: Update.
6060         * remote.c: Update.
6061
6062 2018-07-03  Tom Tromey  <tom@tromey.com>
6063
6064         * common/ptid.c (ptid_tid_p): Remove.
6065         * common/ptid.h (ptid_tid_p): Don't declare.
6066         * sol-thread.c: Update.
6067
6068 2018-07-03  Tom Tromey  <tom@tromey.com>
6069
6070         * common/ptid.c (ptid_lwp_p): Remove.
6071         * common/ptid.h (ptid_lwp_p): Don't declare.
6072         * fbsd-nat.c: Update.
6073         * linux-nat.c: Update.
6074         * nat/linux-procfs.c: Update.
6075         * nat/x86-linux-dregs.c: Update.
6076         * sol-thread.c: Update.
6077
6078 2018-07-03  Tom Tromey  <tom@tromey.com>
6079
6080         * common/ptid.c (ptid_is_pid): Remove.
6081         * common/ptid.h (ptid_is_pid): Don't declare.
6082         * infrun.c: Update.
6083         * linux-nat.c: Update.
6084         * mi/mi-interp.c: Update.
6085         * remote.c: Update.
6086         * thread.c: Update.
6087
6088 2018-07-03  Tom Tromey  <tom@tromey.com>
6089
6090         * common/ptid.c (ptid_get_tid): Remove.
6091         * common/ptid.h (ptid_get_tid): Don't declare.
6092         * ada-tasks.c: Update.
6093         * aix-thread.c: Update.
6094         * bsd-uthread.c: Update.
6095         * darwin-nat.c: Update.
6096         * fbsd-nat.c: Update.
6097         * i386-darwin-nat.c: Update.
6098         * infrun.c: Update.
6099         * linux-tdep.c: Update.
6100         * nto-procfs.c: Update.
6101         * ppc-ravenscar-thread.c: Update.
6102         * python/py-infthread.c: Update.
6103         * ravenscar-thread.c: Update.
6104         * sol-thread.c: Update.
6105         * sparc-ravenscar-thread.c: Update.
6106         * windows-nat.c: Update.
6107
6108 2018-07-03  Tom Tromey  <tom@tromey.com>
6109
6110         * common/ptid.c (ptid_get_lwp): Remove.
6111         * common/ptid.h (ptid_get_lwp): Don't declare.
6112         * aarch64-linux-nat.c: Update.
6113         * ada-tasks.c: Update.
6114         * aix-thread.c: Update.
6115         * amd64-linux-nat.c: Update.
6116         * arm-linux-nat.c: Update.
6117         * corelow.c: Update.
6118         * fbsd-nat.c: Update.
6119         * fbsd-tdep.c: Update.
6120         * gnu-nat.c: Update.
6121         * i386-cygwin-tdep.c: Update.
6122         * i386-gnu-nat.c: Update.
6123         * i386-linux-nat.c: Update.
6124         * ia64-linux-nat.c: Update.
6125         * inf-ptrace.c: Update.
6126         * infrun.c: Update.
6127         * linux-fork.c: Update.
6128         * linux-nat.c: Update.
6129         * linux-tdep.c: Update.
6130         * linux-thread-db.c: Update.
6131         * mips-linux-nat.c: Update.
6132         * nat/aarch64-linux-hw-point.c: Update.
6133         * nat/aarch64-linux.c: Update.
6134         * nat/linux-btrace.c: Update.
6135         * nat/linux-osdata.c: Update.
6136         * nat/linux-procfs.c: Update.
6137         * nat/x86-linux-dregs.c: Update.
6138         * obsd-nat.c: Update.
6139         * ppc-fbsd-nat.c: Update.
6140         * ppc-linux-nat.c: Update.
6141         * procfs.c: Update.
6142         * python/py-infthread.c: Update.
6143         * ravenscar-thread.c: Update.
6144         * remote.c: Update.
6145         * s390-linux-nat.c: Update.
6146         * sol-thread.c: Update.
6147         * sol2-tdep.c: Update.
6148         * spu-linux-nat.c: Update.
6149         * x86-linux-nat.c: Update.
6150         * xtensa-linux-nat.c: Update.
6151
6152 2018-07-03  Tom Tromey  <tom@tromey.com>
6153
6154         * common/ptid.c (ptid_get_pid): Remove.
6155         * common/ptid.h (ptid_get_pid): Don't declare.
6156         * aarch64-linux-nat.c: Update.
6157         * ada-lang.c: Update.
6158         * aix-thread.c: Update.
6159         * alpha-bsd-nat.c: Update.
6160         * amd64-fbsd-nat.c: Update.
6161         * amd64-linux-nat.c: Update.
6162         * arm-linux-nat.c: Update.
6163         * arm-nbsd-nat.c: Update.
6164         * auxv.c: Update.
6165         * break-catch-syscall.c: Update.
6166         * breakpoint.c: Update.
6167         * bsd-uthread.c: Update.
6168         * corelow.c: Update.
6169         * ctf.c: Update.
6170         * darwin-nat.c: Update.
6171         * fbsd-nat.c: Update.
6172         * fbsd-tdep.c: Update.
6173         * gcore.c: Update.
6174         * gnu-nat.c: Update.
6175         * hppa-nbsd-nat.c: Update.
6176         * hppa-obsd-nat.c: Update.
6177         * i386-fbsd-nat.c: Update.
6178         * ia64-linux-nat.c: Update.
6179         * inf-ptrace.c: Update.
6180         * infcmd.c: Update.
6181         * inferior.c: Update.
6182         * inferior.h: Update.
6183         * inflow.c: Update.
6184         * infrun.c: Update.
6185         * linux-fork.c: Update.
6186         * linux-nat.c: Update.
6187         * linux-tdep.c: Update.
6188         * linux-thread-db.c: Update.
6189         * m68k-bsd-nat.c: Update.
6190         * mi/mi-interp.c: Update.
6191         * mi/mi-main.c: Update.
6192         * mips-linux-nat.c: Update.
6193         * mips-nbsd-nat.c: Update.
6194         * mips64-obsd-nat.c: Update.
6195         * nat/aarch64-linux-hw-point.c: Update.
6196         * nat/aarch64-linux.c: Update.
6197         * nat/linux-btrace.c: Update.
6198         * nat/linux-osdata.c: Update.
6199         * nat/linux-procfs.c: Update.
6200         * nat/x86-linux-dregs.c: Update.
6201         * nto-procfs.c: Update.
6202         * obsd-nat.c: Update.
6203         * ppc-linux-nat.c: Update.
6204         * ppc-nbsd-nat.c: Update.
6205         * ppc-obsd-nat.c: Update.
6206         * proc-service.c: Update.
6207         * procfs.c: Update.
6208         * python/py-inferior.c: Update.
6209         * python/py-infthread.c: Update.
6210         * ravenscar-thread.c: Update.
6211         * record.c: Update.
6212         * remote-sim.c: Update.
6213         * remote.c: Update.
6214         * rs6000-nat.c: Update.
6215         * s390-linux-nat.c: Update.
6216         * sh-nbsd-nat.c: Update.
6217         * sol-thread.c: Update.
6218         * sparc-nat.c: Update.
6219         * sparc64-tdep.c: Update.
6220         * spu-linux-nat.c: Update.
6221         * spu-tdep.c: Update.
6222         * target-debug.h: Update.
6223         * target.c: Update.
6224         * thread.c: Update.
6225         * tid-parse.c: Update.
6226         * tracefile-tfile.c: Update.
6227         * vax-bsd-nat.c: Update.
6228         * windows-nat.c: Update.
6229         * x86-linux-nat.c: Update.
6230         * x86-nat.c: Update.
6231
6232 2018-07-03  Tom Tromey  <tom@tromey.com>
6233
6234         * common/ptid.c (pid_to_ptid): Remove.
6235         * common/ptid.h (pid_to_ptid): Don't declare.
6236         * aix-thread.c: Update.
6237         * arm-linux-nat.c: Update.
6238         * common/ptid.c: Update.
6239         * common/ptid.h: Update.
6240         * corelow.c: Update.
6241         * ctf.c: Update.
6242         * darwin-nat.c: Update.
6243         * fbsd-nat.c: Update.
6244         * fork-child.c: Update.
6245         * gnu-nat.c: Update.
6246         * go32-nat.c: Update.
6247         * inf-ptrace.c: Update.
6248         * infcmd.c: Update.
6249         * inferior.c: Update.
6250         * infrun.c: Update.
6251         * linux-fork.c: Update.
6252         * linux-nat.c: Update.
6253         * nat/aarch64-linux-hw-point.c: Update.
6254         * nat/fork-inferior.c: Update.
6255         * nat/x86-linux-dregs.c: Update.
6256         * nto-procfs.c: Update.
6257         * obsd-nat.c: Update.
6258         * procfs.c: Update.
6259         * progspace.c: Update.
6260         * remote.c: Update.
6261         * rs6000-nat.c: Update.
6262         * s390-linux-nat.c: Update.
6263         * sol-thread.c: Update.
6264         * spu-linux-nat.c: Update.
6265         * target.c: Update.
6266         * top.c: Update.
6267         * tracefile-tfile.c: Update.
6268         * windows-nat.c: Update.
6269
6270 2018-07-03  Tom Tromey  <tom@tromey.com>
6271
6272         * common/ptid.h (ptid_build): Don't declare.
6273         * common/ptid.c (ptid_build): Remove.
6274         * aix-thread.c: Update.
6275         * bsd-kvm.c: Update.
6276         * bsd-uthread.c: Update.
6277         * common/agent.c: Update.
6278         * common/ptid.c: Update.
6279         * common/ptid.h: Update.
6280         * corelow.c: Update.
6281         * darwin-nat.c: Update.
6282         * fbsd-nat.c: Update.
6283         * gnu-nat.c: Update.
6284         * linux-fork.c: Update.
6285         * linux-nat.c: Update.
6286         * linux-thread-db.c: Update.
6287         * nat/linux-osdata.c: Update.
6288         * nat/linux-procfs.c: Update.
6289         * nto-procfs.c: Update.
6290         * obsd-nat.c: Update.
6291         * proc-service.c: Update.
6292         * procfs.c: Update.
6293         * ravenscar-thread.c: Update.
6294         * remote-sim.c: Update.
6295         * remote.c: Update.
6296         * sol-thread.c: Update.
6297         * target.c: Update.
6298         * windows-nat.c: Update.
6299
6300 2018-07-03  Tom Tromey  <tom@tromey.com>
6301
6302         * infrun.c (follow_exec): Use exit_inferior_silent.
6303         * inferior.c (exit_inferior_num_silent): Remove.
6304         * inferior.h (exit_inferior_num_silent): Don't declare.
6305
6306 2018-07-03  Tom Tromey  <tom@tromey.com>
6307
6308         PR cli/23340:
6309         * darwin-nat.c (darwin_attach_pid): Reset inferior and
6310         inferior_ptid on error.
6311
6312 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
6313             Simon Marchi  <simon.marchi@polymtl.ca>
6314
6315         PR tdep/8282
6316         * disasm.h (gdb_disassembler): Add
6317         `m_disassembler_options_holder'. member
6318         * disasm.c (get_all_disassembler_options): New function.
6319         (gdb_disassembler::gdb_disassembler): Use it.
6320         (gdb_buffered_insn_length_init_dis): Likewise.
6321         (gdb_buffered_insn_length): Adjust accordingly.
6322         (set_disassembler_options): Handle options with arguments.
6323         (show_disassembler_options_sfunc): Likewise.  Add a leading new
6324         line if showing options with descriptions.
6325         (disassembler_options_completer): Adapt to using the
6326         `disasm_options_and_args_t' structure.
6327         * mips-tdep.c (mips_disassembler_options): New variable.
6328         (mips_disassembler_options_o32): Likewise.
6329         (mips_disassembler_options_n32): Likewise.
6330         (mips_disassembler_options_n64): Likewise.
6331         (gdb_print_insn_mips): Don't set `disassembler_options'.
6332         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
6333         functions.
6334         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
6335         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
6336         `gdbarch_disassembler_options_implicit' and
6337         `gdbarch_valid_disassembler_options'.
6338         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
6339         `disasm_options_and_args_t' structure.
6340         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
6341         method.
6342         (valid_disassembler_options): Switch from `disasm_options_t' to
6343         the `disasm_options_and_args_t' structure.
6344         * NEWS: Document `set disassembler-options' support for the MIPS
6345         target.
6346         * gdbarch.h: Regenerate.
6347         * gdbarch.c: Regenerate.
6348
6349 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
6350
6351         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
6352
6353 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
6354
6355         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
6356         parameter in call to amd64_target_description.
6357         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
6358         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
6359         (amd64fbsd_init_abi): Likewise.
6360         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
6361         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
6362         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
6363         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
6364
6365 2018-06-29  Pedro Alves  <palves@redhat.com>
6366
6367         * gdb/amd64-tdep.h (amd64_create_target_description): Add
6368         "segments" parameter.
6369         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
6370         (_initialize_amd64_tdep): Update call to
6371         amd64_create_target_description.
6372         (amd64_target_description): Add "segments" parameter.  Adjust
6373         the implementation to use it.
6374         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
6375         call to amd64_create_target_description.
6376         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
6377         * gdb/arch/amd64.h (amd64_create_target_description): Add
6378         "segments" register.
6379         * gdb/arch/amd64.c (amd64_create_target_description): Add
6380         "segments" parameter.  Call create_feature_i386_64bit_segments
6381         only if SEGMENTS is true.
6382         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
6383         call to amd64_create_target_description.
6384
6385 2018-06-29  Pedro Alves  <palves@redhat.com>
6386
6387         * thread.c (thread_target_id_str): New, factored out from ...
6388         (print_thread_info_1): ... here.  Use it to compute the max
6389         "Target Id" column width.
6390
6391 2018-06-29  Pedro Alves  <palves@redhat.com>
6392
6393         * remote.c (remote_target::extra_thread_info): Delete
6394         'display_buf' and 'n' locals.  from the cache, regardless of
6395         packet mechanims is in use.  Use cache for qThreadExtra and qP
6396         methods too.
6397
6398 2018-06-29  Pedro Alves  <palves@redhat.com>
6399
6400         * blockframe.c (find_pc_sect_containing_function): New function.
6401         * breakpoint.c (print_breakpoint_location): Don't call
6402         find_pc_sect_function.
6403         * linespec.c (create_sals_line_offset): Record the location's
6404         symbol in the sal.
6405         * linespec.c (convert_address_location_to_sals): Fill in sal's
6406         symbol with find_pc_sect_containing_function.
6407         * symtab.c (find_function_start_sal): Rename to ...
6408         (find_function_start_sal_1): ... this.
6409         (find_function_start_sal): Reimplement as wrapper around
6410         find_function_start_sal_1, and use
6411         find_pc_sect_containing_function to fill in the sal's symbol.
6412         (find_function_start_sal(symbol*, bool)): Adjust.
6413         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
6414         comments.
6415         (find_pc_sect_containing_function): Declare.
6416
6417 2018-06-29  Pedro Alves  <palves@redhat.com>
6418
6419         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
6420         true if the the location has no symbol.
6421
6422 2018-06-28  Tom Tromey  <tom@tromey.com>
6423
6424         * NEWS: Mention --enable-codesign.
6425         * silent-rules.mk (ECHO_SIGN): New variable.
6426         * configure.ac: Add --enable-codesign.
6427         * configure: Rebuild.
6428         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
6429         (gdb$(EXEEXT)): Optionally invoke codesign.
6430
6431 2018-06-28  Pedro Alves  <palves@redhat.com>
6432
6433         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
6434         comments.
6435         (switch_to_thread_no_regs): Adjust comment.
6436         * infcmd.c (stop_pc): Delete.
6437         (post_create_inferior, info_program_command): Replace references
6438         to stop_pc with references to thread_info->suspend.stop_pc.
6439         * inferior.h (stop_pc): Delete declaration.
6440         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
6441         (handle_inferior_event_1, handle_signal_stop)
6442         (process_event_stop_test, keep_going_stepped_thread)
6443         (handle_step_into_function, handle_step_into_function_backward)
6444         (print_stop_location): Replace references to stop_pc with
6445         references to thread_info->suspend.stop_pc.
6446         (struct infcall_suspend_state) <stop_pc>: Delete field.
6447         (save_infcall_suspend_state, restore_infcall_suspend_state):
6448         Remove references to inf_stat->stop_pc.
6449         * linux-fork.c (fork_load_infrun_state): Likewise.
6450         * record-btrace.c (record_btrace_set_replay): Likewise.
6451         * record-full.c (record_full_goto_entry): Likewise.
6452         * remote.c (print_one_stopped_thread): Likewise.
6453         * target.c (target_resume): Extend comment.
6454         * thread.c (set_executing_thread): New.
6455         (set_executing): Use it.
6456         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
6457         Remove references to stop_pc.
6458
6459 2018-06-28  Pedro Alves  <palves@redhat.com>
6460
6461         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
6462         Moving fetching stop_pc until after ecs->event_thread is refreshed.
6463
6464 2018-06-28  Tom Tromey  <tom@tromey.com>
6465
6466         * coffread.c (coff_symfile_finish): Update.
6467         * xcoffread.c (xcoff_symfile_finish): Update.
6468         * elfread.c (elf_symfile_finish): Update.
6469         * symfile.h (dwarf2_free_objfile): Don't declare.
6470         * dwarf2read.c (_initialize_dwarf2_read): Use
6471         register_objfile_data_with_cleanup.
6472         (dwarf2_free_objfile): Now static.  Change signature.
6473
6474 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6475
6476         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
6477         option "-o" to add-symbol-file-load to add an offset to each
6478         section's load address.
6479         * symfile.c (set_objfile_default_section_offset): New function.
6480
6481 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6482
6483         * symfile.c (add_symbol_file_command): Make sure that sections
6484         with the same name are sorted in the same order.
6485
6486 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6487
6488         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
6489         require the second argument.  If omitted, load sections at the
6490         addresses specified in the file.
6491
6492 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6493
6494         * symfile.c (symbol_file_command, symbol_file_add_main_1)
6495         (_initialize_symfile): Add option "-o" to symbol-file to add an
6496         offset to each section of the symbol file.
6497
6498 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6499
6500         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
6501
6502 2018-06-27  Tom Tromey  <tom@tromey.com>
6503
6504         * stack.c (_initialize_stack): Update "func" help text.
6505
6506 2018-06-27  Tom Tromey  <tom@tromey.com>
6507
6508         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
6509         std::vector.
6510         (unwind_infopy_str, pyuw_create_unwind_info)
6511         (unwind_infopy_add_saved_register, pyuw_sniffer)
6512         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
6513         Update.
6514         (struct saved_reg): Add constructor.
6515         <value>: Now a gdbpy_ref<>.
6516
6517 2018-06-27  Tom Tromey  <tom@tromey.com>
6518
6519         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
6520
6521 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6522
6523         * gdb-gdb.py.in: Format using autopep8.
6524
6525 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6526
6527         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
6528         (type_lookup_function): Recognize CORE_ADDR values.
6529
6530 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6531
6532         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
6533         print tag_name.
6534
6535 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6536
6537         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
6538         <__lt__>: Add.
6539
6540 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6541
6542         * gdb-gdb.py: Move to...
6543         * gdb-gdb.py.in: ... here.
6544         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
6545         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
6546         dependencies.
6547         (distclean): Remove gdb-gdb.py when cleaning.
6548         (gdb-gdb.py, gdb-gdb.gdb): New rules.
6549         * configure: Re-generate.
6550
6551 2018-06-27  Pedro Alves  <palves@redhat.com>
6552
6553         * proc-service.c (get_ps_regcache): New.
6554         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
6555         (ps_lsetfpregs): Use it.
6556
6557 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
6558
6559         PR gdb/21695
6560         * dwarf2read.c (lnp_state_machine::check_line_address): Update declaration.
6561         (dwarf_decode_lines_1): Adjust.
6562
6563 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6564
6565         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
6566         override.
6567         <info_proc>: Likewise.
6568
6569 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
6570
6571         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
6572         to windows_fetch_one_register, and only handle the case of
6573         fetching one register.  Move the code that reloads the context
6574         and iterates over all registers if R is negative to...
6575         (windows_nat_target::fetch_registers): ... here.
6576         (do_windows_store_inferior_registers): Rename to
6577         windows_store_one_register, and only handle the case of storing
6578         one register.  Move the code that handles the case where r is
6579         negative to...
6580         (windows_nat_target::store_registers) ... here.
6581
6582 2018-06-26  Tom Tromey  <tom@tromey.com>
6583
6584         PR rust/22574:
6585         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
6586         * rust-lang.c (rust_print_struct_def): Add podata parameter.
6587         Update.
6588         (rust_internal_print_type): Add podata parameter.
6589         (rust_print_type): Update.
6590
6591 2018-06-26  Tom Tromey  <tom@tromey.com>
6592
6593         * typeprint.h (struct print_offset_data) <update, finish,
6594         maybe_print_hole>: New methods.
6595         <indentation>: New constant.
6596         * typeprint.c (print_offset_data::indentation): Define.
6597         (print_offset_data::maybe_print_hole, print_offset_data::update)
6598         (print_offset_data::finish): Move from c-typeprint.c and rename.
6599         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
6600         (print_spaces_filtered_with_print_options): Update.
6601         (c_print_type_union_field_offset, maybe_print_hole)
6602         (c_print_type_struct_field_offset): Move to typeprint.c and
6603         rename.
6604         (c_type_print_base_struct_union): Update.
6605
6606 2018-06-25  Pedro Alves  <palves@redhat.com>
6607
6608         * gdbthread.h (thread_info_ref, delete_thread)
6609         (delete_thread_silent, first_thread_of_inferior)
6610         (any_thread_of_inferior, switch_to_thread)
6611         (enable_thread_stack_temporaries)
6612         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6613         (get_last_thread_stack_temporary)
6614         (value_in_thread_stack_temporaries, can_access_registers_thread):
6615         Spell out "struct thread_info" instead of just "thread_info".
6616         * inferior.h (notice_new_inferior): Likewise.
6617
6618 2018-06-25  Pedro Alves  <palves@redhat.com>
6619
6620         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
6621         pass thread_info pointer to delete_thread.
6622         (windows_nat_target::detach): Pass inferior pointer to
6623         detach_inferior.
6624         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
6625         delete_thread.
6626         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
6627         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
6628         and pass a thread_info pointer to delete_thread.
6629         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
6630         pass thread_info pointer to delete_thread.
6631         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
6632         delete_thread_silent call.
6633         * procfs.c (procfs_target::detach): Pass inferior pointer to
6634         detach_inferior.
6635         (procfs_target::wait): Pass thread_info pointer to delete_thread.
6636         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
6637         delete_thread_silent call.
6638         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
6639         pass thread_info pointer to delete_thread.
6640         (windows_nat_target::detach): Pass inferior pointer to
6641         delete_inferior.
6642
6643 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
6644
6645         * regcache.c (readable_regcache::read_part): Fix asserts.
6646         (reg_buffer::raw_collect_part): New function.
6647         (regcache::write_part): Fix asserts.
6648         (reg_buffer::raw_supply_part): New function.
6649         (regcache::transfer_regset_register): New helper function.
6650         (regcache::transfer_regset): Call new functions.
6651         (regcache_supply_regset): Use gdb_byte*.
6652         (regcache::supply_regset): Likewise.
6653         (regcache_collect_regset): Likewise.
6654         (regcache::collect_regset): Likewise.
6655         * regcache.h (reg_buffer::raw_collect_part): New declaration.
6656         (reg_buffer::raw_supply_part): Likewise.
6657         (regcache::transfer_regset_register): Likewise.
6658         (regcache::transfer_regset): Use gdb_byte*.
6659
6660 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
6661
6662         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
6663
6664 2018-06-21  Pedro Alves  <palves@redhat.com>
6665
6666         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
6667         instead of a ptid_t.  All callers adjusted.
6668         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
6669         adjusted.
6670         (print_ada_task_info, display_current_task_id, task_command_1):
6671         Adjust.
6672         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
6673         inferior_thread.
6674         (breakpoint_kind): Adjust.
6675         (remove_breakpoints_pid): Rename to ...
6676         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
6677         pointer.  All callers adjusted.
6678         (bpstat_clear_actions): Use inferior_thread.
6679         (get_bpstat_thread): New.
6680         (bpstat_do_actions): Use it.
6681         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
6682         to take a thread_info pointer.  All callers adjusted.
6683         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
6684         (breakpoint_re_set_thread): Use inferior_thread.
6685         * breakpoint.h (struct inferior): Forward declare.
6686         (bpstat_stop_status): Update.
6687         (remove_breakpoints_pid): Delete.
6688         (remove_breakpoints_inf): New.
6689         * bsd-uthread.c (bsd_uthread_target::wait)
6690         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
6691         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
6692         (maint_btrace_packet_history_cmd)
6693         (maint_btrace_clear_packet_history_cmd): Adjust.
6694         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
6695         inferior_thread.
6696         * cli/cli-interp.c: Include "inferior.h".
6697         * common/refcounted-object.h (struct
6698         refcounted_object_ref_policy): New.
6699         * compile/compile-object-load.c: Include gdbthread.h.
6700         (store_regs): Use inferior_thread.
6701         * corelow.c (core_target::close): Use current_inferior.
6702         (core_target_open): Adjust to use first_thread_of_inferior and use
6703         the current inferior.
6704         * ctf.c (ctf_target::close): Adjust to use current_inferior.
6705         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
6706         <thread>: ... this new field.  All references adjusted.
6707         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
6708         Take a thread_info pointer instead of a ptid_t.
6709         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
6710         (dummy_frame_discard, register_dummy_frame_dtor): Take a
6711         thread_info pointer instead of a ptid_t.
6712         * elfread.c: Include "inferior.h".
6713         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
6714         Use inferior_thread.
6715         * eval.c (evaluate_subexp): Likewise.
6716         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
6717         inferior_thread.
6718         * gdb_proc_service.h (struct thread_info): Forward declare.
6719         (struct ps_prochandle) <ptid>: Delete, replaced by ...
6720         <thread>: ... this new field.  All references adjusted.
6721         * gdbarch.h, gdbarch.c: Regenerate.
6722         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
6723         'thread' parameter.  All implementations and callers adjusted.
6724         * gdbthread.h (thread_info) <set_running>: New method.
6725         (delete_thread, delete_thread_silent): Take a thread_info pointer
6726         instead of a ptid.
6727         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
6728         (first_thread_of_process): Delete, replaced by ...
6729         (first_thread_of_inferior): ... this new function.  All callers
6730         adjusted.
6731         (any_live_thread_of_process): Delete, replaced by ...
6732         (any_live_thread_of_inferior): ... this new function.  All callers
6733         adjusted.
6734         (switch_to_thread, switch_to_no_thread): Declare.
6735         (is_executing): Delete.
6736         (enable_thread_stack_temporaries): Update comment.
6737         <enable_thread_stack_temporaries>: Take a thread_info pointer
6738         instead of a ptid_t.  Incref the thread.
6739         <~enable_thread_stack_temporaries>: Decref the thread.
6740         <m_ptid>: Delete
6741         <m_thr>: New.
6742         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6743         (get_last_thread_stack_temporary)
6744         (value_in_thread_stack_temporaries, can_access_registers_thread):
6745         Take a thread_info pointer instead of a ptid_t.  All callers
6746         adjusted.
6747         * infcall.c (get_call_return_value): Use inferior_thread.
6748         (run_inferior_call): Work with thread pointers instead of ptid_t.
6749         (call_function_by_hand_dummy): Work with thread pointers instead
6750         of ptid_t.  Use thread_info_ref.
6751         * infcmd.c (proceed_thread_callback): Access thread's state
6752         directly.
6753         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
6754         access thread's state directly.
6755         (continue_command): Use inferior_thread.
6756         (info_program_command): Use find_thread_ptid and access thread
6757         state directly.
6758         (proceed_after_attach_callback): Use thread state directly.
6759         (notice_new_inferior): Take a thread_info pointer instead of a
6760         ptid_t.  All callers adjusted.
6761         (exit_inferior): Take an inferior pointer instead of a pid.  All
6762         callers adjusted.
6763         (exit_inferior_silent): New.
6764         (detach_inferior): Delete.
6765         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
6766         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
6767         (detach_inferior_command, kill_inferior_command): Use
6768         find_inferior_id instead of valid_gdb_inferior_id and
6769         gdb_inferior_id_to_pid.
6770         (inferior_command): Use inferior and thread pointers.
6771         * inferior.h (struct thread_info): Forward declare.
6772         (notice_new_inferior): Take a thread_info pointer instead of a
6773         ptid_t.  All callers adjusted.
6774         (detach_inferior): Delete declaration.
6775         (exit_inferior, exit_inferior_silent): Take an inferior pointer
6776         instead of a pid.  All callers adjusted.
6777         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
6778         (valid_gdb_inferior_id): Delete.
6779         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
6780         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
6781         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
6782         ...
6783         <inf>: ... this new field.
6784         <step_ptid>: Delete, replaced by ...
6785         <step_thread>: ... this new field.
6786         (get_displaced_stepping_state): Take an inferior pointer instead
6787         of a pid.  All callers adjusted.
6788         (displaced_step_in_progress_any_inferior): Adjust.
6789         (displaced_step_in_progress_thread): Take a thread pointer instead
6790         of a ptid_t.  All callers adjusted.
6791         (displaced_step_in_progress, add_displaced_stepping_state): Take
6792         an inferior pointer instead of a pid.  All callers adjusted.
6793         (get_displaced_step_closure_by_addr): Adjust.
6794         (remove_displaced_stepping_state): Take an inferior pointer
6795         instead of a pid.  All callers adjusted.
6796         (displaced_step_prepare_throw, displaced_step_prepare)
6797         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
6798         All callers adjusted.
6799         (start_step_over): Adjust.
6800         (infrun_thread_ptid_changed): Remove bit updating ptids in the
6801         displaced step queue.
6802         (do_target_resume): Adjust.
6803         (fetch_inferior_event): Use inferior_thread.
6804         (context_switch, get_inferior_stop_soon): Take an
6805         execution_control_state pointer instead of a ptid_t.  All callers
6806         adjusted.
6807         (switch_to_thread_cleanup): Delete.
6808         (stop_all_threads): Use scoped_restore_current_thread.
6809         * inline-frame.c: Include "gdbthread.h".
6810         (inline_state) <inline_state>: Take a thread pointer instead of a
6811         ptid_t.  All callers adjusted.
6812         <ptid>: Delete, replaced by ...
6813         <thread>: ... this new field.
6814         (find_inline_frame_state): Take a thread pointer instead of a
6815         ptid_t.  All callers adjusted.
6816         (skip_inline_frames, step_into_inline_frame)
6817         (inline_skipped_frames, inline_skipped_symbol): Take a thread
6818         pointer instead of a ptid_t.  All callers adjusted.
6819         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
6820         (inline_skipped_frames, inline_skipped_symbol): Likewise.
6821         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
6822         pointers directly.
6823         * linux-nat.c (get_detach_signal): Likewise.
6824         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
6825         (thread_db_notice_clone): Adjust.
6826         (thread_db_find_new_threads_silently)
6827         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
6828         a thread pointer instead of a ptid_t.  All callers adjusted.
6829         * mi/mi-cmd-var.c: Include "inferior.h".
6830         (mi_cmd_var_update_iter): Update to use thread pointers.
6831         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
6832         inferior directly.
6833         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
6834         out to ...
6835         (mi_output_running): ... this new function.
6836         (mi_on_resume_1): Adjust to use it.
6837         (mi_user_selected_context_changed): Adjust to use inferior_thread.
6838         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
6839         directly.
6840         (interrupt_thread_callback): : Adjust to use thread and inferior
6841         pointers.
6842         * proc-service.c: Include "gdbthread.h".
6843         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
6844         * progspace-and-thread.c: Include "inferior.h".
6845         * progspace.c: Include "inferior.h".
6846         * python/py-exitedevent.c (create_exited_event_object): Adjust to
6847         hold a reference to an inferior_object.
6848         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
6849         inferior_thread.
6850         * python/py-inferior.c (struct inferior_object): Give the type a
6851         tag name instead of a typedef.
6852         (python_on_normal_stop): No need to check if the current thread is
6853         listed.
6854         (inferior_to_inferior_object): Change return type to
6855         inferior_object.  All callers adjusted.
6856         (find_thread_object): Delete, bits factored out to ...
6857         (thread_to_thread_object): ... this new function.
6858         * python/py-infthread.c (create_thread_object): Use
6859         inferior_to_inferior_object.
6860         (thpy_is_stopped): Use thread pointer directly.
6861         (gdbpy_selected_thread): Use inferior_thread.
6862         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
6863         field, replaced with ...
6864         <thread>: ... this new field.  All users adjusted.
6865         (btpy_insn_or_gap_new): Drop const.
6866         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
6867         callers adjusted.
6868         * python/py-record.c: Include "gdbthread.h".
6869         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6870         a ptid_t.  All callers adjusted.
6871         (gdbpy_current_recording): Use inferior_thread.
6872         * python/py-record.h (recpy_record_object) <ptid>: Delete
6873         field, replaced with ...
6874         <thread>: ... this new field.  All users adjusted.
6875         (recpy_element_object) <ptid>: Delete
6876         field, replaced with ...
6877         <thread>: ... this new field.  All users adjusted.
6878         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6879         a ptid_t.  All callers adjusted.
6880         * python/py-threadevent.c: Include "gdbthread.h".
6881         (get_event_thread): Use thread_to_thread_object.
6882         * python/python-internal.h (struct inferior_object): Forward
6883         declare.
6884         (find_thread_object, find_inferior_object): Delete declarations.
6885         (thread_to_thread_object, inferior_to_inferior_object): New
6886         declarations.
6887         * record-btrace.c: Include "inferior.h".
6888         (require_btrace_thread): Use inferior_thread.
6889         (record_btrace_frame_sniffer)
6890         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
6891         (get_thread_current_frame): Use scoped_restore_current_thread and
6892         switch_to_thread.
6893         (get_thread_current_frame): Use thread pointer directly.
6894         (record_btrace_replay_at_breakpoint): Use thread's inferior
6895         pointer directly.
6896         * record-full.c: Include "inferior.h".
6897         * regcache.c: Include "gdbthread.h".
6898         (get_thread_arch_regcache): Use the inferior's address space
6899         directly.
6900         (get_thread_regcache, registers_changed_thread): New.
6901         * regcache.h (get_thread_regcache(thread_info *thread)): New
6902         overload.
6903         (registers_changed_thread): New.
6904         (remote_target) <remote_detach_1>: Swap order of parameters.
6905         (remote_add_thread): <remote_add_thread>: Return the new thread.
6906         (get_remote_thread_info(ptid_t)): New overload.
6907         (remote_target::remote_notice_new_inferior): Use thread pointers
6908         directly.
6909         (remote_target::process_initial_stop_replies): Use
6910         thread_info::set_running.
6911         (remote_target::remote_detach_1, remote_target::detach)
6912         (extended_remote_target::detach): Adjust.
6913         * stack.c (frame_show_address): Use inferior_thread.
6914         * target-debug.h (target_debug_print_thread_info_pp): New.
6915         * target-delegates.c: Regenerate.
6916         * target.c (default_thread_address_space): Delete.
6917         (memory_xfer_partial_1): Use current_inferior.
6918         (target_detach): Use current_inferior.
6919         (target_thread_address_space): Delete.
6920         (generic_mourn_inferior): Use current_inferior.
6921         * target.h (struct target_ops) <thread_address_space>: Delete.
6922         (target_thread_address_space): Delete.
6923         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
6924         pointers directly.
6925         (delete_thread_1, delete_thread, delete_thread_silent): Take a
6926         thread pointer instead of a ptid_t.  Adjust all callers.
6927         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
6928         (first_thread_of_process): Delete, replaced by ...
6929         (first_thread_of_inferior): ... this new function.  All callers
6930         adjusted.
6931         (any_thread_of_process): Rename to ...
6932         (any_thread_of_inferior): ... this, and take an inferior pointer.
6933         (any_live_thread_of_process): Rename to ...
6934         (any_live_thread_of_inferior): ... this, and take an inferior
6935         pointer.
6936         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6937         (value_in_thread_stack_temporaries)
6938         (get_last_thread_stack_temporary): Take a thread pointer instead
6939         of a ptid_t.  Adjust all callers.
6940         (thread_info::set_running): New.
6941         (validate_registers_access): Use inferior_thread.
6942         (can_access_registers_ptid): Rename to ...
6943         (can_access_registers_thread): ... this, and take a thread
6944         pointer.
6945         (print_thread_info_1): Adjust to compare thread pointers instead
6946         of ptids.
6947         (switch_to_no_thread, switch_to_thread): Make extern.
6948         (scoped_restore_current_thread::~scoped_restore_current_thread):
6949         Use m_thread pointer directly.
6950         (scoped_restore_current_thread::scoped_restore_current_thread):
6951         Use inferior_thread.
6952         (thread_command): Use thread pointer directly.
6953         (thread_num_make_value_helper): Use inferior_thread.
6954         * top.c (execute_command): Use inferior_thread.
6955         * tui/tui-interp.c: Include "inferior.h".
6956         * varobj.c (varobj_create): Use inferior_thread.
6957         (value_of_root_1): Use find_thread_global_id instead of
6958         global_thread_id_to_ptid.
6959
6960 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
6961
6962         * regcache.c (readable_regcache::read_part): Avoid memcpy when
6963         possible.
6964         (regcache::write_part): Likewise.
6965         (readable_regcache::cooked_read_part): Update comment.
6966         (readable_regcache::cooked_write_part): Likewise.
6967         * regcache.h: (readable_regcache::read_part): Likewise.
6968         (regcache::write_part): Likewise.
6969
6970 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
6971             Dirk Schubert  <dirk.schubert@arm.com>
6972
6973         * aarch64-linux-nat.c (post_attach): New.
6974         (aarch64_linux_nat_target::post_attach): Override post_attach to
6975         record the number of hardware debug registers.
6976
6977 2018-06-20  Tom Tromey  <tom@tromey.com>
6978
6979         * python/py-param.c (add_setshow_generic): Make parameters const.
6980         (parmpy_init): Update.
6981
6982 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
6983
6984         * regcache.h (regcache_cooked_read_ftype): Rename to...
6985         (register_read_ftype): ...this, change type to function_view.
6986         (class reg_buffer) <save>: Remove src parameter.
6987         (readonly_detached_regcache) <readonly_detached_regcache>: Make
6988         parameter non-const in first overload.  Remove src parameter in
6989         second overload.
6990         * regcache.c (do_cooked_read): Remove.
6991         (readonly_detached_regcache::readonly_detached_regcache): Make
6992         parameter non-const, adjust call to other constructor.
6993         (reg_buffer::save): Remove src parameter.
6994         * frame.c (do_frame_register_read): Remove.
6995         (frame_save_as_regcache): Use lambda function.
6996         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
6997         parameter to ppu2spu_data *.
6998         (ppu2spu_sniffer): Use lambda function.
6999
7000 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
7001
7002         * record-full.c (record_full_target::insert_breakpoint): Remove
7003         "struct" keyword, add const.
7004
7005 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
7006
7007         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
7008         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
7009         * configure.ac: Remove AC_PREREQ, add missing quoting.
7010         * gnulib/configure.ac: Modernize usage of
7011         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
7012         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
7013         (AUTOMAKE_VERSION): Bump to 1.15.1.
7014         * configure: Re-generate.
7015         * config.in: Re-generate.
7016         * aclocal.m4: Re-generate.
7017         * gnulib/aclocal.m4: Re-generate.
7018         * gnulib/config.in: Re-generate.
7019         * gnulib/configure: Re-generate.
7020         * gnulib/import/Makefile.in: Re-generate.
7021
7022 2018-06-19  Pedro Alves  <palves@redhat.com>
7023
7024         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
7025         (lookup_minimal_symbol_by_pc_section): ... here with
7026         gdb_assert_not_reached added.
7027
7028 2018-06-19  Pedro Alves  <palves@redhat.com>
7029
7030         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
7031         parameter with a block parameter.  Compare location's block symbol
7032         with the frame's block instead of addresses.
7033         (skip_inline_frames): Pass the current block instead of the
7034         frame's address.  Break out as soon as we determine the frame
7035         should not be skipped.
7036
7037 2018-06-18  Tom Tromey  <tom@tromey.com>
7038
7039         * solib-aix.c (solib_aix_get_section_offsets): Return
7040         unique_xmalloc_ptr.
7041         (solib_aix_solib_create_inferior_hook): Update.
7042
7043 2018-06-18  Tom Tromey  <tom@tromey.com>
7044
7045         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
7046
7047 2018-06-18  Tom Tromey  <tom@tromey.com>
7048
7049         * solib-frv.c (frv_relocate_main_executable): Use
7050         unique_xmalloc_ptr.
7051         * solib-dsbt.c (dsbt_relocate_main_executable): Use
7052         unique_xmalloc_ptr.
7053
7054 2018-06-18  Tom Tromey  <tom@tromey.com>
7055
7056         * objfiles.h (inhibit_section_map_updates): Update.
7057         (resume_section_map_updates, resume_section_map_updates_cleanup):
7058         Remove.
7059         * solib-svr4.c (svr4_handle_solib_event): Update.
7060         * objfiles.c (inhibit_section_map_updates): Return
7061         scoped_restore_tmpl<int>.
7062         (resume_section_map_updates, resume_section_map_updates_cleanup):
7063         Remove.
7064
7065 2018-06-18  Tom Tromey  <tom@tromey.com>
7066
7067         * valprint.h (read_string): Update.
7068         * valprint.c (read_string): Change type of "buffer".
7069         (val_print_string): Update.
7070         * python/py-value.c (valpy_string): Update.
7071         * language.h (struct language_defn) <la_get_string>: Change
7072         type of "buffer".
7073         (default_get_string, c_get_string): Update.
7074         * language.c (default_get_string): Change type of "buffer".
7075         * guile/scm-value.c (gdbscm_value_to_string): Update.
7076         * c-lang.c (c_get_string): Change type of "buffer".
7077
7078 2018-06-18  Tom Tromey  <tom@tromey.com>
7079
7080         * ser-mingw.c (struct pipe_state_destroyer): New.
7081         (pipe_state_up): New typedef.
7082         (cleanup_pipe_state): Remove.
7083         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
7084
7085 2018-06-18  Tom Tromey  <tom@tromey.com>
7086
7087         * rust-lang.h (rust_yyerror): Don't declare.
7088         * rust-lang.c (rust_language_defn): Update.
7089         * rust-exp.y (yyerror): Now static.
7090         * parse.c (parse_exp_in_context_1): Update.
7091         * p-lang.h (p_yyerror): Don't declare.
7092         * p-lang.c (p_language_defn): Update.
7093         * p-exp.y (yyerror): Now static.
7094         * opencl-lang.c (opencl_language_defn): Update.
7095         * objc-lang.c (objc_language_defn): Update.
7096         * m2-lang.h (m2_yyerror): Don't declare.
7097         * m2-lang.c (m2_language_defn): Update.
7098         * m2-exp.y (yyerror): Now static.
7099         * language.h (struct language_defn) <la_error>: Remove.
7100         * language.c (unk_lang_error): Remove.
7101         (unknown_language_defn, auto_language_defn): Remove.
7102         * go-lang.h (go_yyerror): Don't declare.
7103         * go-lang.c (go_language_defn): Update.
7104         * go-exp.y (yyerror): Now static.
7105         * f-lang.h (f_yyerror): Don't declare.
7106         * f-lang.c (f_language_defn): Update.
7107         * f-exp.y (yyerror): Now static.
7108         * d-lang.h (d_yyerror): Don't declare.
7109         * d-lang.c (d_language_defn): Update.
7110         * d-exp.y (yyerror): Now static.
7111         * c-lang.h (c_yyerror): Don't declare.
7112         * c-lang.c (c_language_defn, cplus_language_defn)
7113         (asm_language_defn, minimal_language_defn): Update.
7114         * c-exp.y (yyerror): Now static.
7115         * ada-lang.h (ada_yyerror): Don't declare.
7116         * ada-lang.c (ada_language_defn): Update.
7117         * ada-exp.y (yyerror): Now static.
7118
7119 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
7120
7121         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
7122         (store_sveregs_to_thread): Likewise.
7123         (aarch64_linux_fetch_inferior_registers): Check for SVE.
7124         (aarch64_linux_store_inferior_registers): Likewise.
7125         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
7126         function.
7127         (aarch64_sve_regs_copy_to_regcache): Likewise.
7128         (aarch64_sve_regs_copy_from_regcache): Likewise.
7129         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
7130         declaration.
7131         (aarch64_sve_regs_copy_to_regcache): Likewise.
7132         (aarch64_sve_regs_copy_from_regcache): Likewise.
7133         (sve_context): Structure from Linux headers.
7134         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
7135         (SVE_SIG_ZREG_SIZE): Likewise.
7136         (SVE_SIG_PREG_SIZE): Likewise.
7137         (SVE_SIG_FFR_SIZE): Likewise.
7138         (SVE_SIG_REGS_OFFSET): Likewise.
7139         (SVE_SIG_ZREGS_OFFSET): Likewise.
7140         (SVE_SIG_ZREG_OFFSET): Likewise.
7141         (SVE_SIG_ZREGS_SIZE): Likewise.
7142         (SVE_SIG_PREGS_OFFSET): Likewise.
7143         (SVE_SIG_PREG_OFFSET): Likewise.
7144         (SVE_SIG_PREGS_SIZE): Likewise.
7145         (SVE_SIG_FFR_OFFSET): Likewise.
7146         (SVE_SIG_REGS_SIZE): Likewise.
7147         (SVE_SIG_CONTEXT_SIZE): Likewise.
7148         (SVE_PT_REGS_MASK): Likewise.
7149         (SVE_PT_REGS_FPSIMD): Likewise.
7150         (SVE_PT_REGS_SVE): Likewise.
7151         (SVE_PT_VL_INHERIT): Likewise.
7152         (SVE_PT_VL_ONEXEC): Likewise.
7153         (SVE_PT_REGS_OFFSET): Likewise.
7154         (SVE_PT_FPSIMD_OFFSET): Likewise.
7155         (SVE_PT_FPSIMD_SIZE): Likewise.
7156         (SVE_PT_SVE_ZREG_SIZE): Likewise.
7157         (SVE_PT_SVE_PREG_SIZE): Likewise.
7158         (SVE_PT_SVE_FFR_SIZE): Likewise.
7159         (SVE_PT_SVE_FPSR_SIZE): Likewise.
7160         (SVE_PT_SVE_FPCR_SIZE): Likewise.
7161         (__SVE_SIG_TO_PT): Likewise.
7162         (SVE_PT_SVE_OFFSET): Likewise.
7163         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
7164         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
7165         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
7166         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
7167         (SVE_PT_SVE_PREG_OFFSET): Likewise.
7168         (SVE_PT_SVE_PREGS_SIZE): Likewise.
7169         (SVE_PT_SVE_FFR_OFFSET): Likewise.
7170         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
7171         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
7172         (SVE_PT_SVE_SIZE): Likewise.
7173         (SVE_PT_SIZE): Likewise.
7174         (HAS_SVE_STATE): New define.
7175
7176 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
7177
7178         * nat/aarch64-sve-linux-sigcontext.h: New file.
7179         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
7180         new files.
7181         (SVE_VQ_MIN): Likewise.
7182         (SVE_VQ_MAX): Likewise.
7183         (SVE_VL_MIN): Likewise.
7184         (SVE_VL_MAX): Likewise.
7185         (SVE_NUM_ZREGS): Likewise.
7186         (SVE_NUM_PREGS): Likewise.
7187         (sve_vl_valid): Likewise.
7188         (struct user_sve_header): Likewise.
7189
7190 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
7191             Richard Bunt <Richard.Bunt@arm.com>
7192
7193         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
7194         was requested by GDB.
7195
7196 2018-06-15  Tom de Vries  <tdevries@suse.de>
7197
7198         * MAINTAINERS (Write After Approval): Add Tom de Vries.
7199
7200 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
7201
7202         * gnulib/update-gnulib.sh: Print expected versions of
7203         autoconf/aclocal.
7204
7205 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
7206
7207         * arch-utils.c (default_type_align): Use type_length_units.
7208         * gdbtypes.c (type_align): Use type_length_units.
7209
7210 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7211
7212         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
7213         of 'define' command.
7214
7215 2018-06-14  Tom de Vries  <tdevries@suse.de>
7216
7217         PR cli/22573
7218         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
7219         get_no_prettyformat_print_options.
7220
7221 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
7222
7223         * sparc-nat.h: Include target.h.
7224         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
7225         <fetch_registers>: Remove this argument in function call.
7226         <store_registers>: Remove this argument in function call, remove
7227         extra semicolon.
7228         <low_forget_process>: Call sparc64_forget_process instead of
7229         sparc_forget_process.
7230
7231 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
7232
7233         * procfs.c (_initialize_procfs): Use add_inf_child_target.
7234         (procfs_target::make_corefile_notes): Adjust to new
7235         target_read_alloc return type.
7236
7237 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7238             Stephen Roberts  <stephen.roberts@arm.com>
7239
7240         PR gdb/22882
7241         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
7242         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
7243         Move should_notify_stop local into more inner scope.
7244
7245 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7246             Stephen Roberts  <stephen.roberts@arm.com>
7247
7248         PR gdb/22882
7249         * infrun.c (resume_1): Add call to mark_async_event_handler.
7250
7251 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7252
7253         * infrun.c (do_target_wait): Change old version of $pc printed.
7254
7255 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
7256
7257         * dwarf2read.c (read_index_from_section): Rename to...
7258         (read_gdb_index_from_section): ... this, update all callers.
7259         (dwarf2_read_index): Rename to...
7260         (dwarf2_read_gdb_index): ... this, update all callers.
7261
7262 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
7263
7264         * gdb/hppa-linux-nat.c
7265         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
7266         hppa_linux_nat_target::fetch_registers.
7267
7268 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
7269
7270         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
7271         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
7272         (AARCH64_DWARF_SVE_FFR): Likewise.
7273         (AARCH64_DWARF_SVE_P0): Likewise.
7274         (AARCH64_DWARF_SVE_Z0): Likewise.
7275
7276 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
7277
7278         * common/common-regcache.h (raw_compare): New function.
7279         * regcache.c (regcache::raw_compare): Likewise.
7280         * regcache.h (regcache::raw_compare): New declaration.
7281
7282 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
7283
7284         * common/common-regcache.h (reg_buffer_common): New structure.
7285         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
7286         (reg_buffer::raw_supply): Likewise.
7287         (reg_buffer::raw_supply_integer): Likewise.
7288         (reg_buffer::raw_supply_zeroed): Likewise.
7289         (reg_buffer::raw_collect): Likewise.
7290         (reg_buffer::raw_collect_integer): Likewise.
7291         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
7292         (reg_buffer::raw_supply): Likewise.
7293         (reg_buffer::raw_supply_integer): Likewise.
7294         (reg_buffer::raw_supply_zeroed): Likewise.
7295         (reg_buffer::raw_collect): Likewise.
7296         (reg_buffer::raw_collect_integer): Likewise.
7297
7298 2018-06-10  Tom Tromey  <tom@tromey.com>
7299
7300         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
7301         (class remote_state) <stop_reply_queue>: Now std::vector.
7302         (remote_state::~remote_state)
7303         (remote_target::stop_reply_queue_length): Update.
7304         (struct queue_iter_param, remove_child_of_pending_fork)
7305         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
7306         (check_pending_event_prevents_wildcard_vcont_callback)
7307         (remove_stop_reply_for_inferior)
7308         (remove_stop_reply_of_remote_state)
7309         (remote_notif_remove_once_on_match)
7310         (stop_reply_match_ptid_and_ws)
7311         (remote_kill_child_of_pending_fork): Remove.
7312         (remote_target::remove_new_fork_children)
7313         (remote_target::check_pending_events_prevent_wildcard_vcont)
7314         (remote_target::discard_pending_stop_replies)
7315         (remote_target::discard_pending_stop_replies_in_queue)
7316         (remote_target::remote_notif_remove_queued_reply)
7317         (remote_target::queued_stop_reply)
7318         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
7319         (remote_target::wait, remote_target::kill_new_fork_children)
7320         (remote_target::async): Update.
7321
7322 2018-06-10  Tom Tromey  <tom@tromey.com>
7323
7324         * record-full.c (record_full_arch_list_cleanups): Remove.
7325         (record_full_message): Use try/catch.
7326         (record_full_wait_cleanups): Remove.
7327         (record_full_wait_1): Use try/catch.
7328         (record_full_restore): Likewise.
7329
7330 2018-06-10  Tom Tromey  <tom@tromey.com>
7331
7332         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
7333         declare VEC.  Add constructor.
7334         <in_target_beneath>: Now bool.
7335         (record_full_breakpoints): Now a std::vector, static.
7336         (record_full_sync_record_breakpoints)
7337         (record_full_init_record_breakpoints)
7338         (record_full_target::insert_breakpoint)
7339         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
7340
7341 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
7342
7343         * dwarf2read.c (process_cu_includes): Remove struct keyword.
7344         * serial.c (serial_interface_lookup): Remove struct keyword.
7345
7346 2018-06-10  Tom Tromey  <tom@tromey.com>
7347
7348         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
7349         method.
7350         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
7351         a method.
7352         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
7353         method.
7354         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
7355         "beneath" as a method.
7356         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
7357         Use "beneath" as a method.
7358
7359 2018-06-10  Tom Tromey  <tom@tromey.com>
7360
7361         * tracefile.c (struct trace_file_writer_deleter): New.
7362         <operator()>: Rename from trace_file_writer_xfree.
7363         (trace_file_writer_up): New typedef.
7364         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
7365
7366 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
7367
7368         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
7369         <m_registers, m_register_status>: Change type to
7370         std::unique_ptr.
7371         * regcache.c (reg_buffer::reg_buffer): Use new instead of
7372         XCNEWVEC.
7373
7374 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
7375
7376         * common/common-regcache.h (enum register_status): Add
7377         underlying type "signed char".
7378         * regcache.h (reg_buffer) <m_register_status>: Change type to
7379         register_status *.
7380         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
7381         register_status instead of signed char.
7382         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
7383         (reg_buffer::get_register_status): Remove cast.
7384         (readable_regcache::raw_read): Remove cast.
7385         (readable_regcache::cooked_read): Remove cast.
7386
7387 2018-06-09  Tom Tromey  <tom@tromey.com>
7388
7389         * source.c (reverse_search_command, forward_search_command): Use
7390         scoped_fd.
7391
7392 2018-06-09  Tom Tromey  <tom@tromey.com>
7393
7394         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
7395         (serial_ops_list): Now static, std::vector.
7396         (serial_interface_lookup, serial_add_interface): Update.
7397
7398 2018-06-09  Tom Tromey  <tom@tromey.com>
7399
7400         * dwarf2read.c (process_cu_includes): Update.
7401         (process_full_comp_unit): Update.
7402         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
7403         std::vector.
7404
7405 2018-06-08  Paul Koning  <paul_koning@dell.com>
7406
7407         PR gdb/23252
7408
7409         * python/python.c (do_start_initialization):
7410         Avoid call to internal Python API.
7411         (init__gdb_module): New function.
7412
7413 2018-06-08  Gary Benson <gbenson@redhat.com>
7414
7415         * linux-thread-db.c (valprint.h): New include.
7416         (struct check_thread_db_info): New structure.
7417         (check_thread_db_on_load, tdb_testinfo): New static globals.
7418         (check_thread_db, check_thread_db_callback): New functions.
7419         (try_thread_db_load_1): Run integrity checks if requested.
7420         (maintenance_check_libthread_db): New function.
7421         (_initialize_thread_db): Register "maint check libthread-db"
7422         and "maint set/show check-libthread-db".
7423         * NEWS: Mention the above new commands.
7424
7425 2018-06-08  Tom Tromey  <tom@tromey.com>
7426
7427         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
7428         now a method.
7429
7430 2018-06-08  Tom Tromey  <tom@tromey.com>
7431
7432         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
7433
7434 2018-06-08  Tom Tromey  <tom@tromey.com>
7435
7436         * common/btrace-common.h (struct btrace_data): Add constructor,
7437         destructor, move assignment operator.
7438         <empty, clear, fini>: New methods.
7439         <format>: Initialize.
7440         (btrace_data_init, btrace_data_fini, btrace_data_clear)
7441         (btrace_data_empty): Don't declare.
7442         * common/btrace-common.c (btrace_data_init): Remove.
7443         (btrace_data::fini): Rename from btrace_data_fini.
7444         (btrace_data::empty): Rename from btrace_data_empty.
7445         (btrace_data::clear): Rename from btrace_data_clear.  Return
7446         bool.
7447         * btrace.h (make_cleanup_btrace_data): Don't declare.
7448         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
7449         (parse_xml_btrace): Update.
7450         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
7451         (maint_btrace_clear_packet_history_cmd): Update.
7452
7453 2018-06-07  Pedro Alves  <palves@redhat.com>
7454
7455         * target.h (target_ops) <beneath>: Now a method.  All references
7456         updated.
7457         (class target_stack): New.
7458         * target.c (g_target_stack): New.
7459         (g_current_top_target): Delete.
7460         (current_top_target): Get the top target out of g_target_stack.
7461         (target_stack::push, target_stack::unpush): New.
7462         (push_target, unpush_target): Reimplement.
7463         (target_is_pushed): Reimplement in terms of g_target_stack.
7464         (target_ops::beneath, target_stack::find_beneath): New.
7465
7466 2018-06-07  Pedro Alves  <palves@redhat.com>
7467
7468         * target.h (find_target_beneath): Delete declaration.
7469         * target.c (find_target_beneath): Delete definition.
7470         * aix-thread.c: All callers of find_target_beneath adjusted to
7471         call target_ops::beneath instead.
7472         * bsd-uthread.c: Likewise.
7473         * linux-thread-db.c: Likewise.
7474         * ravenscar-thread.c: Likewise.
7475         * sol-thread.c: Likewise.
7476         * spu-multiarch.c: Likewise.
7477
7478 2018-06-07  Pedro Alves  <palves@redhat.com>
7479
7480         * target.h (target_ops) <beneath>: Now a method.  All references
7481         updated.
7482         (target_ops) <m_beneath>: New.
7483         * target.c (target_ops::beneath): New.
7484         * corelow.c: Adjust all references to target_ops::beneath.
7485         * linux-thread-db.c: Likewise.
7486         * make-target-delegates: Likewise.
7487         * record-btrace.c: Likewise.
7488         * record-full.c: Likewise.
7489         * remote.c: Likewise.
7490         * target.c: Likewise.
7491         * target-delegates.c: Regenerate.
7492
7493 2018-06-07  Pedro Alves  <palves@redhat.com>
7494
7495         * target.h (target_stack): Delete.
7496         (current_top_target): Declare function.
7497         * target.c (target_stack): Delete.
7498         (g_current_top_target): New.
7499         (current_top_target): New function.
7500         * auxv.c: Use current_top_target instead of target_stack
7501         throughout.
7502         * avr-tdep.c: Likewise.
7503         * breakpoint.c: Likewise.
7504         * corefile.c: Likewise.
7505         * elfread.c: Likewise.
7506         * eval.c: Likewise.
7507         * exceptions.c: Likewise.
7508         * frame.c: Likewise.
7509         * gdbarch-selftests.c: Likewise.
7510         * gnu-v3-abi.c: Likewise.
7511         * ia64-tdep.c: Likewise.
7512         * ia64-vms-tdep.c: Likewise.
7513         * infcall.c: Likewise.
7514         * infcmd.c: Likewise.
7515         * infrun.c: Likewise.
7516         * linespec.c: Likewise.
7517         * linux-tdep.c: Likewise.
7518         * minsyms.c: Likewise.
7519         * ppc-linux-nat.c: Likewise.
7520         * ppc-linux-tdep.c: Likewise.
7521         * procfs.c: Likewise.
7522         * regcache.c: Likewise.
7523         * remote.c: Likewise.
7524         * rs6000-tdep.c: Likewise.
7525         * s390-linux-nat.c: Likewise.
7526         * s390-tdep.c: Likewise.
7527         * solib-aix.c: Likewise.
7528         * solib-darwin.c: Likewise.
7529         * solib-dsbt.c: Likewise.
7530         * solib-spu.c: Likewise.
7531         * solib-svr4.c: Likewise.
7532         * solib-target.c: Likewise.
7533         * sparc-tdep.c: Likewise.
7534         * sparc64-tdep.c: Likewise.
7535         * spu-tdep.c: Likewise.
7536         * symfile.c: Likewise.
7537         * symtab.c: Likewise.
7538         * target-descriptions.c: Likewise.
7539         * target-memory.c: Likewise.
7540         * target.c: Likewise.
7541         * target.h: Likewise.
7542         * tracefile-tfile.c: Likewise.
7543         * tracepoint.c: Likewise.
7544         * valops.c: Likewise.
7545         * valprint.c: Likewise.
7546         * value.c: Likewise.
7547         * windows-tdep.c: Likewise.
7548         * mi/mi-main.c: Likewise.
7549
7550 2018-06-07  Tom Tromey  <tom@tromey.com>
7551
7552         * valprint.h (build_address_symbolic): Declare.
7553         * printcmd.c (print_address_symbolic): Update.
7554         (build_address_symbolic): Change "name" and "filename" to
7555         std::string.
7556         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
7557         Update.
7558         * defs.h (build_address_symbolic): Remove declaration.
7559
7560 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
7561
7562         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
7563         (aarch64_vnv_type): Add function.
7564         (aarch64_pseudo_register_name): Add V regs for SVE.
7565         (aarch64_pseudo_register_type): Likewise.
7566         (aarch64_pseudo_register_reggroup_p): Likewise.
7567         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
7568         (aarch64_pseudo_read_value): Add V regs for SVE.
7569         (aarch64_pseudo_write_2): Use V0 offset for SVE
7570         (aarch64_pseudo_write): Add V regs for SVE.
7571         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
7572
7573 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
7574
7575         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
7576         (sve_vl_from_vq): Likewise.
7577
7578 2018-06-05  Tom Tromey  <tom@tromey.com>
7579
7580         * cli/cli-cmds.c (show_version): Update.
7581         * top.c (print_gdb_version): Add "interactive" parameter.
7582         Update.
7583         * main.c (captured_main_1): Update.
7584         * top.h (print_gdb_version): Add "interactive" parameter and a
7585         comment.
7586
7587 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
7588
7589         * common/enum-flags.h: Add trailing semicolon to example in
7590         comment.
7591
7592 2018-06-05  Tom Tromey  <tom@tromey.com>
7593
7594         PR cli/12326:
7595         * NEWS: Add entry about pager.
7596         * utils.c (pagination_disabled_for_command): New global.
7597         (prompt_for_continue): Allow "c" response to prompt.
7598         (reinitialize_more_filter): Clear
7599         pagination_disabled_for_command.
7600         (fputs_maybe_filtered): Check pagination_disabled_for_command.
7601
7602 2018-06-04  Tom Tromey  <tom@tromey.com>
7603
7604         * ada-lang.h (ada_lookup_symbol_list): Update.
7605         * ada-lang.c (resolve_subexp): Update.
7606         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
7607         parameter.
7608         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
7609         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
7610         results parameter to std::vector.
7611         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
7612         Update.
7613         * ada-exp.y (block_lookup): Update.
7614         (select_possible_type_sym): Change type of syms.  Remove nsyms
7615         parameter.
7616         (write_var_or_type, write_name_assoc): Update.
7617
7618 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
7619
7620         * windows-nat.c (windows_nat_target::xfer_partial): Return
7621         TARGET_XFER_E_IO if we need to delegate to the target beneath
7622         but BENEATH is NULL.
7623
7624 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
7625
7626         * Makefile.in (config.status): Add configure.nat as a
7627         dependency.
7628
7629 2018-06-04  Tom Tromey  <tom@tromey.com>
7630
7631         * cp-name-parser.y (cpname_state): Add method declarations.
7632         (HANDLE_QUAL): Update.
7633         (cpname_state::d_grab, cpname_state::fill_comp)
7634         (cpname_state::make_operator, cpname_state::make_dtor)
7635         (cpname_state::make_builtin_type, cpname_state::make_name)
7636         (cpname_state::d_qualify, cpname_state::d_int_type)
7637         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
7638         (%union): Move earlier.
7639
7640 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7641
7642         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
7643
7644 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7645
7646         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
7647         (aarch64_pseudo_write_1): Likewise.
7648         (aarch64_pseudo_read_value): Use helper.
7649         (aarch64_pseudo_write): Likewise.
7650
7651 2018-06-04  Pedro Alves  <palves@redhat.com>
7652
7653         * darwin-nat.c (darwin_ops): Delete.
7654         (darwin_attach_pid): Use get_native_target.
7655
7656 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7657
7658         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
7659         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
7660
7661 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7662
7663         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
7664         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
7665         (aarch64_gdbarch_init): Check for SVE.
7666         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
7667
7668 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7669
7670         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
7671         * aarch64-tdep.h (aarch64_read_description): Likewise.
7672         * arch/aarch64.c (aarch64_create_target_description): Likewise.
7673         * arch/aarch64.h (aarch64_create_target_description): Likewise.
7674         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
7675         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
7676         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
7677
7678 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
7679
7680         * value.c (value_fetch_lazy_bitfield): New.
7681         (value_fetch_lazy_memory): New.
7682         (value_fetch_lazy_register): New.
7683         (value_fetch_lazy): Factor out to smaller functions.
7684
7685 2018-06-01  Tom Tromey  <tom@tromey.com>
7686
7687         * cp-name-parser.y (backslashable, represented): Now const.
7688
7689 2018-06-01  Tom Tromey  <tom@tromey.com>
7690
7691         * cp-name-parser.y: Include parser-defs.h.
7692         (parser_fprintf): Remove declaration.
7693
7694 2018-06-01  Tom Tromey  <tom@tromey.com>
7695
7696         * cp-name-parser.y: Use %pure-parser, %lex-param, and
7697         %parse-param.
7698         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
7699         (global_result): Remove globals.
7700         (struct cpname_state): New.
7701         (yyparse): Don't declare.
7702         (yylex, yyerror): Move declarations after %union.
7703         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
7704         (make_name): Add state parameter.
7705         Update all callers.
7706         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
7707         parameter.
7708         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
7709         Update.
7710         (yylex): Add lvalp, state parameters.
7711         (yyerror): Add state parameter.
7712         (cp_demangled_name_to_comp): Update.
7713
7714 2018-06-01  Tom Tromey  <tom@tromey.com>
7715
7716         * cp-name-parser.y (parser_fprintf): Declare.
7717         (GDB_YY_REMAP_PREFIX): Define.
7718         Include yy-remap.h.  Don't redefine yy* identifiers.
7719
7720 2018-06-01  Tom Tromey  <tom@tromey.com>
7721
7722         * python/py-type.c (typy_legacy_template_argument): Update.
7723         * cp-support.h (cp_demangled_name_to_comp): Update.
7724         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
7725         parameter to be a "std::string *".
7726         (main): Update.
7727
7728 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
7729
7730         * ada-lex.l: Include "diagnostics.h" instead of
7731         "common/diagnostics.h".
7732         * unittests/environ-selftests.c: Likewise.
7733         * common/diagnostics.h: Moved to ../include.
7734
7735 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
7736
7737         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
7738         to language_mode_manual while calling breakpoint_re_set_one.
7739
7740 2018-06-01  Tom Tromey  <tom@tromey.com>
7741
7742         * valops.c (value_cast_structs, destructor_name_p): Update.
7743         * symtab.c (gdb_mangle_name): Update.
7744         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
7745         Update.
7746         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
7747         (pascal_object_print_value_fields, pascal_object_print_value):
7748         Update.
7749         * p-typeprint.c (pascal_type_print_derivation_info): Update.
7750         * linespec.c (find_methods): Update.
7751         * gdbtypes.h (type_name_no_tag): Remove.
7752         (type_name_or_error): Rename from type_name_no_tag_or_error.
7753         * gdbtypes.c (type_name_no_tag): Remove.
7754         (type_name_or_error): Rename from type_name_no_tag_or_error.
7755         (lookup_struct_elt_type, check_typedef): Update.
7756         * expprint.c (print_subexp_standard): Update.
7757         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
7758         * d-namespace.c (d_lookup_nested_symbol): Update.
7759         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
7760         (cp_print_class_member): Update.
7761         * cp-namespace.c (cp_lookup_nested_symbol): Update.
7762         * completer.c (add_struct_fields): Update.
7763         * c-typeprint.c (cp_type_print_derivation_info)
7764         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
7765         Update.
7766         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
7767         (ada_prefer_type, ada_is_exception_sym): Update.
7768
7769 2018-06-01  Tom Tromey  <tom@tromey.com>
7770
7771         * valops.c (enum_constant_from_type, value_namespace_elt)
7772         (value_maybe_namespace_elt): Update.
7773         * valarith.c (find_size_for_pointer_math): Update.
7774         * target-descriptions.c (make_gdb_type): Update.
7775         * symmisc.c (print_symbol): Update.
7776         * stabsread.c (define_symbol, read_type)
7777         (complain_about_struct_wipeout, add_undefined_type)
7778         (cleanup_undefined_types_1): Update.
7779         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
7780         (rust_range_type_p, val_print_struct, rust_print_struct_def)
7781         (rust_internal_print_type, rust_composite_type)
7782         (rust_evaluate_funcall, rust_evaluate_subexp)
7783         (rust_inclusive_range_type_p): Update.
7784         * python/py-type.c (typy_get_tag): Update.
7785         * p-typeprint.c (pascal_type_print_base): Update.
7786         * mdebugread.c (parse_symbol, parse_type): Update.
7787         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
7788         Update.
7789         * guile/scm-type.c (gdbscm_type_tag): Update.
7790         * go-lang.c (sixg_string_p): Update.
7791         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
7792         Update.
7793         * gdbtypes.h (struct main_type) <tag_name>: Remove.
7794         (TYPE_TAG_NAME): Remove.
7795         * gdbtypes.c (type_name_no_tag): Simplify.
7796         (check_typedef, check_types_equal, recursive_dump_type)
7797         (copy_type_recursive, arch_composite_type): Update.
7798         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
7799         in summary mode when needed.
7800         * eval.c (evaluate_funcall): Update.
7801         * dwarf2read.c (fixup_go_packaging, read_structure_type)
7802         (process_structure_scope, read_enumeration_type)
7803         (read_namespace_type, read_module_type, determine_prefix): Update.
7804         * cp-support.c (inspect_type): Update.
7805         * coffread.c (process_coff_symbol, decode_base_type): Update.
7806         * c-varobj.c (c_is_path_expr_parent): Update.
7807         * c-typeprint.c (c_type_print_base_struct_union): Update.
7808         (c_type_print_base_1): Update.  Print struct/class/union/enum in
7809         summary when using C language.
7810         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
7811         (gen_maybe_namespace_elt): Update.
7812         * ada-lang.c (ada_type_name): Simplify.
7813         (empty_record, ada_template_to_fixed_record_type_1)
7814         (template_to_static_fixed_type)
7815         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
7816
7817 2018-06-01  Tom Tromey  <tom@tromey.com>
7818
7819         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
7820         c_print_type.
7821         * c-typeprint.c (c_print_type_1): Add "language" parameter.
7822         (c_print_type): Update.
7823         (c_print_type): New overload.
7824         (c_type_print_varspec_prefix, c_type_print_args)
7825         (c_type_print_varspec_suffix, c_print_type_no_offsets)
7826         (c_type_print_base_struct_union, c_type_print_base_1)
7827         (cp_type_print_method_args): Add "language" parameter.
7828         (c_type_print_base): Update.
7829         * c-lang.h (c_print_type): Add new overload.
7830
7831 2018-06-01  Tom Tromey  <tom@tromey.com>
7832
7833         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
7834         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
7835
7836 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
7837
7838         * aarch64-tdep.c (aarch64_sve_register_names): New const
7839         var.
7840         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
7841         (AARCH64_SVE_Z_REGS_NUM): New define.
7842         (AARCH64_SVE_P_REGS_NUM): Likewise.
7843         (AARCH64_SVE_NUM_REGS): Likewise.
7844
7845 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
7846
7847         * nat/linux-ptrace.h [__alpha__]
7848         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
7849         definitions.
7850
7851 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
7852
7853         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
7854         the endianness selected.
7855         * NEWS: Document `set endian auto' mode operation update.
7856
7857 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7858
7859         * Makefile.in: Add new header.
7860         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
7861         (sve_vl_from_vg): Likewise.
7862         (sve_vq_from_vl): Likewise.
7863         (sve_vl_from_vq): Likewise.
7864         (sve_vq_from_vg): Likewise.
7865         (sve_vg_from_vq): Likewise.
7866         * configure.nat: Add new c file.
7867         * nat/aarch64-sve-linux-ptrace.c: New file.
7868         * nat/aarch64-sve-linux-ptrace.h: New file.
7869
7870 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7871
7872         * aarch64-linux-nat.c (aarch64_linux_read_description):
7873         Add parmeter zero.
7874         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
7875         Likewise.
7876         * aarch64-tdep.c (tdesc_aarch64_list): Add.
7877         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
7878         (aarch64_gdbarch_init): Add parmeter zero.
7879         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
7880         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
7881         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
7882         parmeter.
7883         * doc/gdb.texinfo: Describe SVE feature
7884         * features/aarch64-sve.c: New file.
7885
7886 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
7887
7888         PR gdb/23210
7889         * gdbarch.sh (significant_addr_bit): Default to zero when
7890         not set by target architecture.
7891         * gdbarch.c: Re-generated.
7892         * utils.c (address_significant): Update.
7893
7894 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
7895
7896         * stack.c (func_command): Remove trailing newline in call to error.
7897
7898 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7899
7900         * regcache.h (regcache_raw_collect): Remove, update callers to
7901         use regcache::raw_collect.
7902         * regcache.c (regcache_raw_collect): Remove.
7903
7904 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7905
7906         * regcache.h (regcache_raw_supply): Remove, update callers to
7907         use detached_regcache::raw_supply.
7908         * regcache.c (regcache_raw_supply): Remove.
7909
7910 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7911
7912         * regcache.h (regcache_cooked_write_part): Remove, update
7913         callers to use regcache::cooked_write_part.
7914         * regcache.c (regcache_cooked_write_part): Remove.
7915
7916 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7917
7918         * regcache.h (regcache_cooked_read_part): Remove, update callers
7919         to use readable_regcache::cooked_read_part.
7920         * regcache.c (regcache_cooked_read_part): Remove.
7921
7922 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7923
7924         * regcache.h (regcache_cooked_read_value): Remove, update
7925         callers to use readable_regcache::cooked_read_value.
7926         * regcache.c (regcache_cooked_read_value): Remove.
7927
7928 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7929
7930         * regcache.h (regcache_cooked_write): Remove, update callers to
7931         use regcache::cooked_write.
7932         * regcache.c (regcache_cooked_write): Remove.
7933
7934 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7935
7936         * regcache.h (regcache_invalidate): Remove, update callers to
7937         use detached_regcache::invalidate instead.
7938         * regcache.c (regcache_invalidate): Remove.
7939
7940 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7941
7942         * regcache.h (regcache_raw_write_part): Remove, update callers
7943         to use regcache::raw_write_part instead.
7944         * regcache.c (regcache_raw_write_part): Remove.
7945
7946 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7947
7948         * regcache.h (regcache_raw_read_part): Remove, update callers to
7949         use readable_regcache::raw_read_part instead.
7950         * regcache.c (regcache_raw_read_part): Remove.
7951
7952 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7953
7954         * regcache.h (regcache_cooked_read): Remove, update callers to
7955         use readable_regcache::cooked_read instead.
7956         * regcache.c (regcache_cooked_read): Remove.
7957
7958 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7959
7960         * regcache.h (regcache_raw_write): Remove, update callers to use
7961         regcache::raw_write instead.
7962         * regcache.c (regcache_raw_write): Remove.
7963
7964 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7965
7966         * regcache.h (regcache_raw_read): Remove, update callers to use
7967         readable_regcache::raw_read instead.
7968         * regcache.c (regcache_raw_read): Remove.
7969
7970 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7971
7972         * regcache.h (regcache_raw_update): Remove, update callers to
7973         use readable_regcache::raw_update instead.
7974         * regcache.c (regcache_raw_update): Remove.
7975
7976 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7977
7978         * regcache.h (regcache_register_status): Remove, update callers
7979         to use reg_buffer::get_register_status directly instead.
7980         * regcache.c (regcache_register_status): Remove.
7981
7982 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7983
7984         * regcache.h (regcache_get_ptid): Remove, update all callers to
7985         call regcache::ptid instead.
7986         * regcache.c (regcache_get_ptid): Remove.
7987
7988 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7989
7990         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
7991
7992 2018-05-30  Pedro Alves  <palves@redhat.com>
7993
7994         * common/common-exceptions.h (exception_rethrow): Use
7995         ATTRIBUTE_NORETURN.
7996
7997 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
7998
7999         * breakpoint.c (print_solib_event, check_status_catch_solib):
8000         Remove struct keyword in range-based for loops.
8001         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
8002         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
8003         Likewise.
8004         * linespec.c (find_superclass_methods, search_minsyms_for_name):
8005         Likewise.
8006         * symfile.c (addr_info_make_relative): Likewise.
8007         * thread.c (value_in_thread_stack_temporaries): Likewise.
8008
8009 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
8010
8011         PR gdb/16841
8012         * valops.c (value_struct_elt_for_reference): Call check_typedef on
8013         aggregate type to get its real type before accessing it.
8014
8015 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
8016
8017         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
8018         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
8019         * coff-pe-read.c (add_pe_forwarded_sym): Replace
8020         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
8021         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
8022         * jit.c (jit_breakpoint_re_set_internal): Likewise.
8023         * printcmd.c (info_address_command): Likewise.
8024
8025 2018-05-29  Tom Tromey  <tom@tromey.com>
8026
8027         * windows-nat.c (handle_exception): Update fall-through comment.
8028
8029 2018-05-29  Tom Tromey  <tom@tromey.com>
8030
8031         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
8032         (struct program_space) <added_solibs>: Now a std::vector.
8033         * breakpoint.c (print_solib_event): Update.
8034         (check_status_catch_solib): Update.
8035         * progspace.c (clear_program_space_solib_cache): Update.
8036         * solib.c (update_solib_list): Update.
8037
8038 2018-05-29  Tom Tromey  <tom@tromey.com>
8039
8040         * python/py-type.c (typy_richcompare): Update.
8041         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
8042         * gdbtypes.h (types_deeply_equal): Return bool.
8043         (types_equal): Likewise.
8044         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
8045         declare VEC.
8046         (check_types_equal): Change worklist to std::vector.  Return
8047         bool.
8048         (struct type_equality_entry): Add constructor.
8049         (compare_maybe_null_strings): Return bool.
8050         (check_types_worklist): Return bool.  Change worklist to
8051         std::vector.
8052         (types_deeply_equal): Use std::vector.
8053         (types_equal): Return bool.
8054         (compare_maybe_null_strings): Simplify.
8055
8056 2018-05-29  Tom Tromey  <tom@tromey.com>
8057
8058         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
8059
8060 2018-05-29  Tom Tromey  <tom@tromey.com>
8061
8062         * objc-lang.h: Don't include cp-support.h.
8063         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
8064         declare VEC.
8065
8066 2018-05-27  Tom Tromey  <tom@tromey.com>
8067
8068         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
8069
8070 2018-05-25  Tom Tromey  <tom@tromey.com>
8071
8072         * value.c (value::location): Initialize.
8073
8074 2018-05-25  Tom Tromey  <tom@tromey.com>
8075
8076         * dbxread.c (init_bincl_list): Remove.
8077         (bincl_list): Now a std::vector.
8078         (bincls_allocated, next_bincl): Remove.
8079         (free_bincl_list, do_free_bincl_list_cleanup)
8080         (make_cleanup_free_bincl_list): Remove.
8081         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
8082         unique_xmalloc_ptr.
8083         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
8084         (struct header_file_location): Add constructor.
8085         (add_bincl_to_list): Remove.
8086
8087 2018-05-25  Tom Tromey  <tom@tromey.com>
8088
8089         * tui/tui.c (tui_enable): Update.
8090         * mi/mi-interp.c (mi_interp::init): Update.
8091         * interps.h (class interp) <name>: New method.
8092         <m_name>: Rename from name.
8093         (~scoped_restore_interp): Update.
8094         * interps.c (interp::interp): Update.
8095         (interp_add, interp_set, interp_lookup_existing)
8096         (current_interp_named_p): Update.
8097
8098 2018-05-25  Tom Tromey  <tom@tromey.com>
8099
8100         * interps.c (interp_name): Remove.
8101         * mi/mi-interp.c (mi_interp::init): Update.
8102         * interps.h (interp_name): Remove.
8103         (~scoped_restore_interp): Update.
8104         * tui/tui.c (tui_enable): Update.
8105
8106 2018-05-25  Tom Tromey  <tom@tromey.com>
8107
8108         * utils.c (fputs_maybe_filtered): Update.
8109         * linespec.c (decode_line_full): Update.
8110         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
8111         (mi_print_breakpoint_for_event, mi_solib_loaded)
8112         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
8113         (mi_user_selected_context_changed): Update.
8114         * mi/mi-main.c (mi_execute_command): Update.
8115         * cli/cli-script.c (execute_control_command): Update.
8116         * python/python.c (execute_gdb_command): Update.
8117         * solib.c (info_sharedlibrary_command): Update.
8118         * interps.c (interp_ui_out): Remove.
8119         * interps.h (interp_ui_out): Remove.
8120
8121 2018-05-25  Tom Tromey  <tom@tromey.com>
8122
8123         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
8124         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
8125         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
8126
8127 2018-05-25  Tom Tromey  <tom@tromey.com>
8128
8129         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
8130         * interps.c (interp_exec): Use scoped_restore.
8131
8132 2018-05-25  Tom Tromey  <tom@tromey.com>
8133
8134         * remote.c (remote_target::remote_file_get): Use
8135         gdb::byte_vector.
8136         (remote_target::remote_file_put): Likewise.
8137
8138 2018-05-25  Tom Tromey  <tom@tromey.com>
8139
8140         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
8141         a std::string.
8142         (get_pe_section_index, add_pe_exported_sym): Update.
8143         (read_pe_exported_syms): Use gdb::def_vector.
8144
8145 2018-05-25  Tom Tromey  <tom@tromey.com>
8146
8147         * frame.c (remove_prev_frame): Remove.
8148         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
8149
8150 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
8151
8152         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
8153         Remove prototypes.
8154         * mips-linux-nat.c (supply_fpregset): Always call
8155         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
8156         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
8157         `mips_fill_fpregset'.
8158         * mips-linux-tdep.c (mips_supply_fpregset)
8159         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
8160         (mips_fill_fpregset_wrapper): Remove functions.
8161         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
8162         (mips_linux_fpregset): Remove variable.
8163         (mips_linux_iterate_over_regset_sections): Use
8164         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
8165         (mips_linux_o32_sigframe_init): Remove comment.
8166
8167 2018-05-25  Pedro Alves  <palves@redhat.com>
8168
8169         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
8170         (struct readahead_cache, struct packet_reg, struct
8171         remote_arch_state, class remote_state): Move higher up in the
8172         file.
8173         (remote_target::m_remote_state): Now an object instead of a pointer.
8174         (remote_target::get_remote_state): Adjust.
8175
8176 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
8177
8178         * stack.c (select_and_print_frame): Delete.
8179         (struct function_bounds): Move struct within function.
8180         (func_command): Most content moved into new function
8181         find_frame_for_function, use new function, print result, add
8182         function comment.
8183         (find_frame_for_function): New function, now returns a result.
8184
8185 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8186
8187         * stack.c (iterate_over_block_arg_vars): Fix comment.
8188         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
8189
8190 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
8191
8192         PR gdb/23203
8193         * frame.c
8194         (scoped_restore_selected_frame::scoped_restore_selected_frame):
8195         Define.
8196         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
8197         Define.
8198         * frame.h (class scoped_restore_selected_frame): New class.
8199         * stack.c (print_frame_local_vars): Remove catching and rethrowing
8200         of any exception, use scoped_restore_selected_frame to restore the
8201         frame instead.
8202
8203 2018-05-24  Pedro Alves  <palves@redhat.com>
8204
8205         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
8206         override.
8207
8208 2018-05-23  Tom Tromey  <tom@tromey.com>
8209
8210         * complaints.c (struct complaints): Remove.
8211         (symfile_complaint_book): Remove.
8212         (series): New global.
8213         (complaint_internal): Update.
8214         (clear_complaints): Update.
8215
8216 2018-05-23  Tom Tromey  <tom@tromey.com>
8217
8218         * complaints.c (counters): New global.
8219         (struct complain): Remove.
8220         (struct complaints) <root>: Remove.
8221         (complaint_sentinel): Remove.
8222         (symfile_complaint_book): Update.
8223         (find_complaint) Remove.
8224         (complaint_internal, clear_complaints): Update.
8225
8226 2018-05-23  Tom Tromey  <tom@tromey.com>
8227
8228         * complaints.c (struct complain) <file, line>: Remove.
8229         (find_complaint): Remove file, line parameters.
8230         (complaint_internal): Update.
8231
8232 2018-05-23  Tom Tromey  <tom@tromey.com>
8233
8234         * complaints.c (vcomplaint): Remove.
8235         (complaint_internal) Merge in contents of vcomplaint.
8236
8237 2018-05-23  Tom Tromey  <tom@tromey.com>
8238
8239         * complaints.c (struct complaints) <explanation>: Remove.
8240         (symfile_explanations): Remove.
8241         (symfile_complaint_book): Update.
8242         (vcomplaint): Update.
8243         (struct explanation): Remove.
8244
8245 2018-05-23  Tom Tromey  <tom@tromey.com>
8246
8247         * complaints.c (symfile_complaints): Remove.
8248         (complaint_internal): Remove "complaints" parameter.
8249         (clear_complaints, vcomplaint): Remove "c" parameter.
8250         (get_complaints): Remove.
8251         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
8252         (dwarf2_debug_line_missing_file_complaint)
8253         (dwarf2_debug_line_missing_end_sequence_complaint)
8254         (dwarf2_complex_location_expr_complaint)
8255         (dwarf2_const_value_length_mismatch_complaint)
8256         (dwarf2_section_buffer_overflow_complaint)
8257         (dwarf2_macro_malformed_definition_complaint)
8258         (dwarf2_invalid_attrib_class_complaint)
8259         (create_addrmap_from_index, dw2_symtab_iter_next)
8260         (dw2_expand_marked_cus)
8261         (dw2_debug_names_iterator::find_vec_in_debug_names)
8262         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
8263         (create_debug_type_hash_table, init_cutu_and_read_dies)
8264         (partial_die_parent_scope, add_partial_enumeration)
8265         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
8266         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
8267         (read_import_statement, read_file_scope, create_dwo_cu_reader)
8268         (create_cus_hash_table, create_dwp_hash_table)
8269         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
8270         (dwarf2_rnglists_process, dwarf2_ranges_process)
8271         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
8272         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
8273         (handle_struct_member_die, process_structure_scope)
8274         (read_array_type, read_common_block, read_module_type)
8275         (read_tag_pointer_type, read_typedef, read_base_type)
8276         (read_subrange_type, load_partial_dies, partial_die_info::read)
8277         (partial_die_info::read, partial_die_info::read)
8278         (partial_die_info::read, read_checked_initial_length_and_offset)
8279         (dwarf2_string_attr, read_formatted_entries)
8280         (dwarf_decode_line_header)
8281         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
8282         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
8283         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
8284         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
8285         (get_signatured_type, get_DW_AT_signature_type)
8286         (decode_locdesc, file_file_name, consume_improper_spaces)
8287         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
8288         (dwarf_decode_macro_bytes, dwarf_decode_macros)
8289         (dwarf2_symbol_mark_computed, set_die_type)
8290         (read_attribute_value): Update.
8291         * stap-probe.c (handle_stap_probe, get_stap_base_address):
8292         Update.
8293         * dbxread.c (unknown_symtype_complaint)
8294         (lbrac_mismatch_complaint, repeated_header_complaint)
8295         (set_namestring, function_outside_compilation_unit_complaint)
8296         (read_dbx_symtab, process_one_symbol): Update.
8297         * gdbtypes.c (stub_noname_complaint): Update.
8298         * windows-nat.c (handle_unload_dll): Update.
8299         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
8300         (decode_base_type): Update.
8301         * xcoffread.c (bf_notfound_complaint, ef_complaint)
8302         (eb_complaint, record_include_begin, record_include_end)
8303         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
8304         (process_xcoff_symbol, read_symbol)
8305         (function_outside_compilation_unit_complaint)
8306         (scan_xcoff_symtab): Update.
8307         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
8308         * buildsym.c (finish_block_internal, make_blockvector)
8309         (end_symtab_get_static_block, augment_type_symtab): Update.
8310         * dtrace-probe.c (dtrace_process_dof)
8311         (dtrace_static_probe_ops::get_probes): Update.
8312         * complaints.h (struct complaint): Don't declare.
8313         (symfile_complaints): Remove.
8314         (complaint_internal): Remove "complaints" parameter.
8315         (complaint): Likewise.
8316         (clear_complaints): Likewise.
8317         * symfile.c (syms_from_objfile_1, finish_new_objfile)
8318         (reread_symbols): Update.
8319         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
8320         (dwarf2_frame_cache, decode_frame_entry): Update.
8321         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
8322         * objc-lang.c (lookup_objc_class, lookup_child_selector)
8323         (info_selectors_command): Update.
8324         * macrotab.c (macro_include, check_for_redefinition)
8325         (macro_undef): Update.
8326         * objfiles.c (filter_overlapping_sections): Update.
8327         * stabsread.c (invalid_cpp_abbrev_complaint)
8328         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
8329         (define_symbol, error_type, read_type, rs6000_builtin_type)
8330         (stabs_method_name_from_physname, read_member_functions)
8331         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
8332         (attach_fields_to_type, complain_about_struct_wipeout)
8333         (read_range_type, read_args, common_block_start)
8334         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
8335         Update.
8336         * mdebugread.c (index_complaint, unknown_ext_complaint)
8337         (basic_type_complaint, bad_tag_guess_complaint)
8338         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
8339         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
8340         (parse_procedure, parse_lines)
8341         (function_outside_compilation_unit_complaint)
8342         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
8343         (bad_tag_guess_complaint, reg_value_complaint): Update.
8344         * cp-support.c (demangled_name_complaint): Update.
8345         * macroscope.c (sal_macro_scope): Update.
8346         * dwarf-index-write.c (class debug_names): Update.
8347
8348 2018-05-23  Tom Tromey  <tom@tromey.com>
8349
8350         * complaints.c (clear_complaints): Remove "noisy" parameter.
8351         * complaints.h (clear_complaints): Update.
8352         * symfile.c (syms_from_objfile_1, finish_new_objfile)
8353         (reread_symbols): Update.
8354
8355 2018-05-23  Tom Tromey  <tom@tromey.com>
8356
8357         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
8358         SUBSEQUENT_MESSAGE.
8359         (vcomplaint, clear_complaints): Update.
8360         (symfile_explanations): Remove some messages.
8361
8362 2018-05-23  Tom Tromey  <tom@tromey.com>
8363
8364         * complaints.c (internal_complaint): Remove.
8365         * complaints.h (internal_complaint): Remove.
8366
8367 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
8368
8369         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
8370
8371 2018-05-22  Pedro Alves  <palves@redhat.com>
8372
8373         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
8374         (remote_fileio_badfd, remote_fileio_return_errno)
8375         (remote_fileio_return_success, remote_fileio_func_open)
8376         (remote_fileio_func_open, remote_fileio_func_close)
8377         (remote_fileio_func_read, remote_fileio_func_write)
8378         (remote_fileio_func_lseek, remote_fileio_func_rename)
8379         (remote_fileio_func_unlink, remote_fileio_func_stat)
8380         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
8381         (remote_fileio_func_isatty, remote_fileio_func_system): Add
8382         remote_target parameter.
8383         (remote_fio_func_map) <func>: Add remote_target parameter.
8384         (do_remote_fileio_request, remote_fileio_request):
8385         * remote-fileio.h (remote_fileio_request):
8386         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
8387         remote_target parameter.
8388         (remote_notif_process, handle_notification): Adjust to pass down
8389         the remote.
8390         (remote_notif_state_allocate): Add remote_target parameter.  Save
8391         it.
8392         * remote-notif.h (struct remote_target): Forward declare.
8393         (struct notif_client) <parse, ack, can_get_pending_events>: Add
8394         remote_target parameter.
8395         (struct remote_notif_state) <remote>: New field.
8396         (remote_notif_ack, remote_notif_parse): Add remote_target
8397         parameter.
8398         (remote_notif_state_allocate, remote_notif_state_allocate): Add
8399         remote_target parameter.
8400         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
8401         (threads_listing_context, rmt_thread_action, protocol_feature)
8402         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
8403         (packet_result, struct threads_listing_context, remote_state):
8404         Move definitions and declarations higher up.
8405         (remote_target) <~remote_target>: Declare.
8406         (remote_download_command_source, remote_file_put, remote_file_get)
8407         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
8408         (remote_hostio_pread_vFile, remote_hostio_send_command)
8409         (remote_hostio_set_filesystem, remote_hostio_open)
8410         (remote_hostio_close, remote_hostio_unlink, remote_state)
8411         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
8412         (get_memory_write_packet_size, get_memory_read_packet_size)
8413         (append_pending_thread_resumptions, remote_detach_1)
8414         (append_resumption, remote_resume_with_vcont)
8415         (add_current_inferior_and_thread, wait_ns, wait_as)
8416         (process_stop_reply, remote_notice_new_inferior)
8417         (process_initial_stop_replies, remote_add_thread)
8418         (btrace_sync_conf, remote_btrace_maybe_reopen)
8419         (remove_new_fork_children, kill_new_fork_children)
8420         (discard_pending_stop_replies, stop_reply_queue_length)
8421         (check_pending_events_prevent_wildcard_vcont)
8422         (discard_pending_stop_replies_in_queue, stop_reply)
8423         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
8424         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
8425         (remote_interrupt_as, remote_interrupt_ns)
8426         (remote_get_noisy_reply, remote_query_attached)
8427         (remote_add_inferior, remote_current_thread, get_current_thread)
8428         (set_thread, set_general_thread, set_continue_thread)
8429         (set_general_process, write_ptid)
8430         (remote_unpack_thread_info_response, remote_get_threadinfo)
8431         (parse_threadlist_response, remote_get_threadlist)
8432         (remote_threadlist_iterator, remote_get_threads_with_ql)
8433         (remote_get_threads_with_qxfer)
8434         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
8435         (get_offsets, remote_check_symbols, remote_supported_packet)
8436         (remote_query_supported, remote_packet_size)
8437         (remote_serial_quit_handler, remote_detach_pid)
8438         (remote_vcont_probe, remote_resume_with_hc)
8439         (send_interrupt_sequence, interrupt_query)
8440         (remote_notif_get_pending_events, fetch_register_using_p)
8441         (send_g_packet, process_g_packet, fetch_registers_using_g)
8442         (store_register_using_P, store_registers_using_G)
8443         (set_remote_traceframe, check_binary_download)
8444         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
8445         (remote_xfer_live_readonly_partial, remote_read_bytes)
8446         (remote_send_printf, remote_flash_write, readchar)
8447         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
8448         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
8449         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
8450         (extended_remote_disable_randomization, extended_remote_run)
8451         (send_environment_packet, extended_remote_environment_support)
8452         (extended_remote_set_inferior_cwd, remote_write_qxfer)
8453         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
8454         (packet_command): Now methods of ...
8455         (remote_target): ... this class.
8456         (m_remote_state) <remote_target>: New field.
8457         (struct remote_state) <stop_reply_queue,
8458         remote_async_inferior_event_token, wait_forever_enabled_p>: New
8459         fields.
8460         (remote_state::remote_state): Allocate stop_reply_queue.
8461         (remote_state): Delete global.
8462         (get_remote_state_raw): Delete.
8463         (remote_target::get_remote_state): Allocate m_remote_state on
8464         demand.
8465         (get_current_remote_target): New.
8466         (remote_ops, extended_remote_ops): Delete.
8467         (wait_forever_enabled_p, remote_async_inferior_event_token):
8468         Delete, moved to struct remote_state.
8469         (remote_target::close): Delete self.  Destruction bits split to
8470         ...
8471         (remote_target::~remote_target): ... this.
8472         (show_memory_packet_size): Adjust to use
8473         get_current_remote_target.
8474         (struct protocol_feature) <func>: Add remote_target parameter.
8475         All callers adjusted.
8476         (curr_quit_handler_target): New.
8477         (remote_serial_quit_handler): Reimplement.
8478         (remote_target::open_1): Adjust to use get_current_remote_target.
8479         Heap-allocate remote_target/extended_remote_target instances.
8480         (vcont_builder::vcont_builder): Add remote_target parameter, and
8481         save it in m_remote.  All callers adjusted.
8482         (vcont_builder::m_remote): New field.
8483         (vcont_builder::restart, vcont_builder::flush)
8484         (vcont_builder::push_action): Use it.
8485         (remote_target::commit_resume): Use it.
8486         (struct queue_iter_param) <remote>: New field.
8487         (remote_target::remove_new_fork_children): Fill in 'remote' field.
8488         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
8489         (check_pending_event_prevents_wildcard_vcont_callback)
8490         (remote_target::check_pending_events_prevent_wildcard_vcont)
8491         (remote_target::discard_pending_stop_replies)
8492         (remote_target::discard_pending_stop_replies_in_queue)
8493         (remote_target::remote_notif_remove_queued_reply): Fill in
8494         'remote' field.
8495         (remote_notif_get_pending_events): New.
8496         (remote_target::readchar, remote_target::remote_serial_write):
8497         Save/restore curr_quit_handler_target.
8498         (putpkt): New.
8499         (kill_new_fork_children): Fill in 'remote' field.
8500         (packet_command): Use get_current_remote_target, defer to
8501         remote_target method of same name.
8502         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
8503         parameter, and save it in m_remote.  All callers adjusted.
8504         (scoped_remote_fd::release): Use m_remote.
8505         (scoped_remote_fd::m_remote): New field.
8506         (remote_file_put, remote_file_get, remote_file_delete): Use
8507         get_current_remote_target, defer to remote_target method of same
8508         name.
8509         (remote_btrace_reset): Add remote_state paremeter.  Update all
8510         callers.
8511         (remote_async_inferior_event_handler). Pass down 'data'.
8512         (remote_new_objfile): Use get_current_remote_target.
8513         (remote_target::vcont_r_supported): New.
8514         (set_range_stepping): Use get_current_remote_target and
8515         remote_target::vcont_r_supported.
8516         (_initialize_remote): Don't allocate 'remote_state' and
8517         'stop_reply_queue' globals.
8518         * remote.h (struct remote_target): Forward declare.
8519         (getpkt, putpkt, remote_notif_get_pending_events): Add
8520         'remote_target' parameter.
8521
8522 2018-05-22  Pedro Alves  <palves@redhat.com>
8523
8524         * remote.c (vcont_builder): Now a class.  Make all data members
8525         private.
8526         (vcont_builder) <vcont_builder, restart, flush, push_action>:
8527         Declare methods.
8528         (vcont_builder_restart): Rename to ...
8529         (vcont_builder::restart): ... this.
8530         (vcont_builder_flush): Rename to ...
8531         (vcont_builder::flush): ... this.
8532         (vcont_builder_push_action): Rename to ...
8533         (vcont_builder::push_action): ... this.
8534         (remote_target::commit_resume): Adjust.
8535
8536 2018-05-22  Pedro Alves  <palves@redhat.com>
8537
8538         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
8539         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
8540         (get_fixed_memory_packet_size): New.
8541         (get_memory_packet_size): Use it.
8542         (set_memory_packet_size): Don't override the config size with
8543         DEFAULT_MAX_MEMORY_PACKET_SIZE.
8544         (show_memory_packet_size): Use get_fixed_memory_packet_size.
8545         Don't refer to get_memory_packet_size if not connected to a remote
8546         target.  Show "(default)" if configured size is 0.
8547
8548 2018-05-22  Pedro Alves  <palves@redhat.com>
8549
8550         * remote.c (remote_target::mourn_inferior): Move
8551         discard_pending_stop_replies call here from ...
8552         (_initialize_remote): ... here.
8553
8554 2018-05-22  Pedro Alves  <palves@redhat.com>
8555
8556         * remote.c (compare_section_command): Remove set_general_process
8557         call.
8558
8559 2018-05-22  Pedro Alves  <palves@redhat.com>
8560
8561         * remote.c (struct packet_reg, struct remote_arch_state):
8562         Move higher up in the file.
8563         (remote_state) <m_arch_states>: Store remote_arch_state values
8564         instead of remote_arch_state pointers.
8565         (remote_state::get_remote_arch_state): Adjust.
8566
8567 2018-05-22  Pedro Alves  <palves@redhat.com>
8568
8569         * remote.c: Include <unordered_map>.
8570         (remote_state): Now a class.
8571         (remote_state) <get_remote_arch_state>: Declare method.
8572         <get_remote_arch_state>: New field.
8573         (remote_arch_state) <remote_arch_state>: Declare ctor.
8574         <regs>: Now a unique_ptr.
8575         (remote_gdbarch_data_handle): Delete.
8576         (get_remote_arch_state): Delete.
8577         (remote_state::get_remote_arch_state): New.
8578         (get_remote_state): Adjust to call remote_state's
8579         get_remote_arch_state method.
8580         (init_remote_state): Delete, bits factored out to ...
8581         (remote_arch_state::remote_arch_state): ... this new method.
8582         (get_remote_packet_size, get_memory_packet_size)
8583         (process_g_packet, remote_target::fetch_registers)
8584         (remote_target::prepare_to_store, store_registers_using_G)
8585         (remote_target::store_registers, remote_target::get_trace_status):
8586         Adjust to call remote_state's method.
8587         (_initialize_remote): Remove reference to
8588         remote_gdbarch_data_handle.
8589
8590 2018-05-22  Pedro Alves  <palves@redhat.com>
8591
8592         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
8593         pread>: New method declarations.
8594         (remote_target::open_1): Adjust.
8595         (readahead_cache_invalidate): Rename to ...
8596         (readahead_cache::invalidate): ... this, and adjust to be a class
8597         method.
8598         (readahead_cache_invalidate_fd): Rename to ...
8599         (readahead_cache::invalidate_fd): ... this, and adjust to be a
8600         class method.
8601         (remote_hostio_pwrite): Adjust.
8602         (remote_hostio_pread_from_cache): Rename to ...
8603         (readahead_cache::pread): ... this, and adjust to be a class
8604         method.
8605         (remote_hostio_close): Adjust.
8606
8607 2018-05-22  Pedro Alves  <palves@redhat.com>
8608
8609         * remote.c (remote_hostio_close_cleanup): Delete.
8610         (class scoped_remote_fd): New.
8611         (remote_file_put, remote_file_get): Use it.
8612
8613 2018-05-22  Pedro Alves  <palves@redhat.com>
8614
8615         (struct vCont_action_support): Use bool and initialize all fields.
8616         (struct readahead_cache): Initialize all fields.
8617         (remote_state): Use bool and initialize all fields.
8618         (remote_state::remote_state, remote_state::~remote_state): New.
8619         (new_remote_state): Delete.
8620         (_initialize_remote): Use new to allocate remote_state.
8621
8622 2018-05-22  Pedro Alves  <palves@redhat.com>
8623             張俊芝  <zjz@zjz.name>
8624
8625         PR gdb/22973
8626         * c-exp.y: Include "c-support.h".
8627         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
8628         of tolower.  Use c_ident_is_alpha to scan names.
8629         * c-lang.c: Include "c-support.h".
8630         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
8631         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
8632         * c-support.h: New file, with bits factored out from ...
8633         * cp-name-parser.y: ... this file.
8634         Include "c-support.h".
8635         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
8636         c-support.h and renamed.
8637         (symbol_end, yylex): Adjust.
8638
8639 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8640
8641         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
8642         parameter type to CORE_ADDR.
8643         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
8644         parameter type in declaration to CORE_ADDR.
8645         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
8646         target_auxv_search to get AT_HWCAP and use the result to get the
8647         target description.
8648         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
8649         to CORE_ADDR. Remove the cast of the return value to unsigned
8650         long. Fix error predicate of target_auxv_search.
8651         (ppc_linux_nat_target::read_description): Change the type of the
8652         hwcap variable to CORE_ADDR.
8653
8654 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8655
8656         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
8657         if the size of fpscr is larger than 32 bits.
8658
8659 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8660
8661         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
8662         (ppc32_linux_vsxregmap): New global.
8663         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
8664         regcache_supply_regset, and regcache_collect_regset.
8665         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
8666         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
8667         (fetch_vsx_register, store_vsx_register): Remove.
8668         (fetch_vsx_registers): Add regno parameter. Get regset using
8669         ppc_linux_vsxregset. Use regset to supply registers.
8670         (store_vsx_registers): Add regno parameter. Get regset using
8671         ppc_linux_vsxregset. Use regset to collect registers.
8672         (fetch_register): Call fetch_vsx_registers instead of
8673         fetch_vsx_register.
8674         (store_register): Call store_vsx_registers instead of
8675         store_vsx_register.
8676         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
8677         new regno parameter.
8678         (store_ppc_registers): Call store_vsx_registers with -1 for the
8679         new regno parameter.
8680         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
8681         (ppc_collect_vsxregset): Remove.
8682
8683 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8684
8685         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
8686         offset fields.
8687         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
8688         for vector register offset fields.
8689         (ppc64_fbsd_reg_offsets): Likewise.
8690         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
8691         to vector register offset fields.
8692         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
8693         to vector register offset fields.
8694         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
8695         vector register offset fields.
8696         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
8697         initializers for vector register offset fields.
8698         (rs6000_aix64_reg_offsets): Likewise.
8699         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
8700         (ppc_supply_vrregset): Remove.
8701         (ppc_collect_vrregset): Remove.
8702         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
8703         (ppc_linux_vrregset) : New function.
8704         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
8705         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
8706         (ppc32_linux_vrregset): Remove.
8707         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
8708         and use result instead of ppc32_linux_vrregset.
8709         (ppc32_linux_reg_offsets): Remove initializers for vector register
8710         offset fields.
8711         (ppc64_linux_reg_offsets): Likewise.
8712         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
8713         * ppc-linux-nat.c: Include regset.h.
8714         (gdb_vrregset_t): Adjust comment to account for little-endian
8715         mode.
8716         (supply_vrregset, fill_vrregset): Remove.
8717         (fetch_altivec_register, store_altivec_register): Remove.
8718         (fetch_altivec_registers): Add regno parameter. Get regset using
8719         ppc_linux_vrregset. Use regset to supply registers.
8720         (store_altivec_registers): Add regno parameter. Get regset using
8721         ppc_linux_vrregset. Use regset to collect registers.
8722         (fetch_register): Call fetch_altivec_registers instead of
8723         fetch_altivec_register.
8724         (store_register): Call store_altivec_registers instead of
8725         store_altivec_register.
8726         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
8727         the new regno parameter.
8728         (store_ppc_registers): Call store_altivec_registers with -1 for
8729         the new regno parameter.
8730
8731 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8732
8733         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
8734         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
8735         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
8736         (gdb_vrregset_t): Change array type size to
8737         PPC_LINUX_SIZEOF_VRREGSET.
8738         (gdb_vsxregset_t): Change array type size to
8739         PPC_LINUX_SIZEOF_VSXREGSET.
8740         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
8741         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
8742         PPC_LINUX_SIZEOF_VSXREGSET.
8743
8744 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8745
8746         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
8747         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
8748         nat/ppc-linux.c.
8749         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
8750         ppc_linux_target_wordsize with tid.
8751         (ppc_linux_nat_target::read_description): Call ppc_linux_target
8752         wordsize with tid.
8753         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
8754         (ppc64_64bit_inferior_p): Add static and inline specifiers.
8755         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
8756         tid parameter. Remove static specifier.
8757         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
8758         (ppc_linux_target_wordsize): New declaration.
8759
8760 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8761
8762         * arch/ppc-linux-common.c: New file.
8763         * arch/ppc-linux-common.h: New file.
8764         * arch/ppc-linux-tdesc.h: New file.
8765         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
8766         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
8767         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
8768         arch/ppc-linux-tdesc.h.
8769         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
8770         arch/ppc-linux-tdesc.h.
8771         (ppc_linux_nat_target::read_description): Remove target
8772         description matching code. Fill a ppc_linux_features struct and
8773         call ppc_linux_match_description with it. Move comment about ISA
8774         2.05 to ppc-linux-common.c.
8775         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
8776         arch/ppc-linux-tdesc.h.
8777         (ppc_linux_core_read_description): Remove target description
8778         matching code. Fill a ppc_linux_features struct and call
8779         ppc_linux_match_description with it.
8780         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
8781         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
8782         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
8783         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
8784         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
8785         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
8786         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
8787         (tdesc_powerpc_e500l): Remove.
8788
8789 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
8790
8791         * ada-lang.c (catch_assert_command): Pass empty string instead
8792         of NULL for excep_string argument.
8793
8794 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
8795
8796         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
8797         the width of the requested register exceeds the width of the
8798         `ptrace' data type.
8799
8800 2018-05-21  Tom Tromey  <tom@tromey.com>
8801
8802         * printcmd.c (output_command): Remove.
8803         (output_command_const): Rename to output_command.
8804         * valprint.h (output_command): Rename from output_command_const.
8805         * tracepoint.c (trace_dump_actions): Call output_command.
8806
8807 2018-05-21  Tom Tromey  <tom@tromey.com>
8808
8809         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
8810         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
8811         * ada-lang.h (create_ada_exception_catchpoint): Update.
8812         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
8813         std::string.
8814         (create_excep_cond_exprs, ~ada_catchpoint)
8815         (should_stop_exception, print_one_exception)
8816         (print_mention_exception, print_recreate_exception): Update.
8817         (ada_get_next_arg): Remove.
8818         (catch_ada_exception_command_split): Use std::string.  Change type
8819         of "excep_string", "cond_string".
8820         (catch_ada_exception_command): Update.
8821         (create_ada_exception_catchpoint): Change type of excep_string.
8822         (ada_exception_sal): Remove excep_string parameter.
8823         (~ada_catchpoint): Remove.
8824
8825 2018-05-21  Tom Tromey  <tom@tromey.com>
8826
8827         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
8828         cleanup.
8829
8830 2018-05-21  Tom Tromey  <tom@tromey.com>
8831
8832         * ada-lang.c (ada_exception_message_1, ada_exception_message):
8833         Return unique_xmalloc_ptr.
8834         (print_it_exception): Update.
8835
8836 2018-05-21  Tom Tromey  <tom@tromey.com>
8837
8838         * tracepoint.c (trace_dump_actions): Use std::string.
8839
8840 2018-05-21  Tom Tromey  <tom@tromey.com>
8841
8842         * symfile.c (reread_symbols): Use std::string for original_name.
8843
8844 2018-05-21  Tom Tromey  <tom@tromey.com>
8845
8846         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
8847         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
8848         constructor.
8849
8850 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
8851
8852         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
8853         instance to...
8854         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
8855         * objfiles.c (get_objfile_bfd_data): Allocate
8856         objfile_per_bfd_storage with obstack_new when allocating on
8857         obstack.
8858
8859 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8860
8861         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
8862         OBSTACK_ZALLOC.
8863         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
8864         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
8865         * mdebugread.c (mdebug_build_psymtabs): Likewise.
8866         (add_pending): Likewise.
8867         (parse_symbol): Likewise.
8868         (parse_partial_symbols): Likewise.
8869         (psymtab_to_symtab_1): Likewise.
8870         (new_psymtab): Likewise.
8871         (elfmdebug_build_psymtabs): Likewise.
8872         * minsyms.c (terminate_minimal_symbol_table): Likewise.
8873         * objfiles.c (get_objfile_bfd_data): Likewise.
8874         (objfile_register_static_link): Likewise.
8875         * psymtab.c (allocate_psymtab): Likewise.
8876         * stabsread.c (read_member_functions): Likewise.
8877         * xcoffread.c (xcoff_end_psymtab): Likewise.
8878
8879 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8880
8881         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
8882         compiler supports std::is_trivially_constructible.
8883         * common/poison.h: Include obstack.h.
8884         (IsMallocable): Define to is_trivially_constructible if the
8885         compiler supports it, define to true_type otherwise.
8886         (xobnew): New.
8887         (XOBNEW): Redefine.
8888         (xobnewvec): New.
8889         (XOBNEWVEC): Redefine.
8890         * gdb_obstack.h (obstack_zalloc): New.
8891         (OBSTACK_ZALLOC): Redefine.
8892         (obstack_calloc): New.
8893         (OBSTACK_CALLOC): Redefine.
8894         (obstack_new): New.
8895         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
8896         (gdbarch_obstack): New declaration in gdbarch.h, definition in
8897         gdbarch.c.
8898         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
8899         obstack_calloc/obstack_zalloc.
8900         (gdbarch_obstack_zalloc): Remove.
8901         * target-descriptions.c (tdesc_data_init): Use obstack_new.
8902
8903 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8904
8905         * stack.c (backtrace_command_1): Remove useless variable int i.
8906
8907 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8908
8909         * stack.c (print_frame_info): Fix comment.
8910
8911 2018-05-18  Tom Tromey  <tom@tromey.com>
8912
8913         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
8914         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
8915         (~dwarf2_per_objfile): Update
8916         (dwarf2_get_dwz_file): Use new.
8917         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
8918         unique_ptr.
8919
8920 2018-05-18  Tom Tromey  <tom@tromey.com>
8921
8922         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
8923         unique_ptr.
8924         * dwarf2read.c (struct dwp_file): Add constructor and
8925         initializers.
8926         (open_and_init_dwp_file): Return a unique_ptr.
8927         (dwarf2_per_objfile, create_dwp_hash_table)
8928         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
8929         (lookup_dwo_unit_in_dwp): Update.
8930         (open_and_init_dwp_file, get_dwp_file): Update.
8931
8932 2018-05-18  Tom Tromey  <tom@tromey.com>
8933
8934         * dwarf2read.c (dwarf2_per_objfile): Update.
8935         (struct mapped_index): Add initializers.
8936         (dwarf2_read_index): Use new.
8937         (dw2_symtab_iter_init): Update.
8938         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
8939         unique_ptr.
8940
8941 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8942
8943         * dwarf2read.c (mapped_index) <total_size>: Remove.
8944
8945 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8946
8947         * unittests/format_pieces-selftests.c (test_format_specifier):
8948         Add ARI comments.
8949
8950 2018-05-18  Tom Tromey  <tom@tromey.com>
8951
8952         * c-typeprint.c (maybe_print_hole): New function.
8953         (c_print_type_struct_field_offset): Update.
8954         (c_type_print_base_struct_union): Call maybe_print_hole.
8955
8956 2018-05-17  Keith Seitz  <keiths@redhat.com>
8957
8958         * breakpoint.c (build_bpstat_chain): New function, moved from
8959         bpstat_stop_status.
8960         (bpstat_stop_status): Add optional parameter, `stop_chain'.
8961         If no stop chain is passed, call build_bpstat_chain to build it.
8962         * breakpoint.h (build_bpstat_chain): Declare.
8963         (bpstat_stop_status): Move documentation here from breakpoint.c.
8964         * infrun.c (handle_signal_stop): Before eliding inlined frames,
8965         build the stop chain and pass it to skip_inline_frames.
8966         Pass this stop chain to bpstat_stop_status.
8967         * inline-frame.c: Include breakpoint.h.
8968         (stopped_by_user_bp_inline_frame): New function.
8969         (skip_inline_frames): Add parameter `stop_chain'.
8970         Move documention to inline-frame.h.
8971         If non-NULL, use stopped_by_user_bp_inline_frame to determine
8972         whether the frame should be elided.
8973         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
8974         Add moved documentation and update for new parameter.
8975
8976 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
8977
8978         PR cli/14975
8979         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
8980         unittests/format_pieces-selftests.c.
8981         * common/format.h (format_piece) <operator==>: New.
8982         (format_pieces) <operator[]>: Remove.
8983         * common/format.c (format_pieces::format_pieces): Handle \e.
8984         * unittests/format_pieces-selftests.c: New.
8985
8986 2018-05-17  Tom Tromey  <tom@tromey.com>
8987
8988         PR symtab/23010:
8989         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
8990         (dw2_instantiate_symtab): Add skip_partial parameter.
8991         (dw2_find_last_source_symtab, dw2_map_expand_apply)
8992         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
8993         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
8994         (dw2_expand_symtabs_matching_one)
8995         (dw2_find_pc_sect_compunit_symtab)
8996         (dw2_debug_names_lookup_symbol)
8997         (dw2_debug_names_expand_symtabs_for_function): Update.
8998         (init_cutu_and_read_dies): Add skip_partial parameter.
8999         (process_psymtab_comp_unit, build_type_psymtabs_1)
9000         (process_skeletonless_type_unit, load_partial_comp_unit)
9001         (psymtab_to_symtab_1): Update.
9002         (load_full_comp_unit): Add skip_partial parameter.
9003         (process_imported_unit_die, dwarf2_read_addr_index)
9004         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
9005         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
9006         (read_signatured_type): Update.
9007
9008 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
9009
9010         * value.c (release_value): Remove unused variable.
9011         (record_latest_value): Likewise.
9012         (access_value_history): Likewise.
9013         (preserve_values): Likewise.
9014
9015 2018-05-17  Tom Tromey  <tom@tromey.com>
9016
9017         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
9018         Initialize.
9019
9020 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
9021
9022         PR gdb/22286
9023         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
9024         Also handle registers whose width is not a multiple of
9025         PTRACE_TYPE_RET.
9026         (linux_nat_trad_target::store_register): Likewise.
9027
9028 2018-05-16  Tom Tromey  <tom@tromey.com>
9029
9030         * gdbcore.h (core_bfd): Redefine.
9031         * corelow.c (core_target::close): Update.
9032         (core_target_open): Update.
9033         * progspace.h (struct program_space) <cbfd>: Now a
9034         gdb_bfd_ref_ptr.
9035
9036 2018-05-16  Tom Tromey  <tom@tromey.com>
9037
9038         PR cli/19551:
9039         * symfile-add-flags.h (enum symfile_add_flags)
9040         <SYMFILE_NOT_FILENAME>: New constant.
9041         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
9042         objfile name from BFD.
9043         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
9044         * minidebug.c (find_separate_debug_file_in_section): Put
9045         ".gnu_debugdata" into BFD's file name.
9046
9047 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
9048
9049         * regcache.c (regcache_read_ftype, regcache_write_ftype):
9050         Remove.
9051
9052 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
9053
9054         PR binutils/21446
9055         * aarch64-tdep.c (aarch64_analyze_prologue,
9056         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
9057         Indicate not interested in errors.
9058
9059 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
9060
9061         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
9062         Supply the MIPS_ZERO_REGNUM register.
9063
9064 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
9065
9066         * mips-tdep.c (mask_address_var): Make variable static.
9067
9068 2018-05-14  Tom Tromey  <tom@tromey.com>
9069
9070         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
9071
9072 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
9073
9074         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
9075         FXSAVE_ADDR for the mxcsr register.
9076
9077 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
9078
9079         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
9080
9081 2018-05-11  Pedro Alves  <palves@redhat.com>
9082
9083         * corelow.c (core_target) <core_target>: No longer inline.
9084         Initialize m_core_gdbarch, m_core_vec and build the section table
9085         here.
9086         <~core_target>: New.
9087         <core_gdbarch, get_core_register_section>: New methods.
9088         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
9089         factored out from ...
9090         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
9091         (core_ops): Delete.
9092         (sniff_core_bfd): Add gdbarch parameter.
9093         (core_close): Delete, merged into ...
9094         (core_target::close): ... here.  Delete self.
9095         (core_close_cleanup): Delete.
9096         (core_target_open): Allocate a core_target on the heap.  Use a
9097         unique_ptr instead of a cleanup.  Bits moved into the core_target
9098         ctor.  Adjust to use core_target methods instead of globals.
9099         (get_core_register_section): Rename to ...
9100         (core_target::get_core_register_section): ... this and adjust.
9101         (struct get_core_registers_cb_data): New.
9102         (get_core_registers_cb): Use it.  Use bool.
9103         (core_target::fetch_registers, core_target::files_info)
9104         (core_target::xfer_partial, core_target::read_description)
9105         (core_target::pid_to, core_target::thread_name): Adjust to
9106         reference class fields instead of globals.
9107         * target.h (struct target_ops_deleter, target_ops_up): New.
9108
9109 2018-05-11  Pedro Alves  <palves@redhat.com>
9110
9111         * corefile.c (core_file_command): Move to corelow.c.
9112         * corelow.c (the_core_target): Delete.
9113         (core_file_command): Moved from corefile.c.  Check exec_bfd
9114         instead of the_core_target.  Use target_detach instead of calling
9115         into the_core_target directly.
9116         (maybe_say_no_core_file_now): New.
9117         (core_target::detach): Use it.
9118         (_initialize_corelow): Remove references to the_core_target.
9119         * gdbcore.h (the_core_target): Delete.
9120
9121 2018-05-11  Tom Tromey  <tromey@redhat.com>
9122             Pedro Alves  <palves@redhat.com>
9123
9124         * corefile.c (core_bfd): Remove.
9125         * gdbcore.h (core_bfd): Now a macro.
9126         * progspace.h (struct program_space) <cbfd>: New field.
9127
9128 2018-05-11  Tom Tromey  <tom@tromey.com>
9129
9130         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
9131         gdb::def_vector.
9132
9133 2018-05-10  Tom Tromey  <tom@tromey.com>
9134
9135         * configure: Rebuild.
9136         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
9137
9138 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
9139
9140         PR server/23158:
9141         * regformats/regdat.sh: Adjust script, following the addition
9142         of the new expedite_regs parameter to init_target_desc.
9143
9144 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
9145     
9146         PR gdb/23127
9147         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
9148         set_gdbarch_significant_addr_bit.
9149         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
9150         set_gdbarch_significant_addr_bit.
9151         * utils.c (address_significant): Update to sign extend addr.
9152
9153 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
9154
9155         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
9156         (xtensa_linux_init_abi): Limit tdep->num_regs by
9157         tdep->num_nopriv_regs.
9158         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
9159         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
9160         not initialized.
9161
9162 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
9163
9164         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
9165
9166 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
9167
9168         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
9169         (I387_MXCSR_INIT_VAL): New constant.
9170         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
9171         buffer if it was supplied by the inferior.
9172         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
9173         (i387_xsave_get_clear_bv): New function.
9174         (i387_supply_xsave): Only read x87 control registers from the
9175         xsave buffer if the feature is enabled, and the state will have
9176         been written, otherwise, provide a suitable default.
9177         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
9178         including x87 control registers.  Update control registers if they
9179         have changed from the default value, and mark features as enabled
9180         as required.
9181         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
9182
9183 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
9184
9185         * spu-tdep.c (info_spu_event_command): Fix output formatting.
9186
9187 2018-05-07  Tom Tromey  <tom@tromey.com>
9188
9189         * configure: Rebuild.
9190         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
9191
9192 2018-05-07  Tom Tromey  <tom@tromey.com>
9193
9194         PR tdep/20362:
9195         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
9196         bit.  Use correct value for VDIV.
9197
9198 2018-05-04  Tom Tromey  <tom@tromey.com>
9199
9200         * configure: Rebuild.
9201         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
9202
9203 2018-05-04  Tom Tromey  <tom@tromey.com>
9204
9205         * linux-record.c (record_linux_system_call) <case
9206         RECORD_SYS_RECVFROM>: Add "break".
9207
9208 2018-05-04  Tom Tromey  <tom@tromey.com>
9209
9210         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
9211         Add missing "break".
9212         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
9213         Add missing "break".
9214
9215 2018-05-04  Tom Tromey  <tom@tromey.com>
9216
9217         * rs6000-tdep.c (ppc_process_record_op4)
9218         (ppc_process_record_op63): Add fall-through comment.
9219
9220 2018-05-04  Tom Tromey  <tom@tromey.com>
9221
9222         * i386-tdep.c (i386_process_record): Add fall-through comment.
9223
9224 2018-05-04  Tom Tromey  <tom@tromey.com>
9225
9226         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
9227         comment.
9228
9229 2018-05-04  Tom Tromey  <tom@tromey.com>
9230
9231         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
9232         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
9233         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
9234         comment.
9235         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
9236         comment.
9237         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
9238         comment.
9239
9240 2018-05-04  Tom Tromey  <tom@tromey.com>
9241
9242         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
9243
9244 2018-05-04  Tom Tromey  <tom@tromey.com>
9245
9246         * s390-tdep.c (s390_process_record): Fix fall-through comments.
9247         * xcoffread.c (scan_xcoff_symtab): Move comment later.
9248         * symfile.c (section_is_mapped): Fix fall-through comment.
9249         * stabsread.c (define_symbol, read_member_functions): Fix
9250         fall-through comment.
9251         * s390-linux-tdep.c (s390_process_record): Fix fall-through
9252         comment.
9253         * remote.c (remote_wait_as): Fix fall-through comment.
9254         * p-exp.y (yylex): Fix fall-through comment.
9255         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
9256         comment.
9257         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
9258         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
9259         * jv-exp.y (yylex): Fix fall-through comment.
9260         * go-exp.y (lex_one_token): Fix fall-through comment.
9261         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
9262         fall-through comment.
9263         * f-exp.y (yylex): Fix fall-through comment.
9264         * dwarf2read.c (process_die): Fix fall-through comments.
9265         * dbxread.c (process_one_symbol): Fix fall-through comment.
9266         * d-exp.y (lex_one_token): Fix fall-through comment.
9267         * cp-name-parser.y (yylex): Fix fall-through comment.
9268         * coffread.c (coff_symtab_read): Fix fall-through comment.
9269         * c-exp.y (lex_one_token): Fix fall-through comment.
9270         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
9271         comment.
9272         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
9273         comment.
9274
9275 2018-05-04  Tom Tromey  <tom@tromey.com>
9276
9277         PR python/22730:
9278         * NEWS: Mention gdb.execute change.
9279         * gdbcmd.h (execute_control_command): Don't declare.
9280         * python/python.c (execute_gdb_command): Use read_command_lines_1,
9281         execute_control_commands, execute_control_commands_to_string.
9282         * cli/cli-script.h (execute_control_commands)
9283         (execute_control_commands_to_string): Declare.
9284         (execute_control_command): Add from_tty parameter.
9285         * cli/cli-script.c (execute_control_commands)
9286         (execute_control_commands_to_string): New functions.
9287         (execute_user_command): Use execute_control_commands.
9288         (execute_control_command_1): Add "from_tty" parameter.  Update.
9289         (execute_control_command): Likewise.
9290
9291 2018-05-04  Tom Tromey  <tom@tromey.com>
9292
9293         PR python/22731:
9294         * NEWS: Mention that breakpoint commands are writable.
9295         * python/py-breakpoint.c (bppy_set_commands): New function.
9296         (breakpoint_object_getset) <"commands">: Use it.
9297
9298 2018-05-04  Tom Tromey  <tom@tromey.com>
9299
9300         * tracepoint.c (actions_command): Update.
9301         * mi/mi-cmd-break.c (mi_command_line_array)
9302         (mi_command_line_array_cnt, mi_command_line_array_ptr)
9303         (mi_read_next_line): Remove.
9304         (mi_cmd_break_commands): Update.
9305         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
9306         function_view.
9307         * cli/cli-script.c (get_command_line): Update.
9308         (process_next_line): Use function_view.  Constify.
9309         (recurse_read_control_structure, read_command_lines)
9310         (read_command_lines_1): Change argument types to function_view.
9311         (do_define_command, document_command): Update.
9312         * breakpoint.h (check_tracepoint_command): Don't declare.
9313         * breakpoint.c (check_tracepoint_command): Remove.
9314         (commands_command_1, create_tracepoint_from_upload): Update.
9315
9316 2018-05-04  Tom Tromey  <tom@tromey.com>
9317
9318         PR gdb/11750:
9319         * cli/cli-script.h (enum command_control_type) <define_control>:
9320         New constant.
9321         * cli/cli-script.c (multi_line_command_p): Handle define_control.
9322         (build_command_line, execute_control_command_1)
9323         (process_next_line): Likewise.
9324         (do_define_command): New function, extracted from define_command.
9325         (define_command): Use it.
9326
9327 2018-05-04  Tom Tromey  <tom@tromey.com>
9328
9329         * tracepoint.c (actions_command): Update.
9330         * cli/cli-script.h (read_command_lines): Update.
9331         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
9332         (MAX_TMPBUF): Remove define.
9333         (define_command): Use string_printf.
9334         (document_command): Likewise.
9335         * breakpoint.c (commands_command_1): Update.
9336
9337 2018-05-04  Tom Tromey  <tom@tromey.com>
9338
9339         * top.c (execute_command): Update.
9340         * cli/cli-script.h (print_command_lines): Now varargs.
9341         * cli/cli-script.c (print_command_lines): Now varargs.
9342         (execute_control_command_1) <case while_control, case if_control>:
9343         Update.
9344
9345 2018-05-04  Tom Tromey  <tom@tromey.com>
9346
9347         * tracepoint.c (all_tracepoint_actions): Rename from
9348         all_tracepoint_actions_and_cleanup.  Change return type.
9349         (actions_command, encode_actions_1, encode_actions)
9350         (trace_dump_actions, tdump_command): Update.
9351         * remote.c (remote_download_command_source): Update.
9352         * python/python.c (gdbpy_eval_from_control_command)
9353         (python_command, python_interactive_command): Update.
9354         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
9355         * guile/guile.c (guile_command)
9356         (gdbscm_eval_from_control_command, guile_command): Update.
9357         * compile/compile.c (compile_code_command)
9358         (compile_print_command, compile_to_object): Update.
9359         * cli/cli-script.h (struct command_lines_deleter): New.
9360         (counted_command_line): New typedef.
9361         (struct command_line): Add constructor, destructor.
9362         <body_list>: Remove.
9363         <body_list_0, body_list_1>: New members.
9364         (command_line_up): Remove typedef.
9365         (read_command_lines, read_command_lines_1, get_command_line):
9366         Update.
9367         (copy_command_lines): Don't declare.
9368         * cli/cli-script.c (build_command_line): Use "new".
9369         (get_command_line): Return counted_command_line.
9370         (print_command_lines, execute_user_command)
9371         (execute_control_command_1, while_command, if_command): Update.
9372         (realloc_body_list): Remove.
9373         (process_next_line, recurse_read_control_structure): Update.
9374         (read_command_lines, read_command_lines_1): Return counted_command_line.
9375         (free_command_lines): Use "delete".
9376         (copy_command_lines): Remove.
9377         (define_command, document_command, show_user_1): Update.
9378         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
9379         a counted_command_line.
9380         * breakpoint.h (counted_command_line): Remove typedef.
9381         (breakpoint_set_commands): Update.
9382         * breakpoint.c (check_no_tracepoint_commands)
9383         (validate_commands_for_breakpoint): Update.
9384         (breakpoint_set_commands): Change commands to be a
9385         counted_command_line.
9386         (commands_command_1, update_dprintf_command_list)
9387         (create_tracepoint_from_upload): Update.
9388
9389 2018-05-04  Tom Tromey  <tom@tromey.com>
9390
9391         * cli/cli-decode.h (cmd_list_element): New constructor.
9392         (~cmd_list_element): New destructor.
9393         (struct cmd_list_element): Add initializers.
9394         * cli/cli-decode.c (do_add_cmd): Use "new".
9395         (delete_cmd): Use "delete".
9396
9397 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
9398             Pedro Alves <palves@redhat.com>
9399
9400         PR breakpoints/19806 and support for PR external/20207.
9401         * NEWS: Mention Aarch64 watchpoint improvements.
9402         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
9403         watchpoints and PR external/20207 watchpoints.
9404         * nat/aarch64-linux-hw-point.c
9405         (kernel_supports_any_contiguous_range): New.
9406         (aarch64_watchpoint_offset): New.
9407         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
9408         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
9409         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
9410         (aarch64_align_watchpoint): New parameters aligned_offset_p and
9411         next_addr_orig_p.  Support PR external/20207 watchpoints.
9412         (aarch64_downgrade_regs): New.
9413         (aarch64_dr_state_insert_one_point): New parameters offset and
9414         addr_orig.
9415         (aarch64_dr_state_remove_one_point): Likewise.
9416         (aarch64_handle_breakpoint): Update caller.
9417         (aarch64_handle_aligned_watchpoint): Likewise.
9418         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
9419         aligned_offset.
9420         (aarch64_linux_set_debug_regs): Remove const from state.  Call
9421         aarch64_downgrade_regs.
9422         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
9423         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
9424         (DR_CONTROL_MASK): ... this.
9425         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
9426         (unsigned int aarch64_watchpoint_offset): New prototype.
9427         (aarch64_linux_set_debug_regs): Remove const from state.
9428         * utils.c (align_up, align_down): Move to ...
9429         * common/common-utils.c (align_up, align_down): ... here.
9430         * utils.h (align_up, align_down): Move to ...
9431         * common/common-utils.h (align_up, align_down): ... here.
9432
9433 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
9434
9435         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
9436         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
9437         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
9438         Re-implement to match the ABI as summarized in GCC's
9439         gcc/config/sparc/sparc.c.  All callers updated.
9440         (sparc32_store_arguments): Remove assertion.
9441
9442 2018-05-04  Tom Tromey  <tom@tromey.com>
9443
9444         * printcmd.c: Don't include tui.h.
9445         (decode_format): Use skip_spaces.
9446
9447 2018-05-04  Tom Tromey  <tom@tromey.com>
9448
9449         PR gdb/22619:
9450         * printcmd.c (last_count): New global.
9451         (x_command): Use saved count when repeating.
9452
9453 2018-05-04  Tom Tromey  <tom@tromey.com>
9454
9455         * nto-procfs.c (do_closedir_cleanup): Remove.
9456         (procfs_pidlist): Use gdb_dir_up.
9457         * procfs.c (do_closedir_cleanup): Remove.
9458         (proc_update_threads): Use gdb_dir_up.
9459         * common/filestuff.h (struct gdb_dir_deleter): New.
9460         (gdb_dir_up): New typedef.
9461
9462 2018-05-04  Tom Tromey  <tom@tromey.com>
9463
9464         * ada-lang.c (print_mention_exception): Use std::string.
9465
9466 2018-05-04  Tom Tromey  <tom@tromey.com>
9467
9468         * ada-lang.c (create_excep_cond_exprs): Update.
9469         (ada_exception_catchpoint_cond_string): Use std::string.
9470
9471 2018-05-04  Tom Tromey  <tom@tromey.com>
9472
9473         * ada-lang.c (xget_renaming_scope): Return std::string.
9474         (old_renaming_is_invisible): Update.
9475
9476 2018-05-04  Tom Tromey  <tom@tromey.com>
9477
9478         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
9479         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
9480
9481 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
9482
9483         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
9484
9485 2018-05-04  Tom Tromey  <tom@tromey.com>
9486
9487         * remote.c (remote_query_supported_append): Change type.
9488         (remote_check_symbols): Update.
9489
9490 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
9491
9492         PR gdb/11420
9493         * configure.ac: Prepend libpython.
9494         * python/python-config.py: Likewise.
9495         * configure: Regenerate.
9496
9497 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
9498
9499         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
9500
9501 2018-05-03  Pedro Alves  <palves@redhat.com>
9502
9503         * s390-linux-nat.c
9504         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
9505         override.  Write 'true' instead of '1'.
9506         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
9507         declaration.
9508
9509 2018-05-02  Pedro Alves  <palves@redhat.com>
9510
9511         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
9512         add_inf_child_target.
9513         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
9514         add_inf_child_target.
9515         * aix-thread.c (aix_thread_target_info): New.
9516         (aix_thread_target) <shortname, longname, doc>: Delete.
9517         <info>: New.
9518         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
9519         add_inf_child_target.
9520         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
9521         add_inf_child_target.
9522         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
9523         add_inf_child_target.
9524         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
9525         add_inf_child_target.
9526         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
9527         add_inf_child_target.
9528         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
9529         add_inf_child_target.
9530         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
9531         add_inf_child_target.
9532         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
9533         add_inf_child_target.
9534         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
9535         add_inf_child_target.
9536         * bfd-target.c (target_bfd_target_info): New.
9537         (target_bfd) <shortname, longname, doc>: Delete.
9538         <info>: New.
9539         * bsd-kvm.c (bsd_kvm_target_info): New.
9540         (bsd_kvm_target) <shortname, longname, doc>: Delete.
9541         <info>: New.
9542         (bsd_kvm_target::open): Rename to ...
9543         (bsd_kvm_target_open): ... this.  Adjust.
9544         * bsd-uthread.c (bsd_uthread_target_info): New.
9545         (bsd_uthread_target) <shortname, longname, doc>: Delete.
9546         <info>: New.
9547         * corefile.c (core_file_command): Adjust.
9548         * corelow.c (core_target_info): New.
9549         (core_target) <shortname, longname, doc>: Delete.
9550         <info>: New.
9551         (core_target::open): Rename to ...
9552         (core_target_open): ... this.  Adjust.
9553         * ctf.c (ctf_target_info): New.
9554         (ctf_target) <shortname, longname, doc>: Delete.
9555         <info>: New.
9556         (ctf_target::open): Rename to ...
9557         (ctf_target_open): ... this.
9558         (_initialize_ctf): Adjust.
9559         * exec.c (exec_target_info): New.
9560         (exec_target) <shortname, longname, doc>: Delete.
9561         <info>: New.
9562         (exec_target::open): Rename to ...
9563         (exec_target_open): ... this.
9564         * gdbcore.h (core_target_open): Declare.
9565         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
9566         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
9567         add_inf_child_target.
9568         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
9569         add_inf_child_target.
9570         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
9571         add_inf_child_target.
9572         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
9573         add_inf_child_target.
9574         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
9575         add_inf_child_target.
9576         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
9577         add_inf_child_target.
9578         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
9579         add_inf_child_target.
9580         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
9581         add_inf_child_target.
9582         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
9583         add_inf_child_target.
9584         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
9585         add_inf_child_target.
9586         * inf-child.c (inf_child_target_info): New.
9587         (inf_child_target::info): New.
9588         (inf_child_open_target): Remove 'target' parameter.  Use
9589         get_native_target instead.
9590         (inf_child_target::open): Delete.
9591         (add_inf_child_target): New.
9592         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
9593         Delete.
9594         <info>: New.
9595         (add_inf_child_target): Declare.
9596         (inf_child_open_target): Declare.
9597         * linux-thread-db.c (thread_db_target_info): New.
9598         (thread_db_target) <shortname, longname, doc>: Delete.
9599         <info>: New.
9600         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
9601         add_inf_child_target.
9602         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
9603         add_inf_child_target.
9604         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
9605         add_inf_child_target.
9606         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
9607         add_inf_child_target.
9608         * make-target-delegates (print_class): Adjust.
9609         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
9610         add_inf_child_target.
9611         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
9612         add_inf_child_target.
9613         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
9614         add_inf_child_target.
9615         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
9616         add_inf_child_target.
9617         * nto-procfs.c (nto_native_target_info): New.
9618         (nto_procfs_target_native) <shortname, longname, doc>:
9619         Delete.
9620         <info>: New.
9621         (nto_procfs_target_info): New.
9622         (nto_procfs_target_procfs) <shortname, longname, doc>:
9623         Delete.
9624         <info>: New.
9625         (init_procfs_targets): Adjust.
9626         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
9627         add_inf_child_target.
9628         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
9629         add_inf_child_target.
9630         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
9631         add_inf_child_target.
9632         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
9633         add_inf_child_target.
9634         * ravenscar-thread.c (ravenscar_target_info): New.
9635         (ravenscar_thread_target) <shortname, longname, doc>:
9636         Delete.
9637         <info>: New.
9638         * record-btrace.c (record_btrace_target_info):
9639         (record_btrace_target) <shortname, longname, doc>: Delete.
9640         <info>: New.
9641         (record_btrace_target::open): Rename to ...
9642         (record_btrace_target_open): ... this.  Adjust.
9643         * record-full.c (record_longname, record_doc): New.
9644         (record_full_base_target) <shortname, longname, doc>: Delete.
9645         <info>: New.
9646         (record_full_target_info): New.
9647         (record_full_target): <shortname>: Delete.
9648         <info>: New.
9649         (record_full_core_open_1, record_full_open_1): Update comments.
9650         (record_full_base_target::open): Rename to ...
9651         (record_full_open): ... this.
9652         (cmd_record_full_restore): Update.
9653         (_initialize_record_full): Update.
9654         * remote-sim.c (remote_sim_target_info): New.
9655         (gdbsim_target) <shortname, longname, doc>: Delete.
9656         <info>: New.
9657         (gdbsim_target::open): Rename to ...
9658         (gdbsim_target_open): ... this.
9659         (_initialize_remote_sim): Adjust.
9660         * remote.c (remote_doc): New.
9661         (remote_target_info): New.
9662         (remote_target) <shortname, longname, doc>: Delete.
9663         <info>: New.
9664         (extended_remote_target_info): New.
9665         (extended_remote_target) <shortname, longname, doc>: Delete.
9666         <info>: New.
9667         (remote_target::open_1): Make static.  Adjust.
9668         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
9669         * s390-linux-nat.c (_initialize_s390_nat): Use
9670         add_inf_child_target.
9671         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
9672         add_inf_child_target.
9673         * sol-thread.c (thread_db_target_info): New.
9674         (sol_thread_target) <shortname, longname, doc>: Delete.
9675         <info>: New.
9676         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
9677         add_inf_child_target.
9678         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
9679         add_inf_child_target.
9680         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
9681         add_inf_child_target.
9682         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
9683         add_inf_child_target.
9684         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
9685         add_inf_child_target.
9686         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
9687         add_inf_child_target.
9688         * spu-linux-nat.c (_initialize_spu_nat): Use
9689         add_inf_child_target.
9690         * spu-multiarch.c (spu_multiarch_target_info): New.
9691         (spu_multiarch_target) <shortname, longname, doc>: Delete.
9692         <info>: New.
9693         * target-delegates.c: Regenerate.
9694         * target.c: Include <unordered_map>.
9695         (target_ops_p): Delete.
9696         (DEF_VEC_P(target_ops_p)): Delete.
9697         (target_factories): New.
9698         (test_target_info): New.
9699         (test_target_ops::info): New.
9700         (open_target): Adjust to use target_factories.
9701         (add_target_with_completer): Rename to ...
9702         (add_target): ... this.  Change prototype.  Register target_info
9703         and open callback in target_factories.  Register target_info in
9704         command context instead of target_ops.
9705         (add_target): Delete old implementation.
9706         (add_deprecated_target_alias): Change prototype.  Adjust.
9707         (the_native_target): New.
9708         (set_native_target, get_native_target): New.
9709         (find_default_run_target): Use the_native_target.
9710         (find_attach_target, find_run_target): Simplify.
9711         (target_ops::open): Delete.
9712         (dummy_target_info): New.
9713         (dummy_target::shortname, dummy_target::longname)
9714         (dummy_target::doc): Delete.
9715         (dummy_target::info): New.
9716         (debug_target::shortname, debug_target::longname)
9717         (debug_target::doc): Delete.
9718         (debug_target::info): New.
9719         * target.h (struct target_info): New.
9720         (target_ops::~target_ops): Add comment.
9721         (target_ops::info): New.
9722         (target_ops::shortname, target_ops::longname, target_ops::doc): No
9723         longer virtual.  Implement in terms of target_info.
9724         (set_native_target, get_native_target): Declare.
9725         (target_open_ftype): New.
9726         (add_target, add_target_with_completer)
9727         (add_deprecated_target_alias): Change prototype.
9728         (test_target) <shortname, longname, doc>: Delete.
9729         <info>: New.
9730         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
9731         add_inf_child_target.
9732         * tracefile-tfile.c (tfile_target_info): New.
9733         (tfile_target) <shortname, longname, doc>: Delete.
9734         <info>: New.
9735         (tfile_target::open): Rename to ...
9736         (tfile_target_open): ... this.
9737         (_initialize_tracefile_tfile): Adjust.
9738         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
9739         add_inf_child_target.
9740         * windows-nat.c (_initialize_windows_nat): Use
9741         add_inf_child_target.
9742         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
9743         add_inf_child_target.
9744
9745 2018-05-02  Pedro Alves  <palves@redhat.com>
9746
9747         * linux-nat.h (linux_nat_target) <low_new_thread,
9748         low_delete_thread, low_new_fork, low_forget_process,
9749         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
9750         New virtual methods.
9751         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
9752         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
9753         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
9754         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
9755         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
9756         Delete.
9757         * linux-fork.c (delete_fork): Adjust to call low method.
9758         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
9759         (linux_nat_new_fork, linux_nat_forget_process_hook)
9760         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
9761         (linux_nat_status_is_event):
9762         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
9763         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
9764         to call low method.
9765         (sigtrap_is_event): Rename to ...
9766         (linux_nat_target::low_status_is_event): ... this.
9767         (linux_nat_set_status_is_event): Delete.
9768         (save_stop_reason, linux_nat_wait_1)
9769         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
9770         low methods.
9771         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
9772         (linux_nat_set_new_fork, linux_nat_set_forget_process)
9773         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
9774         (linux_nat_set_prepare_to_resume): Delete.
9775         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
9776         low virtual methods.
9777         * amd64-linux-nat.c: Likewise.
9778         * arm-linux-nat.c: Likewise.
9779         * i386-linux-nat.c: Likewise.
9780         * ia64-linux-nat.c: Likewise.
9781         * mips-linux-nat.c: Likewise.
9782         * ppc-linux-nat.c: Likewise.
9783         * s390-linux-nat.c: Likewise.
9784         * sparc64-linux-nat.c: Likewise.
9785         * x86-linux-nat.c: Likewise.
9786         * x86-linux-nat.h: Include "nat/x86-linux.h".
9787         (x86_linux_nat_target) <low_new_fork, low_forget_process,
9788         low_prepare_to_resume, low_new_thread, low_delete_thread>:
9789         Override methods.
9790
9791 2018-05-02  Pedro Alves  <palves@redhat.com>
9792
9793         * target.h (target_ops)
9794         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
9795         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
9796         stopped_by_watchpoint, have_continuable_watchpoint,
9797         stopped_data_address, watchpoint_addr_within_range,
9798         can_accel_watchpoint_condition, can_run, thread_alive,
9799         has_all_memory, has_memory, has_stack, has_registers,
9800         has_execution, can_async_p, is_async_p, supports_non_stop,
9801         always_non_stop_p, can_execute_reverse, supports_multi_process,
9802         supports_enable_disable_tracepoint,
9803         supports_disable_randomization, supports_string_tracing,
9804         supports_evaluation_of_breakpoint_conditions,
9805         can_run_breakpoint_commands, filesystem_is_local,
9806         can_download_tracepoint, get_trace_state_variable_value,
9807         set_trace_notes, get_tib_address, use_agent, can_use_agent,
9808         record_is_replaying, record_will_replay,
9809         augmented_libraries_svr4_read>: Adjust to return bool.
9810         * aarch64-linux-nat.c: All implementations adjusted.
9811         * aix-thread.c: All implementations adjusted.
9812         * arm-linux-nat.c: All implementations adjusted.
9813         * breakpoint.c: All implementations adjusted.
9814         * bsd-kvm.c: All implementations adjusted.
9815         * bsd-uthread.c: All implementations adjusted.
9816         * corelow.c: All implementations adjusted.
9817         * ctf.c: All implementations adjusted.
9818         * darwin-nat.c: All implementations adjusted.
9819         * darwin-nat.h: All implementations adjusted.
9820         * exec.c: All implementations adjusted.
9821         * fbsd-nat.c: All implementations adjusted.
9822         * fbsd-nat.h: All implementations adjusted.
9823         * gnu-nat.c: All implementations adjusted.
9824         * gnu-nat.h: All implementations adjusted.
9825         * go32-nat.c: All implementations adjusted.
9826         * ia64-linux-nat.c: All implementations adjusted.
9827         * inf-child.c: All implementations adjusted.
9828         * inf-child.h: All implementations adjusted.
9829         * inf-ptrace.c: All implementations adjusted.
9830         * inf-ptrace.h: All implementations adjusted.
9831         * linux-nat.c: All implementations adjusted.
9832         * linux-nat.h: All implementations adjusted.
9833         * mips-linux-nat.c: All implementations adjusted.
9834         * nto-procfs.c: All implementations adjusted.
9835         * ppc-linux-nat.c: All implementations adjusted.
9836         * procfs.c: All implementations adjusted.
9837         * ravenscar-thread.c: All implementations adjusted.
9838         * record-btrace.c: All implementations adjusted.
9839         * record-full.c: All implementations adjusted.
9840         * remote-sim.c: All implementations adjusted.
9841         * remote.c: All implementations adjusted.
9842         * s390-linux-nat.c: All implementations adjusted.
9843         * sol-thread.c: All implementations adjusted.
9844         * spu-multiarch.c: All implementations adjusted.
9845         * target-delegates.c: All implementations adjusted.
9846         * target.c: All implementations adjusted.
9847         * target.h: All implementations adjusted.
9848         * tracefile-tfile.c: All implementations adjusted.
9849         * tracefile.c: All implementations adjusted.
9850         * tracefile.h: All implementations adjusted.
9851         * windows-nat.c: All implementations adjusted.
9852         * x86-linux-nat.h: All implementations adjusted.
9853         * x86-nat.h: All implementations adjusted.
9854
9855 2018-05-02  Pedro Alves  <palves@redhat.com>
9856
9857         * make-target-delegates (scan_target_h): Don't trim lines here.
9858         Replace sequences of tabs and/or whitespace with a single
9859         whitespace.
9860         (top level, parsing methods): Trim each line before processing it
9861         here.
9862
9863 2018-05-02  Pedro Alves  <palves@redhat.com>
9864             John Baldwin  <jhb@freebsd.org>
9865
9866         * target.h (enum strata) <debug_stratum>: New.
9867         (struct target_ops) <all delegation methods>: Replace by C++
9868         virtual methods, and drop "to_" prefix.  All references updated
9869         throughout.
9870         <to_shortname, to_longname, to_doc, to_data,
9871         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
9872         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
9873         virtual methods.  All references updated throughout.
9874         <can_attach, supports_terminal_ours, can_create_inferior,
9875         get_thread_control_capabilities, attach_no_wait>: New
9876         virtual methods.
9877         <insert_breakpoint, remove_breakpoint>: Now
9878         TARGET_DEFAULT_NORETURN methods.
9879         <info_proc>: Now returns bool.
9880         <to_magic>: Delete.
9881         (OPS_MAGIC): Delete.
9882         (current_target): Delete.  All references replaced by references
9883         to ...
9884         (target_stack): ... this.  New.
9885         (target_shortname, target_longname): Adjust.
9886         (target_can_run): Now a function declaration.
9887         (default_child_has_all_memory, default_child_has_memory)
9888         (default_child_has_stack, default_child_has_registers)
9889         (default_child_has_execution): Remove target_ops parameter.
9890         (complete_target_initialization): Delete.
9891         (memory_breakpoint_target): New template class.
9892         (test_target_ops): Refactor as a C++ class with virtual methods.
9893         * make-target-delegates (NAME_PART): Tighten.
9894         (POINTER_PART, CP_SYMBOL): New.
9895         (SIMPLE_RETURN_PART): Reimplement.
9896         (VEC_RETURN_PART): Expect less.
9897         (RETURN_PART, VIRTUAL_PART): New.
9898         (METHOD): Adjust to C++ virtual methods.
9899         (scan_target_h): Remove reference to C99.
9900         (dname): Output "target_ops::" prefix.
9901         (write_function_header): Adjust to output a C++ class method.
9902         (write_declaration): New.
9903         (write_delegator): Adjust to output a C++ class method.
9904         (tdname): Output "dummy_target::" prefix.
9905         (write_tdefault, write_debugmethod): Adjust to output a C++ class
9906         method.
9907         (tdefault_names, debug_names): Delete.
9908         (return_types, tdefaults, styles, argtypes_array): New.
9909         (top level): All methods are delegators.
9910         (print_class): New.
9911         (top level): Print dummy_target and debug_target classes.
9912         * target-delegates.c: Regenerate.
9913         * target-debug.h (target_debug_print_enum_info_proc_what)
9914         (target_debug_print_thread_control_capabilities)
9915         (target_debug_print_thread_info_p): New.
9916         * target.c (dummy_target): Delete.
9917         (the_dummy_target, the_debug_target): New.
9918         (target_stack): Now extern.
9919         (set_targetdebug): Push/unpush debug target.
9920         (default_child_has_all_memory, default_child_has_memory)
9921         (default_child_has_stack, default_child_has_registers)
9922         (default_child_has_execution): Remove target_ops parameter.
9923         (complete_target_initialization): Delete.
9924         (add_target_with_completer): No longer call
9925         complete_target_initialization.
9926         (target_supports_terminal_ours): Use regular delegation.
9927         (update_current_target): Delete.
9928         (push_target): No longer check magic number.  Don't call
9929         update_current_target.
9930         (unpush_target): Don't call update_current_target.
9931         (target_is_pushed): No longer check magic number.
9932         (target_require_runnable): Skip for all stratums over
9933         process_stratum.
9934         (target_ops::info_proc): New.
9935         (target_info_proc): Use find_target_at and
9936         find_default_run_target.
9937         (target_supports_disable_randomization): Use regular delegation.
9938         (target_get_osdata): Use find_target_at.
9939         (target_ops::open, target_ops::close, target_ops::can_attach)
9940         (target_ops::attach, target_ops::can_create_inferior)
9941         (target_ops::create_inferior, target_ops::can_run)
9942         (target_can_run): New.
9943         (default_fileio_target): Use regular delegation.
9944         (target_ops::fileio_open, target_ops::fileio_pwrite)
9945         (target_ops::fileio_pread, target_ops::fileio_fstat)
9946         (target_ops::fileio_close, target_ops::fileio_unlink)
9947         (target_ops::fileio_readlink): New.
9948         (target_fileio_open_1, target_fileio_unlink)
9949         (target_fileio_readlink): Always call the target method.  Handle
9950         FILEIO_ENOSYS.
9951         (return_zero, return_zero_has_execution): Delete.
9952         (init_dummy_target): Delete.
9953         (dummy_target::dummy_target, dummy_target::shortname)
9954         (dummy_target::longname, dummy_target::doc)
9955         (debug_target::debug_target, debug_target::shortname)
9956         (debug_target::longname, debug_target::doc): New.
9957         (target_supports_delete_record): Use regular delegation.
9958         (setup_target_debug): Delete.
9959         (maintenance_print_target_stack): Skip debug_stratum.
9960         (initialize_targets): Instantiate the_dummy_target and
9961         the_debug_target.
9962         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
9963         use target_stack.
9964         (target_auxv_search, fprint_target_auxv): Adjust.
9965         (info_auxv_command): Adjust to use target_stack.
9966         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
9967         * exceptions.c (print_flush): Handle a NULL target_stack.
9968         * regcache.c (target_ops_no_register): Refactor as class with
9969         virtual methods.
9970
9971         * exec.c (exec_target): New class.
9972         (exec_ops): Now an exec_target.
9973         (exec_open, exec_close_1, exec_get_section_table)
9974         (exec_xfer_partial, exec_files_info, exec_has_memory)
9975         (exec_make_note_section): Refactor as exec_target methods.
9976         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
9977         Delete.
9978         (exec_target::find_memory_regions): New.
9979         (_initialize_exec): Don't call init_exec_ops.
9980         * gdbcore.h (exec_file_clear): Delete.
9981
9982         * corefile.c (core_target): Delete.
9983         (core_file_command): Adjust.
9984         * corelow.c (core_target): New class.
9985         (the_core_target): New.
9986         (core_close): Remove target_ops parameter.
9987         (core_close_cleanup): Adjust.
9988         (core_target::close): New.
9989         (core_open, core_detach, get_core_registers, core_files_info)
9990         (core_xfer_partial, core_thread_alive, core_read_description)
9991         (core_pid_to_str, core_thread_name, core_has_memory)
9992         (core_has_stack, core_has_registers, core_info_proc): Rework as
9993         core_target methods.
9994         (ignore, core_remove_breakpoint, init_core_ops): Delete.
9995         (_initialize_corelow): Initialize the_core_target.
9996         * gdbcore.h (core_target): Delete.
9997         (the_core_target): New.
9998
9999         * ctf.c: (ctf_target): New class.
10000         (ctf_ops): Now a ctf_target.
10001         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
10002         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
10003         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
10004         methods.
10005         (init_ctf_ops): Delete.
10006         (_initialize_ctf): Don't call it.
10007         * tracefile-tfile.c (tfile_target): New class.
10008         (tfile_ops): Now a tfile_target.
10009         (tfile_open, tfile_close, tfile_files_info)
10010         (tfile_get_tracepoint_status, tfile_trace_find)
10011         (tfile_fetch_registers, tfile_xfer_partial)
10012         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
10013         Refactor as tfile_target methods.
10014         (tfile_xfer_partial_features): Remove target_ops parameter.
10015         (init_tfile_ops): Delete.
10016         (_initialize_tracefile_tfile): Don't call it.
10017         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
10018         (tracefile_has_stack, tracefile_has_registers)
10019         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
10020         tracefile_target methods.
10021         (init_tracefile_ops): Delete.
10022         (tracefile_target::tracefile_target): New.
10023         * tracefile.h: Include "target.h".
10024         (tracefile_target): New class.
10025         (init_tracefile_ops): Delete.
10026
10027         * spu-multiarch.c (spu_multiarch_target): New class.
10028         (spu_ops): Now a spu_multiarch_target.
10029         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
10030         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
10031         (spu_search_memory, spu_mourn_inferior): Refactor as
10032         spu_multiarch_target methods.
10033         (init_spu_ops): Delete.
10034         (_initialize_spu_multiarch): Remove references to init_spu_ops,
10035         complete_target_initialization.
10036
10037         * ravenscar-thread.c (ravenscar_thread_target): New class.
10038         (ravenscar_ops): Now a ravenscar_thread_target.
10039         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
10040         (ravenscar_thread_alive, ravenscar_pid_to_str)
10041         (ravenscar_fetch_registers, ravenscar_store_registers)
10042         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
10043         (ravenscar_stopped_by_hw_breakpoint)
10044         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
10045         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
10046         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
10047         methods.
10048         (init_ravenscar_thread_ops): Delete.
10049         (_initialize_ravenscar): Remove references to
10050         init_ravenscar_thread_ops and complete_target_initialization.
10051
10052         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
10053         (bsd_uthread_target): New class.
10054         (bsd_uthread_ops): Now a bsd_uthread_target.
10055         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
10056         (bsd_uthread_close, bsd_uthread_mourn_inferior)
10057         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
10058         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
10059         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
10060         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
10061         (bsd_uthread_target): Delete function.
10062         (_initialize_bsd_uthread): Remove reference to
10063         complete_target_initialization.
10064
10065         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
10066         (target_bfd): ... this new class.
10067         (target_bfd_xfer_partial, target_bfd_get_section_table)
10068         (target_bfd_close): Refactor as target_bfd methods.
10069         (target_bfd::~target_bfd): New.
10070         (target_bfd_reopen): Adjust.
10071         (target_bfd::close): New.
10072
10073         * record-btrace.c (record_btrace_target): New class.
10074         (record_btrace_ops): Now a record_btrace_target.
10075         (record_btrace_open, record_btrace_stop_recording)
10076         (record_btrace_disconnect, record_btrace_close)
10077         (record_btrace_async, record_btrace_info)
10078         (record_btrace_insn_history, record_btrace_insn_history_range)
10079         (record_btrace_insn_history_from, record_btrace_call_history)
10080         (record_btrace_call_history_range)
10081         (record_btrace_call_history_from, record_btrace_record_method)
10082         (record_btrace_is_replaying, record_btrace_will_replay)
10083         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
10084         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
10085         (record_btrace_store_registers, record_btrace_prepare_to_store)
10086         (record_btrace_to_get_unwinder)
10087         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
10088         (record_btrace_commit_resume, record_btrace_wait)
10089         (record_btrace_stop, record_btrace_can_execute_reverse)
10090         (record_btrace_stopped_by_sw_breakpoint)
10091         (record_btrace_supports_stopped_by_sw_breakpoint)
10092         (record_btrace_stopped_by_hw_breakpoint)
10093         (record_btrace_supports_stopped_by_hw_breakpoint)
10094         (record_btrace_update_thread_list, record_btrace_thread_alive)
10095         (record_btrace_goto_begin, record_btrace_goto_end)
10096         (record_btrace_goto, record_btrace_stop_replaying_all)
10097         (record_btrace_execution_direction)
10098         (record_btrace_prepare_to_generate_core)
10099         (record_btrace_done_generating_core): Refactor as
10100         record_btrace_target methods.
10101         (init_record_btrace_ops): Delete.
10102         (_initialize_record_btrace): Remove reference to
10103         init_record_btrace_ops.
10104         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
10105         the execution_direction global.
10106         (record_full_base_target, record_full_target)
10107         (record_full_core_target): New classes.
10108         (record_full_ops): Now a record_full_target.
10109         (record_full_core_ops): Now a record_full_core_target.
10110         (record_full_target::detach, record_full_target::disconnect)
10111         (record_full_core_target::disconnect)
10112         (record_full_target::mourn_inferior, record_full_target::kill):
10113         New.
10114         (record_full_open, record_full_close, record_full_async): Refactor
10115         as methods of the record_full_base_target class.
10116         (record_full_resume, record_full_commit_resume): Refactor
10117         as methods of the record_full_target class.
10118         (record_full_wait, record_full_stopped_by_watchpoint)
10119         (record_full_stopped_data_address)
10120         (record_full_stopped_by_sw_breakpoint)
10121         (record_full_supports_stopped_by_sw_breakpoint)
10122         (record_full_stopped_by_hw_breakpoint)
10123         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
10124         methods of the record_full_base_target class.
10125         (record_full_store_registers, record_full_xfer_partial)
10126         (record_full_insert_breakpoint, record_full_remove_breakpoint):
10127         Refactor as methods of the record_full_target class.
10128         (record_full_can_execute_reverse, record_full_get_bookmark)
10129         (record_full_goto_bookmark, record_full_execution_direction)
10130         (record_full_record_method, record_full_info, record_full_delete)
10131         (record_full_is_replaying, record_full_will_replay)
10132         (record_full_goto_begin, record_full_goto_end, record_full_goto)
10133         (record_full_stop_replaying): Refactor as methods of the
10134         record_full_base_target class.
10135         (record_full_core_resume, record_full_core_kill)
10136         (record_full_core_fetch_registers)
10137         (record_full_core_prepare_to_store)
10138         (record_full_core_store_registers, record_full_core_xfer_partial)
10139         (record_full_core_insert_breakpoint)
10140         (record_full_core_remove_breakpoint)
10141         (record_full_core_has_execution): Refactor
10142         as methods of the record_full_core_target class.
10143         (record_full_base_target::supports_delete_record): New.
10144         (init_record_full_ops): Delete.
10145         (init_record_full_core_ops): Delete.
10146         (record_full_save): Refactor as method of the
10147         record_full_base_target class.
10148         (_initialize_record_full): Remove references to
10149         init_record_full_ops and init_record_full_core_ops.
10150
10151         * remote.c (remote_target, extended_remote_target): New classes.
10152         (remote_ops): Now a remote_target.
10153         (extended_remote_ops): Now an extended_remote_target.
10154         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
10155         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
10156         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
10157         (remote_pass_signals, remote_set_syscall_catchpoint)
10158         (remote_program_signals, )
10159         (remote_thread_always_alive): Remove target_ops parameter.
10160         (remote_thread_alive, remote_thread_name)
10161         (remote_update_thread_list, remote_threads_extra_info)
10162         (remote_static_tracepoint_marker_at)
10163         (remote_static_tracepoint_markers_by_strid)
10164         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
10165         (remote_open): Refactor as methods of remote_target.
10166         (extended_remote_open, extended_remote_detach)
10167         (extended_remote_attach, extended_remote_post_attach):
10168         (extended_remote_supports_disable_randomization)
10169         (extended_remote_create_inferior): : Refactor as method of
10170         extended_remote_target.
10171         (remote_set_permissions, remote_open_1, remote_detach)
10172         (remote_follow_fork, remote_follow_exec, remote_disconnect)
10173         (remote_resume, remote_commit_resume, remote_stop)
10174         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
10175         (remote_terminal_ours, remote_wait, remote_fetch_registers)
10176         (remote_prepare_to_store, remote_store_registers)
10177         (remote_flash_erase, remote_flash_done, remote_files_info)
10178         (remote_kill, remote_mourn, remote_insert_breakpoint)
10179         (remote_remove_breakpoint, remote_insert_watchpoint)
10180         (remote_watchpoint_addr_within_range)
10181         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
10182         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
10183         (remote_supports_stopped_by_sw_breakpoint)
10184         (remote_stopped_by_hw_breakpoint)
10185         (remote_supports_stopped_by_hw_breakpoint)
10186         (remote_stopped_by_watchpoint, remote_stopped_data_address)
10187         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
10188         (remote_verify_memory): Refactor as methods of remote_target.
10189         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
10190         parameter.
10191         (remote_xfer_partial, remote_get_memory_xfer_limit)
10192         (remote_search_memory, remote_rcmd, remote_memory_map)
10193         (remote_pid_to_str, remote_get_thread_local_address)
10194         (remote_get_tib_address, remote_read_description): Refactor as
10195         methods of remote_target.
10196         (remote_target::fileio_open, remote_target::fileio_pwrite)
10197         (remote_target::fileio_pread, remote_target::fileio_close): New.
10198         (remote_hostio_readlink, remote_hostio_fstat)
10199         (remote_filesystem_is_local, remote_can_execute_reverse)
10200         (remote_supports_non_stop, remote_supports_disable_randomization)
10201         (remote_supports_multi_process, remote_supports_cond_breakpoints)
10202         (remote_supports_enable_disable_tracepoint)
10203         (remote_supports_string_tracing)
10204         (remote_can_run_breakpoint_commands, remote_trace_init)
10205         (remote_download_tracepoint, remote_can_download_tracepoint)
10206         (remote_download_trace_state_variable, remote_enable_tracepoint)
10207         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
10208         (remote_trace_start, remote_get_trace_status)
10209         (remote_get_tracepoint_status, remote_trace_stop)
10210         (remote_trace_find, remote_get_trace_state_variable_value)
10211         (remote_save_trace_data, remote_get_raw_trace_data)
10212         (remote_set_disconnected_tracing, remote_core_of_thread)
10213         (remote_set_circular_trace_buffer, remote_traceframe_info)
10214         (remote_get_min_fast_tracepoint_insn_len)
10215         (remote_set_trace_buffer_size, remote_set_trace_notes)
10216         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
10217         (remote_disable_btrace, remote_teardown_btrace)
10218         (remote_read_btrace, remote_btrace_conf)
10219         (remote_augmented_libraries_svr4_read, remote_load)
10220         (remote_pid_to_exec_file, remote_can_do_single_step)
10221         (remote_execution_direction, remote_thread_handle_to_thread_info):
10222         Refactor as methods of remote_target.
10223         (init_remote_ops, init_extended_remote_ops): Delete.
10224         (remote_can_async_p, remote_is_async_p, remote_async)
10225         (remote_thread_events, remote_upload_tracepoints)
10226         (remote_upload_trace_state_variables): Refactor as methods of
10227         remote_target.
10228         (_initialize_remote): Remove references to init_remote_ops and
10229         init_extended_remote_ops.
10230
10231         * remote-sim.c (gdbsim_target): New class.
10232         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
10233         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
10234         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
10235         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
10236         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
10237         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
10238         Refactor as methods of gdbsim_target.
10239         (gdbsim_ops): Now a gdbsim_target.
10240         (init_gdbsim_ops): Delete.
10241         (gdbsim_cntrl_c): Adjust.
10242         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
10243
10244         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
10245         (the_amd64_linux_nat_target): New.
10246         (amd64_linux_fetch_inferior_registers)
10247         (amd64_linux_store_inferior_registers): Refactor as methods of
10248         amd64_linux_nat_target.
10249         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
10250         * i386-linux-nat.c: Don't include "linux-nat.h".
10251         (i386_linux_nat_target): New class.
10252         (the_i386_linux_nat_target): New.
10253         (i386_linux_fetch_inferior_registers)
10254         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
10255         as methods of i386_linux_nat_target.
10256         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
10257         * inf-child.c (inf_child_ops): Delete.
10258         (inf_child_fetch_inferior_registers)
10259         (inf_child_store_inferior_registers): Delete.
10260         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
10261         methods of inf_child_target.
10262         (inf_child_target::supports_terminal_ours)
10263         (inf_child_target::terminal_init)
10264         (inf_child_target::terminal_inferior)
10265         (inf_child_target::terminal_ours_for_output)
10266         (inf_child_target::terminal_ours, inf_child_target::interrupt)
10267         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
10268         New.
10269         (inf_child_open, inf_child_disconnect, inf_child_close)
10270         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
10271         (inf_child_post_startup_inferior, inf_child_can_run)
10272         (inf_child_pid_to_exec_file): Refactor as methods of
10273         inf_child_target.
10274         (inf_child_follow_fork): Delete.
10275         (inf_child_target::can_create_inferior)
10276         (inf_child_target::can_attach): New.
10277         (inf_child_target::has_all_memory, inf_child_target::has_memory)
10278         (inf_child_target::has_stack, inf_child_target::has_registers)
10279         (inf_child_target::has_execution): New.
10280         (inf_child_fileio_open, inf_child_fileio_pwrite)
10281         (inf_child_fileio_pread, inf_child_fileio_fstat)
10282         (inf_child_fileio_close, inf_child_fileio_unlink)
10283         (inf_child_fileio_readlink, inf_child_use_agent)
10284         (inf_child_can_use_agent): Refactor as methods of
10285         inf_child_target.
10286         (return_zero, inf_child_target): Delete.
10287         (inf_child_target::inf_child_target): New.
10288         * inf-child.h: Include "target.h".
10289         (inf_child_target): Delete function prototype.
10290         (inf_child_target): New class.
10291         (inf_child_open_target, inf_child_mourn_inferior)
10292         (inf_child_maybe_unpush_target): Delete.
10293         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
10294         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
10295         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
10296         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
10297         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
10298         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
10299         (inf_ptrace_wait, inf_ptrace_xfer_partial)
10300         (inf_ptrace_thread_alive, inf_ptrace_files_info)
10301         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
10302         methods of inf_ptrace_target.
10303         (inf_ptrace_target): Delete function.
10304         * inf-ptrace.h: Include "inf-child.h".
10305         (inf_ptrace_target): Delete function declaration.
10306         (inf_ptrace_target): New class.
10307         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
10308         * linux-nat.c (linux_target): New.
10309         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
10310         (linux_nat_target::~linux_nat_target): New.
10311         (linux_child_post_attach, linux_child_post_startup_inferior)
10312         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
10313         (linux_child_remove_fork_catchpoint)
10314         (linux_child_insert_vfork_catchpoint)
10315         (linux_child_remove_vfork_catchpoint)
10316         (linux_child_insert_exec_catchpoint)
10317         (linux_child_remove_exec_catchpoint)
10318         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
10319         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
10320         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
10321         (linux_nat_stopped_data_address)
10322         (linux_nat_stopped_by_sw_breakpoint)
10323         (linux_nat_supports_stopped_by_sw_breakpoint)
10324         (linux_nat_stopped_by_hw_breakpoint)
10325         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
10326         (linux_nat_kill, linux_nat_mourn_inferior)
10327         (linux_nat_xfer_partial, linux_nat_thread_alive)
10328         (linux_nat_update_thread_list, linux_nat_pid_to_str)
10329         (linux_nat_thread_name, linux_child_pid_to_exec_file)
10330         (linux_child_static_tracepoint_markers_by_strid)
10331         (linux_nat_is_async_p, linux_nat_can_async_p)
10332         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
10333         (linux_nat_supports_multi_process)
10334         (linux_nat_supports_disable_randomization, linux_nat_async)
10335         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
10336         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
10337         (linux_nat_fileio_open, linux_nat_fileio_readlink)
10338         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
10339         methods of linux_nat_target.
10340         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
10341         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
10342         parameter.
10343         (check_stopped_by_watchpoint): Adjust.
10344         (linux_xfer_partial): Delete.
10345         (linux_target_install_ops, linux_target, linux_nat_add_target):
10346         Delete.
10347         (linux_nat_target::linux_nat_target): New.
10348         * linux-nat.h: Include "inf-ptrace.h".
10349         (linux_nat_target): New.
10350         (linux_target, linux_target_install_ops, linux_nat_add_target):
10351         Delete function declarations.
10352         (linux_target): Declare global.
10353         * linux-thread-db.c (thread_db_target): New.
10354         (thread_db_target::thread_db_target): New.
10355         (thread_db_ops): Delete.
10356         (the_thread_db_target): New.
10357         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
10358         (thread_db_update_thread_list, thread_db_pid_to_str)
10359         (thread_db_extra_thread_info)
10360         (thread_db_thread_handle_to_thread_info)
10361         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
10362         (thread_db_resume): Refactor as methods of thread_db_target.
10363         (init_thread_db_ops): Delete.
10364         (_initialize_thread_db): Remove reference to init_thread_db_ops.
10365         * x86-linux-nat.c: Don't include "linux-nat.h".
10366         (super_post_startup_inferior): Delete.
10367         (x86_linux_nat_target::~x86_linux_nat_target): New.
10368         (x86_linux_child_post_startup_inferior)
10369         (x86_linux_read_description, x86_linux_enable_btrace)
10370         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
10371         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
10372         methods of x86_linux_nat_target.
10373         (x86_linux_create_target): Delete.  Bits folded ...
10374         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
10375         pointer.
10376         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
10377         (x86_linux_nat_target): New class.
10378         (x86_linux_create_target): Delete.
10379         (x86_linux_add_target): Now takes a linux_nat_target pointer.
10380         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
10381         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
10382         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
10383         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
10384         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
10385         make extern.
10386         (x86_use_watchpoints): Delete.
10387         * x86-nat.h: Include "breakpoint.h" and "target.h".
10388         (x86_use_watchpoints): Delete.
10389         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
10390         (x86_stopped_by_watchpoint, x86_stopped_data_address)
10391         (x86_insert_watchpoint, x86_remove_watchpoint)
10392         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
10393         (x86_stopped_by_hw_breakpoint): New declarations.
10394         (x86_nat_target): New template class.
10395
10396         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
10397         (the_ppc_linux_nat_target): New.
10398         (ppc_linux_fetch_inferior_registers)
10399         (ppc_linux_can_use_hw_breakpoint)
10400         (ppc_linux_region_ok_for_hw_watchpoint)
10401         (ppc_linux_ranged_break_num_registers)
10402         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
10403         (ppc_linux_insert_mask_watchpoint)
10404         (ppc_linux_remove_mask_watchpoint)
10405         (ppc_linux_can_accel_watchpoint_condition)
10406         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
10407         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
10408         (ppc_linux_watchpoint_addr_within_range)
10409         (ppc_linux_masked_watch_num_registers)
10410         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
10411         (ppc_linux_read_description): Refactor as methods of
10412         ppc_linux_nat_target.
10413         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
10414
10415         * procfs.c (procfs_xfer_partial): Delete forward declaration.
10416         (procfs_target): New class.
10417         (the_procfs_target): New.
10418         (procfs_target): Delete function.
10419         (procfs_auxv_parse, procfs_attach, procfs_detach)
10420         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
10421         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
10422         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
10423         (procfs_create_inferior, procfs_update_thread_list)
10424         (procfs_thread_alive, procfs_pid_to_str)
10425         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
10426         (procfs_stopped_data_address, procfs_insert_watchpoint)
10427         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
10428         (proc_find_memory_regions, procfs_info_proc)
10429         (procfs_make_note_section): Refactor as methods of procfs_target.
10430         (_initialize_procfs): Adjust.
10431         * sol-thread.c (sol_thread_target): New class.
10432         (sol_thread_ops): Now a sol_thread_target.
10433         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
10434         (sol_thread_fetch_registers, sol_thread_store_registers)
10435         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
10436         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
10437         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
10438         (init_sol_thread_ops): Delete.
10439         (_initialize_sol_thread): Adjust.  Remove references to
10440         init_sol_thread_ops and complete_target_initialization.
10441
10442         * windows-nat.c (windows_nat_target): New class.
10443         (windows_fetch_inferior_registers)
10444         (windows_store_inferior_registers, windows_resume, windows_wait)
10445         (windows_attach, windows_detach, windows_pid_to_exec_file)
10446         (windows_files_info, windows_create_inferior)
10447         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
10448         (windows_close, windows_pid_to_str, windows_xfer_partial)
10449         (windows_get_tib_address, windows_get_ada_task_ptid)
10450         (windows_thread_name, windows_thread_alive): Refactor as
10451         windows_nat_target methods.
10452         (do_initial_windows_stuff): Adjust.
10453         (windows_target): Delete function.
10454         (_initialize_windows_nat): Adjust.
10455
10456         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
10457         (darwin_mourn_inferior, darwin_kill_inferior)
10458         (darwin_create_inferior, darwin_attach, darwin_detach)
10459         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
10460         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
10461         (darwin_supports_multi_process): Refactor as darwin_nat_target
10462         methods.
10463         (darwin_resume_to, darwin_files_info): Delete.
10464         (_initialize_darwin_inferior): Rename to ...
10465         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
10466         * darwin-nat.h: Include "inf-child.h".
10467         (darwin_nat_target): New class.
10468         (darwin_complete_target): Delete.
10469         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
10470         (darwin_target): New.
10471         (i386_darwin_fetch_inferior_registers)
10472         (i386_darwin_store_inferior_registers): Refactor as methods of
10473         darwin_nat_target.
10474         (darwin_complete_target): Delete, with ...
10475         (_initialize_i386_darwin_nat): ... bits factored out here.
10476
10477         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
10478         (the_alpha_linux_nat_target): New.
10479         (alpha_linux_register_u_offset): Refactor as
10480         alpha_linux_nat_target method.
10481         (_initialize_alpha_linux_nat): Adjust.
10482         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
10483         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
10484         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
10485         methods of linux_nat_trad_target.
10486         (linux_trad_target): Delete.
10487         * linux-nat-trad.h (linux_trad_target): Delete function.
10488         (linux_nat_trad_target): New class.
10489         * mips-linux-nat.c (mips_linux_nat_target): New class.
10490         (super_fetch_registers, super_store_registers, super_close):
10491         Delete.
10492         (the_mips_linux_nat_target): New.
10493         (mips64_linux_regsets_fetch_registers)
10494         (mips64_linux_regsets_store_registers)
10495         (mips64_linux_fetch_registers, mips64_linux_store_registers)
10496         (mips_linux_register_u_offset, mips_linux_read_description)
10497         (mips_linux_can_use_hw_breakpoint)
10498         (mips_linux_stopped_by_watchpoint)
10499         (mips_linux_stopped_data_address)
10500         (mips_linux_region_ok_for_hw_watchpoint)
10501         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
10502         (mips_linux_close): Refactor as methods of mips_linux_nat.
10503         (_initialize_mips_linux_nat): Adjust to C++ification.
10504
10505         * aix-thread.c (aix_thread_target): New class.
10506         (aix_thread_ops): Now an aix_thread_target.
10507         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
10508         (aix_thread_fetch_registers, aix_thread_store_registers)
10509         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
10510         (aix_thread_thread_alive, aix_thread_pid_to_str)
10511         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
10512         Refactor as methods of aix_thread_target.
10513         (init_aix_thread_ops): Delete.
10514         (_initialize_aix_thread): Remove references to init_aix_thread_ops
10515         and complete_target_initialization.
10516         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
10517         (rs6000_nat_target): New class.
10518         (the_rs6000_nat_target): New.
10519         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
10520         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
10521         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
10522         (super_create_inferior): Delete.
10523         (_initialize_rs6000_nat): Adjust to C++ification.
10524
10525         * arm-linux-nat.c (arm_linux_nat_target): New class.
10526         (the_arm_linux_nat_target): New.
10527         (arm_linux_fetch_inferior_registers)
10528         (arm_linux_store_inferior_registers, arm_linux_read_description)
10529         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
10530         (arm_linux_remove_hw_breakpoint)
10531         (arm_linux_region_ok_for_hw_watchpoint)
10532         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
10533         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
10534         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
10535         arm_linux_nat_target.
10536         (_initialize_arm_linux_nat): Adjust to C++ification.
10537
10538         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
10539         (the_aarch64_linux_nat_target): New.
10540         (aarch64_linux_fetch_inferior_registers)
10541         (aarch64_linux_store_inferior_registers)
10542         (aarch64_linux_child_post_startup_inferior)
10543         (aarch64_linux_read_description)
10544         (aarch64_linux_can_use_hw_breakpoint)
10545         (aarch64_linux_insert_hw_breakpoint)
10546         (aarch64_linux_remove_hw_breakpoint)
10547         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
10548         (aarch64_linux_region_ok_for_hw_watchpoint)
10549         (aarch64_linux_stopped_data_address)
10550         (aarch64_linux_stopped_by_watchpoint)
10551         (aarch64_linux_watchpoint_addr_within_range)
10552         (aarch64_linux_can_do_single_step): Refactor as methods of
10553         aarch64_linux_nat_target.
10554         (super_post_startup_inferior): Delete.
10555         (_initialize_aarch64_linux_nat): Adjust to C++ification.
10556
10557         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
10558         (the_hppa_linux_nat_target): New.
10559         (hppa_linux_fetch_inferior_registers)
10560         (hppa_linux_store_inferior_registers): Refactor as methods of
10561         hppa_linux_nat_target.
10562         (_initialize_hppa_linux_nat): Adjust to C++ification.
10563
10564         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
10565         (the_ia64_linux_nat_target): New.
10566         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
10567         (ia64_linux_stopped_data_address)
10568         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
10569         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
10570         ia64_linux_nat_target methods.
10571         (super_xfer_partial): Delete.
10572         (_initialize_ia64_linux_nat): Adjust to C++ification.
10573
10574         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
10575         (the_m32r_linux_nat_target): New.
10576         (m32r_linux_fetch_inferior_registers)
10577         (m32r_linux_store_inferior_registers): Refactor as
10578         m32r_linux_nat_target methods.
10579         (_initialize_m32r_linux_nat): Adjust to C++ification.
10580
10581         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
10582         (the_m68k_linux_nat_target): New.
10583         (m68k_linux_fetch_inferior_registers)
10584         (m68k_linux_store_inferior_registers): Refactor as
10585         m68k_linux_nat_target methods.
10586         (_initialize_m68k_linux_nat): Adjust to C++ification.
10587
10588         * s390-linux-nat.c (s390_linux_nat_target): New class.
10589         (the_s390_linux_nat_target): New.
10590         (s390_linux_fetch_inferior_registers)
10591         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
10592         (s390_insert_watchpoint, s390_remove_watchpoint)
10593         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
10594         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
10595         (s390_auxv_parse, s390_read_description): Refactor as methods of
10596         s390_linux_nat_target.
10597         (_initialize_s390_nat): Adjust to C++ification.
10598
10599         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
10600         (the_sparc_linux_nat_target): New.
10601         (_initialize_sparc_linux_nat): Adjust to C++ification.
10602         * sparc-nat.c (sparc_fetch_inferior_registers)
10603         (sparc_store_inferior_registers): Remove target_ops parameter.
10604         * sparc-nat.h (sparc_fetch_inferior_registers)
10605         (sparc_store_inferior_registers): Remove target_ops parameter.
10606         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
10607         (the_sparc64_linux_nat_target): New.
10608         (_initialize_sparc64_linux_nat): Adjust to C++ification.
10609
10610         * spu-linux-nat.c (spu_linux_nat_target): New class.
10611         (the_spu_linux_nat_target): New.
10612         (spu_child_post_startup_inferior, spu_child_post_attach)
10613         (spu_child_wait, spu_fetch_inferior_registers)
10614         (spu_store_inferior_registers, spu_xfer_partial)
10615         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
10616         methods.
10617         (_initialize_spu_nat): Adjust to C++ification.
10618
10619         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
10620         (the_tilegx_linux_nat_target): New.
10621         (fetch_inferior_registers, store_inferior_registers):
10622         Refactor as methods.
10623         (_initialize_tile_linux_nat): Adjust to C++ification.
10624
10625         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
10626         (the_xtensa_linux_nat_target): New.
10627         (xtensa_linux_fetch_inferior_registers)
10628         (xtensa_linux_store_inferior_registers): Refactor as
10629         xtensa_linux_nat_target methods.
10630         (_initialize_xtensa_linux_nat): Adjust to C++ification.
10631
10632         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
10633         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
10634         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
10635         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
10636         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
10637         (fbsd_stopped_by_sw_breakpoint)
10638         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
10639         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
10640         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
10641         (fbsd_post_startup_inferior, fbsd_post_attach)
10642         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
10643         (fbsd_set_syscall_catchpoint)
10644         (super_xfer_partial, super_resume, super_wait)
10645         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
10646         (fbsd_handle_debug_trap): Remove target_ops parameter.
10647         (fbsd_nat_add_target): Delete.
10648         * fbsd-nat.h: Include "inf-ptrace.h".
10649         (fbsd_nat_add_target): Delete.
10650         (USE_SIGTRAP_SIGINFO): Define.
10651         (fbsd_nat_target): New class.
10652
10653         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
10654         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
10655         (amd64bsd_target): Delete.
10656         * amd64-bsd-nat.h: New file.
10657         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
10658         "x86-bsd-nat.h".
10659         (amd64_fbsd_nat_target): New class.
10660         (the_amd64_fbsd_nat_target): New.
10661         (amd64fbsd_read_description): Refactor as method of
10662         amd64_fbsd_nat_target.
10663         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
10664         (_initialize_amd64fbsd_nat): Adjust to C++ification.
10665         * amd64-nat.h (amd64bsd_target): Delete function declaration.
10666         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
10667         (i386bsd_store_inferior_registers): Remove target_ops parameter.
10668         (i386bsd_target): Delete.
10669         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
10670         (i386bsd_fetch_inferior_registers)
10671         (i386bsd_store_inferior_registers): Declare.
10672         (i386_bsd_nat_target): New class.
10673         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
10674         (the_i386_fbsd_nat_target): New.
10675         (i386fbsd_resume, i386fbsd_read_description): Refactor as
10676         i386_fbsd_nat_target methods.
10677         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
10678         (_initialize_i386fbsd_nat): Adjust to C++ification.
10679         * x86-bsd-nat.c (super_mourn_inferior): Delete.
10680         (x86bsd_mourn_inferior, x86bsd_target): Delete.
10681         (_initialize_x86_bsd_nat): Adjust to C++ification.
10682         * x86-bsd-nat.h: Include "x86-nat.h".
10683         (x86bsd_target): Delete declaration.
10684         (x86bsd_nat_target): New class.
10685
10686         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
10687         (the_aarch64_fbsd_nat_target): New.
10688         (aarch64_fbsd_fetch_inferior_registers)
10689         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
10690         aarch64_fbsd_nat_target.
10691         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
10692         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
10693         (the_alpha_bsd_nat_target): New.
10694         (alphabsd_fetch_inferior_registers)
10695         (alphabsd_store_inferior_registers): Refactor as
10696         alpha_bsd_nat_target methods.
10697         (_initialize_alphabsd_nat): Refactor as methods of
10698         alpha_bsd_nat_target.
10699         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
10700         (the_amd64_nbsd_nat_target): New.
10701         (_initialize_amd64nbsd_nat): Adjust to C++ification.
10702         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
10703         (the_amd64_obsd_nat_target): New.
10704         (_initialize_amd64obsd_nat): Adjust to C++ification.
10705         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
10706         (the_arm_fbsd_nat_target): New.
10707         (arm_fbsd_fetch_inferior_registers)
10708         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
10709         (_initialize_arm_fbsd_nat): Refactor as methods of
10710         arm_fbsd_nat_target.
10711         (_initialize_arm_fbsd_nat): Adjust to C++ification.
10712         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
10713         (the_arm_netbsd_nat_target): New.
10714         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
10715         arm_netbsd_nat_target.
10716         (_initialize_arm_netbsd_nat): Adjust to C++ification.
10717         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
10718         (the_hppa_nbsd_nat_target): New.
10719         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
10720         hppa_nbsd_nat_target methods.
10721         (_initialize_hppanbsd_nat): Adjust to C++ification.
10722         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
10723         (the_hppa_obsd_nat_target): New.
10724         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
10725         methods of hppa_obsd_nat_target.
10726         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
10727         add_target.
10728         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
10729         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
10730         add_target.
10731         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
10732         (_initialize_i386obsd_nat): Use add_target.
10733         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
10734         (the_m68k_bsd_nat_target): New.
10735         (m68kbsd_fetch_inferior_registers)
10736         (m68kbsd_store_inferior_registers): Refactor as methods of
10737         m68k_bsd_nat_target.
10738         (_initialize_m68kbsd_nat): Adjust to C++ification.
10739         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
10740         (the_mips_fbsd_nat_target): New.
10741         (mips_fbsd_fetch_inferior_registers)
10742         (mips_fbsd_store_inferior_registers): Refactor as methods of
10743         mips_fbsd_nat_target.
10744         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
10745         add_target.
10746         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
10747         (the_mips_nbsd_nat_target): New.
10748         (mipsnbsd_fetch_inferior_registers)
10749         (mipsnbsd_store_inferior_registers): Refactor as methods of
10750         mips_nbsd_nat_target.
10751         (_initialize_mipsnbsd_nat): Adjust to C++ification.
10752         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
10753         (the_mips64_obsd_nat_target): New.
10754         (mips64obsd_fetch_inferior_registers)
10755         (mips64obsd_store_inferior_registers): Refactor as methods of
10756         mips64_obsd_nat_target.
10757         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
10758         add_target.
10759         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
10760         nbsd_nat_target.
10761         * nbsd-nat.h: Include "inf-ptrace.h".
10762         (nbsd_nat_target): New class.
10763         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
10764         (obsd_wait): Refactor as methods of obsd_nat_target.
10765         (obsd_add_target): Delete.
10766         * obsd-nat.h: Include "inf-ptrace.h".
10767         (obsd_nat_target): New class.
10768         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
10769         (the_ppc_fbsd_nat_target): New.
10770         (ppcfbsd_fetch_inferior_registers)
10771         (ppcfbsd_store_inferior_registers): Refactor as methods of
10772         ppc_fbsd_nat_target.
10773         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
10774         add_target.
10775         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
10776         (the_ppc_nbsd_nat_target): New.
10777         (ppcnbsd_fetch_inferior_registers)
10778         (ppcnbsd_store_inferior_registers): Refactor as methods of
10779         ppc_nbsd_nat_target.
10780         (_initialize_ppcnbsd_nat): Adjust to C++ification.
10781         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
10782         (the_ppc_obsd_nat_target): New.
10783         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
10784         methods of ppc_obsd_nat_target.
10785         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
10786         add_target.
10787         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
10788         (the_sh_nbsd_nat_target): New.
10789         (shnbsd_fetch_inferior_registers)
10790         (shnbsd_store_inferior_registers): Refactor as methods of
10791         sh_nbsd_nat_target.
10792         (_initialize_shnbsd_nat): Adjust to C++ification.
10793         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
10794         (inf_ptrace_xfer_partial): Delete.
10795         (sparc_xfer_partial, sparc_target): Delete.
10796         * sparc-nat.h (sparc_fetch_inferior_registers)
10797         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
10798         (sparc_target): Delete function declaration.
10799         (sparc_target): New template class.
10800         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
10801         (_initialize_sparcnbsd_nat): Adjust to C++ification.
10802         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
10803         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
10804         add_target.
10805         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
10806         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
10807         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
10808         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
10809         add_target.
10810         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
10811         (the_vax_bsd_nat_target): New.
10812         (vaxbsd_fetch_inferior_registers)
10813         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
10814         methods.
10815         (_initialize_vaxbsd_nat): Adjust to C++ification.
10816
10817         * bsd-kvm.c (bsd_kvm_target): New class.
10818         (bsd_kvm_ops): Now a bsd_kvm_target.
10819         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
10820         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
10821         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
10822         bsd_kvm_target.
10823         (bsd_kvm_return_one): Delete.
10824         (bsd_kvm_add_target): Adjust to C++ification.
10825
10826         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
10827         (nto_procfs_target_procfs): New classes.
10828         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
10829         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
10830         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
10831         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
10832         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
10833         (procfs_remove_hw_breakpoint, procfs_resume)
10834         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
10835         (procfs_kill_inferior, procfs_store_registers)
10836         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
10837         as methods of nto_procfs_target.
10838         (nto_procfs_ops): Now an nto_procfs_target_procfs.
10839         (nto_native_ops): Delete.
10840         (procfs_open, procfs_native_open): Delete.
10841         (nto_native_ops): Now an nto_procfs_target_native.
10842         (init_procfs_targets): Adjust to C++ification.
10843         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
10844         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
10845         Refactor as methods of nto_procfs_target.
10846
10847         * go32-nat.c (go32_nat_target): New class.
10848         (the_go32_nat_target): New.
10849         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
10850         (go32_store_registers, go32_xfer_partial, go32_files_info)
10851         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
10852         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
10853         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
10854         (go32_pid_to_str): Refactor as methods of go32_nat_target.
10855         (go32_target): Delete.
10856         (_initialize_go32_nat): Adjust to C++ification.
10857
10858         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
10859         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
10860         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
10861         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
10862         gnu_nat_target.
10863         (gnu_target): Delete.
10864         * gnu-nat.h (gnu_target): Delete.
10865         (gnu_nat_target): New class.
10866         * i386-gnu-nat.c (gnu_base_target): New.
10867         (i386_gnu_nat_target): New class.
10868         (the_i386_gnu_nat_target): New.
10869         (_initialize_i386gnu_nat): Adjust to C++ification.
10870
10871 2018-05-02  Pedro Alves  <palves@redhat.com>
10872
10873         * bfd-target.c (target_bfd_xclose): Rename to ...
10874         (target_bfd_close): ... this.
10875         (target_bfd_reopen): Adjust.
10876         * target.c (target_close): Remove references to to_xclose.
10877         * target.h (target_ops::to_xclose): Delete.
10878         (target_ops::to_close): Update comments.
10879
10880 2018-05-02  Pedro Alves  <palves@redhat.com>
10881
10882         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
10883         "linux-nat.h".
10884         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
10885         * inf-ptrace.c (inf_ptrace_register_u_offset)
10886         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
10887         (inf_ptrace_store_register, inf_ptrace_store_registers)
10888         (inf_ptrace_trad_target): Move to ...
10889         * linux-nat-trad.c: ... this new file.
10890         * linux-nat-trad.h: New file.
10891         * linux-nat.c (linux_target_install_ops): Make extern.
10892         (linux_trad_target): Delete.
10893         * linux-nat.h (linux_trad_target): Delete declaration.
10894         (linux_target_install_ops): Declare.
10895         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
10896         "linux-nat.h".
10897
10898 2018-05-02  Pedro Alves  <palves@redhat.com>
10899
10900         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10901         procfs_target/add_target here.
10902         * procfs.c (procfs_target): Make static.
10903         (_initialize_procfs): Call add_target here.
10904         * procfs.h (struct target_ops): Remove forward declaration.
10905         (procfs_target): Remove declaration.
10906         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
10907
10908 2018-05-02  Pedro Alves  <palves@redhat.com>
10909
10910         * procfs.c (procfs_stopped_by_watchpoint)
10911         (procfs_insert_watchpoint, procfs_remove_watchpoint)
10912         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
10913         Forward declare.
10914         (procfs_use_watchpoints): Delete, move contents...
10915         (procfs_target): ... here.
10916         * procfs.h (procfs_use_watchpoints): Delete declaration.
10917         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10918         procfs_use_watchpoints.
10919         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
10920         procfs_use_watchpoints.
10921
10922 2018-05-02  Tom Tromey  <tom@tromey.com>
10923
10924         PR python/20084:
10925         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
10926         and var_zuinteger_unlimited.
10927         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
10928         and PARAM_ZUINTEGER_UNLIMITED.
10929         (set_parameter_value): Handle var_zuinteger and
10930         var_zuinteger_unlimited.
10931         (add_setshow_generic): Likewise.
10932         (parmpy_init): Likewise.
10933
10934 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
10935
10936         PR rust/23124
10937         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
10938         pointer is not null before dereferencing it.
10939
10940 2018-04-30  Tom Tromey  <tom@tromey.com>
10941
10942         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
10943         is_mi_like_p.
10944
10945 2018-04-30  Tom Tromey  <tom@tromey.com>
10946
10947         * breakpoint.c (mention): Remove use of is_mi_like_p.
10948         (print_mention_ranged_breakpoint): Likewise.
10949         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
10950         of is_mi_like_p.
10951
10952 2018-04-30  Tom Tromey  <tom@tromey.com>
10953
10954         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
10955
10956 2018-04-30  Tom Tromey  <tom@tromey.com>
10957
10958         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
10959         (info_spu_event_command): Remove some uses of is_mi_like_p.
10960
10961 2018-04-30  Tom Tromey  <tom@tromey.com>
10962
10963         * python/py-framefilter.c (py_print_single_arg)
10964         (enumerate_locals, py_print_args, py_print_frame): Remove some
10965         uses of is_mi_like_p.
10966
10967 2018-04-30  Tom Tromey  <tom@tromey.com>
10968
10969         * ui-out.c: Update.
10970         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
10971         * ui-out.h (ui_out::is_mi_like_p): Now const.
10972         (ui_out::do_is_mi_like_p): Now const.
10973         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
10974
10975 2018-04-30  Tom Tromey  <tom@tromey.com>
10976
10977         * varobj.c (varobj_set_visualizer): Use new_reference.
10978         * python/python.c (gdbpy_decode_line): Use new_reference.
10979         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
10980         new_reference.
10981
10982 2018-04-30  Tom Tromey  <tom@tromey.com>
10983
10984         * varobj.c (install_new_value): Use new_reference.
10985         * value.h (value_incref): Return void.  Swap intro comment with
10986         value_decref.
10987         * value.c (set_value_parent): Use new_reference.
10988         (value_incref): Return void.  Update intro comment.
10989         (release_value): Use new_reference.
10990         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
10991
10992 2018-04-30  Tom Tromey  <tom@tromey.com>
10993
10994         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
10995         * gdb_bfd.h (new_bfd_ref): Remove.
10996         (gdb_bfd_open): Update comment.
10997         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
10998         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
10999         (gdb_bfd_fdopenr): Use new_reference.
11000         * exec.c (exec_file_attach): Use new_reference.
11001
11002 2018-04-30  Tom Tromey  <tom@tromey.com>
11003
11004         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
11005         method.
11006
11007 2018-04-30  Tom Tromey  <tom@tromey.com>
11008
11009         * jit.c (jit_read_code_entry): Use type_align.
11010         * i386-tdep.c (i386_gdbarch_init): Don't call
11011         set_gdbarch_long_long_align_bit.
11012         * gdbarch.sh: Remove long_long_align_bit.
11013         * gdbarch.c, gdbarch.h: Rebuild.
11014         * arc-tdep.c (arc_type_align): New function.
11015         (arc_gdbarch_init): Use arc_type_align.  Don't call
11016         set_gdbarch_long_long_align_bit.
11017
11018 2018-04-30  Tom Tromey  <tom@tromey.com>
11019
11020         * rust-lang.c (rust_type_alignment): Remove.
11021         (rust_composite_type): Use type_align.
11022
11023 2018-04-30  Tom Tromey  <tom@tromey.com>
11024
11025         * NEWS: Mention Type.align.
11026         * python/py-type.c (typy_get_alignof): New function.
11027         (type_object_getset): Add "alignof".
11028
11029 2018-04-30  Tom Tromey  <tom@tromey.com>
11030
11031         PR exp/17095:
11032         * NEWS: Update.
11033         * std-operator.def (UNOP_ALIGNOF): New operator.
11034         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
11035         New.
11036         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
11037         * c-lang.c (c_op_print_tab): Add alignof.
11038         * c-exp.y (ALIGNOF): New token.
11039         (exp): Add "ALIGNOF" production.
11040         (ident_tokens): Add _Alignof and alignof.
11041
11042 2018-04-30  Tom Tromey  <tom@tromey.com>
11043
11044         * i386-tdep.c (i386_type_align): New function.
11045         (i386_gdbarch_init): Update.
11046         * gdbarch.sh (type_align): New method.
11047         * gdbarch.c, gdbarch.h: Rebuild.
11048         * arch-utils.h (default_type_align): Declare.
11049         * arch-utils.c (default_type_align): New function.
11050         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
11051         (struct type) <align_log2>: New field.
11052         <instance_flags>: Now a bitfield.
11053         (TYPE_RAW_ALIGN): New macro.
11054         (type_align, type_raw_align, set_type_align): Declare.
11055         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
11056         functions.
11057         * dwarf2read.c (quirk_rust_enum): Set type alignment.
11058         (get_alignment, maybe_set_alignment): New functions.
11059         (read_structure_type, read_enumeration_type, read_array_type)
11060         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
11061         (read_subrange_type, read_base_type): Set type alignment.
11062
11063 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
11064
11065         * dwarf2read.c (read_index_from_section): Use bool.
11066
11067 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
11068
11069         PR gdb/22950
11070         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
11071         with #ifdef.
11072
11073 2018-04-29  John Reiser  <jreiser@BitWagon.com>
11074
11075         PR build/22873
11076         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
11077         last step, and do it atomically.
11078
11079 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
11080
11081         * compile/compile-c-types.c (convert_int, convert_float):
11082         Update for C FE v1.
11083
11084 2018-04-27  Tom Tromey  <tom@tromey.com>
11085
11086         PR rust/22545:
11087         * rust-lang.c (rust_inclusive_range_type_p): New function.
11088         (rust_range): Handle inclusive ranges.
11089         (rust_compute_range): Likewise.
11090         * rust-exp.y (struct rust_op) <inclusive>: New field.
11091         (DOTDOTEQ): New constant.
11092         (range_expr): Add "..=" productions.
11093         (operator_tokens): Add "..=" token.
11094         (ast_range): Add "inclusive" parameter.
11095         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
11096         ranges.
11097         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
11098         bounds values.
11099         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
11100         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
11101         Update comments.
11102         * expprint.c (print_subexp_standard): Handle new bounds values.
11103         (dump_subexp_body_standard): Likewise.
11104
11105 2018-04-27  Tom Tromey  <tom@tromey.com>
11106
11107         * configure: Rebuild.
11108         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
11109         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
11110         "OVERRIDE".
11111         (class symbol_needs_eval_context): Likewise.
11112         * dwarf2read.c (mock_mapped_index::symbol_name_count)
11113         (mock_mapped_index::symbol_name_at): Use "override".  Remove
11114         "virtual".
11115         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
11116         "override".
11117         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
11118         * aarch64-tdep.c (instruction_reader::read): Use "override".
11119         (instruction_reader_test::read): Likewise.
11120         * arm-tdep.c (instruction_reader::read): Use "override".
11121         (instruction_reader_thumb::read): Likewise.
11122
11123 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
11124
11125         PR remote/9665
11126         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
11127         instead of remote_send.
11128         (remote_send): Remove.
11129
11130 2018-04-26  Pedro Alves  <palves@redhat.com>
11131
11132         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
11133         find_function_start_sal instead of find_pc_line.
11134
11135 2018-04-26  Pedro Alves  <palves@redhat.com>
11136
11137         * breakpoint.c (set_breakpoint_location_function): Handle
11138         mst_data_gnu_ifunc.
11139         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
11140         * elfread.c (elf_symtab_read): Give data symbols with
11141         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
11142         (elf_rel_plt_read): Update comment.
11143         * linespec.c (convert_linespec_to_sals): Handle
11144         mst_data_gnu_ifunc.
11145         (minsym_found): Handle mst_data_gnu_ifunc.
11146         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
11147         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
11148         * parse.c (find_minsym_type_and_address): Handle
11149         mst_data_gnu_ifunc.
11150         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
11151         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
11152         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
11153         comment.
11154         <mst_data_gnu_ifunc>: New enumerator.
11155
11156 2018-04-26  Pedro Alves  <palves@redhat.com>
11157
11158         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
11159         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
11160         'want_trampoline' parameter by a lookup_msym_prefer parameter.
11161         Handle it.
11162         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
11163         (lookup_minimal_symbol_by_pc): Adjust.
11164         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
11165         (lookup_solib_trampoline_symbol_by_pc): Adjust.
11166         * minsyms.h (lookup_msym_prefer): New enum.
11167         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
11168         parameter by a lookup_msym_prefer parameter.
11169
11170 2018-04-26  Pedro Alves  <palves@redhat.com>
11171
11172         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
11173         ends in "@plt" instead of looking at the symbol's section.
11174
11175 2018-04-26  Pedro Alves  <palves@redhat.com>
11176
11177         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
11178         all references.
11179         (find_pc_partial_function_gnu_ifunc): Rename to ...
11180         (find_pc_partial_function): ... this, and remove references to
11181         'is_gnu_ifunc_p'.
11182         (find_pc_partial_function): Delete old implementation.
11183         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
11184
11185 2018-04-26  Pedro Alves  <palves@redhat.com>
11186
11187         * linespec.c (struct bound_minimal_symbol_search_key): New.
11188         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
11189         skip first line if we found a GNU ifunc minimal symbol by name.
11190         (compare_msymbols): Change parameters to work with a destructured
11191         lhs minsym.
11192         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
11193         functions.
11194
11195 2018-04-26  Pedro Alves  <palves@redhat.com>
11196
11197         * breakpoint.c (set_breakpoint_location_function): Don't resolve
11198         ifunc targets here.  Instead, if we have an ifunc minsym, use its
11199         address/name.
11200         (add_location_to_breakpoint): Store the minsym and the objfile in
11201         the breakpoint location.
11202         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
11203         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
11204         Record the minsym in the sal.
11205         * symtab.h (symtab_and_line) <msymbol>: New field.
11206
11207 2018-04-26  Pedro Alves  <palves@redhat.com>
11208
11209         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
11210         unless we actually resolved the ifunc.
11211
11212 2018-04-26  Pedro Alves  <palves@redhat.com>
11213
11214         * c-exp.y (variable production): Prefer ifunc minsyms over
11215         regular function symbols.
11216         * symtab.c (find_gnu_ifunc): New function.
11217         * minsyms.h (lookup_msym_prefer): New enum.
11218         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
11219         parameter by a lookup_msym_prefer parameter.
11220         * symtab.h (find_gnu_ifunc): New declaration.
11221
11222 2018-04-26  Pedro Alves  <palves@redhat.com>
11223
11224         * blockframe.c (find_gnu_ifunc_target_type): New function.
11225         (find_function_type): New.
11226         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
11227         return a value with a memory address.
11228         (eval_call): For calls to GNU ifunc functions, try to find the
11229         type of the target function from the type that the resolver
11230         returns.
11231         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
11232         symbols.
11233         * infcall.c (find_function_return_type): Delete.
11234         (find_function_addr): Add 'function_type' parameter.  For calls to
11235         GNU ifunc functions, try to find the type of the target function
11236         from the type that the resolver returns, and return it via
11237         FUNCTION_TYPE.
11238         (call_function_by_hand_dummy): Adjust to use the function type
11239         returned by find_function_addr.
11240         (find_function_addr): Add 'function_type' parameter and move
11241         description here.
11242         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
11243         declarations.
11244
11245 2018-04-26  Pedro Alves  <palves@redhat.com>
11246
11247         * c-exp.y (variable production): Skip finding an alias for ifunc
11248         symbols.
11249
11250 2018-04-26  Pedro Alves  <palves@redhat.com>
11251
11252         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
11253
11254 2018-04-25  Pedro Alves  <palves@redhat.com>
11255
11256         * infcmd.c (kill_command): Print the pid as string, not the whole
11257         thread's ptid.  Add comment.  s/has been killed/killed/ in output
11258         message.
11259         * remote.c (remote_detach_1): Print the pid as string, not the
11260         whole thread's ptid.
11261
11262 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
11263             Sergio Durigan Junior  <sergiodj@redhat.com>
11264             Pedro Alves  <palves@redhat.com>
11265
11266         * infcmd.c (kill_command): Print message when inferior has
11267         been killed.
11268         * inferior.c (print_inferior_events): Remove 'static'.  Set as
11269         '1'.
11270         (add_inferior): Improve message printed when
11271         'print_inferior_events' is on.
11272         (exit_inferior): Remove message printed when
11273         'print_inferior_events' is on.
11274         (detach_inferior): Improve message printed when
11275         'print_inferior_events' is on.
11276         (initialize_inferiors): Use 'add_inferior_silent' to set
11277         'current_inferior_'.
11278         * inferior.h (print_inferior_events): Declare here as
11279         'extern'.
11280         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
11281         '[Detaching...]' messages when 'print_inferior_events' is on.
11282         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
11283         as prefix/suffix for messages.  Remove periods.  Fix erroneous
11284         'Detaching after fork from child...', replace it by '... from
11285         parent...'.
11286         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
11287         prefix/suffix when printing 'Detaching...' messages.  Print
11288         them when 'print_inferior_events' is on.
11289         * remote.c (remote_detach_1): Print message when detaching
11290         from inferior and '!is_fork_parent'.
11291
11292 2018-04-24  Tom Tromey  <tom@tromey.com>
11293
11294         * cli-out.h: Reindent.
11295
11296 2018-04-24  Tom Tromey  <tom@tromey.com>
11297
11298         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
11299         (cli_ui_out::do_field_string): Use fputs_filtered.
11300         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
11301
11302 2018-04-23  Tom Tromey  <tom@tromey.com>
11303
11304         * guile/scm-frame.c (gdbscm_frame_read_var): Use
11305         gdb::unique_xmalloc_ptr.
11306
11307 2018-04-23  Tom Tromey  <tom@tromey.com>
11308
11309         * configure: Rebuild.
11310
11311 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
11312
11313         PR gdb/23095
11314         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
11315         prepare_for_testing.  Set normal_bp to r_debug_state if target
11316         is bsd.
11317
11318 2018-04-21  Pedro Alves  <palves@redhat.com>
11319             Rajendra SY  <rajendra.sy@gmail.com>
11320
11321         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
11322         * remote.c (extended_remote_attach): In all-stop mode, mark the
11323         thread as executing.
11324
11325 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
11326
11327         * thread.c (thread_apply_all_command): Fix comment.
11328         (thread_command): Fix comment.
11329
11330 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
11331
11332         * common/tdesc.h (tdesc_create_feature): Remove xml filename
11333         parameter.
11334         * features/aarch64-core.c (create_feature_aarch64_core):
11335         Regenerate.
11336         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
11337         Likewise.
11338         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
11339         Likewise.
11340         * features/i386/32bit-avx512.c
11341         (create_feature_i386_32bit_avx512): Likewise.
11342         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
11343         Likewise.
11344         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
11345         Likewise.
11346         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
11347         Likewise.
11348         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
11349         Likewise.
11350         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
11351         Likewise.
11352         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
11353         Likewise.
11354         * features/i386/64bit-avx512.c
11355         (create_feature_i386_64bit_avx512): Likewise.
11356         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
11357         Likewise.
11358         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
11359         Likewise.
11360         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
11361         Likewise.
11362         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
11363         Likewise.
11364         * features/i386/64bit-segments.c
11365         (create_feature_i386_64bit_segments): Likewise.
11366         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
11367         Likewise.
11368         * features/i386/x32-core.c
11369         (create_feature_i386_x32_core): Likewise.
11370         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
11371         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
11372         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
11373         * target-descriptions.c: In generated code, don't pass xml
11374         filename.
11375
11376 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11377
11378         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
11379         (print_xml_feature::visit_post): Likewise.
11380         (print_xml_feature::visit): Likewise.
11381         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
11382         (print_xml_feature): Add new class.
11383         * regformats/regdat.sh: Null xmltarget on feature targets.
11384         * target-descriptions.c (struct target_desc): Add xmltarget.
11385         (maintenance_check_tdesc_xml_convert): Add unittest function.
11386         (tdesc_get_features_xml): Add function to get xml.
11387         (maintenance_check_xml_descriptions): Test xml generation.
11388         * xml-tdesc.c (string_read_description_xml): Add function.
11389         * xml-tdesc.h (string_read_description_xml): Add declaration.
11390
11391 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11392
11393         * features/Makefile: Add feature marker to targets with new style
11394         target descriptions.
11395         * regformats/aarch64.dat: Regenerate.
11396         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
11397         * regformats/i386/amd64-avx-linux.dat: Likewise.
11398         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
11399         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
11400         * regformats/i386/amd64-linux.dat: Likewise.
11401         * regformats/i386/amd64-mpx-linux.dat: Likewise.
11402         * regformats/i386/amd64.dat: Likewise.
11403         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
11404         * regformats/i386/i386-avx-linux.dat: Likewise.
11405         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
11406         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
11407         * regformats/i386/i386-linux.dat: Likewise.
11408         * regformats/i386/i386-mmx-linux.dat: Likewise.
11409         * regformats/i386/i386-mpx-linux.dat: Likewise.
11410         * regformats/i386/i386.dat: Likewise.
11411         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
11412         * regformats/i386/x32-avx-linux.dat: Likewise.
11413         * regformats/i386/x32-linux.dat: Likewise.
11414         * regformats/tic6x-c62x-linux.dat: Likewise.
11415         * regformats/tic6x-c64x-linux.dat: Likewise.
11416         * regformats/tic6x-c64xp-linux.dat: Likewise.
11417         * regformats/regdat.sh: Parse feature marker.
11418
11419 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11420
11421         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
11422         (tdesc_osabi_name): Likewise.
11423         * target-descriptions.c (tdesc_architecture_name): Add new
11424         function.
11425         (tdesc_osabi_name): Likewise.
11426
11427 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11428
11429         * common/tdesc.c (tdesc_predefined_type): Move to here.
11430         (tdesc_named_type): Likewise.
11431         (tdesc_create_vector): Likewise.
11432         (tdesc_create_struct): Likewise.
11433         (tdesc_set_struct_size): Likewise.
11434         (tdesc_create_union): Likewise.
11435         (tdesc_create_flags): Likewise.
11436         (tdesc_create_enum): Likewise.
11437         (tdesc_add_field): Likewise.
11438         (tdesc_add_typed_bitfield): Likewise.
11439         (tdesc_add_bitfield): Likewise.
11440         (tdesc_add_flag): Likewise.
11441         (tdesc_add_enum_value): Likewise.
11442         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
11443         (struct tdesc_type_vector): Likewise.
11444         (struct tdesc_type_field): Likewise.
11445         (struct tdesc_type_with_fields): Likewise.
11446         (tdesc_create_enum): Add declaration.
11447         (tdesc_add_typed_bitfield): Likewise.
11448         (tdesc_add_enum_value): Likewise.
11449         * target-descriptions.c (tdesc_type_field): Move from here.
11450         (tdesc_type_builtin): Likewise.
11451         (tdesc_type_vector): Likewise.
11452         (tdesc_type_with_fields): Likewise.
11453         (tdesc_predefined_types): Likewise.
11454         (tdesc_named_type): Likewise.
11455         (tdesc_create_vector): Likewise.
11456         (tdesc_create_struct): Likewise.
11457         (tdesc_set_struct_size): Likewise.
11458         (tdesc_create_union): Likewise.
11459         (tdesc_create_flags): Likewise.
11460         (tdesc_create_enum): Likewise.
11461         (tdesc_add_field): Likewise.
11462         (tdesc_add_typed_bitfield): Likewise.
11463         (tdesc_add_bitfield): Likewise.
11464         (tdesc_add_flag): Likewise.
11465         (tdesc_add_enum_value): Likewise.
11466         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
11467         (tdesc_add_typed_bitfield): Likewise.
11468         (tdesc_add_enum_value): Likewise.
11469
11470 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11471
11472         * common/tdesc.c (tdesc_feature::accept): Move to here.
11473         (tdesc_feature::operator==): Likewise.
11474         (tdesc_create_reg): Likewise.
11475         * common/tdesc.h (tdesc_type_kind): Likewise.
11476         (struct tdesc_type): Likewise.
11477         (struct tdesc_feature): Likewise.
11478         * regformats/regdat.sh: Create a feature.
11479         * target-descriptions.c (tdesc_type_kind): Move from here.
11480         (tdesc_type): Likewise.
11481         (tdesc_type_up): Likewise.
11482         (tdesc_feature): Likewise.
11483         (tdesc_create_reg): Likewise.
11484
11485 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11486
11487         * Makefile.in: Add arch/tdesc.c
11488         * common/tdesc.c: New file.
11489         * common/tdesc.h (tdesc_element_visitor): Move to here.
11490         (tdesc_element): Likewise.
11491         (tdesc_reg): Likewise.
11492         (tdesc_reg_up): Likewise.
11493         * regformats/regdef.h (reg): Add offset to constructors.
11494         * target-descriptions.c (tdesc_element_visitor): Move from here.
11495         (tdesc_element): Likewise.
11496         (tdesc_reg): Likewise.
11497         (tdesc_reg_up): Likewise.
11498
11499 2018-04-17  Tom Tromey  <tom@tromey.com>
11500
11501         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
11502         discriminant field.
11503
11504 2018-04-17  Tom Tromey  <tom@tromey.com>
11505
11506         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
11507
11508 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11509
11510         * symtab.c (print_symbol_info): Skip printing filename and line
11511         number when `last' is NULL.
11512         (symtab_symbol_info): Use empty string instead of NULL for first
11513         invocation of print_symbol_info.
11514         (rbreak_command): Pass NULL to `last' parameter of
11515         print_symbol_info.
11516
11517 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
11518
11519         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
11520         instead of nullptr.
11521
11522 2018-04-16  Pedro Alves  <palves@redhat.com>
11523
11524         * MAINTAINERS (sh): Remove.
11525         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
11526         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
11527         (ALLDEPFILES): Remove sh64-tdep.c.
11528         * NEWS: Mentions that support for SH-5/SH64 is removed.
11529         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
11530         (sh*-*-openbsd*): Ditto.
11531         (sh64-*-elf*): Remove.
11532         (sh*): Remove.
11533         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
11534         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
11535         * sh-tdep.c: No longer include "sh64-tdep.h".
11536         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
11537         * sh64-tdep.c, sh64-tdep.h: Remove files.
11538
11539 2018-04-16  Pedro Alves  <palves@redhat.com>
11540
11541         * MAINTAINERS: Remove m88k.
11542         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
11543         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
11544         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
11545         * NEWS: Mention that support for m88k was removed.
11546         * configure.host (m88*-*-*): Remove support.
11547         * configure.nat (m88k-*-*): Remove support.
11548         * configure.tgt (m88*-*-openbsd*): Remove.
11549         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
11550
11551 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
11552
11553         * configure.tgt (x86_tobjs): New variable.
11554         (amd64_tobjs, i386_tobjs): Use it.
11555
11556 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11557
11558         * symtab.c (print_symbol_info): Precede the symbol definition by
11559         the line number when available.
11560         * NEWS: Advertise this enhancement.
11561
11562 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11563
11564         * NEWS (New options): announce set/show record btrace cpu.
11565         * btrace.c: Include record-btrace.h.
11566         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
11567         the vendor is unknown.
11568         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
11569         Maybe overwrite the btrace configuration's cpu.
11570         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
11571         (btrace_fetch): Add cpu parameter.  Update callers.
11572         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
11573         Maybe overwrite the btrace configuration's cpu.  Skip enabling
11574         errata workarounds if the vendor is unknown.
11575         * python/py-record-btrace.c: Include record-btrace.h.
11576         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
11577         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
11578         * record-btrace.c (record_btrace_cpu_state_kind): New.
11579         (record_btrace_cpu): New.
11580         (set_record_btrace_cpu_cmdlist): New.
11581         (record_btrace_get_cpu): New.
11582         (require_btrace_thread, record_btrace_info)
11583         (record_btrace_resume_thread): Call record_btrace_get_cpu.
11584         (cmd_set_record_btrace_cpu_none): New.
11585         (cmd_set_record_btrace_cpu_auto): New.
11586         (cmd_set_record_btrace_cpu): New.
11587         (cmd_show_record_btrace_cpu): New.
11588         (_initialize_record_btrace): Initialize set/show record btrace cpu
11589         commands.
11590         * record-btrace.h (record_btrace_get_cpu): New.
11591
11592 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11593
11594         * record.c (set_record_command): Fix typo in message.
11595
11596 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11597
11598         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
11599
11600 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11601
11602         * infrun.c (process_event_stop_test): Call
11603         gdbarch_in_indirect_branch_thunk.
11604         * gdbarch.sh (in_indirect_branch_thunk): New.
11605         * gdbarch.c: Regenerated.
11606         * gdbarch.h: Regenerated.
11607         * x86-tdep.h: New.
11608         * x86-tdep.c: New.
11609         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
11610         (HFILES_NO_SRCDIR): Add x86-tdep.h.
11611         (ALLDEPFILES): Add x86-tdep.c.
11612         * arch-utils.h (default_in_indirect_branch_thunk): New.
11613         * arch-utils.c (default_in_indirect_branch_thunk): New.
11614         * i386-tdep: Include x86-tdep.h.
11615         (i386_in_indirect_branch_thunk): New.
11616         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
11617         function.
11618         * amd64-tdep: Include x86-tdep.h.
11619         (amd64_in_indirect_branch_thunk): New.
11620         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
11621
11622 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
11623
11624         PR gdb/23053
11625         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
11626         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
11627         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
11628         regression.
11629
11630 2018-04-12  Tom Tromey  <tom@tromey.com>
11631
11632         * rust-lang.c (rust_print_struct_def): Remove univariant code.
11633         (rust_evaluate_subexp): Likewise.
11634
11635 2018-04-12  Pedro Alves  <palves@redhat.com>
11636
11637         * procfs.c (procfs_detach): Make forward declaration's prototype
11638         match definition's protototype.
11639         (proc_get_LDT_entry): Remove stale do_cleanups call.
11640
11641 2018-04-12  Pedro Alves  <palves@redhat.com>
11642
11643         * target.h (target_ops::to_has_exited): Delete.
11644         (target_has_exited): Delete.
11645         * target-delegates.c: Regenerate.
11646
11647 2018-04-11  Pedro Alves  <palves@redhat.com>
11648
11649         * target.c (fileio_fh_t::t): Add comment.
11650         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
11651         (target_fileio_close): Handle a NULL target.
11652         (invalidate_fileio_fh): New.
11653         (target_close): Call it.
11654         * remote.c (remote_hostio_send_command): No longer check whether
11655         remote_desc is open.
11656
11657 2018-04-11  Pedro Alves  <palves@redhat.com>
11658
11659         * target.c (fileio_fh_t): Make it a named struct instead of a
11660         typedef.
11661         (fileio_fh_t::is_closed): New method.
11662         (DEF_VEC_O (fileio_fh_t)): Remove.
11663         (fileio_fhandles): Now a std::vector.
11664         (is_closed_fileio_fh): Delete.
11665         (acquire_fileio_fd): Adjust.  Rename parameters.
11666         (release_fileio_fd): Adjust.
11667         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
11668         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
11669         (target_fileio_close): Adjust.
11670
11671 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
11672
11673         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
11674         index.
11675
11676 2018-04-10  Pedro Alves  <palves@redhat.com>
11677
11678         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
11679         (scoped_finish_thread_state): New class.
11680         * infcmd.c (run_command_1): Use it instead of finish_thread_state
11681         cleanup.
11682         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
11683         (fetch_inferior_event, normal_stop): Likewise.
11684         * thread.c (finish_thread_state_cleanup): Delete.
11685
11686 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11687             Pedro Alves  <palves@redhat.com>
11688
11689         * value.c: Include "selftest.h" and "common/array-view.h".
11690         (struct range) <operator ==>: New.
11691         (test_ranges_contain): New.
11692         (check_ranges_vector): New.
11693         (test_insert_into_bit_range_vector): New.
11694         (_initialize_values): Register selftests.
11695         * common/array-view.h (operator==, operator!=): New.
11696
11697 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11698
11699         * common/gdb_vecs.h (unordered_remove): Add overload that takes
11700         an iterator.
11701         * inline-frame.c: Include <algorithm>.
11702         (struct inline_state): Add constructor.
11703         (inline_state_s): Remove.
11704         (DEF_VEC_O(inline_state_s)): Remove.
11705         (inline_states): Change type to std::vector.
11706         (find_inline_frame_state): Adjust to std::vector.
11707         (allocate_inline_frame_state): Remove.
11708         (clear_inline_frame_state): Adjust to std::vector.
11709         (skip_inline_frames): Adjust to std::vector.
11710
11711 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11712
11713         * tracepoint.h (struct trace_state_variable): Add constructor.
11714         <name>: Change type to std::string.
11715         * tracepoint.c (tsv_s): Remove.
11716         (DEF_VEC_O(tsv_s)): Remove.
11717         (tvariables): Change to std::vector.
11718         (create_trace_state_variable): Adjust to std::vector.
11719         (find_trace_state_variable): Likewise.
11720         (find_trace_state_variable_by_number): Likewise.
11721         (delete_trace_state_variable): Likewise.
11722         (trace_variable_command): Adjust to std::string.
11723         (delete_trace_variable_command): Likewise.
11724         (tvariables_info_1): Adjust to std::vector.
11725         (save_trace_state_variables): Likewise.
11726         (start_tracing): Likewise.
11727         (merge_uploaded_trace_state_variables): Adjust to std::vector
11728         and std::string.
11729         * target.h (struct target_ops)
11730         <to_download_trace_state_variable>: Pass reference to
11731         trace_state_variable.
11732         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
11733         * target-delegates.c: Re-generate.
11734         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
11735         (mi_tsv_deleted): Likewise.
11736         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
11737         * remote.c (remote_download_trace_state_variable): Change
11738         pointer to reference and adjust.
11739         * make-target-delegates (parse_argtypes): Handle references.
11740         (write_function_header): Likewise.
11741         (munge_type): Likewise.
11742
11743 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11744
11745         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11746         string_view-selftests.c.
11747         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
11748         testsuite.
11749         * unittests/basic_string_view/cons/char/1.cc: Likewise.
11750         * unittests/basic_string_view/cons/char/2.cc: Likewise.
11751         * unittests/basic_string_view/cons/char/3.cc: Likewise.
11752         * unittests/basic_string_view/element_access/char/1.cc:
11753         Likewise.
11754         * unittests/basic_string_view/element_access/char/empty.cc:
11755         Likewise.
11756         * unittests/basic_string_view/element_access/char/front_back.cc:
11757         Likewise.
11758         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
11759         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
11760         Likewise.
11761         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
11762         Likewise.
11763         * unittests/basic_string_view/modifiers/swap/char/1.cc:
11764         Likewise.
11765         * unittests/basic_string_view/operations/compare/char/1.cc:
11766         Likewise.
11767         * unittests/basic_string_view/operations/compare/char/13650.cc:
11768         Likewise.
11769         * unittests/basic_string_view/operations/copy/char/1.cc:
11770         Likewise.
11771         * unittests/basic_string_view/operations/data/char/1.cc:
11772         Likewise.
11773         * unittests/basic_string_view/operations/find/char/1.cc:
11774         Likewise.
11775         * unittests/basic_string_view/operations/find/char/2.cc:
11776         Likewise.
11777         * unittests/basic_string_view/operations/find/char/3.cc:
11778         Likewise.
11779         * unittests/basic_string_view/operations/find/char/4.cc:
11780         Likewise.
11781         * unittests/basic_string_view/operations/rfind/char/1.cc:
11782         Likewise.
11783         * unittests/basic_string_view/operations/rfind/char/2.cc:
11784         Likewise.
11785         * unittests/basic_string_view/operations/rfind/char/3.cc:
11786         Likewise.
11787         * unittests/basic_string_view/operations/substr/char/1.cc:
11788         Likewise.
11789         * unittests/basic_string_view/operators/char/2.cc: Likewise.
11790         * unittests/string_view-selftests.c: New file.
11791
11792 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11793
11794         * unittests/basic_string_view/capacity/1.cc: New file.
11795         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
11796         * unittests/basic_string_view/cons/char/1.cc: New file.
11797         * unittests/basic_string_view/cons/char/2.cc: New file.
11798         * unittests/basic_string_view/cons/char/3.cc: New file.
11799         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
11800         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
11801         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
11802         * unittests/basic_string_view/element_access/char/1.cc: New file.
11803         * unittests/basic_string_view/element_access/char/2.cc: New file.
11804         * unittests/basic_string_view/element_access/char/empty.cc: New file.
11805         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
11806         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
11807         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
11808         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
11809         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
11810         * unittests/basic_string_view/include.cc: New file.
11811         * unittests/basic_string_view/inserters/char/1.cc: New file.
11812         * unittests/basic_string_view/inserters/char/2.cc: New file.
11813         * unittests/basic_string_view/inserters/char/3.cc: New file.
11814         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
11815         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
11816         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
11817         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
11818         * unittests/basic_string_view/literals/types.cc: New file.
11819         * unittests/basic_string_view/literals/values.cc: New file.
11820         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
11821         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
11822         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
11823         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
11824         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
11825         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
11826         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
11827         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
11828         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
11829         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
11830         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
11831         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
11832         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
11833         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
11834         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
11835         * unittests/basic_string_view/operations/data/char/1.cc: New file.
11836         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
11837         * unittests/basic_string_view/operations/find/char/1.cc: New file.
11838         * unittests/basic_string_view/operations/find/char/2.cc: New file.
11839         * unittests/basic_string_view/operations/find/char/3.cc: New file.
11840         * unittests/basic_string_view/operations/find/char/4.cc: New file.
11841         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
11842         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
11843         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
11844         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
11845         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
11846         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
11847         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
11848         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
11849         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
11850         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
11851         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
11852         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
11853         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
11854         * unittests/basic_string_view/operators/char/2.cc: New file.
11855         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
11856         * unittests/basic_string_view/range_access/char/1.cc: New file.
11857         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
11858         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
11859         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
11860         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
11861         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
11862         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
11863         * unittests/basic_string_view/requirements/typedefs.cc: New file.
11864         * unittests/basic_string_view/typedefs.cc: New file.
11865         * unittests/basic_string_view/types/1.cc: New file.
11866
11867 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11868
11869         * common/gdb_string_view.h: Remove libstdc++ implementation
11870         details, adjust to gdb reality.
11871         * common/gdb_string_view.tcc: Likewise.
11872         * cli/cli-script.c (struct string_view): Remove.
11873         (user_args) <m_args>: Change element type to gdb::string_view.
11874         (user_args::insert_args): Adjust.
11875
11876 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11877
11878         * common/gdb_string_view.h: New file.
11879         * common/gdb_string_view.tcc: New file.
11880
11881 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11882
11883         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
11884         * configure: Re-generate.
11885
11886 2018-04-09  Pedro Alves  <palves@redhat.com>
11887
11888         * gdbarch.sh: Include "observable.h" instead of "observer.h".
11889         (set_target_gdbarch): Call
11890         gdb::observers::architecture_changed.notify instead of
11891         observer_notify_architecture_changed.
11892
11893 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11894
11895         * tracepoint.c (struct current_traceframe_cleanup): Remove.
11896         (do_restore_current_traceframe_cleanup): Remove.
11897         (restore_current_traceframe_cleanup_dtor): Remove.
11898         (make_cleanup_restore_current_traceframe): Remove.
11899         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
11900         New.
11901         * tracepoint.h (struct scoped_restore_current_traceframe): New.
11902         * infrun.c (fetch_inferior_event): Use
11903         scoped_restore_current_traceframe.
11904
11905 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11906
11907         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
11908         Remove.
11909         <n_allocated_type_units>: Remove.
11910         <all_type_units>: Change to std::vector.
11911         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11912         to std::vector change.
11913         (dwarf2_per_objfile::get_cutu): Likewise.
11914         (dwarf2_per_objfile::get_tu): Likewise.
11915         (create_signatured_type_table_from_index): Likewise.
11916         (create_signatured_type_table_from_debug_names): Likewise.
11917         (dw2_symtab_iter_next): Likewise.
11918         (dw2_print_stats): Likewise.
11919         (dw2_expand_all_symtabs): Likewise.
11920         (dw2_expand_marked_cus): Likewise.
11921         (dw2_debug_names_iterator::next): Likewise.
11922         (dwarf2_initialize_objfile): Likewise.
11923         (add_signatured_type_cu_to_table): Likewise.
11924         (create_all_type_units): Likewise.
11925         (add_type_unit): Likewise.
11926         (struct tu_abbrev_offset): Add constructor.
11927         (build_type_psymtabs_1): Adjust to std::vector change.
11928         (print_tu_stats): Likewise.
11929         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
11930         (write_debug_names): Likewise.
11931
11932 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11933
11934         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
11935         Make an std::vector.
11936         <n_comp_units>: Remove.
11937         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11938         to std::vector change.
11939         (dwarf2_per_objfile::get_cutu): Likewise.
11940         (dwarf2_per_objfile::get_cu): Likewise.
11941         (create_cus_from_index): Likewise.
11942         (create_addrmap_from_index): Likewise.
11943         (create_addrmap_from_aranges): Likewise.
11944         (dwarf2_read_index): Likewise.
11945         (dw2_find_last_source_symtab): Likewise.
11946         (dw2_map_symtabs_matching_filename): Likewise.
11947         (dw2_symtab_iter_next): Likewise.
11948         (dw2_print_stats): Likewise.
11949         (dw2_expand_all_symtabs): Likewise.
11950         (dw2_expand_symtabs_with_fullname): Likewise.
11951         (dw2_expand_marked_cus): Likewise.
11952         (dw2_map_symbol_filenames): Likewise.
11953         (create_cus_from_debug_names): Likewise.
11954         (dwarf2_read_debug_names): Likewise.
11955         (dw2_debug_names_iterator::next): Likewise.
11956         (dwarf2_initialize_objfile): Likewise.
11957         (set_partial_user): Likewise.
11958         (dwarf2_build_psymtabs_hard): Likewise.
11959         (read_comp_units_from_section): Remove arguments, adjust to
11960         std::vector change.
11961         (create_all_comp_units): Adjust to std::vector and
11962         read_comp_units_from_section changes.
11963         (dwarf2_find_containing_comp_unit): Adjust to std::vector
11964         change.
11965         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
11966         (psyms_seen_size): Likewise.
11967         (write_gdbindex): Likewise.
11968         (write_debug_names): Likewise.
11969
11970 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11971
11972         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
11973         with dwarf2_per_objfile.
11974         (create_cus_from_index): Likewise.
11975         (create_signatured_type_table_from_index): Likewise.
11976         (dwarf2_read_index): Likewise.
11977         (dwarf2_initialize_objfile): Likewise.
11978         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
11979         per_cu rather than get_dwarf2_per_objfile.
11980
11981 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11982
11983         * dwarf2read.h (struct signatured_type): Forward declare.
11984         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
11985         New methods.
11986         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
11987         (dw2_get_cutu): ...this.
11988         (dwarf2_per_objfile::get_cu): Rename from...
11989         (dw2_get_cu): ...this.
11990         (dwarf2_per_objfile::get_tu): New.
11991         (create_addrmap_from_index): Adjust.
11992         (create_addrmap_from_aranges): Adjust.
11993         (dw2_find_last_source_symtab): Adjust.
11994         (dw2_map_symtabs_matching_filename): Adjust.
11995         (dw2_symtab_iter_next): Adjust.
11996         (dw2_print_stats): Adjust.
11997         (dw2_expand_all_symtabs): Adjust.
11998         (dw2_expand_symtabs_with_fullname): Adjust.
11999         (dw2_expand_marked_cus): Adjust.
12000         (dw_expand_symtabs_matching_file_matcher): Adjust.
12001         (dw2_map_symbol_filenames): Adjust.
12002         (dw2_debug_names_iterator::next): Adjust.
12003         (dwarf2_initialize_objfile): Adjust.
12004         (set_partial_user): Adjust.
12005         (dwarf2_build_psymtabs_hard): Adjust.
12006
12007 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12008
12009         * dwarf2read.c (create_signatured_type_table_from_debug_names):
12010         Remove unused variables.
12011         (dw2_map_symtabs_matching_filename): Likewise.
12012         (dwarf2_record_block_ranges): Likewise.
12013         (dwarf2_read_addr_index): Likewise.
12014         (follow_die_offset): Likewise.
12015
12016 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12017
12018         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
12019         to symbol_file_add_main.
12020
12021 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12022
12023         PR mi/22299
12024         * mi/mi-console.c (do_fputc_async_safe): New.
12025         (mi_console_file::write_async_safe): New.
12026         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
12027         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
12028         New.
12029         * ui-file.c (ui_file::putstrn): Adjust call to
12030         fputstrn_unfiltered.
12031         * utils.c (printchar): Replace do_fputs and do_fprintf
12032         parameters by do_fputc.
12033         (fputstr_filtered): Adjust call to printchar.
12034         (fputstr_unfiltered): Likewise.
12035         (fputstrn_filtered): Likewise.
12036         (fputstrn_unfiltered): Add do_fputc parameter, pass to
12037         printchar.
12038         * utils.h (do_fputc_ftype): New typedef.
12039         (fputstrn_unfiltered): Add do_fputc parameter.
12040
12041 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12042
12043         * regformats/i386/i386-avx.dat: Remove.
12044
12045 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
12046
12047         PR gdb/22979
12048         * amd64-tdep.c (amd64_none_init_abi): New function.
12049         (amd64_x32_none_init_abi): New function.
12050         (_initialize_amd64_tdep): Register handlers for x86-64 and
12051         x64_32 with GDB_OSABI_NONE.
12052         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
12053         GDB_OSABI_NONE osabi.
12054
12055 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
12056
12057         PR gdb/22980
12058         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
12059         GDB_OSABI_NONE.
12060         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
12061         * osabi.c (gdb_osabi_names): Add "unknown" entry.
12062
12063 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
12064
12065         * common/byte-vector.h (char_vector): New type.
12066         * target.h (target_read_alloc): Return
12067         gdb::optional<byte_vector>.
12068         (target_read_stralloc): Return gdb::optional<char_vector>.
12069         (target_get_osdata): Return gdb::optional<char_vector>.
12070         * target.c (target_read_alloc_1): Templatize.  Replacement
12071         manual memory management with vector.
12072         (target_read_alloc): Change return type, adjust.
12073         (target_read_stralloc): Change return type, adjust.
12074         (target_get_osdata): Change return type, adjust.
12075         * auxv.c (struct auxv_info) <length>: Remove.
12076         <data>: Change type to gdb::optional<byte_vector>.
12077         (auxv_inferior_data_cleanup): Free auxv_info with delete.
12078         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
12079         (target_auxv_search): Adjust.
12080         (fprint_target_auxv): Adjust.
12081         * avr-tdep.c (avr_io_reg_read_command): Adjust.
12082         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
12083         (linux_make_corefile_notes): Adjust.
12084         * osdata.c (get_osdata): Adjust.
12085         * remote.c (remote_get_threads_with_qxfer): Adjust.
12086         (remote_memory_map): Adjust.
12087         (remote_traceframe_info): Adjust.
12088         (btrace_read_config): Adjust.
12089         (remote_read_btrace): Adjust.
12090         (remote_pid_to_exec_file): Adjust.
12091         * solib-aix.c (solib_aix_get_library_list): Adjust.
12092         * solib-dsbt.c (decode_loadmap): Don't free buf.
12093         (dsbt_get_initial_loadmaps): Adjust.
12094         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
12095         * solib-target.c (solib_target_current_sos): Adjust.
12096         * tracepoint.c (sdata_make_value): Adjust.
12097         * xml-support.c (xinclude_start_include): Adjust.
12098         (xml_fetch_content_from_file): Adjust.
12099         * xml-support.h (xml_fetch_another): Change return type.
12100         (xml_fetch_content_from_file): Change return type.
12101         * xml-syscall.c (xml_init_syscalls_info): Adjust.
12102         * xml-tdesc.c (file_read_description_xml): Adjust.
12103         (fetch_available_features_from_target): Change return type.
12104         (target_fetch_description_xml): Adjust.
12105         (target_read_description_xml): Adjust.
12106
12107 2018-04-06  Tom Tromey  <tom@tromey.com>
12108
12109         * value.c (~value): Update.
12110         (struct value) <contents>: Now unique_xmalloc_ptr.
12111         (value_contents_bits_eq, allocate_value_contents)
12112         (value_contents_raw, value_contents_all_raw)
12113         (value_contents_for_printing, value_contents_for_printing_const)
12114         (set_value_enclosing_type): Update.
12115
12116 2018-04-06  Tom Tromey  <tom@tromey.com>
12117
12118         * value.c (range_s): Remove typedef, VEC.
12119         (struct range): Add operator<.
12120         (range_lessthan): Remove.
12121         (ranges_contain): Change type.
12122         (~value): Update.
12123         (struct value) <unavailable, optimized_out>: Now std::vector.
12124         (value_entirely_available)
12125         (value_entirely_covered_by_range_vector)
12126         (value_entirely_unavailable, value_entirely_optimized_out):
12127         Update.
12128         (insert_into_bit_range_vector): Change argument type.
12129         (find_first_range_overlap): Likewise.
12130         (struct ranges_and_idx, value_contents_bits_eq)
12131         (require_not_optimized_out, require_available): Update.
12132         (ranges_copy_adjusted): Change argument types.
12133         (value_optimized_out, value_copy, value_fetch_lazy): Update.
12134
12135 2018-04-06  Tom Tromey  <tom@tromey.com>
12136
12137         * value.c (~value): Update.
12138         (struct value) <parent>: Now a value_ref_ptr.
12139         (value_parent, set_value_parent, value_address, value_copy):
12140         Update.
12141
12142 2018-04-06  Tom Tromey  <tom@tromey.com>
12143
12144         * value.c (struct value): Add constructor, destructor, and member
12145         initializers.
12146         (allocate_value_lazy, value_decref): Update.
12147
12148 2018-04-06  Tom Tromey  <tom@tromey.com>
12149
12150         * value.c (struct value) <released, next>: Remove.
12151         (all_values): Now a std::vector.
12152         (allocate_value_lazy): Update.
12153         (value_next): Remove.
12154         (value_mark, value_free_to_mark, release_value)
12155         (value_release_to_mark): Update.
12156
12157 2018-04-06  Tom Tromey  <tom@tromey.com>
12158
12159         * value.h (fetch_subexp_value, value_release_to_mark): Update.
12160         (free_value_chain): Remove.
12161         * value.c (free_value_chain): Remove.
12162         (value_release_to_mark): Return a std::vector.
12163         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
12164         std::vector.
12165         (check_condition): Update.
12166         * eval.c (fetch_subexp_value): Change "val_chain" to a
12167         std::vector.
12168         * breakpoint.c (update_watchpoint): Update.
12169         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
12170
12171 2018-04-06  Tom Tromey  <tom@tromey.com>
12172
12173         * value.h (free_all_values): Remove.
12174         * value.c (free_all_values): Remove.
12175
12176 2018-04-06  Tom Tromey  <tom@tromey.com>
12177
12178         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
12179         (value_history_chain, value_history_count): Remove.
12180         (value_history): New global.
12181         (record_latest_value, access_value_history, show_values)
12182         (preserve_values): Update.
12183
12184 2018-04-06  Tom Tromey  <tom@tromey.com>
12185
12186         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
12187         * varobj.c (varobj_set_display_format, varobj_set_value)
12188         (install_default_visualizer, construct_visualizer)
12189         (install_new_value, ~varobj, varobj_get_value_type)
12190         (my_value_of_variable, varobj_editable_p): Update.
12191         * c-varobj.c (c_describe_child, c_value_of_variable)
12192         (cplus_number_of_children, cplus_describe_child): Update.
12193         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
12194         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
12195         (ada_value_of_variable, ada_value_is_changeable_p): Update.
12196
12197 2018-04-06  Tom Tromey  <tom@tromey.com>
12198
12199         * printcmd.c (last_examine_address): Change type to
12200         value_ref_ptr.
12201         (do_examine, x_command): Update.
12202
12203 2018-04-06  Tom Tromey  <tom@tromey.com>
12204
12205         * value.c (release_value): Update.
12206         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
12207         (struct bpstats) <val>: Now a value_ref_ptr.
12208         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
12209         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
12210         (~watchpoint, print_it_watchpoint, watch_command_1)
12211         (invalidate_bp_value_on_memory_change): Update.
12212
12213 2018-04-06  Tom Tromey  <tom@tromey.com>
12214
12215         * varobj.c (varobj_clear_saved_item)
12216         (update_dynamic_varobj_children, install_new_value, ~varobj):
12217         Update.
12218         * value.h (value_incref): Move declaration earlier.
12219         (value_decref): Rename from value_free.
12220         (struct value_ref_policy): New.
12221         (value_ref_ptr): New typedef.
12222         (struct value_deleter): Remove.
12223         (gdb_value_up): Remove typedef.
12224         (release_value): Change return type.
12225         (release_value_or_incref): Remove.
12226         * value.c (set_value_parent): Update.
12227         (value_incref): Change return type.
12228         (value_decref): Rename from value_free.
12229         (value_free_to_mark, free_all_values, free_value_chain): Update.
12230         (release_value): Return value_ref_ptr.
12231         (release_value_or_incref): Remove.
12232         (record_latest_value, set_internalvar, clear_internalvar):
12233         Update.
12234         * stack.c (info_frame_command): Don't call value_free.
12235         * python/py-value.c (valpy_dealloc, valpy_new)
12236         (value_to_value_object): Update.
12237         * printcmd.c (do_examine): Update.
12238         * opencl-lang.c (lval_func_free_closure): Update.
12239         * mi/mi-main.c (register_changed_p): Don't call value_free.
12240         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
12241         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
12242         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
12243         value_free.
12244         * guile/scm-value.c (vlscm_free_value_smob)
12245         (vlscm_scm_from_value): Update.
12246         * frame.c (frame_register_unwind, frame_unwind_register_signed)
12247         (frame_unwind_register_unsigned, get_frame_register_bytes)
12248         (put_frame_register_bytes): Don't call value_free.
12249         * findvar.c (address_from_register): Don't call value_free.
12250         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
12251         * dwarf2loc.c (entry_data_value_free_closure)
12252         (value_of_dwarf_reg_entry, free_pieced_value_closure)
12253         (dwarf2_evaluate_loc_desc_full): Update.
12254         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
12255         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
12256         (~watchpoint, watch_command_1)
12257         (invalidate_bp_value_on_memory_change): Update.
12258         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
12259
12260 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
12261
12262         PR gdb/23022
12263         * warning.m4: Add -Wno-error=deprecated-register.
12264         * configure: Re-generate.
12265
12266 2018-04-05  Tom Tromey  <tom@tromey.com>
12267
12268         * linespec.h: Remove include of "vec.h".
12269
12270 2018-04-05  Tom Tromey  <tom@tromey.com>
12271
12272         * linespec.c (typep): Remove typedef.
12273         (find_methods, find_superclass_methods): Take a std::vector.
12274         (find_method): Use std::vector.
12275
12276 2018-04-05  Tom Tromey  <tom@tromey.com>
12277
12278         * utils.c (compare_strings): Remove.
12279         * utils.h (compare_strings): Remove.
12280         * objc-lang.h (find_imps): Update.
12281         * objc-lang.c (find_methods): Take a std::vector.
12282         (uniquify_strings, find_imps): Likewise.
12283         * linespec.c (find_methods): Take a std::vector.
12284         (decode_objc): Use std::vector.
12285         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
12286         a std::vector.
12287         (find_method, find_function_symbols): Use std::vector.
12288
12289 2018-04-05  Tom Tromey  <tom@tromey.com>
12290
12291         * completer.c (completion_tracker::completion_tracker): Remove
12292         cast.
12293         (completion_tracker::discard_completions): Likewise.
12294         * breakpoint.c (ambiguous_names_p): Remove cast.
12295         * ada-lang.c (_initialize_ada_language): Remove cast.
12296         * utils.h (streq): Update.
12297         (streq_hash): Add new declaration.
12298         * utils.c (streq): Return bool.
12299         (streq_hash): New function.
12300
12301 2018-04-05  Tom Tromey  <tom@tromey.com>
12302
12303         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
12304         Remove a string copy.
12305
12306 2018-04-05  Tom Tromey  <tom@tromey.com>
12307
12308         * linespec.c (filter_results): Use std::vector.
12309         (decode_line_2, decode_line_full): Update.
12310
12311 2018-04-05  Tom Tromey  <tom@tromey.com>
12312
12313         * linespec.c (canonical_to_fullform): Return std::string.
12314         (filter_results): Update.
12315         (struct decode_line_2_item): Add constructor.
12316         <fullform, displayform>: Now std::string.
12317         (decode_line_2_compare_items): Now a std::sort comparator.
12318         (decode_line_2): Update.
12319
12320 2018-04-05  Tom Tromey  <tom@tromey.com>
12321
12322         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
12323         (unexpected_linespec_error): Update.
12324         (linespec_parse_basic, parse_linespec): Update.
12325
12326 2018-04-05  Tom Tromey  <tom@tromey.com>
12327
12328         * linespec.c (linespec_parse_basic): Reindent.
12329
12330 2018-04-05  Tom Tromey  <tom@tromey.com>
12331
12332         * minsyms.h (iterate_over_minimal_symbols): Update.
12333         * minsyms.c (iterate_over_minimal_symbols): Take a
12334         gdb::function_view.
12335         * linespec.c (struct collect_minsyms): Remove.
12336         (compare_msyms): Now a std::sort comparator.
12337         (add_minsym): Add parameters.
12338         (search_minsyms_for_name): Update.  Use std::vector.
12339
12340 2018-04-03  Tom Tromey  <tom@tromey.com>
12341
12342         * mipsread.c (read_alphacoff_dynamic_symtab): Use
12343         gdb::byte_vector.
12344
12345 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
12346
12347         * MAINTAINERS (Write After Approval): Add Weimin Pan.
12348
12349 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
12350
12351         PR gdb/16959
12352         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
12353         printing static type.
12354
12355 2018-04-01  Tom Tromey  <tom@tromey.com>
12356
12357         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
12358         (rs6000_xfer_shared_libraries): Update.
12359
12360 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
12361
12362         * common/gdb_vecs.h (char_ptr): Remove.
12363         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
12364
12365 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
12366
12367         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
12368         with std::vector.
12369         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
12370
12371 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
12372
12373         * tracepoint.h (struct uploaded_tp): Initialize fields.
12374         <actions, step_actions, cmd_strings>: Change type to
12375         std::vector<char *>.
12376         * tracepoint.c (get_uploaded_tp): Allocate with new.
12377         (free_uploaded_tps): Free with delete.
12378         (parse_tracepoint_definition): Adjust to std::vector change.
12379         * breakpoint.c (read_uploaded_action): Likewise.
12380         (create_tracepoint_from_upload): Likewise.
12381         * ctf.c (ctf_write_uploaded_tp): Likewise.
12382         (SET_ARRAY_FIELD): Likewise.
12383         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
12384
12385 2018-03-30  Tom Tromey  <tom@tromey.com>
12386
12387         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
12388         std::unique_ptr.
12389         (svr4_keep_data_in_core): Update.
12390         (svr4_read_so_list): Update.
12391
12392 2018-03-30  Tom Tromey  <tom@tromey.com>
12393
12394         * windows-nat.c (handle_output_debug_string, handle_exception):
12395         Update.
12396         * target.h (target_read_string): Update.
12397         * target.c (target_read_string): Change "string" to
12398         unique_xmalloc_ptr.
12399         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
12400         Update.
12401         * solib-frv.c (frv_current_sos): Update.
12402         * solib-dsbt.c (dsbt_current_sos): Update.
12403         * solib-darwin.c (darwin_current_sos): Update.
12404         * linux-thread-db.c (inferior_has_bug): Update.
12405         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
12406         Update.  Remove alloca.
12407         * ada-lang.c (ada_main_name): Update.
12408
12409 2018-03-30  Tom Tromey  <tom@tromey.com>
12410
12411         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
12412         (struct dwo_file_deleter): New.
12413         (dwo_file_up): New typedef.
12414         (open_and_init_dwo_file): Use dwo_file_up.
12415         (free_dwo_file_cleanup): Remove.
12416
12417 2018-03-30  Tom Tromey  <tom@tromey.com>
12418
12419         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
12420         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
12421
12422 2018-03-30  Tom Tromey  <tom@tromey.com>
12423
12424         * dwarf2read.c (class free_cached_comp_units): New class.
12425         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
12426         (free_cached_comp_units): Remove function.
12427
12428 2018-03-30  Tom Tromey  <tom@tromey.com>
12429
12430         * utils.h (make_cleanup_unpush_target): Remove.
12431         * inf-ptrace.c (struct target_unpusher): New.
12432         (target_unpush_up) New typedef.
12433         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
12434         target_unpush_up.
12435         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
12436
12437 2018-03-27  Tom Tromey  <tom@tromey.com>
12438
12439         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
12440
12441 2018-03-27  Pedro Alves  <palves@redhat.com>
12442             Tom Tromey  <tom@tromey.com>
12443
12444         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
12445         destructor.  Now a class.
12446         (gdb_readline_wrapper_cleanup): Remove function.
12447         (gdb_readline_wrapper): Remove cleanups.
12448
12449 2018-03-27  Tom Tromey  <tom@tromey.com>
12450
12451         * typeprint.h (struct type_print_options) <local_typedefs,
12452         global_typedefs>: Remove "struct" keyword.
12453         (class typedef_hash_table): New class.
12454         (recursively_update_typedef_hash, add_template_parameters)
12455         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
12456         (find_typedef_in_hash): Don't declare.
12457         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
12458         (typedef_hash_table::recursively_update): Rename from
12459         recursively_update_typedef_hash.  Now a member.
12460         (typedef_hash_table::add_template_parameters): Rename from
12461         add_template_parameters.  Now a member.
12462         (typedef_hash_table::typedef_hash_table): Now a constructor;
12463         rename from create_typedef_hash.
12464         (typedef_hash_table::~typedef_hash_table): Now a destructor;
12465         rename from free_typedef_hash.
12466         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
12467         (do_free_global_table): Remove.
12468         (typedef_hash_table::typedef_hash_table): New constructor; renamed
12469         from copy_type_recursive.
12470         (create_global_typedef_table): Remove.
12471         (typedef_hash_table::find_global_typedef): Now a member of
12472         typedef_hash_table.
12473         (typedef_hash_table::find_typedef): Rename from
12474         find_typedef_in_hash; now a member.
12475         (whatis_exp): Update.
12476         * extension.h (struct ext_lang_type_printers): Add constructor and
12477         destructor.
12478         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
12479         declare.
12480         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
12481         Now a constructor; rename from start_ext_lang_type_printers.
12482         (ext_lang_type_printers): Now a destructor; rename from
12483         free_ext_lang_type_printers.
12484         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
12485         Update.
12486         (c_type_print_base_struct_union): Update.  Remove cleanups.
12487
12488 2018-03-27  Tom Tromey  <tom@tromey.com>
12489
12490         * dwarf-index-write.c: Include <cmath>.
12491
12492 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
12493
12494         * NEWS: Add entry describing new "set|show varsize-limit" command.
12495         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
12496         command.
12497         * printcmd.c (_initialize_printcmd): Add "set var" alias of
12498         "set variable".
12499
12500 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
12501
12502         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
12503         dwarf-index-write.c
12504         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
12505         * dwarf-index-common.c: New file.
12506         * dwarf-index-common.h: New file.
12507         * dwarf-index-write.c: New file.
12508         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
12509         (struct dwarf2_section_info): Move from here.
12510         (dwarf2_section_info_def): Likewise.
12511         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
12512         (offset_type): Likewise.
12513         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
12514         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
12515         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
12516         (byte_swap): Likewise.
12517         (MAYBE_SWAP): Likewise.
12518         (dwarf2_per_cu_ptr): Likewise.
12519         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
12520         (struct tu_stats): Likewise.
12521         (struct dwarf2_per_objfile): Likewise.
12522         (struct dwarf2_per_cu_data): Likewise.
12523         (struct signatured_type): Likewise.
12524         (sig_type_ptr): Likewise.
12525         (DEF_VEC_P (sig_type_ptr)): Likewise.
12526         (INDEX4_SUFFIX): Likewise.
12527         (INDEX5_SUFFIX): Likewise.
12528         (DEBUG_STR_SUFFIX): Likewise.
12529         (dwarf2_read_section): Make non-static.
12530         (mapped_index_string_hash): Move from here.
12531         (dwarf5_djb_hash): Likewise.
12532         (file_write): Likewise.
12533         (class data_buf): Likewise.
12534         (struct symtab_index_entry): Likewise.
12535         (struct mapped_symtab): Likewise.
12536         (find_slot): Likewise.
12537         (hash_expand): Likewise.
12538         (add_index_entry): Likewise.
12539         (uniquify_cu_indices): Likewise.
12540         (class c_str_view): Likewise.
12541         (class c_str_view_hasher): Likewise.
12542         (class vector_hasher): Likewise.
12543         (write_hash_table): Likewise.
12544         (psym_index_map): Likewise.
12545         (struct addrmap_index_data): Likewise.
12546         (add_address_entry): Likewise.
12547         (add_address_entry_worker): Likewise.
12548         (write_address_map): Likewise.
12549         (symbol_kind): Likewise.
12550         (write_psymbols): Likewise.
12551         (struct signatured_type_index_data): Likewise.
12552         (write_one_signatured_type): Likewise.
12553         (recursively_count_psymbols): Likewise.
12554         (recursively_write_psymbols): Likewise.
12555         (class debug_names): Likewise.
12556         (check_dwarf64_offsets): Likewise.
12557         (psyms_seen_size): Likewise.
12558         (write_gdbindex): Likewise.
12559         (write_debug_names): Likewise.
12560         (assert_file_size): Likewise.
12561         (write_psymtabs_to_index): Likewise.
12562         (save_gdb_index_command): Likewise.
12563         (_initialize_dwarf2_read): Don't register the "save gdb-index"
12564         command.
12565         * dwarf2read.h: New file.
12566
12567 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
12568
12569         PR gdb/22670
12570         * dwarf2read.c (dwarf2_physname): Do not return the demangled
12571         symbol name if the CU's language stores symbol names in linkage
12572         format.
12573         * language.h (struct language_defn)
12574         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
12575         all instances of this struct.
12576
12577 2018-03-26  Tom Tromey  <tom@tromey.com>
12578
12579         * stack.c (backtrace_command_1): Remove verbose code.
12580
12581 2018-03-26  Tom Tromey  <tom@tromey.com>
12582
12583         * python/py-framefilter.c (py_print_type): Don't catch
12584         exceptions.  Return void.
12585         (py_print_value): Likewise.
12586         (py_print_single_arg): Likewise.
12587         (enumerate_args): Don't catch exceptions.
12588         (py_print_args): Likewise.
12589         (py_print_frame): Likewise.
12590         (gdbpy_apply_frame_filter): Catch exceptions here.
12591
12592 2018-03-26  Tom Tromey  <tom@tromey.com>
12593
12594         * stack.c (_initialize_stack): Remove trailing newlines from help
12595         text.  Add "Usage" line to "backtrace" help.
12596
12597 2018-03-26  Tom Tromey  <tom@tromey.com>
12598
12599         PR python/16486:
12600         * python/py-framefilter.c (py_print_args): Call wrap_hint.
12601
12602 2018-03-26  Tom Tromey  <tom@tromey.com>
12603
12604         * python/py-framefilter.c (py_print_single_arg): Return
12605         EXT_LANG_BT_ERROR from catch.
12606
12607 2018-03-26  Tom Tromey  <tom@tromey.com>
12608
12609         PR backtrace/15584:
12610         * stack.c (backtrace_command_1): Move some code into no-filters
12611         "if".
12612
12613 2018-03-26  Tom Tromey  <tom@tromey.com>
12614
12615         * python/py-framefilter.c (throw_quit_or_print_exception): New
12616         function.
12617         (gdbpy_apply_frame_filter): Use it.
12618
12619 2018-03-26  Tom Tromey  <tom@tromey.com>
12620
12621         PR cli/17716:
12622         * python/py-framefilter.c (py_print_type, py_print_value)
12623         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
12624         RETURN_MASK_ERROR.
12625
12626 2018-03-26  Tom Tromey  <tom@tromey.com>
12627
12628         * python/py-framefilter.c (enumerate_args): Use
12629         gdb::unique_xmalloc_ptr.
12630
12631 2018-03-26  Tom Tromey  <tom@tromey.com>
12632
12633         * python/py-framefilter.c (py_print_frame): Return
12634         EXT_LANG_BT_OK.
12635         (gdbpy_apply_frame_filter): Update comment.
12636         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
12637         Remove.
12638         <EXT_LANG_BT_NO_FILTERS>: Change value.
12639
12640 2018-03-26  Tom Tromey  <tom@tromey.com>
12641
12642         PR backtrace/15582:
12643         * stack.c (backtrace_command): Parse "hide" argument.
12644         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
12645         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
12646         constant.
12647
12648 2018-03-26  Tom Tromey  <tom@tromey.com>
12649
12650         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
12651         add "flags".
12652         (backtrace_command): Remove "fulltrace", add "flags".
12653
12654 2018-03-26  Tom Tromey  <tom@tromey.com>
12655
12656         * stack.c (backtrace_command): Rewrite command line parsing.
12657
12658 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
12659
12660         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
12661
12662 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
12663
12664         * filename-seen-cache.h: Add include guard.
12665
12666 2018-03-26  Keith Seitz  <keiths@redhat.com>
12667
12668         * symfile.c (place_section): Remove "struct" from section_addr_info
12669         in comment.
12670         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
12671         "struct" keyword from section_addr_info.
12672
12673 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
12674
12675         * regformats/regdef.h (reg): Add constructors.
12676
12677 2018-03-25  Pedro Alves  <palves@redhat.com>
12678
12679         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
12680         if then/else bodies in var_func_name extraction.
12681
12682 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
12683
12684         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
12685         lookup_minimal_symbol() to find symbol entry.
12686         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
12687
12688 2018-03-23  Keith Seitz  <keiths@redhat.com>
12689
12690         PR c++/22968
12691         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
12692         nested type definitions for C++, too.
12693
12694 2018-03-23  Tom Tromey  <tom@tromey.com>
12695
12696         * machoread.c (struct oso_el): Add a constructor.  Don't define as
12697         a typedef.
12698         (macho_register_oso): Remove.
12699         (macho_symtab_read): Take a std::vector.
12700         (oso_el_compare_name): Now a std::sort comparator.
12701         (macho_symfile_read_all_oso): Take a std::vector.
12702         (macho_symfile_read): Use std::vector.  Remove cleanups.
12703
12704 2018-03-22  Tom Tromey  <tom@tromey.com>
12705
12706         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
12707         (record_full_goto_bookmark): Use std::string.
12708
12709 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12710
12711         PR tdep/18295
12712         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
12713         a single mask.
12714
12715 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12716
12717         * rs6000-tdep.c (store_insn_p): New function.
12718         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
12719         and cr_reg to their unshifted values. Use store_insn_p to
12720         match LR saves using either R1 or fdata->alloca_reg. Use
12721         store_insn_p to match CR saves. Set alloca_reg_offset
12722         when alloca_reg and framep are set. Remove lr_reg shift
12723         when assigning to fdata->lr_register.
12724
12725 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12726
12727         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
12728         command line args instead of emitting a warning.
12729
12730 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
12731
12732         * tracepoint.h (struct static_tracepoint_marker): Initialize
12733         fields, define default constructor, move constructor and move
12734         assignment, disable the rest.
12735         <str_id, extra>: Make std::string.
12736         (release_static_tracepoint_marker): Remove.
12737         (free_current_marker): Remove.
12738         * tracepoint.c (free_current_marker): Remove.
12739         (parse_static_tracepoint_marker_definition): Adjust to
12740         std::string, use new hex2str overload.
12741         (release_static_tracepoint_marker): Remove.
12742         (print_one_static_tracepoint_marker): Get marker by reference
12743         and adjust to std::string.
12744         (info_static_tracepoint_markers_command): Adjust to std::vector
12745         changes
12746         * target.h (static_tracepoint_marker_p): Remove typedef.
12747         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
12748         (struct target_ops) <to_static_tracepoint_marker_at>: Return
12749         bool.
12750         <to_static_tracepoint_markers_by_strid>: Return std::vector.
12751         * target-debug.h
12752         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
12753         (target_debug_print_std_vector_static_tracepoint_marker): New.
12754         (target_debug_print_struct_static_tracepoint_marker_p): Rename
12755         to...
12756         (target_debug_print_static_tracepoint_marker_p): ... this.
12757         * target-delegates.c: Re-generate.
12758         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
12759         Make std::string.
12760         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
12761         (decode_static_tracepoint_spec): Adjust to std::vector.
12762         (tracepoint_print_one_detail): Adjust to std::string.
12763         (strace_marker_decode_location): Adjust to std::string.
12764         (update_static_tracepoint): Adjust to std::string, remove call
12765         to release_static_tracepoint_marker.
12766         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
12767         Adjust to std::vector.
12768         * remote.c (remote_static_tracepoint_marker_at): Return bool.
12769         (remote_static_tracepoint_markers_by_strid): Adjust to
12770         std::vector.
12771         * common/rsp-low.h (hex2str): New overload with explicit count
12772         of bytes.
12773         * common/rsp-low.c (hex2str): New overload with explicit count
12774         of bytes.
12775         * unittests/rsp-low-selftests.c (test_hex2str): New function.
12776         (_initialize_rsp_low_selftests): Add test_hex2str test.
12777         * unittests/tracepoint-selftests.c
12778         (test_parse_static_tracepoint_marker_definition): Adjust to
12779         std::string.
12780
12781 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
12782
12783         * tracepoint.c (parse_static_tracepoint_marker_definition):
12784         Consider case where the definition is followed by more
12785         definitions.
12786         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12787         tracepoint-selftests.c.
12788         * unittests/tracepoint-selftests.c: New.
12789
12790 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12791
12792         * MAINTAINERS (Write After Approval): Add Pedro Franco de
12793         Carvalho.
12794
12795 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
12796
12797         * symtab.c (find_pc_sect_line): fixed indentation.
12798
12799 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
12800
12801         * symtab.c (find_pc_sect_line): now uses binary search.
12802
12803 2018-03-19  Tom Tromey  <tom@tromey.com>
12804
12805         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
12806         "IDENT" production.
12807
12808 2018-03-19  Pedro Alves  <palves@redhat.com>
12809             Tom Tromey  <tom@tromey.com>
12810
12811         * unittests/observable-selftests.c: New file.
12812         * common/observable.h: New file.
12813         * observable.h: New file.
12814         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
12815         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
12816         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
12817         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
12818         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
12819         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
12820         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
12821         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
12822         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
12823         python/py-breakpoint.c, python/py-finishbreakpoint.c,
12824         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
12825         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
12826         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
12827         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
12828         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
12829         tui/tui-interp.c, valops.c: Update all users.
12830         * tui/tui-hooks.c (tui_bp_created_observer)
12831         (tui_bp_deleted_observer, tui_bp_modified_observer)
12832         (tui_inferior_exit_observer, tui_before_prompt_observer)
12833         (tui_normal_stop_observer, tui_register_changed_observer):
12834         Remove.
12835         (tui_observers_token): New global.
12836         (attach_or_detach, tui_attach_detach_observers): New functions.
12837         (tui_install_hooks, tui_remove_hooks): Use
12838         tui_attach_detach_observers.
12839         * record-btrace.c (record_btrace_thread_observer): Remove.
12840         (record_btrace_thread_observer_token): New global.
12841         * observer.sh: Remove.
12842         * observer.c: Rename to observable.c.
12843         * observable.c (namespace gdb_observers): Define new objects.
12844         (observer_debug): Move into gdb_observers namespace.
12845         (struct observer, struct observer_list, xalloc_observer_list_node)
12846         (xfree_observer_list_node, generic_observer_attach)
12847         (generic_observer_detach, generic_observer_notify): Remove.
12848         (_initialize_observer): Update.
12849         Don't include observer.inc.
12850         * Makefile.in (generated_files): Remove observer.h, observer.inc.
12851         (clean mostlyclean): Likewise.
12852         (observer.h, observer.inc): Remove targets.
12853         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
12854         (COMMON_SFILES): Use observable.c, not observer.c.
12855         * .gitignore: Remove observer.h.
12856
12857 2018-03-18  Tom Tromey  <tom@tromey.com>
12858
12859         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
12860         gdb::def_vector.
12861         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
12862
12863 2018-03-17  Tom Tromey  <tom@tromey.com>
12864
12865         * auto-load.c (auto_load_objfile_script_1): Use std::string.
12866
12867 2018-03-17  Tom Tromey  <tom@tromey.com>
12868
12869         * target.c (class scoped_target_fd): New.
12870         (target_fileio_close_cleanup): Remove.
12871         (target_fileio_read_alloc_1): Use scoped_target_fd.
12872
12873 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
12874
12875         * silent-rules.mk: New.
12876         * Makefile.in: Include silent-rules.mk
12877         (srcdir, VPATH, top_srcdir): Move up.
12878         (COMPILE): Add ECHO_CXX.
12879         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
12880         (init.c): Add ECHO_INIT_C.
12881         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
12882         (version.c): Add ECHO_GEN.
12883         (printcmd.o): Add ECHO_CXX.
12884         (target-float.o): Add ECHO_CXX.
12885         (ada-exp.o): Add ECHO_CXX.
12886         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
12887         (insight$(EXEEXT)): Add ECHO_CXXLD.
12888         * gnulib/configure.ac: Add AM_SILENT_RULES.
12889         * gnulib/aclocal.m4: Re-generate.
12890         * gnulib/configure: Re-generate.
12891         * gnulib/import/Makefile.in: Re-generate.
12892
12893 2018-03-16  Tom Tromey  <tom@tromey.com>
12894
12895         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
12896         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
12897         * utils.c (do_free_section_addr_info)
12898         (make_cleanup_free_section_addr_info): Remove.
12899         * symfile.h (struct other_sections): Add constructor.
12900         (struct section_addr_info): Remove.
12901         (section_addr_info): New typedef.
12902         (struct sym_fns) <sym_offsets>: Change type of parameter.
12903         (build_section_addr_info_from_objfile)
12904         (relative_addr_info_to_section_offsets, addr_info_make_relative)
12905         (default_symfile_offsets, symbol_file_add)
12906         (symbol_file_add_from_bfd)
12907         (build_section_addr_info_from_section_table): Update.
12908         (alloc_section_addr_info, free_section_addr_info): Don't declare.
12909         * symfile.c (alloc_section_addr_info): Remove.
12910         (build_section_addr_info_from_section_table): Change return type.
12911         Update.
12912         (build_section_addr_info_from_bfd)
12913         (build_section_addr_info_from_objfile): Likewise.
12914         (free_section_addr_info): Remove.
12915         (relative_addr_info_to_section_offsets): Change type of "addrs".
12916         (addrs_section_compar): Now a std::sort comparator.
12917         (addrs_section_sort): Change return type.
12918         (addr_info_make_relative): Change type of "addrs".  Update.
12919         (default_symfile_offsets, syms_from_objfile_1)
12920         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
12921         (symbol_file_add_separate): Update.
12922         (symbol_file_add): Change type of "addrs".  Update.
12923         (add_symbol_file_command): Update.  Remove cleanups.
12924         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
12925         cleanups.
12926         * symfile-debug.c (debug_sym_offsets): Change type of "info".
12927         * solib.c (solib_read_symbols): Update.
12928         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
12929         * machoread.c (macho_symfile_offsets): Update.
12930         * jit.c (jit_bfd_try_read_symtab): Update.
12931
12932 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
12933
12934         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12935         unittests/utils-selftests.c.
12936         * unittests/utils-selftests.c: New file.
12937
12938 2018-03-14  Tom Tromey  <tom@tromey.com>
12939
12940         PR cli/14977:
12941         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
12942         for NULL.
12943
12944 2018-03-14  Tom Tromey  <tom@tromey.com>
12945
12946         PR cli/19918:
12947         * printcmd.c (printf_pointer): Allow "-" in format.
12948
12949 2018-03-14  Tom Tromey  <tom@tromey.com>
12950
12951         * printcmd.c (_initialize_printcmd): Add usage to printf.
12952
12953 2018-03-14  Yao Qi  <qiyao@sourceware.org>
12954
12955         * MAINTAINERS: Update my email address.
12956
12957 2018-03-13  Tom Tromey  <tom@tromey.com>
12958
12959         * machoread.c (macho_check_dsym): Change filenamep to a
12960         std::string*.
12961         (macho_symfile_read): Update.
12962         * symfile.c (load_command): Use std::string.
12963
12964 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
12965
12966         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
12967         to error message string.
12968         (riscv_register_name): Use xsnprintf instead of sprintf.
12969         (riscv_insn::fetch_instruction): Use gdb_assert instead of
12970         internal_error.
12971         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
12972         error.
12973         (riscv_push_dummy_call): Likewise.
12974
12975 2018-03-12  Tom Tromey  <tom@tromey.com>
12976
12977         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
12978         Use gdb::byte_vector.
12979         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
12980
12981 2018-03-12  Yao Qi  <yao.qi@linaro.org>
12982
12983         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
12984         parameter type to readable_regcache.
12985         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
12986         the declaration.
12987
12988 2018-03-11  Tom Tromey  <tom@tromey.com>
12989
12990         * dwarf2read.c (struct nextfield): Add initializers.
12991         (struct nextfnfield): Remove.
12992         (struct fnfieldlist): Add initializers.  Remove "length" and
12993         "head", use std::vector.
12994         (struct decl_field_list): Remove.
12995         (struct field_info): Add initializers.
12996         <fields, baseclasses>: Now std::vector.
12997         <nbaseclasses, nfnfields, typedef_field_list_count,
12998         nested_types_list_count>: Remove.
12999         (dwarf2_add_field, dwarf2_add_type_defn)
13000         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
13001         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
13002         (process_structure_scope): Update.
13003
13004 2018-03-11  Tom Tromey  <tom@tromey.com>
13005
13006         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
13007         for use by std::sort.
13008         (build_type_psymtabs_1): Use std::vector.
13009
13010 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
13011
13012         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
13013         and LIBMPFR in the printed configuration.
13014
13015 2018-03-08  Tom Tromey  <tom@tromey.com>
13016
13017         * source.c (get_filename_and_charpos): Use scoped_fd.
13018         * nto-procfs.c (procfs_open_1): Use scoped_fd.
13019         (procfs_pidlist): Likewise.
13020         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
13021         (iterate_over_mappings): Likewise.
13022
13023 2018-03-08  Tom Tromey  <tom@tromey.com>
13024
13025         * infcall.c (struct call_return_meta_info)
13026         <stack_temporaries_enabled>: Remove.
13027         (get_call_return_value, call_function_by_hand_dummy): Update.
13028         * thread.c (disable_thread_stack_temporaries): Remove.
13029         (enable_thread_stack_temporaries): Remove.
13030         (thread_stack_temporaries_enabled_p): Return bool.
13031         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
13032         (get_last_thread_stack_temporary): Update.
13033         * eval.c (evaluate_subexp): Update.
13034         * gdbthread.h (class enable_thread_stack_temporaries): Now a
13035         class, not a function.
13036         (value_ptr, value_vec): Remove typedefs.
13037         (class thread_info) <stack_temporaries_enabled>: Now bool.
13038         <stack_temporaries>: Now a std::vector.
13039         (thread_stack_temporaries_enabled_p)
13040         (value_in_thread_stack_temporaries): Return bool.
13041
13042 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
13043
13044         * remote.c (putpkt_binary): Fix omitted bytes reporting.
13045         (getpkt_or_notif_sane_1): Likewise.
13046
13047 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
13048
13049         * build-id.c (build_id_to_debug_bfd): Use std::string.
13050
13051 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
13052
13053         * build-id.c (find_separate_debug_file_by_buildid): Return
13054         std::string.
13055         * build-id.h (find_separate_debug_file_by_buildid): Return
13056         std::string.
13057         * coffread.c (coff_symfile_read): Adjust to std::string.
13058         * elfread.c (elf_symfile_read): Adjust to std::string.
13059         * symfile.c (separate_debug_file_exists): Change parameter to
13060         std::string.
13061         (find_separate_debug_file): Return std::string.
13062         (find_separate_debug_file_by_debuglink): Return std::string.
13063         * symfile.h (find_separate_debug_file_by_debuglink): Return
13064         std::string.
13065
13066 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
13067
13068         * common/xml-utils.c (xml_escape_text): Move code to...
13069         (xml_escape_text_append): ... this new function.
13070         * common/xml-utils.h (xml_escape_text_append): New declaration.
13071         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
13072         New function.
13073         (_initialize_xml_utils): register test_xml_escape_text_append as
13074         a selftest.
13075
13076 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
13077
13078         * defs.h: Remove MAX_REGISTER_SIZE.
13079         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
13080         asserts.
13081         * python/py-unwind.c (pyuw_sniffer): Likewise.
13082
13083 2018-03-07  Tom Tromey  <tom@tromey.com>
13084
13085         * linux-tdep.c (linux_info_proc): Update.
13086         * target.h (struct target_ops) <to_fileio_readlink>: Return
13087         optional<string>.
13088         (target_fileio_readlink): Return optional<string>.
13089         * remote.c (remote_hostio_readlink): Return optional<string>.
13090         * inf-child.c (inf_child_fileio_readlink): Return
13091         optional<string>.
13092         * target.c (target_fileio_readlink): Return optional<string>.
13093
13094 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
13095
13096         * regcache.c (cooked_read_test): Add riscv to the list of
13097         architectures that have a save_reggroup.
13098
13099 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
13100
13101         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
13102         value is not a dynamic class object.
13103
13104 2018-03-06  Tom Tromey  <tom@tromey.com>
13105
13106         * rust-exp.y: Formatting fixes.
13107
13108 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13109
13110         * riscv-tdep.c (riscv_register_name): Remove target description
13111         support.
13112         (riscv_gdbarch_init): Remove target description check.
13113
13114 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13115
13116         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
13117         comment.
13118         * riscv-tdep.h: Likewise.
13119
13120 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13121
13122         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
13123         (riscv_pseudo_register_write): Delete.
13124         (riscv_gdbarch_init): Remove all use of pseudo registers.
13125
13126 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
13127
13128         * record-btrace.c (btrace_print_lines): Replace cleanup
13129         parameter with RAII equivalents.
13130         (btrace_insn_history): Replace cleanup with RAII equivalents.
13131         * ui-out.h (make_cleanup_ui_out_list_begin_end,
13132         make_cleanup_ui_out_tuple_begin_end): Remove.
13133         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
13134         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
13135         make_cleanup_ui_out_list_begin_end): Remove.
13136
13137 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
13138
13139         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
13140         parameter types to std::vector.  Use bool.
13141         (record_btrace_wait): Replace VEC(tp_t) with
13142         std::vector<thread_info *>.
13143         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
13144
13145 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
13146
13147         * record-btrace.c (record_btrace_disable_callback): Remove.
13148         (struct scoped_btrace_disable): New.
13149         (record_btrace_open): Use scoped_btrace_disable.
13150
13151 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13152
13153         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
13154         reading values from registers.
13155
13156 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13157
13158         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
13159         where appropriate.
13160
13161 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13162
13163         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
13164         change parameter type.  Use GDB's print functions, and use
13165         core_addr_to_string where appropriate.
13166         (riscv_push_dummy_call): Use core_addr_to_string where
13167         appropriate, update call to riscv_print_arg_location, and reindent
13168         a few lines.
13169         (riscv_return_value): Update call to riscv_print_arg_location.
13170
13171 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13172             Tim Newsome <tim@sifive.com>
13173             Albert Ou <a0u@eecs.berkeley.edu>
13174             Darius Rad <darius@bluespec.com>
13175
13176         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
13177         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
13178         (ALLDEPFILES): Add riscv-tdep.c
13179         * configure.tgt: Add riscv support.
13180         * riscv-tdep.c: New file.
13181         * riscv-tdep.h: New file.
13182         * NEWS: Mention new target.
13183         * MAINTAINERS: Add entry for riscv.
13184
13185 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13186
13187         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
13188         fields within aggregates.
13189
13190 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
13191
13192         * record-btrace.c (btrace_print_lines): Change type of flags to
13193         gdb_disassembly_flags.
13194
13195 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13196
13197         * fbsd-nat.c: Include "inf-ptrace.h".
13198         (USE_SIGTRAP_SIGINFO): Conditionally define.
13199         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
13200         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
13201         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
13202         function.
13203         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
13204         Likewise.
13205         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
13206         Likewise.
13207         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
13208         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
13209         "supports_stopped_by_hw_breakpoint" target methods.
13210
13211 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13212
13213         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
13214         * fbsd-nat.c (debug_fbsd_nat): New variable.
13215         (show_fbsd_nat_debug): New function.
13216         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
13217         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
13218
13219 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13220
13221         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
13222         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
13223         prototype.
13224         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
13225         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
13226         method.
13227
13228 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13229
13230         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
13231         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
13232
13233 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13234
13235         * charset.c (struct charset_vector): New.
13236         (charsets): Change type to charset_vector.
13237         (find_charset_names): Adjust.
13238         (add_one): Adjust.
13239         (_initialize_charset): Adjust.
13240
13241 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13242
13243         * progspace.h (struct program_space) <deleted_solibs>: Change
13244         type to std::vector<std::string>.
13245         * progspace.c (clear_program_space_solib_cache): Adjust.
13246         * breakpoint.c (print_solib_event): Adjust.
13247         (check_status_catch_solib): Adjust.
13248         * solib.c (update_solib_list): Adjust.
13249         * ui-out.h (class ui_out) <field_string>: New overload.
13250         * ui-out.c (ui_out::field_string): New overload.
13251
13252 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13253
13254         * progspace.h (struct program_space): Add constructor and
13255         destructor, initialize fields.
13256         (add_program_space): Remove.
13257         * progspace.c (add_program_space): Rename to...
13258         (program_space::program_space): ... this.
13259         (release_program_space): Rename to...
13260         (program_space::~program_space): ... this.
13261         (delete_program_space): Use delete to delete program_space.
13262         (initialize_progspace): Use new to allocate program_space.
13263         * inferior.c (add_inferior_with_spaces): Likewise.
13264         (clone_inferior_command): Likewise.
13265         * infrun.c (follow_fork_inferior): Likewise.
13266         (handle_vfork_child_exec_or_exit): Likewise.
13267
13268 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13269
13270         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
13271         (delim_string_to_char_ptr_vec): Return std::vector of
13272         gdb::unique_xmalloc_ptr.
13273         (dirnames_to_char_ptr_vec_append): Take std::vector of
13274         gdb::unique_xmalloc_ptr.
13275         (dirnames_to_char_ptr_vec): Return std::vector of
13276         gdb::unique_xmalloc_ptr.
13277         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
13278         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
13279         (delim_string_to_char_ptr_vec): Return an std::vector of
13280         gdb::unique_xmalloc_ptr, adjust the code.
13281         (dirnames_to_char_ptr_vec_append): Take an std::vector of
13282         gdb::unique_xmalloc_ptr, adjust the code.
13283         (dirnames_to_char_ptr_vec): Return an std::vector of
13284         gdb::unique_xmalloc_ptr, adjust the code.
13285         * auto-load.c (auto_load_safe_path_vec): Change type to
13286         std::vector of gdb::unique_xmalloc_ptr.
13287         (auto_load_expand_dir_vars): Return an std::vector of
13288         gdb::unique_xmalloc_ptr, adjust the code.
13289         (auto_load_safe_path_vec_update): Adjust.
13290         (filename_is_in_auto_load_safe_path_vec): Adjust.
13291         (auto_load_objfile_script_1): Adjust.
13292         * build-id.c (build_id_to_debug_bfd): Adjust.
13293         * linux-thread-db.c (thread_db_load_search): Adjust.
13294         * source.c (add_path): Adjust.
13295         (openp): Adjust.
13296         * symfile.c (find_separate_debug_file): Adjust.
13297         * utils.c (do_free_char_ptr_vec): Remove.
13298         (make_cleanup_free_char_ptr_vec): Remove.
13299
13300 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
13301
13302         PR gdb/22907
13303         * common/pathstuff.c: Conditionally include "<windows.h>".
13304
13305 2018-03-01  Georg Sauthoff  <mail@georg.so>
13306
13307         PR gdb/22888
13308         * gcore.in: Quote variables and switch interpreter to bash.
13309
13310 2018-03-01  Tom Tromey  <tom@tromey.com>
13311
13312         * dwarf2read.c (alloc_discriminant_info): Fix default_index
13313         assertion.  Add assertion for discriminant_index.
13314         (quirk_rust_enum): Use correct base type name in univariant case.
13315
13316 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
13317
13318         * record.c (get_call_history_modifiers): Return a
13319         record_print_flags.
13320         (cmd_record_call_history): Adjust.
13321         * record-btrace.c (record_btrace_call_history): Adjust.
13322         (record_btrace_call_history_range): Adjust.
13323         (record_btrace_call_history_from): Adjust.
13324         * target-debug.h (target_debug_print_record_print_flags): New.
13325         * target-delegates.c: Re-generate.
13326         * target.c (target_call_history): Change flags type.
13327         (target_call_history_from): Likewise.
13328         (target_call_history_range): Likewise.
13329         * target.h (struct target_ops) <target_call_history>: Likewise.
13330         (target_call_history_from): Likewise.
13331         (target_call_history_range): Likewise.
13332
13333 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
13334             Simon Marchi  <simon.marchi@polymtl.ca>
13335
13336         * common/common-utils.c: Include "sys/stat.h".
13337         (is_regular_file): Move here from "source.c"; change return
13338         type to "bool".
13339         * common/common-utils.h (is_regular_file): New prototype.
13340         * common/pathstuff.c (contains_dir_separator): New function.
13341         * common/pathstuff.h (contains_dir_separator): New prototype.
13342         * source.c: Don't include "sys/stat.h".
13343         (is_regular_file): Move to "common/common-utils.c".
13344
13345 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
13346
13347         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
13348         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
13349         * auto-load.c: Include "common/pathstuff.h".
13350         * common/common-def.h (current_directory): Move here.
13351         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
13352         function.
13353         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
13354         prototype.
13355         * common/pathstuff.c: New file.
13356         * common/pathstuff.h: New file.
13357         * compile/compile.c: Include "common/pathstuff.h".
13358         * defs.h (current_directory): Move to "common/common-defs.h".
13359         * dwarf2read.c: Include "common/pathstuff.h".
13360         * exec.c: Likewise.
13361         * guile/scm-safe-call.c: Likewise.
13362         * linux-thread-db.c: Likewise.
13363         * main.c: Likewise.
13364         * nto-tdep.c: Likewise.
13365         * objfiles.c: Likewise.
13366         * source.c: Likewise.
13367         * symtab.c: Likewise.
13368         * utils.c: Include "common/pathstuff.h".
13369         (gdb_realpath): Move to "common/pathstuff.c".
13370         (gdb_realpath_keepfile): Likewise.
13371         (gdb_abspath): Likewise.
13372         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
13373         (gdb_realpath_keepfile): Likewise.
13374         (gdb_abspath): Likewise.
13375
13376 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
13377
13378         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
13379         wildcard process pid for super_resume for kernels with a
13380         specific bug.
13381
13382 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
13383
13384         * compile/compile.c (get_args): Add additional comments
13385         explaining function.
13386
13387 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
13388             Tom Tromey  <tom@tromey.com>
13389
13390         * target.h (memory_write_request_s): Remove typedef.  Don't define
13391         VEC.
13392         (target_write_memory_blocks): Change argument to std::vector.
13393         (struct memory_write_request): Add constructor.
13394         * target-memory.c (compare_block_starting_address): Return bool.
13395         Change argument types.
13396         (claim_memory): Change arguments to use std::vector.
13397         (split_regular_and_flash_blocks, blocks_to_erase)
13398         (compute_garbled_blocks): Likewise.
13399         (cleanup_request_data, cleanup_write_requests_vector): Remove.
13400         (target_write_memory_blocks): Change argument to std::vector.
13401         * symfile.c (struct load_section_data): Add constructor and
13402         destructor.  Use std::vector for "requests".
13403         (struct load_progress_data): Add initializers.
13404         (load_section_callback): Update.  Use "new".
13405         (clear_memory_write_data): Remove.
13406         (generic_load): Update.
13407
13408 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
13409
13410         * arch/aarch64.h: Use common/tdesc.h.
13411
13412 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
13413
13414         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
13415         architecture with a 64-bit ABI.
13416
13417 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
13418
13419         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
13420         ahead of target description loading.
13421
13422 2018-02-26  Tom Tromey  <tom@tromey.com>
13423
13424         * stack.c (backtrace_command_1): Update.
13425         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
13426         of "flags".
13427         * python/py-framefilter.c (py_print_frame)
13428         (gdbpy_apply_frame_filter): Change type of "flags".
13429         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
13430         of "flags".
13431         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
13432         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
13433         * extension.h (enum frame_filter_flag): Rename from
13434         frame_filter_flags.
13435         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
13436         (apply_ext_lang_frame_filter): Change type of "flags".
13437         * extension.c (apply_ext_lang_frame_filter): Change type of
13438         "flags".
13439         * extension-priv.h (struct extension_language_ops)
13440         <apply_frame_filter>: Change type of "flags".
13441
13442 2018-02-26  Tom Tromey  <tom@tromey.com>
13443
13444         PR python/16497:
13445         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
13446         off-by-one in py_end computation.
13447         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
13448         PRINT_MORE_FRAMES.
13449         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
13450         constant.
13451
13452 2018-02-26  Tom Tromey  <tom@tromey.com>
13453
13454         * dwarf2read.c (struct variant_field): New.
13455         (struct nextfield) <variant>: New field.
13456         (dwarf2_add_field): Handle DW_TAG_variant_part.
13457         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
13458         discriminated union.
13459         (read_structure_type): Handle DW_TAG_variant_part.
13460         (handle_struct_member_die): New function, extracted from
13461         process_structure_scope.  Handle DW_TAG_variant.
13462         (process_structure_scope): Handle discriminated unions.  Call
13463         handle_struct_member_die.
13464
13465 2018-02-26  Tom Tromey  <tom@tromey.com>
13466
13467         * rust-lang.h (rust_last_path_segment): Declare.
13468         * rust-lang.c (rust_last_path_segment): Now public.  Change
13469         contract.
13470         (struct disr_info): Remove.
13471         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
13472         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
13473         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
13474         (rust_enum_p, rust_enum_variant): New function.
13475         (rust_underscore_fields): Remove "offset" parameter.
13476         (rust_print_enum): New function.
13477         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
13478         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
13479         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
13480         enums.
13481         (rust_internal_print_type): New function, from rust_print_type.
13482         Remove enum code.
13483         (rust_print_type): Call rust_internal_print_type.
13484         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
13485         Update enum handling.
13486         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
13487         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
13488         (rust_union_quirks): New functions.
13489         (process_full_comp_unit, process_full_type_unit): Call
13490         rust_union_quirks.
13491         (process_structure_scope): Update rust_unions if necessary.
13492
13493 2018-02-26  Tom Tromey  <tom@tromey.com>
13494
13495         * value.h (value_union_variant): Declare.
13496         * valops.c (value_union_variant): New function.
13497         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
13498         (struct discriminant_info): New.
13499         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
13500         enumerator.
13501         (struct main_type) <flag_discriminated_union>: New field.
13502
13503 2018-02-26  Tom Tromey  <tom@tromey.com>
13504
13505         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13506         unittests/unpack-selftests.c.
13507         * unittests/unpack-selftests.c: New file.
13508         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
13509
13510 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13511
13512         * dwarf2read.c (struct partial_die_info) <read>: New method.
13513         (read_partial_die): Remove the declaration.
13514         (load_partial_dies): Update.
13515         (partial_die_info::partial_die_info):
13516         (read_partial_die): Change it to partial_die_info::read.
13517
13518 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13519
13520         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
13521         (fixup_partial_die): Remove declaration.
13522         (scan_partial_symbols): Update.
13523         (partial_die_parent_scope): Likewise.
13524         (partial_die_full_name): Likewise.
13525         (fixup_partial_die): Change it to partial_die_info::fixup.
13526
13527 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13528
13529         * dwarf2read.c (read_partial_die): Update the declaration.
13530         (load_partial_dies): Caller update.
13531         (read_partial_die): Remove one argument abbrev_len.
13532
13533 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13534
13535         * dwarf2read.c (struct partial_die_info): Add ctor, delete
13536         assignment operator.
13537         (load_partial_dies): Use ctor and copy ctor.
13538         (read_partial_die): Update.
13539         (dwarf2_cu::find_partial_die): Use ctor.
13540
13541 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13542
13543         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
13544         (find_partial_die_in_comp_unit): Change it to
13545         dwarf2_cu::find_partial_die.
13546         (find_partial_die): Update.
13547
13548 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13549
13550         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
13551         is NULL.
13552
13553 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13554
13555         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
13556
13557 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
13558
13559         * arch/amd64.h: Use common/tdesc.h.
13560         * arch/i386.c: Likewise.
13561         * arch/i386.h: Likewise.
13562         * arch/tic6x.c: Likewise.
13563         * arch/tdesc.h: Move file from here...
13564         * common/tdesc.h: ...to here.
13565         * features/aarch64-core.c: Regenerate.
13566         * features/aarch64-fpu.c: Regenerate.
13567         * features/i386/32bit-avx.c: Regenerate.
13568         * features/i386/32bit-avx512.c: Regenerate.
13569         * features/i386/32bit-core.c: Regenerate.
13570         * features/i386/32bit-linux.c: Regenerate.
13571         * features/i386/32bit-mpx.c: Regenerate.
13572         * features/i386/32bit-pkeys.c: Regenerate.
13573         * features/i386/32bit-sse.c: Regenerate.
13574         * features/i386/64bit-avx.c: Regenerate.
13575         * features/i386/64bit-avx512.c: Regenerate.
13576         * features/i386/64bit-core.c: Regenerate.
13577         * features/i386/64bit-linux.c: Regenerate.
13578         * features/i386/64bit-mpx.c: Regenerate.
13579         * features/i386/64bit-pkeys.c: Regenerate.
13580         * features/i386/64bit-segments.c: Regenerate.
13581         * features/i386/64bit-sse.c: Regenerate.
13582         * features/i386/x32-core.c: Regenerate.
13583         * features/tic6x-c6xp.c: Regenerate.
13584         * features/tic6x-core.c: Regenerate.
13585         * features/tic6x-gp.c: Regenerate.
13586         * target-descriptions.c: Use common/tdesc.h.
13587         * target-descriptions.h: Likewise.
13588
13589 2018-02-24  Tom Tromey  <tom@tromey.com>
13590
13591         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
13592         (try_thread_db_load_from_dir, thread_db_load_search): Use
13593         std::string.
13594         (info_auto_load_libthread_db_compare): Return bool.  Change
13595         argument types.
13596         (info_auto_load_libthread_db): Use std::vector, std::string.
13597         Remove cleanups.
13598
13599 2018-02-24  Tom Tromey  <tom@tromey.com>
13600
13601         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
13602         std::string.
13603         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
13604         std::string*.
13605         * gdbarch.c: Rebuild.
13606         * gdbarch.h: Rebuild.
13607         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
13608         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
13609         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
13610         std::string*.
13611
13612 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
13613
13614         * gdbtypes.h (sect_offset): Change type to uint64_t.
13615         (sect_offset_str): New function.
13616         * dwarf2read.c (create_addrmap_from_aranges): Use
13617         sect_offset_str.
13618         (error_check_comp_unit_head): Likewise.
13619         (create_debug_type_hash_table): Likewise.
13620         (read_cutu_die_from_dwo): Likewise.
13621         (init_cutu_and_read_dies): Likewise.
13622         (init_cutu_and_read_dies_no_follow): Likewise.
13623         (process_psymtab_comp_unit_reader): Likewise.
13624         (partial_die_parent_scope): Likewise.
13625         (peek_die_abbrev): Likewise.
13626         (process_queue): Likewise.
13627         (dwarf2_physname): Likewise.
13628         (read_namespace_alias): Likewise.
13629         (read_import_statement): Likewise.
13630         (create_dwo_cu_reader): Likewise.
13631         (create_cus_hash_table): Likewise.
13632         (lookup_dwo_cutu): Likewise.
13633         (inherit_abstract_dies): Likewise.
13634         (read_func_scope): Likewise.
13635         (read_call_site_scope): Likewise.
13636         (dwarf2_add_member_fn): Likewise.
13637         (read_common_block): Likewise.
13638         (read_module_type): Likewise.
13639         (read_typedef): Likewise.
13640         (read_subrange_type): Likewise.
13641         (load_partial_dies): Likewise.
13642         (read_partial_die): Likewise.
13643         (find_partial_die): Likewise.
13644         (read_str_index): Likewise.
13645         (dwarf2_string_attr): Likewise.
13646         (build_error_marker_type): Likewise.
13647         (lookup_die_type): Likewise.
13648         (dump_die_shallow): Likewise.
13649         (follow_die_ref): Likewise.
13650         (dwarf2_fetch_die_loc_sect_off): Likewise.
13651         (dwarf2_fetch_constant_bytes): Likewise.
13652         (follow_die_sig): Likewise.
13653         (get_signatured_type): Likewise.
13654         (get_DW_AT_signature_type): Likewise.
13655         (dwarf2_find_containing_comp_unit): Likewise.
13656         (set_die_type): Likewise.
13657
13658 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
13659
13660         * arch/aarch64.c: Include "common-defs.h".
13661         * arch/amd64.c: Likewise.
13662         * arch/i386.c: Likewise.
13663
13664 2018-02-21  Tom Tromey  <tom@tromey.com>
13665
13666         * value.h: (extract_field_op): Update.
13667         * eval.c (extract_field_op): Return a const char *.
13668         * expression.h (parse_expression_for_completion): Update.
13669         * completer.c (complete_expression): Update.
13670         (add_struct_fields): Make fieldname const.
13671         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
13672         (mark_completion_tag, parse_exp_in_context_1): Update.
13673         (parse_expression_for_completion): Change "name" to
13674         unique_xmalloc_ptr*.
13675
13676 2018-02-21  Tom Tromey  <tom@tromey.com>
13677
13678         * infcall.c (call_function_by_hand_dummy): Use std::vector.
13679
13680 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13681
13682         * avr-tdep.c (avr_read_pc): Change parameter type to
13683         readable_regcache.
13684         * gdbarch.sh (read_pc): Likewise.
13685         * gdbarch.c: Re-generated.
13686         * gdbarch.h: Re-generated.
13687         * hppa-tdep.c (hppa_read_pc): Change parameter type to
13688         readable_regcache.
13689         * ia64-tdep.c (ia64_read_pc): Likewise.
13690         * mips-tdep.c (mips_read_pc): Likewise.
13691         * spu-tdep.c (spu_read_pc): Likewise.
13692
13693 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13694
13695         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
13696         * regcache-dump.c: New file.
13697         * regcache.c: Move register_dump to regcache-dump.c.
13698         (maintenance_print_registers): Likewise.
13699         (maintenance_print_raw_registers): Likewise.
13700         (maintenance_print_cooked_registers): Likewise.
13701         (maintenance_print_register_groups): Likewise.
13702         (maintenance_print_remote_registers): Likewise.
13703         (_initialize_regcache): Likewise.
13704         * regcache.h (register_dump): Moved from regcache.c.
13705
13706 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13707
13708         * regcache.c (regcache::regcache): Update.
13709         (regcache::invalidate): Move it to detached_regcache::invalidate.
13710         (get_thread_arch_aspace_regcache): Update.
13711         (regcache::raw_update): Update.
13712         (regcache::cooked_read): Remove some code.
13713         (regcache::cooked_read_value): Likewise.
13714         (regcache::raw_write): Remove assert on m_readonly_p.
13715         (regcache::raw_supply_integer): Move it to
13716         detached_regcache::raw_supply_integer.
13717         (regcache::raw_supply_zeroed): Likewise.
13718         * regcache.h (detached_regcache) <raw_supply_integer>: New
13719         declaration.
13720         <raw_supply_zeroed, invalidate>: Likewise.
13721         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
13722         <invalidate>: Likewise.
13723         <m_readonly_p>: Removed.
13724
13725 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13726
13727         * infcmd.c (get_return_value): Let stop_regs point to
13728         get_current_regcache.
13729         * regcache.c (regcache::regcache): Remove.
13730         (register_dump_reg_buffer): New class.
13731         (regcache_print): Adjust.
13732         * regcache.h (regcache): Remove constructors.
13733
13734 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13735
13736         * regcache.c (class register_dump): New class.
13737         (register_dump_regcache, register_dump_none): New class.
13738         (register_dump_remote, register_dump_groups): New class.
13739         (regcache_print): Update.
13740         * regcache.h (regcache_dump_what): Move it to regcache.c.
13741         (regcache) <dump>: Remove.
13742
13743 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13744
13745         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
13746          reg_buffer_rw *.
13747         (jit_unwind_reg_set_impl): Call raw_supply.
13748         (jit_frame_sniffer): Use reg_buffer_rw.
13749         * record-full.c (record_full_core_regbuf): Change its type.
13750         (record_full_core_open_1): Use reg_buffer_rw.
13751         (record_full_close): Likewise.
13752         (record_full_core_fetch_registers): Use regcache->raw_supply.
13753         (record_full_core_store_registers): Likewise.
13754         * regcache.c (regcache::get_register_status): Move it to
13755         reg_buffer.
13756         (regcache_raw_set_cached_value): Remove.
13757         (regcache::raw_set_cached_value): Remove.
13758         (regcache::raw_write): Call raw_supply.
13759         (regcache::raw_supply): Move it to reg_buffer_rw.
13760         * regcache.h (regcache_raw_set_cached_value): Remove.
13761         (reg_buffer_rw): New class.
13762
13763 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13764
13765         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
13766         readonly_detached_regcache.
13767         (dummy_frame_prev_register): Use regcache->cooked_read.
13768         * frame.c (frame_save_as_regcache): Change return type.
13769         (frame_pop): Update.
13770         * frame.h (frame_save_as_regcache): Update declaration.
13771         * inferior.h (get_infcall_suspend_state_regcache): Update
13772         declaration.
13773         * infrun.c (infcall_suspend_state) <registers>: use
13774         readonly_detached_regcache.
13775         (save_infcall_suspend_state): Don't use regcache_dup.
13776         (get_infcall_suspend_state_regcache): Change return type.
13777         * linux-fork.c (struct fork_info) <savedregs>: Change to
13778         readonly_detached_regcache.
13779         <pc>: New field.
13780         (fork_save_infrun_state): Don't use regcache_dup.
13781         (info_checkpoints_command): Adjust.
13782         * mi/mi-main.c (register_changed_p): Update declaration.
13783         (mi_cmd_data_list_changed_registers): Use
13784         readonly_detached_regcache.
13785         (register_changed_p): Change parameter type to
13786         readonly_detached_regcache.
13787         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
13788         readonly_detached_regcache.
13789         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
13790         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
13791         New.
13792         (regcache::save): Move it to reg_buffer.
13793         (regcache::restore): Change parameter type.
13794         (regcache_dup): Remove.
13795         * regcache.h (reg_buffer) <save>: New method.
13796         (readonly_detached_regcache): New class.
13797         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
13798         readonly_detached_regcache.
13799         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
13800
13801 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13802
13803         * frame.c (frame_save_as_regcache): Use regcache method save.
13804         (frame_pop): Use regcache method restore.
13805         * infrun.c (restore_infcall_suspend_state): Likewise.
13806         * linux-fork.c (fork_load_infrun_state): Likewise.
13807         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
13808         save.
13809         * regcache.c (regcache_save): Remove.
13810         (regcache::restore): More asserts.
13811         (regcache_cpy): Remove.
13812         * regcache.h (regcache_save): Remove the declaration.
13813         (regcache::restore): Move from private to public.
13814         Remove the friend declaration of regcache_cpy.
13815         (regcache_cpy): Remove declaration.
13816
13817 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13818
13819         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
13820         parameter type to 'readable_regcache *'.
13821         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
13822         * arm-tdep.c (arm_neon_quad_read): Likewise.
13823         (arm_pseudo_read): Likewise.
13824         * avr-tdep.c (avr_pseudo_register_read): Likewise.
13825         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
13826         * frv-tdep.c (frv_pseudo_register_read): Likewise.
13827         * gdbarch.c: Re-generated.
13828         * gdbarch.h: Re-generated.
13829         * gdbarch.sh (pseudo_register_read): Change parameter type to
13830         'readable_regcache *'.
13831         (pseudo_register_read_value): Likewise.
13832         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
13833         (h8300_pseudo_register_read): Likewise.
13834         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
13835         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
13836         (i386_pseudo_register_read_into_value): Likewise.
13837         (i386_pseudo_register_read_value): Likewise.
13838         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
13839         declaration.
13840         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
13841         * m32c-tdep.c (m32c_raw_read): Likewise.
13842         (m32c_read_flg): Likewise.
13843         (m32c_banked_register): Likewise.
13844         (m32c_banked_read): Likewise.
13845         (m32c_sb_read): Likewise.
13846         (m32c_part_read): Likewise.
13847         (m32c_cat_read): Likewise.
13848         (m32c_r3r2r1r0_read): Likewise.
13849         (m32c_pseudo_register_read): Likewise.
13850         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
13851         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
13852         (mep_pseudo_cr64_read): Likewise.
13853         (mep_pseudo_register_read): Likewise.
13854         * mips-tdep.c (mips_pseudo_register_read): Likewise.
13855         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
13856         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
13857         * regcache.c (regcache::raw_read): Move it to readable_regcache.
13858         (regcache::cooked_read): Likewise.
13859         (regcache::cooked_read_value): Likewise.
13860         (regcache_cooked_read_signed):
13861         (regcache::cooked_read): Likewise.
13862         * regcache.h (readable_regcache): New class.
13863         (regcache): Inherit readable_regcache.  Move some methods to
13864         readable_regcache.
13865         * rl78-tdep.c (rl78_pseudo_register_read): Change
13866         parameter type to 'readable_regcache *'.
13867         * rs6000-tdep.c (do_regcache_raw_read): Remove.
13868         (e500_pseudo_register_read): Change parameter type to
13869         'readable_regcache *'.
13870         (dfp_pseudo_register_read): Likewise.
13871         (vsx_pseudo_register_read): Likewise.
13872         (efpr_pseudo_register_read): Likewise.
13873         * s390-tdep.c (s390_pseudo_register_read): Likewise.
13874         * sh-tdep.c (sh_pseudo_register_read): Likewise.
13875         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
13876         (sh64_pseudo_register_read): Likewise.
13877         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
13878         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
13879         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
13880         (spu_pseudo_register_read): Likewise.
13881         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
13882         (xtensa_pseudo_register_read): Likewise.
13883
13884 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13885
13886         * regcache.c (regcache::regcache): Call reg_buffer ctor.
13887         (regcache::arch): Move it to reg_buffer::arch.
13888         (regcache::register_buffer): Likewise.
13889         (regcache::assert_regnum): Likewise.
13890         (regcache::num_raw_registers): Likewise.
13891         * regcache.h (reg_buffer): New class.
13892         (regcache): Inherit reg_buffer.
13893
13894 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
13895
13896         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
13897         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
13898
13899 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
13900
13901         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
13902
13903 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
13904
13905         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
13906         (SFILES): Remove common/*.c files.
13907         (COMMON_OBS): Remove some *.o files built from common/*.c files.
13908         * common/common.host: Add common reference.
13909         * configure.ac: Likewise.
13910         * configure: Regenerate.
13911
13912 2018-02-16  Yao Qi  <yao.qi@linaro.org>
13913
13914         * block.c (block_namespace_info): Inherit allocate_on_obstack.
13915         (block_initialize_namespace): Use new.
13916         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
13917         (dwarf2_free_objfile): Use delete.
13918         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
13919         (copy_type_recursive): Use new.
13920         * gdb_obstack.h (allocate_on_obstack): New.
13921
13922 2018-02-15  Yao Qi  <yao.qi@linaro.org>
13923
13924         PR gdb/22849
13925         * inferior.c (exit_inferior_1): Reset inf->control.
13926
13927 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
13928
13929         * ada-lang.c (ada_to_fixed_value_create): Delete advance
13930         declaration.
13931
13932 2018-02-14  Pedro Alves  <palves@redhat.com>
13933
13934         * frame-unwind.c (frame_unwind_try_unwinder): Always call
13935         frame_cleanup_after_sniffer on exception.
13936
13937 2018-02-14  Tom Tromey  <tom@tromey.com>
13938
13939         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
13940         const.
13941         (solib_bfd_open): Make pathname const.
13942         * solib.c (solib_bfd_open): Make pathname const.
13943         * solib-spu.c (spu_bfd_fopen): Make name const.
13944         (spu_bfd_open): Make pathname const.
13945         * solib-darwin.c (darwin_bfd_open): Make pathname const.
13946         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
13947
13948 2018-02-14  Tom Tromey  <tom@tromey.com>
13949
13950         * symfile.c (symfile_bfd_open): Update.
13951         * source.h (openp, source_full_path_of, find_and_open_source):
13952         Change argument type to unique_xmalloc_ptr.
13953         * source.c (openp): Take a unique_xmalloc_ptr.
13954         (source_full_path_of, find_and_open_source): Likewise.
13955         (open_source_file, symtab_to_fullname): Update.
13956         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
13957         unique_xmalloc_ptr.
13958         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
13959         (exec_file_find): Update.
13960         * psymtab.c (psymtab_to_fullname): Update.
13961         * nto-tdep.h (nto_find_and_open_solib): Update.
13962         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
13963         unique_xmalloc_ptr.
13964         * exec.c (exec_file_attach): Update.
13965         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
13966         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
13967
13968 2018-02-14  Tom Tromey  <tom@tromey.com>
13969
13970         * solib.c: Include source.h.
13971         * nto-tdep.c: Include source.h.
13972         * mi/mi-cmd-env.c: Include source.h.
13973         * infcmd.c: Include source.h.
13974         * exec.c: Include source.h.
13975         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
13976         (add_path, directory_switch, source_path, init_source_path): Move
13977         declarations...
13978         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
13979         (add_path, directory_switch, source_path, init_source_path):
13980         ...here.
13981
13982 2018-02-14  Tom Tromey  <tom@tromey.com>
13983
13984         * solist.h (exec_file_find, solib_find): Return
13985         unique_xmalloc_ptr.
13986         (solib_bfd_fopen): Take a const char *.
13987         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
13988         (exec_file_find, solib_find): Likewise.
13989         (solib_bfd_fopen): Do not take ownership of "pathname".
13990         (solib_bfd_open): Use unique_xmalloc_ptr.
13991         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
13992         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
13993         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
13994         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
13995
13996 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
13997
13998         * ada-lang.c (name_match_type_from_name): Remove reference to
13999         ada_name_for_lookup in function's documentation.
14000         * ada-lang.h (ada_name_for_lookup): Delete declaration.
14001
14002 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
14003
14004         * defs.h (enum openp_flags): New enum.
14005         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
14006         Move to enum openp_flags.
14007         (openp_flags): New enum flags.
14008         (openp): Change parameter type to openp_flags.
14009         * source.c (openp): Change parameter type to openp_flags.
14010         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
14011         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
14012
14013 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
14014
14015         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
14016         per-command.
14017
14018 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
14019
14020         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
14021         into...
14022         (class dwarf2_queue_guard): ...the destructor of this new class.
14023         (dw2_do_instantiate_symtab): Create instance of the new class
14024         dwarf2_queue_guard, remove cleanup.
14025
14026 2018-02-09  Tom Tromey  <tom@tromey.com>
14027
14028         * source.c (find_source_lines): Don't reference past the end of
14029         the vector.
14030
14031 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14032
14033         * remote.c (remote_btrace_maybe_reopen): Change error message.
14034         * btrace.c (btrace_enable): Likewise.
14035         (parse_xml_btrace): Likewise.
14036         (parse_xml_btrace_conf): Likewise.
14037
14038 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14039
14040         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
14041         (linux_enable_pt, linux_enable_bts): Call
14042         diagnose_perf_event_open_fail.
14043
14044 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14045
14046         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
14047         Remove parameter and change return type.  Update callers.  Move it.
14048         (linux_enable_bts, linux_enable_pt): Improve error message.
14049         (linux_enable_pt): Remove zero buffer size check.
14050         (linux_enable_btrace): Improve error messages.  Remove NULL return
14051         check.
14052
14053 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14054
14055         * btrace.c (btrace_enable): Remove target_supports_btrace call.
14056         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
14057         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
14058         (linux_supports_pt, linux_supports_btrace): Remove.
14059         (linux_enable_bts): Call cpu_supports_bts.
14060         * nat/linux-btrace.h (linux_supports_btrace): Remove.
14061         * remote.c (remote_supports_btrace): Remove.
14062         (init_remote_ops): Remove remote_supports_btrace.
14063         * target-delegates.c: Regenerated.
14064         * target.c (target_supports_btrace): Remove.
14065         * target.h (target_ops) <to_supports_btrace>: Remove
14066         (target_supports_btrace): Remove.
14067         * x86-linux-nat.c (x86_linux_create_target): Remove
14068         linux_supports_btrace.
14069
14070 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14071
14072         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
14073         btrace failed.
14074         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
14075         exception and use message in own exception.
14076
14077 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14078
14079         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
14080         (perf_event_pt_event_type): Use gdb_file_up.
14081         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
14082         scoped_fd, and scoped_mmap.
14083
14084 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14085
14086         * common/scoped_mmap.h: New.
14087         * unittests/scoped_mmap-selftest.c: New.
14088         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14089         unittests/scoped_mmap-selftest.c.
14090
14091 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14092
14093         * common/scoped_fd.h: New.
14094         * unittests/scoped_fd-selftest.c: New.
14095         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14096         unittests/scoped_fd-selftest.c.
14097
14098 2018-02-09  Tom Tromey  <tom@tromey.com>
14099
14100         * auto-load.c (auto_load_section_scripts): Use
14101         gdb::unique_xmalloc_ptr.
14102
14103 2018-02-09  Tom Tromey  <tom@tromey.com>
14104
14105         * auto-load.c (execute_script_contents): Use std::string.
14106
14107 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
14108
14109         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
14110         Python function, rather than a new command.
14111
14112 2018-02-08  Tom Tromey  <tom@tromey.com>
14113
14114         * solib.c (solib_find_1): Use std::string.
14115         (solib_bfd_fopen): Use unique_xmalloc_ptr.
14116
14117 2018-02-08  Tom Tromey  <tom@tromey.com>
14118
14119         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
14120
14121 2018-02-08  Tom Tromey  <tom@tromey.com>
14122
14123         * source.c (find_source_lines): Use gdb::def_vector.
14124
14125 2018-02-08  Tom Tromey  <tom@tromey.com>
14126
14127         * macrocmd.c (struct temporary_macro_definition): New.
14128         (macro_define_command): Use temporary_macro_definition.  Remove
14129         cleanups.
14130         (free_macro_definition_ptr): Remove.
14131
14132 2018-02-08  Tom Tromey  <tom@tromey.com>
14133
14134         * macroexp.c (maybe_expand): Use std::string.
14135
14136 2018-02-08  Tom Tromey  <tom@tromey.com>
14137
14138         * macroexp.c (struct macro_buffer): Add initializers for some
14139         members.
14140         (init_buffer, init_shared_buffer, free_buffer)
14141         (free_buffer_return_text): Remove.
14142         (macro_buffer): New constructors.
14143         (~macro_buffer): New destructor.
14144         (macro_buffer::set_shared): New method.
14145         (macro_buffer::resize_buffer, macro_buffer::appendc)
14146         (macro_buffer::appendmem): Now methods, not free functions.
14147         (set_token, append_tokens_without_splicing, stringify)
14148         (macro_stringify): Update.
14149         (gather_arguments): Change return type.  Remove argc_p argument,
14150         add args_ptr argument.  Use std::vector.
14151         (substitute_args): Remove argc argument.  Accept std::vector.
14152         (expand): Update.  Use std::vector.
14153         (scan, macro_expand, macro_expand_next): Update.
14154
14155 2018-02-08  Tom Tromey  <tom@tromey.com>
14156
14157         * symtab.c (default_collect_symbol_completion_matches_break_on):
14158         Use unique_xmalloc_ptr.
14159         * macroscope.h: (sal_macro_scope, user_macro_scope)
14160         (default_macro_scope): Return unique_xmalloc_ptr.
14161         * macroscope.c (sal_macro_scope, user_macro_scope)
14162         (default_macro_scope): Return unique_xmalloc_ptr.
14163         * macroexp.h (macro_expand, macro_expand_once): Return
14164         unique_xmalloc_ptr.
14165         * macroexp.c (macro_expand, macro_expand_once): Return
14166         unique_xmalloc_ptr.
14167         * macrocmd.c (macro_expand_command, macro_expand_once_command)
14168         (info_macro_command, info_macros_command): Use
14169         unique_xmalloc_ptr.
14170         * compile/compile-c-support.c (write_macro_definitions): Use
14171         unique_xmalloc_ptr.
14172         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
14173
14174 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
14175
14176         * value.c (value_static_field): Assign field type instead of
14177         containing type when returning an optimized out value.
14178
14179 2018-02-06  Yao Qi  <yao.qi@linaro.org>
14180
14181         * ft32-tdep.c (ft32_read_pc): Remove.
14182         (ft32_write_pc): Remove.
14183         (ft32_gdbarch_init): Update.
14184         * m32r-tdep.c (m32r_read_pc): Remove.
14185         (m32r_gdbarch_init): Update.
14186         * mep-tdep.c (mep_read_pc): Remove.
14187         (mep_gdbarch_init): Update.
14188         * microblaze-tdep.c (microblaze_write_pc): Remove.
14189         (microblaze_gdbarch_init): Update.
14190         * mn10300-tdep.c (mn10300_read_pc): Remove.
14191         (mn10300_write_pc): Remove.
14192         (mn10300_gdbarch_init): Update.
14193         * moxie-tdep.c (moxie_read_pc): Remove.
14194         (moxie_write_pc): Remove.
14195         (moxie_gdbarch_init): Update.
14196
14197 2018-02-06  Yao Qi  <yao.qi@linaro.org>
14198
14199         * expprint.c (print_subexp_standard): Handle
14200         OP_F77_UNDETERMINED_ARGLIST.
14201         (dump_subexp_body_standard): Likewise.
14202
14203 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
14204
14205         * target-descriptions.c (tdesc_element_visitor) Add empty
14206         implementations.
14207         (tdesc_type): Move make_gdb_type from here.
14208         (tdesc_type_builtin): Likewise.
14209         (tdesc_type_vector): Likewise.
14210         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
14211         (make_gdb_type_struct): Move from tdesc_type_with_fields.
14212         (make_gdb_type_union): Likewise.
14213         (make_gdb_type_flags): Likewise.
14214         (make_gdb_type_enum): Likewise.
14215         (make_gdb_type): New function.
14216         (tdesc_register_type): Use static make_gdb_type.
14217
14218 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
14219
14220         * infcmd.c (default_print_one_register_info): Align natural-format
14221         column values consistently one under another.
14222         (pad_to_column): New function.
14223
14224 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
14225
14226         * dwarf2read.c (dwarf2_physname): Move commment.
14227
14228 2018-02-01  Leszek Swirski  <leszeks@google.com>
14229
14230         * varobj.c (varobj_formatted_print_options): Allow recursive
14231         pretty printing if pretty printing is enabled.
14232
14233 2018-02-01  Leszek Swirski  <leszeks@google.com>
14234
14235         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
14236         names after a structop as a filename.
14237
14238 2018-02-01  Yao Qi  <yao.qi@linaro.org>
14239
14240         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
14241         (arm_record_coproc_data_proc): Likewise.
14242
14243 2018-02-01  Yao Qi  <yao.qi@linaro.org>
14244
14245         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
14246
14247 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
14248
14249         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
14250         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
14251
14252 2018-01-31  Pedro Alves  <palves@redhat.com>
14253
14254         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
14255         * inflow.c (child_terminal_save_inferior): Wrap reference to
14256         tcgetpgrp in HAVE_TERMIOS_H.
14257         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
14258         _WIN32.
14259         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
14260         always iterate over all inferiors.
14261         (gdbsim_cntrl_c): Adjust.
14262         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
14263
14264 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
14265
14266         * gdbtypes.c (lookup_array_range_type): Make sure the array's
14267         index type is objfile-owned if the element type is as well.
14268
14269 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
14270
14271         GDB 8.1 released.
14272
14273 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14274
14275         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
14276         "features/s390x-linux64.c".
14277         (_initialize_s390_linux_tdep): Remove initialization of tdescs
14278         s390_linux32 and s390x_linux64.
14279         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
14280         default tdesc.
14281         * s390-tdep.c: Include "features/s390-linux32.c" and
14282         "features/s390x-linux64.c".
14283         (s390_tdesc_valid): Add check for tdesc_has_registers.
14284         (s390_gdbarch_init): Make sure there is always a valid tdesc.
14285         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
14286         tdesc_s390x_linux64.
14287         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
14288         tdesc_s390x_linux64 to...
14289         * s390-tdep.h: ...here.
14290
14291 2018-01-30  Pedro Alves  <palves@redhat.com>
14292
14293         PR gdb/13211
14294         * config.in, configure: Regenerate.
14295         * configure.ac: Check for getpgid.
14296         * go32-nat.c (go32_pass_ctrlc): New.
14297         (go32_target): Install it.
14298         * inf-child.c (inf_child_target): Install
14299         child_terminal_save_inferior, child_pass_ctrlc and
14300         child_interrupt.
14301         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
14302         (inf_ptrace_target): No longer install it.
14303         * infcmd.c (interrupt_target_1): Adjust.
14304         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
14305         (child_interrupt): Declare.
14306         (inferior::terminal_state): New.
14307         * inflow.c (struct terminal_info): Update comments.
14308         (inferior_process_group): Delete.
14309         (terminal_is_ours): Delete.
14310         (gdb_tty_state): New.
14311         (child_terminal_init): Adjust.
14312         (is_gdb_terminal, sharing_input_terminal_1)
14313         (sharing_input_terminal): New functions.
14314         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
14315         Set the process's actual process group in the foreground if
14316         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
14317         mark terminal as the inferior's if not sharing GDB's terminal.
14318         Don't check attach_flag.
14319         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
14320         pass down a target_terminal_state.
14321         (child_terminal_save_inferior): New, factored out from ...
14322         (child_terminal_ours_1): ... this.  Handle
14323         target_terminal_state::is_ours_for_output.
14324         (child_interrupt, child_pass_ctrlc): New.
14325         (inflow_inferior_exit): Clear the inferior's terminal_state.
14326         (copy_terminal_info): Copy the inferior's terminal state.
14327         (_initialize_inflow): Remove reference to terminal_is_ours.
14328         * inflow.h (inferior_process_group): Delete.
14329         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
14330         * procfs.c (procfs_target): Don't install procfs_interrupt.
14331         (procfs_interrupt): Delete.
14332         * remote.c (remote_serial_quit_handler): Adjust.
14333         (remote_interrupt): Remove ptid parameter.  Adjust.
14334         * target-delegates.c: Regenerate.
14335         * target.c: Include "terminal.h".
14336         (target_terminal::terminal_state): Rename to ...
14337         (target_terminal::m_terminal_state): ... this.
14338         (target_terminal::init): Adjust.
14339         (target_terminal::inferior): Adjust to per-inferior
14340         terminal_state.
14341         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
14342         (target_terminal::ours, target_terminal::ours_for_output): Use
14343         target_terminal_is_ours_kind.
14344         (target_interrupt): Remove ptid parameter.  Adjust.
14345         (default_target_pass_ctrlc): Adjust.
14346         * target.h (target_ops::to_terminal_save_inferior): New field.
14347         (target_ops::to_interrupt): Remove ptid_t parameter.
14348         (target_interrupt): Remove ptid_t parameter.  Update comment.
14349         (target_pass_ctrlc): Update comment.
14350         * target/target.h (target_terminal_state): New scoped enum,
14351         factored out of ...
14352         (target_terminal::terminal_state): ... here.
14353         (target_terminal::inferior): Update comments.
14354         (target_terminal::restore_inferior): New.
14355         (target_terminal::is_inferior, target_terminal::is_ours)
14356         (target_terminal::is_ours_for_output): Adjust.
14357         (target_terminal::scoped_restore_terminal_state): Adjust to
14358         rename, and call restore_inferior() instead of inferior().
14359         (target_terminal::scoped_restore_terminal_state::m_state): Change
14360         type.
14361         (target_terminal::terminal_state): Rename to ...
14362         (target_terminal::m_terminal_state): ... this and change type.
14363
14364 2018-01-30  Pedro Alves  <palves@redhat.com>
14365
14366         * linux-nat.c (wait_for_signal): New function.
14367         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
14368         directly.
14369         (async_terminal_is_ours)
14370         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
14371         (linux_nat_add_target): Don't override
14372         to_terminal_inferior/to_terminal_ours.
14373
14374 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
14375
14376         * remote.c (remote_follow_fork): Don't call "detach_inferior".
14377
14378 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
14379
14380         * dwarf2read.c (free_dwo_files): Add forward-declaration.
14381         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
14382         dwarf2_per_objfile_free here.
14383         (dwarf2_per_objfile_free): Remove.
14384         (_initialize_dwarf2_read): Don't register
14385         dwarf2_per_objfile_free as a registry cleanup.
14386
14387 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
14388
14389         Avoid compilation errors in MinGW native builds
14390
14391         The error is triggered by including python-internal.h, and the
14392         error message is:
14393
14394              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
14395                       from build-gnulib/import/math.h:27,
14396                       from d:/usr/Python26/include/pyport.h:235,
14397                       from d:/usr/Python26/include/Python.h:58,
14398                       from python/python-internal.h:94,
14399                       from python/py-arch.c:24:
14400              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
14401         using ::hypot;
14402                 ^~~~~
14403
14404         This happens because Python headers define 'hypot' to expand t
14405         '_hypot' in the Windows builds.
14406         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
14407         'hypoth'.  This avoids a compilation error.
14408
14409 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
14410
14411         * MAINTAINERS (Write After Approval): Fix ordering.
14412
14413 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
14414
14415         * MAINTAINERS (Write After Approval): Add Alan Hayward.
14416
14417 2018-01-26  Alan Modra  <amodra@gmail.com>
14418
14419         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
14420         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
14421         Remove nop.  Make const.  Comment.
14422         (powerpc32_plt_stub_so_2): New.
14423         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
14424         Correct count.  Update uses.
14425         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
14426         Move common code reading PLT entry word.  Correct
14427         powerpc32_plt_stub PLT address calculation.
14428         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
14429         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
14430         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
14431         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
14432         (ppc64_standard_linkage8): Likewise.
14433         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
14434         Correct insns description.
14435         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
14436
14437 2018-01-24  Pedro Alves  <palves@redhat.com>
14438
14439         GCC PR libstdc++/83906
14440         * gdbtypes.c (operator==(const dynamic_prop &,
14441         const dynamic_prop &)): New.
14442         (operator==(const range_bounds &, const range_bounds &)): New.
14443         (check_types_equal): Use them instead of memcmp.
14444         * gdbtypes.h (operator==(const dynamic_prop &,
14445         const dynamic_prop &)): Declare.
14446         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
14447         (operator==(const range_bounds &, const range_bounds &)): Declare.
14448         (operator!=(const range_bounds &, const range_bounds &)): Declare.
14449
14450 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14451
14452         * s390-linux-tdep.c (s390_record_address_mask)
14453         (s390_record_calc_disp_common, s390_record_calc_disp)
14454         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
14455         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
14456         (s390_process_record): Move to s390-tdep.c.
14457         (s390_linux_init_abi_any): Adjust.
14458         * s390-tdep.c (s390_record_address_mask)
14459         (s390_record_calc_disp_common, s390_record_calc_disp)
14460         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
14461         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
14462         (s390_process_record): Moved from s390-linux-tdep.c
14463         (s390_gdbarch_init): Adjust.
14464
14465 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14466
14467         * s390-linux-nat.c (s390-tdep.h): New include.
14468         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
14469         (HFILES_NO_SRCDIR): Add s390-tdep.h.
14470         (ALLDEPFILES): Add s390-tdep.c.
14471         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
14472         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
14473         * s390-tdep.h: ...this.  New file.
14474         * s390-linux-tdep.c (s390-tdep.h): New include.
14475         (_initialize_s390_tdep): Rename to...
14476         (_initialize_s390_linux_tdep): ...this and adjust.
14477         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
14478         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
14479         s390-tdep.h.
14480         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
14481         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
14482         (s390_is_partial_instruction, s390_software_single_step)
14483         (is_non_branch_ril, s390_displaced_step_copy_insn)
14484         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
14485         (s390_prologue_data, s390_addr, s390_store, s390_load)
14486         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
14487         (s390_register_call_saved, s390_guess_tracepoint_registers)
14488         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
14489         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
14490         (s390_pseudo_register_name, s390_pseudo_register_type)
14491         (s390_pseudo_register_read, s390_pseudo_register_write)
14492         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
14493         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
14494         (s390_addr_bits_remove, s390_address_class_type_flags)
14495         (s390_address_class_type_flags_to_name)
14496         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
14497         (s390_function_arg_float, s390_function_arg_vector)
14498         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
14499         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
14500         (s390_frame_align, s390_register_return_value, s390_return_value)
14501         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
14502         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
14503         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
14504         (s390_trad_frame_prev_register, s390_unwind_cache)
14505         (s390_prologue_frame_unwind_cache)
14506         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
14507         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
14508         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
14509         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
14510         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
14511         (s390_frame_base_address, s390_local_base_address)
14512         (s390_frame_base, s390_gcc_target_options)
14513         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
14514         (s390_validate_reg_range, s390_tdesc_valid)
14515         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
14516         * s390-tdep.c: ...this.  New file.
14517
14518 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14519
14520         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
14521         (s390_process_record, s390_gdbarch_tdep_alloc)
14522         (s390_linux_init_abi_any): Use/set new hook.
14523
14524 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14525
14526         * s390-linux-tdep.c (osabi.h): New include.
14527         (s390_linux_init_abi_31, s390_linux_init_abi_64)
14528         (s390_linux_init_abi_any): New functions.
14529         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
14530
14531 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14532
14533         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
14534         tdesc_has_registers check
14535
14536 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14537
14538         * s390-linux-tdep.c (s390_tdesc_valid): New function.
14539         (s390_validate_reg_range): New macro.
14540         (s390_gdbarch_init): Adjust.
14541
14542 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14543
14544         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
14545         (s390_gdbarch_tdep_alloc): Adjust.
14546         (s390_gdbarch_init): Adjust.
14547
14548 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14549
14550         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
14551         <have_tdb>: Change type to bool.
14552         (s390_gdbarch_tdep_alloc): Adjust.
14553         (s390_gdbarch_init): Adjust.
14554
14555 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14556
14557         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
14558         (gdbarch_tdep) <have_upper, have_vx>: New fields.
14559         (s390_gdbarch_tdep_alloc): New function.
14560         (s390_gdbarch_init): Allocate tdep at start and use its fields
14561         instead of separate variables.
14562
14563 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14564
14565         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
14566         when looking for cached gdbarch and add comment for remaining.
14567
14568 2018-01-22  Pedro Alves  <palves@redhat.com>
14569             Sergio Durigan Junior  <sergiodj@redhat.com>
14570
14571         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
14572         case.
14573
14574 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
14575
14576         * MAINTAINERS: Update my company e-mail address.
14577
14578 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14579
14580         * regcache.c (cooked_write_test): New function.
14581         (_initialize_regcache): Register the test.
14582
14583 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14584
14585         * ia64-tdep.c (ia64_pseudo_register_read): Call
14586         regcache->cooked_read instead of regcache_cooked_read_unsigned.
14587         * m32c-tdep.c (m32c_cat_read): Likewise.
14588         (m32c_r3r2r1r0_read): Likewise.
14589         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
14590         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
14591
14592 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14593
14594         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
14595         method raw_read instead of regcache_raw_read.
14596         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
14597         * arm-tdep.c (arm_neon_quad_read): Likewise.
14598         * avr-tdep.c (avr_pseudo_register_read): Likewise.
14599         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
14600         * frv-tdep.c (frv_pseudo_register_read): Likewise.
14601         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
14602         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
14603         (i386_pseudo_register_read_into_value): Likewise.
14604         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
14605         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
14606         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
14607         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
14608         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
14609         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
14610         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
14611         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
14612         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
14613
14614 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14615
14616         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
14617         * configure.tgt: Remove target mt.
14618         * mt-tdep.c: Remove.
14619         * regcache.c (cooked_read_test): Remove the check for mt.
14620
14621 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14622
14623         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
14624         instead of gdbarch_pseudo_register_read_value.
14625
14626 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
14627
14628         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
14629         language is Ada.
14630
14631 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
14632
14633         * linespec.c (create_sals_line_offset): Remove code that preserved
14634         the symtab_and_line's line number.
14635
14636 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14637
14638         * varobj.c (varobj_create): Don't set valid_block when creating a
14639         floating varobj.
14640
14641 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14642
14643         * varobj.c (varobj_create): Remove out of date comment.
14644
14645 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14646
14647         PR mi/20395
14648         * ada-exp.y (write_var_from_sym): Pass extra parameter when
14649         updating innermost block.
14650         * parse.c (innermost_block_tracker::update): Take extra type
14651         parameter, and check types match before updating innermost block.
14652         (write_dollar_variable): Update innermost block for registers.
14653         * parser-defs.h (enum innermost_block_tracker_type): New enum.
14654         (innermost_block_tracker::innermost_block_tracker): Initialise
14655         m_types member.
14656         (innermost_block_tracker::reset): Take type parameter.
14657         (innermost_block_tracker::update): Take type parameter, and pass
14658         type through as needed.
14659         (innermost_block_tracker::m_types): New member.
14660         * varobj.c (varobj_create): Pass type when reseting innermost
14661         block.
14662
14663 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14664
14665         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
14666         * ada-lang.c (resolve_subexp): Likewise.
14667         * breakpoint.c (set_breakpoint_condition) Likewise.
14668         (watch_command_1) Likewise.
14669         * c-exp.y (variable): Likewise.
14670         * d-exp.y (PrimaryExpression): Likewise.
14671         * f-exp.y (variable): Likewise.
14672         * go-exp.y (variable): Likewise.
14673         * m2-exp.y (variable): Likewise.
14674         * objfiles.c (objfile::~objfile): Likewise.
14675         * p-exp.y (variable): Likewise.
14676         * parse.c (innermost_block): Change type.
14677         * parser-defs.h (class innermost_block_tracker): New.
14678         (innermost_block): Change to innermost_block_tracker.
14679         * printcmd.c (display_command): Switch to innermost_block API.
14680         (do_one_display): Likewise.
14681         * rust-exp.y (do_one_display): Likewise.
14682         * symfile.c (clear_symtab_users): Likewise.
14683         * varobj.c (varobj_create): Switch to innermost_block API, replace
14684         use of innermost_block with block stored on varobj object.
14685
14686 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14687
14688         * expression.h (innermost_block): Remove declaration.
14689         * varobj.c: Add 'parser-defs.h' include.
14690
14691 2018-01-19  Tom Tromey  <tom@tromey.com>
14692
14693         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
14694         symbols in the static and global blocks.
14695
14696 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
14697
14698         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
14699         gdb_ptrace.h, and move including gdb_wait.h ...
14700         * nat/linux-ptrace.h: ... to here.
14701
14702 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14703
14704         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
14705         inf_ptrace_detach_success.
14706         (inf_ptrace_detach_success): Add inferior parameter, use it
14707         instead of inferior_ptid, pass it to detach_inferior.
14708         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
14709         parameter.
14710         * inferior.c (detach_inferior): Add overload that takes an
14711         inferior object.
14712         * inferior.h (detach_inferior): Likewise.
14713         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
14714         use inferior_ptid, adjust call to inf_ptrace_detach_success.
14715         * linux-thread-db.c (thread_db_detach): Use inf parameter.
14716
14717 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14718
14719         * target.h (struct target_ops) <to_detach>: Add inferior
14720         parameter.
14721         (target_detach): Likewise.
14722         * target.c (dispose_inferior): Pass inferior down.
14723         (target_detach): Pass inferior down.  Assert that it is equal to
14724         the current inferior.
14725         * aix-thread.c (aix_thread_detach): Pass inferior down.
14726         * corefile.c (core_file_command): Pass current_inferior() down.
14727         * corelow.c (core_detach): Add inferior parameter.
14728         * darwin-nat.c (darwin_detach): Likewise.
14729         * gnu-nat.c (gnu_detach): Likewise.
14730         * inf-ptrace.c (inf_ptrace_detach): Likewise.
14731         * infcmd.c (detach_command): Pass current_inferior() down to
14732         target_detach.
14733         * infrun.c (follow_fork_inferior): Pass parent_inf to
14734         target_detach.
14735         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
14736         target_detach.
14737         * linux-nat.c (linux_nat_detach): Add inferior parameter.
14738         * linux-thread-db.c (thread_db_detach): Likewise.
14739         * nto-procfs.c (procfs_detach): Likewise.
14740         * procfs.c (procfs_detach): Likewise.
14741         * record.c (record_detach): Likewise.
14742         * record.h (struct inferior): Forward-declare.
14743         (record_detach): Add inferior parameter.
14744         * remote-sim.c (gdbsim_detach): Likewise.
14745         * remote.c (remote_detach_1): Likewise.
14746         (remote_detach): Likewise.
14747         (extended_remote_detach): Likewise.
14748         * sol-thread.c (sol_thread_detach): Likewise.
14749         * target-debug.h (target_debug_print_inferior_p): New macro.
14750         * target-delegates.c: Re-generate.
14751         * top.c (kill_or_detach): Pass inferior down to target_detach.
14752         * windows-nat.c (windows_detach): Add inferior parameter.
14753
14754 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14755
14756         * target.h (struct target_ops) <to_detach>: Remove args
14757         parameter.
14758         (target_detach): Likewise.
14759         * target.c (dispose_inferior): Adjust.
14760         (target_detach): Remove args parameter, adjust.
14761         * aix-thread.c (aix_thread_detach): Adjust.
14762         * corefile.c (core_file_command): Adjust.
14763         * corelow.c (core_detach): Adjust.
14764         * darwin-nat.c (darwin_detach): Adjust.
14765         * gnu-nat.c (gnu_detach): Adjust.
14766         * inf-ptrace.c (inf_ptrace_detach): Adjust.
14767         * infcmd.c (detach_command): Adjust
14768         * infrun.c (follow_fork_inferior): Adjust.
14769         (handle_vfork_child_exec_or_exit): Adjust.
14770         * linux-fork.c (linux_fork_detach): Remove args parameter.
14771         * linux-fork.h (linux_fork_detach): Likewise.
14772         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
14773         * linux-thread-db.c (thread_db_detach): Likewise.
14774         * nto-procfs.c (procfs_detach): Likewise.
14775         * procfs.c (procfs_detach): Likewise.
14776         (do_detach): Remove signo parameter.
14777         * record.c (record_detach): Remove args parameter.
14778         * record.h (record_detach): Likewise.
14779         * remote-sim.c (gdbsim_detach): Likewise.
14780         * remote.c (remote_detach_1): Likewise.
14781         (remote_detach): Likewise.
14782         (extended_remote_detach): Likewise.
14783         * sol-thread.c (sol_thread_detach): Likewise.
14784         * target-delegates.c: Re-generate.
14785         * top.c (struct qt_args) <args>: Remove field.
14786         (kill_or_detach): Don't pass args.
14787         (quit_force): Don't set args.
14788         * windows-nat.c (windows_detach): Remove args parameter.
14789
14790 2018-01-19  Yao Qi  <yao.qi@linaro.org>
14791
14792         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
14793         (arm_linux_init_abi): Install it.
14794
14795 2018-01-19  Yao Qi  <yao.qi@linaro.org>
14796
14797         * osabi.c (gdb_osabi_names): Extend the regexp for
14798         arm-linux-gnueabihf.
14799
14800 2018-01-18  Yao Qi  <yao.qi@linaro.org>
14801
14802         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
14803         m_abbrevs.
14804         (abbrev_table::add_abbrev): Update.
14805         (abbrev_table::lookup_abbrev): Update.
14806
14807 2018-01-18  Yao Qi  <yao.qi@linaro.org>
14808
14809         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
14810
14811 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
14812
14813         * compile/compile.c (compile_to_object): Convert "triplet_rx"
14814         to "std::string".
14815
14816 2018-01-17  Tom Tromey  <tom@tromey.com>
14817
14818         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
14819
14820 2018-01-17  Tom Tromey  <tom@tromey.com>
14821
14822         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
14823         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
14824         (create_array_type_with_stride): Update.
14825         * dwarf2read.c (set_die_type): Update.
14826
14827 2018-01-17  Tom Tromey  <tom@tromey.com>
14828
14829         * dwarf2read.c (delayed_method_info): Remove typedef.
14830         (dwarf2_cu::method_info): Now a std::vector.
14831         (add_to_method_list): Update.
14832         (free_delayed_list): Remove.
14833         (compute_delayed_physnames): Update.
14834         (process_full_comp_unit, process_full_type_unit): Clear the method
14835         list.  Remove cleanups.
14836         (psymtab_include_file_name): Add name_holder parameter.  Use
14837         unique_xmalloc_ptr.
14838         (dwarf_decode_lines): Update.
14839
14840 2018-01-17  Tom Tromey  <tom@tromey.com>
14841             Simon Marchi  <simon.marchi@ericsson.com>
14842
14843         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
14844         (dwarf2_per_objfile::free_cached_comp_units)
14845         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
14846         (init_cutu_and_read_dies_no_follow): Update.
14847         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
14848         (dwarf2_cu::~dwarf2_cu): New.
14849         (free_heap_comp_unit, free_stack_comp_unit): Remove.
14850         (age_cached_comp_units, free_one_cached_comp_unit): Update.
14851
14852 2018-01-17  Tom Tromey  <tom@tromey.com>
14853             Simon Marchi  <simon.marchi@ericsson.com>
14854
14855         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
14856         (struct die_reader_specs) <abbrev_table>: New member.
14857         (struct abbrev_table): Add constructor.
14858         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
14859         <abbrev_obstack>: Now an auto_obstack.
14860         (abbrev_table_up): New typedef.
14861         (init_cu_die_reader): Add abbrev_table parameter.
14862         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
14863         Add result_dwo_abbrev_table.
14864         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
14865         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
14866         Update.
14867         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
14868         parameter.
14869         (skip_children): Update.
14870         (abbrev_table::alloc_abbrev): Rename from
14871         abbrev_table_alloc_abbrev.
14872         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
14873         (abbrev_table::lookup_abbrev): Rename from
14874         abbrev_table_lookup_abbrev.
14875         (abbrev_table_read_table): Return abbrev_table_up.
14876         (abbrev_table_free, abbrev_table_free_cleanup)
14877         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
14878         (load_partial_dies): Update.
14879
14880 2018-01-17  Tom Tromey  <tom@tromey.com>
14881
14882         * dwarf2read.c (dwarf2_compute_name): Update comment.
14883         (read_func_scope, read_variable): Update.
14884         (new_symbol): Remove.
14885         (new_symbol_full): Rename to new_symbol.
14886
14887 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
14888
14889         PR gdb/16577
14890         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
14891         a warning instead of throwing an error, set section size to 0 and return
14892         NULL.
14893         * gdb_bfd.h (gdb_bfd_map_section): Update description.
14894
14895 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14896
14897         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
14898         std::string.
14899         (linux_ptrace_attach_fail_reason_string): Likewise.
14900         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
14901         Likewise.
14902         (linux_ptrace_attach_fail_reason_string): Likewise.
14903         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
14904
14905 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14906
14907         * linux-nat.c (linux_nat_attach): Remove xstrdup.
14908
14909 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
14910
14911         PR gdb/21559
14912         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
14913         checking for fs_base/gs_base fields in struct user_regs_struct.
14914         * configure: Regenerate.
14915
14916 2018-01-17  Yao Qi  <yao.qi@linaro.org>
14917
14918         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
14919         function.
14920         (aarch64_linux_init_abi): Install it to gdbarch hook
14921         gcc_target_options.
14922
14923 2018-01-15  Pedro Alves  <palves@redhat.com>
14924
14925         * common/signals-state-save-restore.c
14926         (save_original_signals_state): Fix typos.
14927
14928 2017-01-12  Tom Tromey  <tom@tromey.com>
14929             Sergio Durigan Junior  <sergiodj@redhat.com>
14930
14931         * Makefile.in (install-only): Install gdb-add-index.
14932
14933 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
14934
14935         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
14936
14937 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
14938
14939         * infrun.c (keep_going_pass_signal): Clear step-over info when
14940         insert_breakpoints fails.
14941
14942 2018-01-11  Pedro Alves  <palves@redhat.com>
14943
14944         PR gdb/22583
14945         * infrun.c (resume): Rename to ...
14946         (resume_1): ... this.
14947         (resume): Reimplement as wrapper around resume_1.
14948
14949 2018-01-11  Pedro Alves  <palves@redhat.com>
14950
14951         PR remote/22597
14952         * remote.c (remote_parse_stop_reply): Default to the last-set
14953         general thread instead of to 'magic_null_ptid'.
14954
14955 2018-01-10  Pedro Alves  <palves@redhat.com>
14956
14957         * language.h (language_get_symbol_name_matcher): Rename ...
14958         (get_symbol_name_matcher): ... this.
14959         * language.c (language_get_symbol_name_matcher): Ditto.
14960         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
14961         callers adjusted.
14962
14963 2018-01-10  Pedro Alves  <palves@redhat.com>
14964
14965         PR gdb/22670
14966         * dwarf2read.c
14967         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
14968         Adjust to use language_get_symbol_name_matcher instead of
14969         language_defn::la_get_symbol_name_matcher.
14970         * language.c (language_get_symbol_name_matcher): If in Ada mode
14971         and the lookup name is a verbatim match, return Ada's matcher.
14972         * language.h (language_get_symbol_name_matcher): Adjust comment.
14973         (ada_lookup_name_info::verbatim_p):: New method.
14974
14975 2018-01-10  Pedro Alves  <palves@redhat.com>
14976
14977         PR gdb/22670
14978         * ada-lang.c (ada_collect_symbol_completion_matches): If the
14979         minsym's language is language_auto or language_cplus, pass down
14980         language_ada instead.
14981         * symtab.c (compare_symbol_name): Don't frob symbol language here.
14982
14983 2018-01-10  Pedro Alves  <palves@redhat.com>
14984
14985         PR gdb/22670
14986         * minsyms.c (linkage_name_str): New function.
14987         (iterate_over_minimal_symbols): Use it.
14988
14989 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14990
14991         * NEWS: Document that 'info proc' now works on FreeBSD.
14992
14993 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14994
14995         * configure.ac: Check for kinfo_getfile in libutil.
14996         * configure: Regenerate.
14997         * config.in: Regenerate.
14998         * fbsd-nat.c: Include "fbsd-tdep.h".
14999         (fbsd_fetch_cmdline): New.
15000         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
15001         rather than calling error.
15002         (fbsd_info_proc): New.
15003         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
15004         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
15005         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
15006
15007 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15008
15009         * fbsd-nat.c (struct free_deleter): Remove.
15010         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
15011
15012 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15013
15014         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
15015         NULL for an empty pathname.
15016
15017 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15018
15019         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
15020         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
15021         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
15022         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
15023         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
15024         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
15025         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
15026         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
15027         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
15028         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
15029         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
15030         (fbsd_core_fetch_timeval, fbsd_print_sigset)
15031         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
15032         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
15033         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
15034
15035 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
15036
15037         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
15038         (gnu_xfer_auxv): New function.
15039         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
15040         TARGET_OBJECT_AUXV.
15041
15042 2018-01-08  Yao Qi  <yao.qi@linaro.org>
15043             Simon Marchi  <simon.marchi@ericsson.com>
15044
15045         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
15046         common/selftest.c.
15047         (COMMON_OBS): Remove selftest.o.
15048         * configure.ac: Append selftest-arch.c and common/selftest.c to
15049         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
15050         * configure: Re-generated.
15051         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
15052         GDB_SELF_TEST.
15053         (maintenance_info_selftests): Likewise.
15054
15055 2018-01-08  Xavier Roirand  <roirand@adacore.com>
15056
15057         * ada-valprint.c (val_print_packed_array_elements): Use
15058         proper number of elements when printing an array indexed
15059         by an enumeration type.
15060
15061 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15062
15063         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
15064         (dw2_get_file_names_reader): Adjust.
15065         (lookup_dwo_signatured_type): Adjust.
15066         (lookup_dwp_signatured_type): Adjust.
15067         (lookup_signatured_type): Adjust.
15068         (create_type_unit_group): Adjust.
15069         (get_type_unit_group): Adjust.
15070         (process_psymtab_comp_unit_reader): Adjust.
15071         (build_type_psymtabs_reader): Adjust.
15072         (scan_partial_symbols): Adjust.
15073         (add_partial_symbol): Adjust.
15074         (add_partial_subprogram): Adjust.
15075         (peek_die_abbrev): Adjust.
15076         (fixup_go_packaging): Adjust.
15077         (process_imported_unit_die): Adjust.
15078         (dwarf2_compute_name): Adjust.
15079         (dwarf2_physname): Adjust.
15080         (read_import_statement): Adjust.
15081         (handle_DW_AT_stmt_list): Adjust.
15082         (read_file_scope): Adjust.
15083         (read_func_scope): Adjust.
15084         (read_lexical_block_scope): Adjust.
15085         (read_call_site_scope): Adjust.
15086         (read_variable): Adjust.
15087         (dwarf2_rnglists_process): Adjust.
15088         (dwarf2_ranges_process): Adjust.
15089         (dwarf2_ranges_read): Adjust.
15090         (dwarf2_get_pc_bounds): Adjust.
15091         (dwarf2_record_block_ranges): Adjust.
15092         (dwarf2_add_field): Adjust.
15093         (dwarf2_add_member_fn): Adjust.
15094         (read_structure_type): Adjust.
15095         (process_structure_scope): Adjust.
15096         (read_enumeration_type): Adjust.
15097         (read_array_type): Adjust.
15098         (mark_common_block_symbol_computed): Adjust.
15099         (read_common_block): Adjust.
15100         (read_namespace_type): Adjust.
15101         (read_namespace): Adjust.
15102         (read_module_type): Adjust.
15103         (read_tag_pointer_type): Adjust.
15104         (read_tag_ptr_to_member_type): Adjust.
15105         (read_tag_string_type): Adjust.
15106         (read_subroutine_type): Adjust.
15107         (read_typedef): Adjust.
15108         (read_base_type): Adjust.
15109         (attr_to_dynamic_prop): Adjust.
15110         (read_subrange_type): Adjust.
15111         (read_unspecified_type): Adjust.
15112         (dwarf2_read_abbrevs): Adjust.
15113         (load_partial_dies): Adjust.
15114         (read_partial_die): Adjust.
15115         (find_partial_die): Adjust.
15116         (guess_partial_die_structure_name): Adjust.
15117         (fixup_partial_die): Adjust.
15118         (read_attribute_value): Adjust.
15119         (read_addr_index): Adjust.
15120         (read_addr_index_from_leb128): Adjust.
15121         (read_str_index): Adjust.
15122         (dwarf2_string_attr): Adjust.
15123         (get_debug_line_section): Adjust.
15124         (dwarf_decode_line_header): Adjust.
15125         (lnp_state_machine::check_line_address): Adjust.
15126         (dwarf_decode_lines_1): Adjust.
15127         (dwarf_decode_lines): Adjust.
15128         (dwarf2_start_symtab): Adjust.
15129         (var_decode_location): Adjust.
15130         (new_symbol_full): Adjust.
15131         (dwarf2_const_value_data): Adjust.
15132         (dwarf2_const_value_attr): Adjust.
15133         (dwarf2_const_value): Adjust.
15134         (die_type): Adjust.
15135         (die_containing_type): Adjust.
15136         (build_error_marker_type): Adjust.
15137         (lookup_die_type): Adjust.
15138         (guess_full_die_structure_name): Adjust.
15139         (anonymous_struct_prefix): Adjust.
15140         (determine_prefix): Adjust.
15141         (dwarf2_name): Adjust.
15142         (follow_die_ref_or_sig): Adjust.
15143         (follow_die_offset): Adjust.
15144         (follow_die_ref): Adjust.
15145         (follow_die_sig_1): Adjust.
15146         (follow_die_sig): Adjust.
15147         (get_signatured_type): Adjust.
15148         (get_DW_AT_signature_type): Adjust.
15149         (decode_locdesc): Adjust.
15150         (dwarf_decode_macros): Adjust.
15151         (cu_debug_loc_section): Adjust.
15152         (fill_in_loclist_baton): Adjust.
15153         (dwarf2_symbol_mark_computed): Adjust.
15154         (init_one_comp_unit): Don't assign
15155         dwarf2_cu::dwarf2_per_objfile.
15156         (set_die_type): Adjust.
15157
15158 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15159
15160         * dwarf2read.c (struct mapped_debug_names): Add constructor.
15161         <dwarf2_per_objfile>: New field.
15162         (dwarf2_per_objfile): Remove global.
15163         (get_dwarf2_per_objfile): New function.
15164         (set_dwarf2_per_objfile): New function.
15165         (dwarf2_build_psymtabs_hard): Change objfile parameter to
15166         dwarf2_per_objfile.
15167         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
15168         (read_abbrev_offset): Likewise.
15169         (read_indirect_string): Likewise.
15170         (read_indirect_line_string): Likewise.
15171         (read_indirect_string_at_offset): Likewise.
15172         (read_indirect_string_from_dwz): Likewise.
15173         (dwarf2_find_containing_comp_unit): Change objfile parameter to
15174         dwarf2_per_objfile.
15175         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
15176         (create_all_comp_units): Change objfile parameter to
15177         dwarf2_per_objfile.
15178         (create_all_type_units): Likewise.
15179         (process_queue): Add dwarf2_per_objfile parameter.
15180         (read_and_check_comp_unit_head): Likewise.
15181         (lookup_dwo_unit_in_dwp): Likewise.
15182         (get_dwp_file): Likewise.
15183         (process_cu_includes): Likewise.
15184         (struct free_dwo_file_cleanup_data): New struct.
15185         (dwarf2_has_info): Use get_dwarf2_per_objfile and
15186         set_dwarf2_per_objfile.
15187         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
15188         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
15189         context, adjust calls.
15190         (dw2_instantiate_symtab): Likewise.
15191         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
15192         (dw2_get_cu): Likewise.
15193         (create_cu_from_index_list): Change objfile parameter to
15194         dwarf2_per_objfile.
15195         (create_cus_from_index_list): Get dwarf2_per_objfile from
15196         context, adjust calls.
15197         (create_cus_from_index): Likewise.
15198         (create_signatured_type_table_from_index): Change objfile
15199         parameter to dwarf2_per_objfile.
15200         (create_signatured_type_table_from_debug_names): Change objfile
15201         parameter to dwarf2_per_objfile.
15202         (create_addrmap_from_index): Likewise.
15203         (create_addrmap_from_aranges): Likewise.
15204         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
15205         (dw2_setup): Remove.
15206         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
15207         context.
15208         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
15209         get_dwarf2_per_objfile.
15210         (dw2_forget_cached_source_info): Likewise.
15211         (dw2_map_symtabs_matching_filename): Likewise.
15212         (struct dw2_symtab_iterator) <index>: Remove.
15213         <dwarf2_per_objfile>: New field.
15214         (dw2_symtab_iter_init): Replace index parameter with
15215         dwarf2_per_objfile.
15216         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
15217         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
15218         (dw2_print_stats): Likewise.
15219         (dw2_dump): Likewise.
15220         (dw2_expand_symtabs_for_function): Likewise.
15221         (dw2_expand_all_symtabs): Likewise.
15222         (dw2_expand_symtabs_with_fullname): Likewise.
15223         (dw2_expand_marked_cus): Replace index and objfile parameters
15224         with dwarf2_per_objfile.
15225         (dw_expand_symtabs_matching_file_matcher): Add
15226         dwarf2_per_objfile parameter and adjust calls.
15227         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
15228         adjust calls.
15229         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
15230         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
15231         adjust calls.
15232         (create_cus_from_debug_names_list): Replace objfile parameter
15233         with dwarf2_per_objfile and adjust calls.
15234         (create_cus_from_debug_names): Likewise.
15235         (dwarf2_read_debug_names): Likewise.
15236         (mapped_debug_names::namei_to_name): Adjust call.
15237         (dw2_debug_names_iterator::next): Likewise.
15238         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
15239         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
15240         (dw2_debug_names_dump): Likewise.
15241         (dw2_debug_names_expand_symtabs_for_function): Likewise.
15242         (dw2_debug_names_expand_symtabs_matching): Likewise.
15243         (dwarf2_initialize_objfile): Likewise.
15244         (dwarf2_build_psymtabs): Likewise.
15245         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
15246         this_cu.
15247         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
15248         (read_and_check_comp_unit_head): Likewise.
15249         (read_abbrev_offset): Likewise.
15250         (create_debug_type_hash_table): Likewise.
15251         (create_debug_types_hash_table): Likewise.
15252         (create_all_type_units): Replace objfile parameter with
15253         dwarf2_per_objfile.
15254         (add_type_unit): Add dwarf2_per_objfile parameter.
15255         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
15256         with dwarf2_per_objfile.
15257         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
15258         (lookup_dwp_signatured_type): Likewise.
15259         (lookup_signatured_type): Likewise.
15260         (read_cutu_die_from_dwo): Likewise.
15261         (init_tu_and_read_dwo_dies): Likewise.
15262         (init_cutu_and_read_dies): Likewise.
15263         (init_cutu_and_read_dies_no_follow): Likewise.
15264         (allocate_type_unit_groups_table): Add objfile parameter.
15265         (create_type_unit_group): Use dwarf2_per_objfile from cu.
15266         (get_type_unit_group): Likewise.
15267         (process_psymtab_comp_unit): Update call.
15268         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
15269         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
15270         (print_tu_stats): Likewise.
15271         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
15272         in void* parameter.
15273         (build_type_psymtabs): Change objfile parameter to
15274         dwarf2_per_objfile.
15275         (process_skeletonless_type_unit): Use dwarf2_per_objfile
15276         passed in void* parameter.
15277         (process_skeletonless_type_units): Change objfile parameter to
15278         dwarf2_per_objfile.
15279         (set_partial_user): Likewise.
15280         (dwarf2_build_psymtabs_hard): Likewise.
15281         (read_comp_units_from_section): Likewise.
15282         (create_all_comp_units): Likewise.
15283         (scan_partial_symbols): Update calls.
15284         (add_partial_symbol): Likewise.
15285         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
15286         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
15287         (process_queue): Add dwarf2_per_objfile parameter.
15288         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
15289         (compute_compunit_symtab_includes): Likewise.
15290         (process_cu_includes): Add dwarf2_per_objfile parameter.
15291         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
15292         (process_full_type_unit): Likewise.
15293         (process_imported_unit_die): Update call.
15294         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
15295         (read_file_scope): Likewise.
15296         (allocate_dwo_file_hash_table): Add objfile parameter.
15297         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
15298         (create_cus_hash_table): Likewise.
15299         (create_dwp_hash_table): Likewise.
15300         (create_dwo_unit_in_dwp_v1): Likewise.
15301         (create_dwp_v2_section): Likewise.
15302         (create_dwo_unit_in_dwp_v2): Likewise.
15303         (lookup_dwo_unit_in_dwp): Likewise.
15304         (try_open_dwop_file): Likewise.
15305         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
15306         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
15307         cleanup to include a reference to dwarf2_per_objfile.
15308         (open_dwp_file): Add dwarf2_per_objfile parameter.
15309         (open_and_init_dwp_file): Likewise.
15310         (get_dwp_file): Likewise.
15311         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
15312         (queue_and_load_all_dwo_tus): Update call.
15313         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
15314         data.
15315         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
15316         (dwarf2_ranges_process): Likewise.
15317         (dwarf2_get_pc_bounds): Likewise.
15318         (mark_common_block_symbol_computed): Likewise.
15319         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
15320         (dwarf2_read_abbrevs): Update call.
15321         (read_partial_die): Use dwarf2_per_objfile from cu.
15322         (find_partial_die): Likewise.
15323         (fixup_partial_die): Likewise.
15324         (read_attribute_value): Likewise.
15325         (read_indirect_string_at_offset_from): Add objfile parameter.
15326         (read_indirect_string_at_offset): Add dwarf2_per_objfile
15327         parameter.
15328         (read_indirect_string_from_dwz): Add objfile parameter.
15329         (read_indirect_string): Add objfile parameter.
15330         (read_addr_index_1): Add dwarf2_per_objfile parameter.
15331         (read_addr_index): Use dwarf2_per_objfile from cu.
15332         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
15333         call dw2_setup.
15334         (read_str_index): Use dwarf2_per_objfile from cu.
15335         (get_debug_line_section): Likewise.
15336         (read_formatted_entries): Add dwarf2_per_objfile parameter.
15337         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
15338         (new_symbol_full): Use dwarf2_per_objfile from cu.
15339         (build_error_marker_type): Likewise.
15340         (lookup_die_type): Likewise.
15341         (determine_prefix): Likewise.
15342         (follow_die_offset): Likewise.
15343         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
15344         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
15345         (dwarf2_fetch_die_type_sect_off): Likewise.
15346         (dwarf2_get_die_type): Likewise.
15347         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
15348         (get_signatured_type): Likewise.
15349         (get_DW_AT_signature_type): Likewise.
15350         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
15351         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
15352         (cu_debug_loc_section): Likewise.
15353         (fill_in_loclist_baton): Likewise.
15354         (dwarf2_symbol_mark_computed): Likewise.
15355         (dwarf2_find_containing_comp_unit): Change objfile parameter to
15356         dwarf2_per_objfile.
15357         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
15358         parameter.
15359         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
15360         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
15361         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
15362         (set_die_type): Use dwarf2_free_objfile from cu.
15363         (get_die_type_at_offset): Likewise.
15364         (dwarf2_per_objfile_free): Don't assign global variable.
15365         (debug_names) <constructor>: Add dwarf2_per_objfile
15366         parameter, update m_debugstrlookup construction.
15367         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
15368         parameter.
15369         <m_dwarf2_per_objfile>: New field.
15370         <lookup>: Use m_dwarf2_per_objfile.
15371         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
15372         (psyms_seen_size): Likewise.
15373         (write_gdbindex): Replace objfile parameter with
15374         dwarf2_per_objfile.
15375         (write_debug_names): Likewise.
15376         (write_psymtabs_to_index): Likewise.
15377         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
15378         calls.
15379
15380 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15381
15382         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
15383         <dwarf2_per_objfile>: New field.
15384         (struct dwarf2_per_cu_data) <objfile>: Remove.
15385         <dwarf2_per_objfile>: New field.
15386         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
15387         of objfile.
15388         (create_signatured_type_table_from_index): Likewise.
15389         (create_debug_type_hash_table): Likewise.
15390         (fill_in_sig_entry_from_dwo_entry): Likewise.
15391         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
15392         (create_type_unit_group): Assign dwarf2_per_objfile instead of
15393         objfile.
15394         (create_partial_symtab): Access objfile through
15395         dwarf2_per_objfile.
15396         (process_psymtab_comp_unit_reader): Likewise.
15397         (read_comp_units_from_section): Likewise.
15398         (scan_partial_symbols): Likewise.
15399         (add_partial_symbol): Likewise.
15400         (add_partial_subprogram): Likewise.
15401         (peek_die_abbrev): Likewise.
15402         (fixup_go_packaging): Likewise.
15403         (process_full_comp_unit): Likewise.
15404         (process_full_type_unit): Likewise.
15405         (process_imported_unit_die): Likewise.
15406         (dwarf2_compute_name): Likewise.
15407         (dwarf2_physname): Likewise.
15408         (read_import_statement): Likewise.
15409         (create_cus_hash_table): Assign dwarf2_physname instead of
15410         objfile.
15411         (read_func_scope): Access objfile through dwarf2_per_objfile.
15412         (read_lexical_block_scope): Likewise.
15413         (read_call_site_scope): Likewise.
15414         (read_variable): Likewise.
15415         (dwarf2_rnglists_process): Likewise.
15416         (dwarf2_ranges_process): Likewise.
15417         (dwarf2_ranges_read): Likewise.
15418         (dwarf2_record_block_ranges): Likewise.
15419         (dwarf2_add_field): Likewise.
15420         (dwarf2_add_member_fn): Likewise.
15421         (read_structure_type): Likewise.
15422         (process_structure_scope): Likewise.
15423         (read_enumeration_type): Likewise.
15424         (read_array_type): Likewise.
15425         (read_common_block): Likewise.
15426         (read_namespace_type): Likewise.
15427         (read_namespace): Likewise.
15428         (read_module_type): Likewise.
15429         (read_tag_pointer_type): Likewise.
15430         (read_tag_ptr_to_member_type): Likewise.
15431         (read_tag_string_type): Likewise.
15432         (read_subroutine_type): Likewise.
15433         (read_typedef): Likewise.
15434         (read_base_type): Likewise.
15435         (attr_to_dynamic_prop): Likewise.
15436         (read_subrange_type): Likewise.
15437         (read_unspecified_type): Likewise.
15438         (load_partial_dies): Likewise.
15439         (read_partial_die): Likewise.
15440         (find_partial_die): Likewise.
15441         (guess_partial_die_structure_name): Likewise.
15442         (fixup_partial_die): Likewise.
15443         (read_attribute_value): Likewise.
15444         (read_addr_index_from_leb128): Likewise.
15445         (dwarf2_read_addr_index): Likewise.
15446         (dwarf2_string_attr): Likewise.
15447         (lnp_state_machine::check_line_address): Likewise.
15448         (dwarf_decode_lines_1): Likewise.
15449         (dwarf_decode_lines): Likewise.
15450         (dwarf2_start_symtab): Likewise.
15451         (var_decode_location): Likewise.
15452         (new_symbol_full): Likewise.
15453         (dwarf2_const_value_data): Likewise.
15454         (dwarf2_const_value_attr): Likewise.
15455         (dwarf2_const_value): Likewise.
15456         (die_type): Likewise.
15457         (die_containing_type): Likewise.
15458         (lookup_die_type): Likewise.
15459         (guess_full_die_structure_name): Likewise.
15460         (anonymous_struct_prefix): Likewise.
15461         (dwarf2_name): Likewise.
15462         (follow_die_ref_or_sig): Likewise.
15463         (follow_die_offset): Likewise.
15464         (follow_die_ref): Likewise.
15465         (dwarf2_fetch_die_loc_sect_off): Likewise.
15466         (dwarf2_fetch_constant_bytes): Likewise.
15467         (dwarf2_fetch_die_type_sect_off): Likewise.
15468         (dwarf2_get_die_type): Likewise.
15469         (follow_die_sig): Likewise.
15470         (decode_locdesc): Likewise.
15471         (dwarf2_per_cu_objfile): Likewise.
15472         (dwarf2_per_cu_text_offset): Likewise.
15473         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
15474         objfile.
15475         (set_die_type): Access objfile through
15476         dwarf2_per_objfile.
15477
15478 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15479
15480         * valprint.c (converted_character_d): Remove typedef.
15481         (DEF_VEC_O (converted_character_d)): Remove.
15482         (count_next_character): Use std::vector.
15483         (print_converted_chars_to_obstack): Likewise.
15484         (generic_printstr): Likewise.
15485
15486 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15487
15488         * xml-support.h (struct gdb_xml_value): Add constructor.
15489         <value>: Change type to unique_xmalloc_ptr.
15490         (gdb_xml_value_s): Remove typedef.
15491         (DEF_VEC_O (gdb_xml_value_s)): Remove.
15492         (gdb_xml_element_start_handler): Change parameter type to
15493         std::vector.
15494         (xml_find_attribute): Likewise.
15495         * xml-support.c (xml_find_attribute): Change parameter type to
15496         std::vector and adjust.
15497         (gdb_xml_values_cleanup): Remove.
15498         (gdb_xml_parser::start_element): Adjust to std::vector.
15499         (xinclude_start_include): Change paraeter type to std::vector
15500         and adjust.
15501         * btrace.c (check_xml_btrace_version): Likewise.
15502         (parse_xml_btrace_block): Likewise.
15503         (parse_xml_btrace_pt_config_cpu): Likewise.
15504         (parse_xml_btrace_pt): Likewise.
15505         (parse_xml_btrace_conf_bts): Likewise.
15506         (parse_xml_btrace_conf_pt): Likewise.
15507         * memory-map.c (memory_map_start_memory): Likewise.
15508         (memory_map_start_property): Likewise.
15509         * osdata.c (osdata_start_osdata): Likewise.
15510         (osdata_start_item): Likewise.
15511         (osdata_start_column): Likewise.
15512         * remote.c (start_thread): Likewise.
15513         * solib-aix.c (library_list_start_library): Likewise.
15514         (library_list_start_list): Likewise.
15515         * solib-svr4.c (library_list_start_library): Likewise.
15516         (svr4_library_list_start_list): Likewise.
15517         * solib-target.c (library_list_start_segment): Likewise.
15518         (library_list_start_section): Likewise.
15519         (library_list_start_library): Likewise.
15520         (library_list_start_list): Likewise.
15521         * tracepoint.c (traceframe_info_start_memory): Likewise.
15522         (traceframe_info_start_tvar): Likewise.
15523         * xml-syscall.c (syscall_start_syscall): Likewise.
15524         * xml-tdesc.c (tdesc_start_target): Likewise.
15525         (tdesc_start_feature): Likewise.
15526         (tdesc_start_reg): Likewise.
15527         (tdesc_start_union): Likewise.
15528         (tdesc_start_struct): Likewise.
15529         (tdesc_start_flags): Likewise.
15530         (tdesc_start_enum): Likewise.
15531         (tdesc_start_field): Likewise.
15532         (tdesc_start_enum_value): Likewise.
15533         (tdesc_start_vector): Likewise.
15534
15535 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15536
15537         * extension.h (struct xmethod_worker) <clone>: Remove.
15538         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
15539         Remove.
15540         (python_xmethod_worker::clone): Remove.
15541         * valops.c (find_overload_match): Use std::move instead of
15542         clone.
15543
15544 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15545
15546         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
15547         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
15548         <free_xmethod_worker_data>: Remove.
15549         <get_matching_xmethod_workers>: Chance VEC to std::vector.
15550         <get_xmethod_arg_types>: Remove.
15551         <get_xmethod_result_type>: Remove.
15552         <invoke_xmethod>: Remove.
15553         * extension.c (new_xmethod_worker): Remove.
15554         (clone_xmethod_worker): Remove.
15555         (get_matching_xmethod_workers): Return void, pass std::vector by
15556         pointer.
15557         (get_xmethod_arg_types): Rename to...
15558         (xmethod_worker::get_arg_types): ... this, and adjust.
15559         (get_xmethod_result_type): Rename to...
15560         (xmethod_worker::get_result_type): ... this, and adjust.
15561         (invoke_xmethod): Remove.
15562         (free_xmethod_worker): Remove.
15563         (free_xmethod_worker_vec): Remove.
15564         * extension.h (enum ext_lang_rc): Move here from
15565         extension-priv.h.
15566         (struct xmethod_worker): Add constructor and destructor.
15567         <data>: Remove.
15568         <value>: Remove.
15569         <invoke, clone, do_get_result_type, do_get_arg_types>: New
15570         virtual pure methods.
15571         <get_arg_types, get_result_type>: New methods.
15572         (xmethod_worker_ptr): Remove typedef.
15573         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
15574         (xmethod_worker_vec): Remove typedef.
15575         (xmethod_worker_up): New typedef.
15576         (invoke_xmethod): Remove.
15577         (clone_xmethod_worker): Remove.
15578         (free_xmethod_worker): Remove.
15579         (free_xmethod_worker_vec): Remove.
15580         (get_xmethod_arg_types): Remove.
15581         (get_xmethod_result_type): Remove.
15582         * valops.c (find_method_list): Use std::vector, don't use
15583         intermediate vector.
15584         (value_find_oload_method_list): Use std::vector.
15585         (find_overload_match): Use std::vector.
15586         (find_oload_champ): Use std::vector.
15587         * value.c (value_free): Use operator delete.
15588         (value_of_xmethod): Rename to...
15589         (value_from_xmethod): ... this.  Don't assign
15590         xmethod_worker::value, take rvalue-reference.
15591         (result_type_of_xmethod): Adjust.
15592         (call_xmethod): Adjust.
15593         * value.h: Include extension.h.
15594         (struct xmethod_worker): Don't forward-declare.
15595         (value_of_xmethod): Rename to...
15596         (value_from_xmethod): ... this, take rvalue-reference.
15597         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
15598         (struct python_xmethod_worker): ... this, add constructor and
15599         destructor.
15600         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
15601         (gdbpy_free_xmethod_worker_data): Rename to...
15602         (python_xmethod_worker::~python_xmethod_worker): ... this and
15603         adjust.
15604         (gdbpy_clone_xmethod_worker_data): Rename to...
15605         (python_xmethod_worker::clone): ... this and adjust.
15606         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
15607         temporary vector.
15608         (gdbpy_get_xmethod_arg_types): Rename to...
15609         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
15610         (gdbpy_get_xmethod_result_type): Rename to...
15611         (python_xmethod_worker::do_get_result_type): ... this and
15612         adjust.
15613         (gdbpy_invoke_xmethod): Rename to...
15614         (python_xmethod_worker::invoke): ... this and adjust.
15615         (new_python_xmethod_worker): Rename to...
15616         (python_xmethod_worker::python_xmethod_worker): ... this and
15617         adjust.
15618         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
15619         Remove.
15620         (gdbpy_free_xmethod_worker_data): Remove.
15621         (gdbpy_get_matching_xmethod_workers): Use std::vector.
15622         (gdbpy_get_xmethod_arg_types): Remove.
15623         (gdbpy_get_xmethod_result_type): Remove.
15624         (gdbpy_invoke_xmethod): Remove.
15625         * python/python.c (python_extension_ops): Remove obsolete
15626         callbacks.
15627
15628 2018-01-05  Pedro Alves  <palves@redhat.com>
15629
15630         PR gdb/18653
15631         * common/signals-state-save-restore.c
15632         (save_original_signals_state): New parameter 'quiet'.  Warn if we
15633         find a custom handler preinstalled, instead of internal erroring.
15634         But only warn if !quiet.
15635         * common/signals-state-save-restore.h
15636         (save_original_signals_state): New parameter 'quiet'.
15637         * main.c (captured_main_1): Move save_original_signals_state call
15638         after option handling, and pass QUIET.
15639
15640 2018-01-05  Pedro Alves  <palves@redhat.com>
15641
15642         * spu-tdep.c (spu_catch_start): Pass
15643         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
15644
15645 2018-01-05  Pedro Alves  <palves@redhat.com>
15646
15647         PR gdb/22670
15648         * ada-lang.c (literal_symbol_name_matcher): New function.
15649         (ada_get_symbol_name_matcher): Use it for
15650         symbol_name_match_type::SEARCH_NAME.
15651         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
15652         it down instead of assuming symbol_name_match_type::FULL.
15653         * block.h (block_lookup_symbol): New parameter 'match_type'.
15654         * c-valprint.c (print_unpacked_pointer): Use
15655         lookup_symbol_search_name instead of lookup_symbol.
15656         * compile/compile-object-load.c (get_out_value_type): Pass down
15657         symbol_name_match_type::SEARCH_NAME.
15658         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
15659         symbol_name_match_type::FULL.
15660         * cp-support.c (cp_get_symbol_name_matcher): Handle
15661         symbol_name_match_type::SEARCH_NAME.
15662         * infrun.c (insert_exception_resume_breakpoint): Use
15663         lookup_symbol_search_name.
15664         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
15665         * psymtab.c (maintenance_check_psymtabs): Use
15666         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
15667         * stack.c (print_frame_args): Use lookup_symbol_search_name and
15668         SYMBOL_SEARCH_NAME.
15669         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
15670         if symbol_name_match_type::SEARCH_NAME.
15671         (lookup_symbol_in_language): Pass down
15672         symbol_name_match_type::FULL.
15673         (lookup_symbol_search_name): New.
15674         (lookup_language_this): Pass down
15675         symbol_name_match_type::SEARCH_NAME.
15676         (lookup_symbol_aux, lookup_local_symbol): New parameter
15677         'match_type'.  Pass it down.
15678         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
15679         (lookup_symbol_search_name): New declaration.
15680         (lookup_symbol_in_block): New 'match_type' parameter.
15681
15682 2018-01-05  Pedro Alves  <palves@redhat.com>
15683
15684         PR gdb/22670
15685         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
15686         ada_lookup_symbol.
15687         (ada_lookup_symbol): Reimplement in terms of
15688         ada_lookup_symbol_list, bits factored out from
15689         ada_lookup_encoded_symbol.
15690
15691 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15692
15693         * ada-exp.y (write_object_renaming): When subscripting an array
15694         using a symbol as the index, pass the block in call to
15695         ada_lookup_encoded_symbol when looking that symbol up.
15696
15697 2018-01-05  Jerome Guitton  <guitton@adacore.com>
15698
15699         * ada-lang.c (ada_array_length): Use ada_index_type instead of
15700         TYPE_INDEX_TYPE.
15701
15702 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15703
15704         * ada-lang.c (ada_to_fixed_value_create): Add handling of
15705         the case where VALUE_LVAL (val0) is not lval_memory.
15706
15707 2018-01-05  Xavier Roirand  <roirand@adacore.com>
15708
15709         * ada-valprint.c (print_optional_low_bound): Handle
15710         character-indexed array printing like boolean-indexed array
15711         printing.
15712
15713 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15714
15715         * NEWS: Create a new section for the next release branch.
15716         Rename the section of the current branch, now that it has
15717         been cut.
15718
15719 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15720
15721         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
15722         * version.in: Bump version to 8.1.50.DATE-git.
15723
15724 2018-01-03  Xavier Roirand  <roirand@adacore.com>
15725
15726         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
15727         Add field.
15728         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
15729         Add field.
15730         (default_exception_support_info) <catch_handlers_sym>: Add field.
15731         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
15732         (ada_exception_name_addr_1): Add "catch handlers" handling.
15733         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
15734         Update all callers.
15735         (create_excep_cond_exprs) <ex>: Add parameter.
15736         (re_set_exception): Update create_excep_cond_exprs call.
15737         (print_it_exception, print_one_exception, print_mention_exception)
15738         (print_recreate_exception): Add "catch handler" handling.
15739         (allocate_location_catch_handlers, re_set_catch_handlers)
15740         (check_status_catch_handlers, print_it_catch_handlers)
15741         (print_one_catch_handlers, print_mention_catch_handlers)
15742         (print_recreate_catch_handlers): New function.
15743         (catch_handlers_breakpoint_ops): New variable.
15744         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
15745         Add parameter.  Add "catch handler" handling.
15746         (ada_exception_sym_name, ada_exception_breakpoint_ops):
15747         Add "catch handler" handling.
15748         (ada_exception_catchpoint_cond_string): Add "catch handler"
15749         handling.
15750         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
15751         call.
15752         (catch_ada_handlers_command): New function.
15753         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
15754         operations structure.
15755         (_initialize_ada_language): Add "catch handlers" command entry.
15756         * NEWS: Document "catch handlers" feature.
15757
15758 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15759
15760         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
15761         account when creating the array type of the slice.
15762         (ada_value_slice): Likewise.
15763
15764 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15765
15766         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
15767         New enum value.
15768         (create_array_type_with_stride): Add byte_stride_prop parameter.
15769         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
15770         New parameter.  Update all callers in this file.
15771         (array_type_has_dynamic_stride): New function.
15772         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
15773         of arrays with dynamic byte strides.
15774         * dwarf2read.c (read_array_type): Add support for dynamic
15775         DW_AT_byte_stride attributes.
15776
15777 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15778
15779         * dwarf2read.c (read_unspecified_type): Treat
15780         DW_TAG_enumeration_type DIEs from Ada units as stubs.
15781
15782 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15783
15784         Update copyright year range in all GDB files.
15785
15786 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
15787
15788         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
15789         and gdb/testsuite/gdb.base/step-line.c.
15790
15791 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15792
15793         * copyright.py (main): Dump the contents of
15794         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
15795         even if BY_HAND is empty.
15796
15797 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15798
15799         * top.c (print_gdb_version): Update Copyright year in version
15800         message.
15801
15802 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15803
15804         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
15805
15806 For older changes see ChangeLog-2017.
15807 \f
15808 Local Variables:
15809 mode: change-log
15810 left-margin: 8
15811 fill-column: 74
15812 version-control: never
15813 coding: utf-8
15814 End: