OBVIOUS Remove a useless const char *type and its initialization.
[external/binutils.git] / gdb / ChangeLog
1 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2
3         * language.c (type): Remove.
4         (_initialize_language): Remove assignment to type.
5
6 2018-11-02  Joel Brobecker  <brobecker@adacore.com>
7
8         * aarch64-ravenscar-thread.h, aarch64-ravenscar-thread.c: New files.
9         * aarch64-tdep.c: #include "aarch64-ravenscar-thread.h".
10         (aarch64_gdbarch_init): Add call to register_aarch64_ravenscar_ops.
11         * Makefile.in (ALL_64_TARGET_OBS): Add aarch64-ravenscar-thread.o.
12         (HFILES_NO_SRCDIR): Add aarch64-ravenscar-thread.h.
13         (ALLDEPFILES): Add aarch64-ravenscar-thread.c.
14         * configure.tgt (cpu_obs) [aarch64*-*-*]: Add ravenscar-thread.o
15         and aarch64-ravenscar-thread.o.
16         * NEWS: Add entry documenting Ravenscar tasking support
17         on AArch64 ELF.
18
19 2018-11-02  Matthew Malcomson  <matthew.malcomson@arm.com>
20
21         * symtab.c (info_functions_command): Initialize quiet flag.
22         * stack.c (info_args_command): Likewise.
23
24 2018-11-01  Jim Wilson  <jimw@sifive.com>
25
26         * riscv-tdep.c (riscv_breakpoint_kind_from_pc): New local unaligned_p.
27         Set if pcptr if unaligned.  Return 2 if unaligned_p true.  Update
28         debugging messages.
29
30 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
31
32         * ada-lang.c (ada_watch_location_expression): New function.
33         (ada_language_defn): Set la_watch_location_expression to
34         ada_watch_location_expression.
35
36 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
37
38         * print-utils.c (int_string): Remove unnecessary trailing spaces.
39
40 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
41
42         * rs6000-tdep.c (skip_prologue): Fix potential negative left
43         shifting.
44
45 2018-11-01  Jerome Guitton  <guitton@adacore.com>
46             Joel Brobecker  <brobecker@adacore.com>
47
48         * defs.h (enum gdb_osabi): Add GDB_OSABI_PIKEOS.
49         * osabi.c (gdb_osabi_names): Add name for GDB_OSABI_PIKEOS.
50         * arm-pikeos-tdep.c: New file.
51         * configure.tgt: Add arm-pikeos-tdep.o to the case of ARM
52         embedded system.
53         * Makefile.in (ALL_TARGET_OBS): Add arm-pikeos-tdep.o.
54
55 2018-11-01  Simon Marchi  <simon.marchi@ericsson.com>
56
57         * common/pathstuff.c (get_standard_temp_dir): New.
58         * common/pathstuff.h (get_standard_temp_dir): New.
59         * config.in: Re-generate.
60         * configure: Re-generate.
61         * configure.ac: Don't check for mkdtemp.
62         * gnulib/aclocal-m4-deps.mk: Re-generate.
63         * gnulib/aclocal.m4: Re-generate.
64         * gnulib/config.in: Re-generate.
65         * gnulib/configure: Re-generate.
66         * gnulib/import/Makefile.am: Re-generate.
67         * gnulib/import/Makefile.in: Re-generate.
68         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
69         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
70         * gnulib/import/m4/mkdtemp.m4: New file.
71         * gnulib/import/mkdtemp.c: New file.
72         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES):
73         Add mkdtemp module.
74         * unittests/mkdir-recursive-selftests.c (test): Use
75         get_standard_temp_dir.
76         (_initialize_mkdir_recursive_selftests): Remove HAVE_MKDTEMP
77         ifdef.
78         * compile/compile.c (get_compile_file_tempdir): Likewise.
79
80 2018-11-01  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
81
82         * rs6000-aix-tdep.c: Include "trad-frame.h" and "frame-unwind.h".
83         (SIG_FRAME_LR_OFFSET64): New define.
84         (SIG_FRAME_FP_OFFSET64): New define.
85         (aix_sighandle_frame_cache): New Function.
86         (aix_sighandle_frame_this_id): New Function.
87         (aix_sighandle_frame_prev_register): New Function.
88         (aix_sighandle_frame_sniffer): New Function.
89         (aix_sighandle_frame_unwind): New global variable.
90         (rs6000_aix_init_osabi): Install new frame unwinder.
91
92 2018-10-31  Sergio Durigan Junior  <sergiodj@redhat.com>
93
94         PR gdb/23835
95         * common/common-defs.h: Don't redefine _FORTIFY_SOURCE if it's
96         already defined.
97
98 2018-10-31  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
99
100         * ppc-linux-nat.c: Include nat/linux-ptrace.h.
101
102 2018-10-31  Andrew Burgess  <andrew.burgess@embecosm.com>
103
104         * dwarf2read.c (struct dwarf2_cu): Add producer_is_icc field.
105         (producer_is_icc): New function.
106         (check_producer): Set producer_is_icc field on dwarf2_cu.
107         (dwarf2_init_integer_type): New function.
108         (read_base_type): Call dwarf2_init_integer_type instead of
109         init_integer_type in all cases.
110         (dwarf2_cu::dwarf2_cu): Initialise producer_is_icc field.
111         * valprint.c (maybe_negate_by_bytes): Add an assertion that the
112         LEN is greater than 0.
113
114 2018-10-30  Tom Tromey  <tom@tromey.com>
115
116         * main.c (captured_main_1): Check return value of bfd_init.
117
118 2018-10-29  Sergio Durigan Junior  <sergiodj@redhat.com>
119
120         * common/offset-type.h (DEFINE_OFFSET_REL_OP): Delete.
121         Adjust comments.
122
123 2018-10-29  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
124
125         * procfs.c: Include common/pathstuff.h.
126
127 2018-10-28  Andrew Burgess  <andrew.burgess@embecosm.com>
128
129         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
130         Add missing braces.  No functional change.
131
132 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
133
134         * macrocmd.c (info_macro_command): Use report_unrecognized_option_error
135         to report a bad option and fix indentation.
136         * demangle.c (demangle_command): Use report_unrecognized_option_error
137         to report a bad option and correctly report the bad option.
138
139 2018-10-27  Tom Tromey  <tom@tromey.com>
140
141         PR cli/23364:
142         * darwin-nat.c (copied_shell): New global.
143         (may_have_sip): Rename from should_disable_startup_with_shell.
144         (copy_shell_to_cache, maybe_cache_shell): New functions.
145         (darwin_nat_target::create_inferior): Update.  Use
146         copied_shell.
147
148 2018-10-27  Tom Tromey  <tom@tromey.com>
149
150         * unittests/scoped_fd-selftests.c (test_to_file): New function.
151         (run_tests): Call test_to_file.
152         * dwarf-index-write.c (write_psymtabs_to_index): Do not reopen
153         temporary files.
154         * common/scoped_fd.h (scoped_fd::to_file): New method.
155
156 2018-10-27  Tom Tromey  <tom@tromey.com>
157
158         * unittests/scoped_mmap-selftests.c (test_normal): Use
159         gdb_mkostemp_cloexec.
160         * unittests/scoped_fd-selftests.c (test_destroy, test_release):
161         Use gdb_mkostemp_cloexec.
162         * gnulib/aclocal-m4-deps.mk, gnulib/aclocal.m4,
163         gnulib/config.in, gnulib/configure,
164         gnulib/import/Makefile.am, gnulib/import/Makefile.in,
165         gnulib/import/m4/gnulib-cache.m4,
166         gnulib/import/m4/gnulib-comp.m4: Update.
167         * gnulib/import/m4/mkostemp.m4: New file.
168         * gnulib/import/m4/mkstemp.m4: Remove.
169         * gnulib/import/mkostemp.c: New file.
170         * gnulib/import/mkstemp.m4: Remove.
171         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Remove
172         mkstemp, add mkostemp.  Apply new patch.
173         * gnulib/import/stdlib.in.h: Apply patch.
174         * gnulib/patches/0002-mkostemp-mkostemps-Fix-compilation-error-in-C-mode-o.patch:
175         New file.
176         * dwarf-index-write.c (write_psymtabs_to_index): Use
177         gdb_mkostemp_cloexec.
178         * common/filestuff.h (gdb_mkostemp_cloexec): New function.
179
180 2018-10-27  Tom Tromey  <tom@tromey.com>
181
182         * unittests/mkdir-recursive-selftests.c: New file.
183         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
184         unittests/mkdir-recursive-selftests.c.
185         * dwarf-index-cache.c (mkdir_recursive): Move to
186         common/filestuff.c.
187         (index_cache::store): Check return value of mkdir_recursive.
188         (create_dir_and_check, test_mkdir_recursive): Move to new file.
189         (_initialize_index_cache): Don't register test.
190         * common/filestuff.h (mkdir_recursive): Declare.
191         * common/filestuff.c (mkdir_recursive): Move from
192         dwarf-index-cache.c.  Return bool.
193
194 2018-10-27  Tom Tromey  <tom@tromey.com>
195
196         * dwarf-index-write.c (write_psymtabs_to_index): Move
197         make_temp_filename to common/pathstuff.c.
198         * common/pathstuff.h (make_temp_filename): Declare.
199         * common/pathstuff.c (make_temp_filename): New function, moved
200         from dwarf-index-write.c.
201
202 2018-10-27  Tom Tromey  <tom@tromey.com>
203
204         * procfs.c (procfs_target::create_inferior): Use get_shell.
205         * cli/cli-cmds.c (shell_escape): Use get_shell.
206         * windows-nat.c (windows_nat_target::create_inferior): Use
207         get_shell.
208         * common/pathstuff.c (get_shell): New function.
209         * nat/fork-inferior.c (SHELL_FILE, get_startup_shell): Remove.
210         (fork_inferior): Use get_shell.
211         * common/pathstuff.h (get_shell): Declare.
212
213 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
214
215         * NEWS: Mention changes to 'info [args|functions|locals|variables]'
216
217 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
218
219         * stack.c (print_variable_and_value_data): Add preg and treg.
220         (print_frame_local_vars): Add quiet, regexp and t_regexp arguments,
221         and update callers.
222         (print_frame_arg_vars): Likewise.
223         (prepare_reg): New function.
224         (info_locals_command): Extract info print args and use them.
225         (info_args_command): Likewise.
226         (_initialize_stack): Modify on-line help.
227         * symtab.c (treg_matches_sym_type_name): New function.
228         (search_symbols): New arg t_regexp.
229         (symtab_symbol_info): New args quiet, regexp, t_regexp.
230         (info_variables_command): Extract info print args and use them.
231         (info_functions_command): Likewise.
232         (info_types_command): Update call to symtab_symbol_info.
233         (_initialize_symtab): Modify on-line help.
234         * symtab.h (treg_matches_sym_type_name): New function.
235         (search_symbols): New t_regexp arg.
236
237 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
238
239         * cli-utils.c (extract_arg_maybe_quoted): New function.
240         (extract_info_print_args): New function.
241         (info_print_args_help): New function.
242         (report_unrecognized_option_error): New function.
243         * cli-utils.h (extract_arg_maybe_quoted): New function.
244         (extract_info_print_args): New function.
245         (info_print_args_help): New function.
246         (report_unrecognized_option_error): New function.
247
248 2018-10-26  Tom Tromey  <tom@tromey.com>
249
250         * dwarf2read.c (recursively_compute_inclusions): Use std::vector.
251         (compute_compunit_symtab_includes): Update.
252         * symtab.h: (symtab_ptr): Remove typedef.  Don't define a VEC.
253         (compunit_symtab_ptr): Likewise.
254
255 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
256
257         * fbsd-tdep.c (fbsd_print_auxv_entry): Only use
258         default_print_auxv_entry for specific tag values.
259
260 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
261
262         * fbsd-tdep.c (fbsd_print_auxv_entry): Handle AT_FREEBSD_HWCAP2.
263
264 2018-10-26  Jim Wilson  <jimw@sifive.com>
265
266         * riscv-linux-tdep.c: Include tramp-frame.h and trad-frame.h.
267         (riscv_linux_sigframe_init): Declare.
268         (RISCV_INST_LI_A7_SIGRETURN, RISCV_INT_ECALL): New.
269         (riscv_linux_sigframe): New.
270         (SIGFRAME_SIGINFO_SIZE, UCONTEXT_MCONTEXT_OFFSET): New.
271         (riscv_linux_sigframe_init): Define.
272         (riscv_linux_init_abi): Call tramp_frame_prepend_unwinder.
273
274         * riscv-tdep.c (riscv_isa_xlen): Refer to riscv-tdep.h comment.
275         (riscv_isa_flen): Likewise.  Drop static.
276         * riscv-tdep.h (riscv_isa_xlen): Move riscv-tdep.c comment to here.
277         (riscv_isa_flen): Likewise.  Declare.
278
279 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
280             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
281
282         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_htm_vsx32l)
283         (tdesc_powerpc_isa207_htm_vsx64l): Declare.
284         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TM_SPRREGSET)
285         (PPC32_LINUX_SIZEOF_CGPRREGSET, PPC64_LINUX_SIZEOF_CGPRREGSET)
286         (PPC_LINUX_SIZEOF_CFPRREGSET, PPC_LINUX_SIZEOF_CVMXREGSET)
287         (PPC_LINUX_SIZEOF_CVSXREGSET, PPC_LINUX_SIZEOF_CPPRREGSET)
288         (PPC_LINUX_SIZEOF_CDSCRREGSET, PPC_LINUX_SIZEOF_CTARREGSET):
289         Define.
290         (struct ppc_linux_features) <htm>: New field.
291         (ppc_linux_no_features): Add initializer for htm field.
292         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
293         new tdescs.
294         * nat/ppc-linux.h (PPC_FEATURE2_HTM, NT_PPC_TM_CGPR)
295         (NT_PPC_TM_CFPR, NT_PPC_TM_CVMX, NT_PPC_TM_CVSX)
296         (NT_PPC_TM_SPR, NT_PPC_TM_CTAR, NT_PPC_TM_CPPR, NT_PPC_TM_CDSCR):
297         Define if not already defined.
298         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-htm-vsx32l
299         and rs6000/powerpc-isa207-htm-vsx64l.
300         (XMLTOC): Add rs6000/powerpc-isa207-htm-vsx32l.xml and
301         rs6000/powerpc-isa207-htm-vsx64l.xml.
302         * features/rs6000/power-htm-spr.xml: New file.
303         * features/rs6000/power-htm-core.xml: New file.
304         * features/rs6000/power64-htm-core.xml: New file.
305         * features/rs6000/power-htm-fpu.xml: New file.
306         * features/rs6000/power-htm-altivec.xml: New file.
307         * features/rs6000/power-htm-vsx.xml: New file.
308         * features/rs6000/power-htm-ppr.xml: New file.
309         * features/rs6000/power-htm-dscr.xml: New file.
310         * features/rs6000/power-htm-tar.xml: New file.
311         * features/rs6000/powerpc-isa207-htm-vsx32l.xml: New file.
312         * features/rs6000/powerpc-isa207-htm-vsx64l.xml: New file.
313         * features/rs6000/powerpc-isa207-htm-vsx32l.c: Generate.
314         * features/rs6000/powerpc-isa207-htm-vsx64l.c: Generate.
315         * regformats/rs6000/powerpc-isa207-htm-vsx32l.dat: Generate.
316         * regformats/rs6000/powerpc-isa207-htm-vsx64l.dat: Generate.
317         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
318         fetch_regset with HTM regsets.
319         (store_register, store_ppc_registers): Call store_regset with HTM
320         regsets.
321         (ppc_linux_nat_target::read_description): Set htm field in the
322         features struct if needed.
323         * ppc-linux-tdep.c: Include
324         features/rs6000/powerpc-isa207-htm-vsx32l.c and
325         features/rs6000/powerpc-isa207-htm-vsx64l.c.
326         (ppc32_regmap_tm_spr, ppc32_regmap_cgpr, ppc64_le_regmap_cgpr)
327         (ppc64_be_regmap_cgpr, ppc32_regmap_cfpr, ppc32_le_regmap_cvmx)
328         (ppc32_be_regmap_cvmx, ppc32_regmap_cvsx, ppc32_regmap_cppr)
329         (ppc32_regmap_cdscr, ppc32_regmap_ctar): New globals.
330         (ppc32_linux_tm_sprregset, ppc32_linux_cgprregset)
331         (ppc64_be_linux_cgprregset, ppc64_le_linux_cgprregset)
332         (ppc32_linux_cfprregset, ppc32_le_linux_cvmxregset)
333         (ppc32_be_linux_cvmxregset, ppc32_linux_cvsxregset)
334         (ppc32_linux_cpprregset, ppc32_linux_cdscrregset)
335         (ppc32_linux_ctarregset): New globals.
336         (ppc_linux_cgprregset, ppc_linux_cvmxregset): New functions.
337         (ppc_linux_collect_core_cpgrregset): New function.
338         (ppc_linux_iterate_over_regset_sections): Call back with the htm
339         regsets.
340         (ppc_linux_core_read_description): Check if the tm spr section is
341         present and set htm in the features struct.
342         (_initialize_ppc_linux_tdep): Call
343         initialize_tdesc_powerpc_isa207_htm_vsx32l and
344         initialize_tdesc_powerpc_isa207_htm_vsx64l.
345         * ppc-linux-tdep.h (ppc_linux_cgprregset, ppc_linux_cvmxregset):
346         Declare.
347         (ppc32_linux_tm_sprregset, ppc32_linux_cfprregset)
348         (ppc32_linux_cvsxregset, ppc32_linux_cpprregset)
349         (ppc32_linux_cdscrregset, ppc32_linux_ctarregset): Declare.
350         * ppc-tdep.h (struct gdbarch_tdep) <have_htm_spr, have_htm_core>:
351         New fields.
352         <have_htm_fpu, have_htm_altivec, have_htm_vsx>:
353         Likewise.
354         <ppc_cppr_regnum, ppc_cdscr_regnum, ppc_ctar_regnum>: Likewise.
355         <ppc_cdl0_regnum, ppc_cvsr0_regnum, ppc_cefpr0_regnum>: Likewise.
356         (enum) <PPC_TFHAR_REGNUM, PPC_TEXASR_REGNUM, PPC_TFIAR_REGNUM>:
357         New enum fields.
358         <PPC_CR0_REGNUM, PPC_CCR_REGNUM, PPC_CXER_REGNUM>: Likewise.
359         <PPC_CLR_REGNUM, PPC_CCTR_REGNUM, PPC_CF0_REGNUM>: Likewise.
360         <PPC_CFPSCR_REGNUM, PPC_CVR0_REGNUM, PPC_CVSCR_REGNUM>: Likewise.
361         <PPC_CVRSAVE_REGNUM, PPC_CVSR0_UPPER_REGNUM>: Likewise.
362         <PPC_CPPR_REGNUM, PPC_CDSCR_REGNUM>: Likewise.
363         <PPC_CTAR_REGNUM>: Likewise.
364         (PPC_IS_TMSPR_REGNUM, PPC_IS_CKPTGP_REGNUM, PPC_IS_CKPTFP_REGNUM)
365         (PPC_IS_CKPTVMX_REGNUM, PPC_IS_CKPTVSX_REGNUM): Define.
366         * rs6000-tdep.c (IS_CDFP_PSEUDOREG, IS_CVSX_PSEUDOREG)
367         (IS_CEFP_PSEUDOREG): Define.
368         (rs6000_register_name): Hide the upper halves of checkpointed VSX
369         registers.  Return names for the checkpointed DFP, VSX, and EFP
370         pseudo registers.
371         (rs6000_pseudo_register_type): Remove initial assert and raise an
372         internal error in the else clause instead.  Return types for the
373         checkpointed DFP, VSX, and EFP pseudo registers.
374         (dfp_pseudo_register_read, dfp_pseudo_register_write): Handle
375         checkpointed DFP pseudo registers.
376         (vsx_pseudo_register_read, vsx_pseudo_register_write): Handle
377         checkpointed VSX pseudo registers.
378         (efp_pseudo_register_read, efp_pseudo_register_write): Rename
379         from efpr_pseudo_register_read and
380         efpr_pseudo_register_write.  Handle checkpointed EFP pseudo
381         registers.
382         (rs6000_pseudo_register_read, rs6000_pseudo_register_write):
383         Handle checkpointed DFP, VSX, and EFP registers.
384         (dfp_ax_pseudo_register_collect, vsx_ax_pseudo_register_collect)
385         (efp_ax_pseudo_register_collect): New functions.
386         (rs6000_ax_pseudo_register_collect): Move DFP, VSX and EFP pseudo
387         register logic to new functions.  Handle checkpointed DFP, VSX,
388         and EFP pseudo registers.
389         (rs6000_gdbarch_init): Look for and validate the htm features.
390         Include checkpointed DFP, VSX and EFP pseudo-registers.
391         * NEWS: Mention access to PPR, DSCR, TAR, EBB/PMU registers and
392         HTM registers.
393
394 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
395
396         * rs6000-tdep.c (rs6000_gdbarch_init): Reject tdescs with vsx but
397         without altivec or fpu.
398
399 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
400             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
401
402         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_EBBREGSET)
403         (PPC_LINUX_SIZEOF_PMUREGSET): Declare.
404         * nat/ppc-linux.h (PPC_FEATURE2_EBB, NT_PPC_EBB, NT_PPC_PMU):
405         Define if not already defined.
406         * features/rs6000/power-ebb.xml: New file.
407         * features/rs6000/power-linux-pmu.xml: New file.
408         * features/rs6000/powerpc-isa207-vsx32l.xml: Include ebb and pmu
409         features.
410         * features/rs6000/powerpc-isa207-vsx64l.xml: Likewise.
411         * features/rs6000/powerpc-isa207-vsx32l.c: Re-generate.
412         * features/rs6000/powerpc-isa207-vsx64l.c: Re-generate.
413         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Re-generate.
414         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Re-generate.
415         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
416         fetch_regset with ebb and pmu regsets.
417         (store_register, store_ppc_registers): Call store_regset with ebb
418         and pmu regsets.
419         (ppc_linux_nat_target::read_description): Set isa207 field in the
420         features struct if ebb and pmu are avaiable.
421         * ppc-linux-tdep.c (ppc32_regmap_ebb, ppc32_regmap_pmu)
422         (ppc32_linux_ebbregset, ppc32_linux_pmuregset): New globals.
423         (ppc_linux_iterate_over_regset_sections): Call back with the ebb
424         and pmu regsets.
425         (ppc_linux_core_read_description): Check if the pmu section is
426         present and set isa207 in the features struct.
427         * ppc-linux-tdep.h (ppc32_linux_ebbregset)
428         (ppc32_linux_pmuregset): Declare.
429         * ppc-tdep.h (struct gdbarch_tdep) <ppc_mmcr0_regnum>: New field.
430         <ppc_mmcr2_regnum, ppc_siar_regnum, ppc_sdar_regnum>: New fields.
431         <ppc_sier_regnum>: New field.
432         (enum): <PPC_BESCR_REGNUM, PPC_EBBHR_REGNUM, PPC_EBBRR_REGNUM>:
433         New enum values.
434         <PPC_MMCR0_REGNUM, PPC_MMCR2_REGNUM, PPC_SIAR_REGNUM>: New enum
435         values.
436         <PPC_SDAR_REGNUM, PPC_SIER_REGNUM>: New enum values.
437         (PPC_IS_EBB_REGNUM, PPC_IS_PMU_REGNUM): Define.
438         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate the
439         ebb and pmu features.
440
441 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
442             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
443
444         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_vsx32l)
445         (tdesc_powerpc_isa207_vsx64l): Declare.
446         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TARREGSET): Define.
447         (struct ppc_linux_features) <isa207>: New field.
448         (ppc_linux_no_features): Add initializer for isa207 field.
449         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
450         new tdescs.
451         * nat/ppc-linux.h (PPC_FEATURE2_ARCH_2_07, PPC_FEATURE2_TAR)
452         (NT_PPC_TAR): Define if not already defined.
453         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-vsx32l and
454         rs6000/powerpc-isa207-vsx64l.
455         (XMLTOC): Add rs6000/powerpc-isa207-vsx32l.xml and
456         rs6000/powerpc-isa207-vsx64l.xml.
457         * features/rs6000/power-tar.xml: New file.
458         * features/rs6000/powerpc-isa207-vsx32l.xml: New file.
459         * features/rs6000/powerpc-isa207-vsx64l.xml: New file.
460         * features/rs6000/powerpc-isa207-vsx32l.c: Generate.
461         * features/rs6000/powerpc-isa207-vsx64l.c: Generate.
462         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Generate.
463         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Generate.
464         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
465         fetch_regset with the TAR regset.
466         (store_register, store_ppc_registers): Call store_regset with the
467         TAR regset.
468         (ppc_linux_nat_target::read_description): Set isa207 field in the
469         features struct if needed.
470         * ppc-linux-tdep.c: Include
471         features/rs6000/powerpc-isa207-vsx32l.c and
472         features/rs6000/powerpc-isa207-vsx64l.c.
473         (ppc32_regmap_tar, ppc32_linux_tarregset): New globals.
474         (ppc_linux_iterate_over_regset_sections): Call back with the tar
475         regset.
476         (ppc_linux_core_read_description): Check if the tar section is
477         present and set isa207 in the features struct.
478         (_initialize_ppc_linux_tdep): Call
479         initialize_tdesc_powerpc_isa207_vsx32l and
480         initialize_tdesc_powerpc_isa207_vsx64l.
481         * ppc-linux-tdep.h (ppc32_linux_tarregset): Declare.
482         * ppc-tdep.h (gdbarch_tdep) <ppc_tar_regnum>: New field.
483         (enum) <PPC_TAR_REGNUM>: New enum value.
484         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate tar
485         feature.
486         (ppc_process_record_op31): Record changes to TAR.
487
488 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
489             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
490
491         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa205_ppr_dscr_vsx32l)
492         (tdesc_powerpc_isa205_ppr_dscr_vsx64l): Declare.
493         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_PPRREGSET)
494         (PPC_LINUX_SIZEOF_DSCRREGSET): Define.
495         (struct ppc_linux_features) <ppr_dscr>: New field.
496         (ppc_linux_no_features): Add initializer for ppr_dscr field.
497         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
498         new tdescs.
499         * nat/ppc-linux.h (PPC_FEATURE2_DSCR, NT_PPC_PPR, NT_PPC_DSCR):
500         Define if not already defined.
501         * features/Makefile (WHICH): Add
502         rs6000/powerpc-isa205-ppr-dscr-vsx32l and
503         rs6000/powerpc-isa205-ppr-dscr-vsx64l.
504         (XMLTOC): Add rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml and
505         rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml.
506         * features/rs6000/power-dscr.xml: New file.
507         * features/rs6000/power-ppr.xml: New file.
508         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml: New file.
509         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml: New file.
510         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c: Generate.
511         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c: Generate.
512         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx32l.dat: Generate.
513         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx64l.dat: Generate.
514         * ppc-linux-nat.c: Include <sys/uio.h>.
515         (fetch_regset, store_regset, check_regset): New functions.
516         (fetch_register, fetch_ppc_registers): Call fetch_regset with
517         DSCR and PPR regsets.
518         (store_register, store_ppc_registers): Call store_regset with
519         DSCR and PPR regsets.
520         (ppc_linux_get_hwcap2): New function.
521         (ppc_linux_nat_target::read_description): Call
522         ppc_linux_get_hwcap2 and check_regset, set ppr_dscr field in the
523         features struct if needed.
524         * ppc-linux-tdep.c: Include
525         features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c and
526         features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c.
527         (ppc32_regmap_ppr, ppc32_regmap_dscr, ppc32_linux_pprregset)
528         (ppc32_linux_dscrregset): New globals.
529         (ppc_linux_iterate_over_regset_sections): Call back with the ppr
530         and dscr regsets.
531         (ppc_linux_core_read_description): Check if the ppr and dscr
532         sections are present and set ppr_dscr in the features struct.
533         (_initialize_ppc_linux_tdep): Call
534         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx32l and
535         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx64l.
536         * ppc-linux-tdep.h (ppc32_linux_pprregset)
537         (ppc32_linux_dscrregset): Declare.
538         * ppc-tdep.h (struct gdbarch_tdep) <ppc_ppr_regnum>: New field.
539         <ppc_dscr_regnum>: New field.
540         (enum) <PPC_PPR_REGNUM, PPC_DSCR_REGNUM>: New enum values.
541         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate ppr
542         and dscr features.
543         (ppc_process_record_op31): Record changes to PPR and DSCR.
544
545 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
546
547         * rs6000-tdep.c (rs6000_gdbarch_init): Replace line wrapping by a
548         second initializer line for the have_* variables.  Initialize
549         have_fpu to 0 instead of 1.
550
551 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
552
553         * arch/ppc-linux-common.c (ppc_linux_match_description):
554         Parenthesize tdesc assignements and indent them properly.
555
556 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
557
558         * ppc-linux-nat.c (fetch_register): Change if statement to else
559         if.
560         (store_register): Likewise.
561
562 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
563
564         * rs6000-tdep.c: Remove reggroups.h include.
565         (rs6000_pseudo_register_reggroup_p): Remove.
566         (rs6000_gdbarch_init): Remove call to
567         set_tdesc_pseudo_register_reggroup_p.
568
569 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
570
571         * reggroups.c (default_register_reggroup_p): Return true for
572         decfloat registers and float_reggroup.
573
574 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
575
576         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): Remove.
577         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): Replace
578         ppc_linux_collect_vrregset by regcache_collect_regset.
579
580 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
581
582         * linux-tdep.c (linux_collect_regset_section_cb): Use
583         std::vector<gdb_byte> instead of char * and malloc for buf.
584         Remove xfree.
585
586 2018-10-26  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
587
588         * xcoffread.c (read_xcoff_symtab): Pass deduced language to
589         symtab_start instead of always using language_unknown.
590
591 2018-10-26  Andrew Burgess  <andrew.burgess@embecosm.com>
592
593         * riscv-tdep.c (riscv_read_misa_reg): Update comment, remove
594         READ_P parameter, catch and ignore register access errors from
595         either the old or new MISA location.
596         (riscv_has_feature): Update call to riscv_read_misa_reg.
597
598 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
599
600         * python/py-function.c (convert_values_to_python): Return
601         gdbpy_ref<>.  Add header comment.
602         (fnpy_call): Adjust.
603
604 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
605
606         * python/py-cmd.c (cmdpy_completer_helper): Return gdbpy_ref<>.
607         (cmdpy_completer_handle_brkchars): Adjust.
608         (cmdpy_completer): Adjust.
609
610 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
611
612         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
613         Pass correct regnum to raw_supply_zeroed.
614
615 2018-10-23  Hafiz Abid Qadeer  <abidh@codesourcery.com>
616
617         * regcache.c (cooked_read_test): Add CSKY to the list of
618         architectures with a save_reggroup
619
620 2018-10-23  Simon Marchi  <simon.marchi@polymtl.ca>
621
622         PR gdb/23368
623         * infrun.c (follow_exec): In the follow_exec_mode_new case,
624         transfer terminal state from old new new inferior.
625         * terminal.h (swap_terminal_info): New function.
626         * inflow.c (swap_terminal_info): New function.
627
628 2018-10-23  Tom Tromey  <tom@tromey.com>
629
630         * record-btrace.c (get_thread_current_frame_id): Rename from
631         get_thread_current_frame.  Return a frame_id.
632         (record_btrace_start_replaying): Update.
633
634 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
635
636         * riscv-tdep.c (riscv_register_name): Use the user-friendly names
637         for CSRs.
638
639 2018-10-23  Joel Brobecker  <brobecker@adacore.com>
640
641         * riscv-tdep.c (riscv_gdbarch_init): Set the gdbarch's
642         have_nonsteppable_watchpoint attribute to 1.
643
644 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
645
646         * riscv-tdep.c (riscv_gdb_reg_names): Update comment, and all
647         register names.
648         (struct register_alias): Rename to...
649         (struct riscv_register_alias): ...this, and update comment.
650         (riscv_register_aliases): Update type, and alias names.  Remove
651         CSR names from this list.
652         (riscv_register_name): Use riscv_gdb_reg_names for int and float
653         register names.  Add an extra assertion.
654         (riscv_is_regnum_a_named_csr): New function.
655         (riscv_register_reggroup_p): Use riscv_is_regnum_a_named_csr.
656
657 2018-10-22  Jim Wilson  <jimw@sifive.com>
658
659         * riscv-tdep.c (riscv_push_dummy_call) <in_reg>: Check for value in
660         FP reg smaller than FP reg size, and fill with -1 instead of 0.
661
662         * riscv-tdep.c (riscv_fpreg_d_type, riscv_fpreg_q_type): New.
663         (riscv_register_type): Use them.
664         (riscv_print_one_register_info): Handle union of floats same as float.
665         * riscv-tdep.h (struct gdbarch_tdep): Add riscv_fpreg_d_type and
666         riscv_fpreg_q_type fields.
667
668 2018-10-21  Simon Marchi  <simon.marchi@ericsson.com>
669
670         * gdbarch.sh (gdbarch_num_cooked_regs): New.
671         * gdbarch.h: Re-generate.
672         * ax-gdb.c (gen_expr): Use gdbarch_num_cooked_regs.
673         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
674         * eval.c (evaluate_subexp_standard): Likewise.
675         * findvar.c (value_of_register): Likewise.
676         (value_of_register_lazy): Likewise.
677         (address_from_register): Likewise.
678         * frame.c (get_frame_register_bytes): Likewise.
679         * gdbarch-selftests.c (register_to_value_test): Likewise.
680         * h8300-tdep.c (h8300_register_type): Likewise.
681         * i386-tdep.c (i386_dbx_reg_to_regnum): Likewise.
682         (i386_svr4_reg_to_regnum): Likewise.
683         * infcmd.c (default_print_registers_info): Likewise.
684         (registers_info): Likewise.
685         (print_vector_info): Likewise.
686         (default_print_float_info): Likewise.
687         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
688         * mdebugread.c (mdebug_reg_to_regnum): Likewise.
689         * mi/mi-main.c (mi_cmd_data_list_register_names): Likewise.
690         (mi_cmd_data_list_changed_registers): Likewise.
691         (mi_cmd_data_list_register_values): Likewise.
692         (mi_cmd_data_write_register_values): Likewise.
693         (mi_cmd_trace_frame_collected): Likewise.
694         * mips-tdep.c (print_gp_register_row): Likewise.
695         (mips_print_registers_info): Likewise.
696         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
697         * regcache.c (init_regcache_descr): Likewise.
698         (register_size): Likewise.
699         (register_dump::dump): Likewise.
700         (cooked_read_test): Likewise.
701         (cooked_write_test): Likewise.
702         * rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
703         (rs6000_gdbarch_init): Likewise.
704         * stabsread.c (stab_reg_to_regnum): Likewise.
705         * stack.c (info_frame_command): Likewise.
706         * target-descriptions.c (tdesc_register_name): Likewise.
707         * trad-frame.c (trad_frame_alloc_saved_regs): Likewise.
708         * tui/tui-regs.c (tui_show_register_group): Likewise.
709         * user-regs.c (user_reg_map_name_to_regnum): Likewise.
710         (user_reg_map_regnum_to_name): Likewise.
711         (value_of_user_reg): Likewise.
712         (maintenance_print_user_registers): Likewise.
713         * xtensa-tdep.c (xtensa_find_register_by_name): Likewise.
714         (xtensa_register_name): Likewise.
715         (xtensa_register_type): Likewise.
716         (xtensa_reg_to_regnum): Likewise.
717         (xtensa_pseudo_register_read): Likewise.
718         (xtensa_pseudo_register_write): Likewise.
719
720 2018-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
721
722         * amd64-tdep.c (amd64_pseudo_register_read_value): Use
723         correctly-sized buffer with raw_read.
724         (amd64_pseudo_register_write): Use correctly-sized buffer for
725         raw_read/raw_write.
726
727 2018-10-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
728
729         * typeprint.c (_initialize_typeprint): Fix wrong prefixname arg
730         in add_prefix_cmd of set print type.
731
732 2018-10-19  Tom Tromey  <tom@tromey.com>
733
734         PR tui/18388:
735         * NEWS: Mention tabset deprecation.
736         * tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
737         (update_tab_width): New function.
738         (tui_set_tab_width, tui_show_tab_width): New functions.
739         (tui_set_tab_width_command): Use update_tab_width.
740         (_initialize_tui_win): Move to end of file.  Deprecate "tabset".
741         Add new "set tui tab-width" command.
742         * tui/tui-source.c (tui_set_source_content): Update.
743         * tui/tui-disasm.c (tui_set_disassem_content): Update.
744         * tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
745         Don't declare.
746         (tui_tab_width): Declare.
747         * tui/tui-data.c (default_tab_len, tui_default_tab_len)
748         (tui_set_default_tab_len): Remove.
749
750 2018-10-19  Tom Tromey  <tom@tromey.com>
751
752         * tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
753         (key_is_backspace, tui_getc): Don't declare.
754         * tui/tui-io.c (key_is_start_sequence): Now static.
755         (key_is_end_sequence, key_is_backspace): Remove.
756         (tui_getc): Now static.
757
758 2018-10-19  Tom Tromey  <tom@tromey.com>
759
760         * symfile.c (reread_symbols): Clear "static_links".
761
762 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
763
764         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
765         define.
766         (aarch64_linux_sigframe_init): Extra boundary checks.
767
768 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
769
770         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
771         the possibly non-existent tdesc type 'vec128', but the type of raw
772         register v16 instead.
773
774 2018-10-19  Gary Benson <gbenson@redhat.com>
775
776         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
777
778 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
779
780         PR cli/23785
781         * cli/cli-dump.c (restore_binary_file): Check if "file" is
782         NULL.
783
784 2018-10-17  Paul Koning  <paul_koning@dell.com>
785
786         * charset.c (convert_between_encodings): Fix unsigned overflow.
787
788 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
789
790         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
791         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
792         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
793         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
794         New functions.
795         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
796         and fbsd_info_proc_mappings_header.
797         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
798         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
799         New.
800
801 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
802
803         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
804         Solaris Maintainer.
805
806 2018-10-15  Tom Tromey  <tom@tromey.com>
807
808         * tui/tui.c (strcat_to_buf): Remove casts.
809         * tui/tui-winsource.c (tui_show_source_line)
810         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
811         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
812         * tui/tui-windata.c (tui_first_data_item_displayed)
813         (tui_delete_data_content_windows, tui_erase_data_content)
814         (tui_display_all_data, tui_display_data_from)
815         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
816         * tui/tui-win.c (tui_set_win_height)
817         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
818         casts.
819         * tui/tui-win.c (tui_resize_all): Remove casts.
820         (tui_scroll_backward_command, tui_set_focus)
821         (tui_set_tab_width_command): Likewise.
822         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
823         * tui/tui-regs.c (tui_show_register_group): Remove cast.
824         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
825         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
826         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
827         Remove casts.
828
829 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
830
831         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
832         AArch64/ARM maintainer.
833
834 2018-10-11  Gary Benson <gbenson@redhat.com>
835
836         * interps.h (interp::m_name): Make private and mutable.
837         * interps.c (interp::~interp): Free m_name.
838
839 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
840             Simon Marchi <simark@simark.ca>
841
842         * README (`configure' options): Add documentation for new
843         "--enable-unit-tests" option.
844         * acinclude.m4: Include "selftest.m4".
845         * configure: Regenerate.
846         * configure.ac: Use "GDB_AC_SELFTEST".
847         * maint.c (maintenance_selftest): Update message informing
848         that selftests have been disabled.
849         (maintenance_info_selftests): Likewise.
850         * selftest.m4: New file.
851
852 2018-10-10  Gary Benson <gbenson@redhat.com>
853
854         * remote.c (remote_target::remote_send_printf): Add
855         missing va_end found by Coverity.
856
857 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
858
859         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
860
861 2018-10-09  Tom Tromey  <tom@tromey.com>
862
863         * configure: Rebuild.
864         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
865         * NEWS: Update --enable-ubsan documentation.
866
867 2018-10-09  Gary Benson <gbenson@redhat.com>
868
869         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
870         found by Coverity.
871
872 2018-10-08  Tom Tromey  <tom@tromey.com>
873
874         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
875         variable.
876         (riscv_fbsd_init_abi): Likewise.
877
878 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
879         * valops.c (value_struct_elt_for_reference): Rename local variable
880         to work around the shadowing a previous local warning.
881
882 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
883
884         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
885         * NEWS: Mention new FreeBSD/riscv native configuration.
886         * configure.host: Add riscv*-*-freebsd*.
887         * configure.nat: Likewise.
888         * riscv-fbsd-nat.c: New file.
889
890 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
891
892         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
893         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
894         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
895         * NEWS: Mention new FreeBSD/riscv target.
896         * configure.tgt: Add riscv*-*-freebsd*.
897         * riscv-fbsd-tdep.c: New file.
898         * riscv-fbsd-tdep.h: New file.
899
900 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
901
902         * regcache.h (struct regcache_map_entry): Note that this type can
903         be used with traditional frame caches.
904         * trad-frame.c (trad_frame_set_reg_regmap): New.
905         * trad-frame.h (trad_frame_set_reg_regmap): New.
906
907 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
908
909         PR c++/16841
910         * valops.c (get_virtual_base_offset): New function.
911         (value_struct_elt_for_reference): Use it to get virtual base offset
912         and add it in calculating class member address.
913
914 2018-10-08   John Darrington <john@darrington.wattle.id.au>
915
916     * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
917       (check_producer): Check if the producer is codewarrior.
918       (producer_is_codewarrior): New function.
919       (lnp_state_machine::record_line): Ignore is_stmt flag for records
920        produced by codewarrior.
921       (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
922
923 2018-10-06  Tom Tromey  <tom@tromey.com>
924
925         PR python/19399:
926         * python/py-inferior.c: Add "architecture" entry.
927         (infpy_architecture): New function.
928
929 2018-10-06  Tom Tromey  <tom@tromey.com>
930
931         PR python/21765:
932         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
933         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
934         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
935         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
936
937 2018-10-06  Tom Tromey  <tom@tromey.com>
938
939         PR build/17077:
940         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
941         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
942         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
943         #include.
944
945 2018-10-06  Tom Tromey  <tom@tromey.com>
946
947         * python/py-breakpoint.c (bppy_get_location): Handle a
948         bp_breakpoint without a location.
949
950 2018-10-06  Tom Tromey  <tom@tromey.com>
951
952         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
953         (_RegEx): Reformat help text.
954         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
955         (AnyCallerIs, AnyCallerMatches): Reformat help text.
956         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
957         text.
958         * python/lib/gdb/command/xmethods.py (InfoXMethod)
959         (EnableXMethod, DisableXMethod): Remove help indentation.
960         Capitalize meta-syntactic variables.
961         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
962         (EnableUnwinder, DisableUnwinder): Remove help indentation.
963         Capitalize meta-syntactic variables.
964         * python/lib/gdb/command/explore.py (ExploreCommand)
965         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
966         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
967         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
968         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
969         Remove help indentation.
970         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
971         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
972         (DisableFrameFilter, SetFrameFilterPriority)
973         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
974
975 2018-10-06  Tom Tromey  <tom@tromey.com>
976
977         PR tui/28819:
978         * tui/tui-io.c (gdb_wgetch): New function.
979         (tui_mld_getc, tui_getc): Use it.
980
981 2018-10-05  Tom Tromey  <tom@tromey.com>
982
983         * sol-thread.c (sol_thread_target::wait): Rename inner
984         "save_ptid".
985
986 2018-10-04  Tom Tromey  <tom@tromey.com>
987
988         * configure: Rebuild.
989         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
990
991 2018-10-04  Tom Tromey  <tom@tromey.com>
992
993         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
994         declaration of "block".
995
996 2018-10-04  Tom Tromey  <tom@tromey.com>
997
998         * common/filestuff.c (fdwalk): Remove inner declaration of
999         "result".
1000
1001 2018-10-04  Tom Tromey  <tom@tromey.com>
1002
1003         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
1004         "structs_addr" and hoist declaration.
1005
1006 2018-10-04  Tom Tromey  <tom@tromey.com>
1007
1008         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
1009         variable "size".
1010
1011 2018-10-04  Tom Tromey  <tom@tromey.com>
1012
1013         * mdebugread.c (parse_partial_symbols): Use std::string.
1014
1015 2018-10-04  Tom Tromey  <tom@tromey.com>
1016
1017         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
1018         * p-valprint.c (pascal_val_print): Split inner "i" variable.
1019         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
1020         header.
1021         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
1022         more inner scope.
1023         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
1024         * varobj.c (varobj_update): Rename inner "newobj",
1025         "type_changed".
1026         * valprint.c (generic_emit_char): Rename inner "buf".
1027         * valops.c (find_overload_match): Rename inner "temp".
1028         (value_struct_elt_for_reference): Declare "v" in more inner
1029         scope.
1030         * v850-tdep.c (v850_push_dummy_call): Rename "len".
1031         * unittests/array-view-selftests.c (run_tests): Rename inner
1032         "vec".
1033         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
1034         header.
1035         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
1036         "tsv" in more inner scope.
1037         (print_one_static_tracepoint_marker): Rename inner
1038         "tuple_emitter".
1039         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
1040         (tic6x_push_dummy_call): Don't redeclare "addr".
1041         * target-float.c: Declare "dto" lower.
1042         * symtab.c (lookup_local_symbol): Rename inner "sym".
1043         (find_pc_sect_line): Rename inner "pc".
1044         * stack.c (print_frame): Don't redeclare "gdbarch".
1045         (return_command): Rename inner "gdbarch".
1046         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
1047         "sp".
1048         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
1049         header.
1050         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
1051         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
1052         scope.
1053         * remote.c (remote_target::update_thread_list): Don't redeclare
1054         "tp".
1055         (remote_target::process_initial_stop_replies): Rename inner
1056         "thread".
1057         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
1058         (remote_target::wait_as): Don't redeclare "stop_reply".
1059         (remote_target::get_thread_local_address): Rename inner
1060         "result".
1061         (remote_target::get_tib_address): Likewise.
1062
1063         * regcache.c (cooked_read_test): Rename "regnum".
1064         * record-btrace.c (cmd_record_btrace_start): Rename inner
1065         "exception".
1066         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
1067         loop header.
1068         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
1069         header.
1070         (ppu2spu_sniffer): Rename inner "buf".
1071         * parse.c (operator_check_standard): Rename inner "type",
1072         "objfile".
1073         * p-valprint.c (pascal_val_print): Introduce new scope for
1074         "low_bound", "high_bound".
1075         * p-exp.y (yylex): Declare "i" in loop header.
1076         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
1077         Lower declaration of "s".
1078         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
1079         header.
1080         (nios2_push_dummy_call): Rename "len".
1081         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
1082         "buf".
1083         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
1084         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
1085         (linux_xfer_osdata_modules): Likewise.
1086         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
1087         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
1088         (mips_o64_push_dummy_call): Likewise.
1089         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
1090         "op".
1091         * mi/mi-main.c (list_available_thread_groups): Rename inner
1092         "tuple_emitter".
1093         (mi_cmd_data_read_memory): Rename inner "opts".
1094         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
1095         "tuple_emitter".
1096         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
1097         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
1098         more inner scope.
1099         (parse_partial_symbols): Rename inner "pst", "p", "name"
1100         * main.c (captured_main_1): Rename inner "i"s.
1101         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
1102         "oso2".
1103         * linux-tdep.c (linux_info_proc): Rename inner "filename".
1104         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
1105         * infrun.c (handle_no_resumed): Don't redeclare "thread".
1106         (handle_signal_stop): Rename inner "gdbarch".
1107         (handle_command): Declare "signum" in loop header.
1108         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
1109         "status".
1110         (examine_prologue): Rename inner "sol" and "sof".
1111         (ia64_extract_return_value): Rename inner "val".  Declare another
1112         "val" in a more inner scope.
1113         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
1114         inner scope.
1115         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
1116         "except".
1117         * findvar.c (default_read_var_value): Don't redeclare "addr".
1118         * f-exp.y (yylex): Declare "i" in loop header.
1119         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
1120         Rename inner "type", "expect_type".
1121         (evaluate_subexp_for_sizeof): Rename inner "pc".
1122         * elfread.c (elf_symfile_read): Rename inner "abfd".
1123         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
1124         "bytes_read".
1125         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
1126         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
1127         (dwarf_decode_line_header): Rename inner "lh".
1128         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
1129         "offset".  Declare "i" in loop header.
1130         (disassemble_dwarf_expression): Rename inner "addr_size".
1131         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
1132         inner "result".
1133         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
1134         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
1135         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
1136         "inner_list_emitter".
1137         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
1138         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
1139         declaration in a block.
1140         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
1141         * cp-valprint.c (cp_print_value_fields): Don't redeclare
1142         "obstack_final_size".
1143         * cp-support.c (inspect_type): Declare "i" in loop header.
1144         * compile/compile.c (compile_instance::insert_symbol_error):
1145         Rename inner "e".
1146         * common/agent.c (agent_run_command): Remove inner "ret"
1147         declaration.
1148         * coffread.c (coff_symfile_read): Rename inner "name".
1149         (coff_symfile_read): Rename inner "abfd".
1150         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
1151         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
1152         "high".
1153         * c-exp.y (lex_one_token): Move "len" declaration lower.
1154         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
1155         "gdbarch".
1156         (create_exception_master_breakpoint): Likewise.  Don't redeclare
1157         "b".
1158         (watch_command_1): Declare "mark" later.
1159         (clear_command): Don't shadow "a" or "b".
1160         (delete_command): Rename inner "b".
1161         (delete_trace_command): Likewise.
1162         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
1163         "op".
1164         (arm_gdbarch_init): Remove inner "e_flags".
1165         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
1166         "offset" in inner blocks.
1167
1168 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
1169
1170         * dwarf-index-write.c (file_write): Don't write if the vector is
1171         empty.
1172
1173 2018-10-05  Tom de Vries  <tdevries@suse.de>
1174
1175         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
1176         PyArg_ParseTuple call.
1177
1178 2018-10-05  Tom de Vries  <tdevries@suse.de>
1179
1180         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
1181         PyArg_ParseTuple call.
1182
1183 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
1184
1185         * psymtab.c (recursively_search_psymtabs): Reformat parameters
1186         to avoid exceeding 80 characters per line limit.
1187
1188 2018-10-04  Tom Tromey  <tom@tromey.com>
1189
1190         * symfile.c (syms_from_objfile_1, finish_new_objfile)
1191         (reread_symbols): Update.
1192         * complaints.h (clear_complaints): Remove argument.
1193         * complaints.c (enum complaint_series): Remove.
1194         (series): Remove global.
1195         (complaint_internal): Update.
1196         (clear_complaints): Remove argument.
1197
1198 2018-10-04  Tom Tromey  <tom@tromey.com>
1199
1200         * symfile.c (symbol_file_add_with_addrs): Do not print "no
1201         debugging symbols" message if there is a separate debug objfile.
1202
1203 2018-10-04  Tom Tromey  <tom@tromey.com>
1204
1205         PR cli/19551:
1206         * symfile.c (symbol_file_add_with_addrs): Update output.
1207         * psymtab.c (require_partial_symbols): Update output.
1208
1209 2018-10-04  Tom Tromey  <tom@tromey.com>
1210
1211         PR cli/22234:
1212         * complaints.c: Emit \n.
1213
1214 2018-10-04  Tom Tromey  <tom@tromey.com>
1215
1216         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
1217         (separate_debug_file_exists, find_separate_debug_file)
1218         (add_symbol_file_command, reread_symbols, allocate_symtab)
1219         (allocate_compunit_symtab): Use filtered printing, not
1220         unfiltered.
1221         * psymtab.c (require_partial_symbols, dump_psymtab)
1222         (allocate_psymtab): Use filtered printing, not unfiltered.
1223
1224 2018-10-04  Tom Tromey  <tom@tromey.com>
1225
1226         * complaints.c (complaint_internal): Correctly check complaint
1227         count.
1228
1229 2018-10-04  Tom Tromey  <tom@tromey.com>
1230
1231         * complaints.h (struct complaints): Remove declaration.
1232         * complaints.c (clear_complaints): Remove an unused variable.
1233
1234 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1235
1236         * MAINTAINERS (Write After Approval): Add self.
1237
1238 2018-10-03  Tom Tromey  <tom@tromey.com>
1239
1240         * guile/scm-value.c (gdbscm_value_to_string): Initialize
1241         "buffer_contents".
1242         * coffread.c (coff_symtab_read): Initialize "newobj".
1243
1244 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
1245
1246         * dwarf2read.c (read_func_scope): Remove struct keyword in
1247         range-based for.
1248
1249 2018-10-03  Tom Tromey  <tom@tromey.com>
1250
1251         * README: Mention --enable-ubsan.
1252         * NEWS: Mention --enable-ubsan.
1253         * acinclude.m4: Include sanitize.m4.
1254         * configure: Rebuild.
1255         * configure.ac: Call AM_GDB_UBSAN.
1256         * sanitize.m4: New file.
1257
1258 2018-10-03  Tom Tromey  <tom@tromey.com>
1259
1260         * expression.h (enum exp_opcode): Use uint8_t as base type.
1261         * expprint.c (op_name): Handle invalid opcodes.
1262
1263 2018-10-03  Tom Tromey  <tom@tromey.com>
1264
1265         * parse.c (prefixify_expression): Add assert.
1266         (parse_exp_in_context_1): Throw exception if the expression is
1267         empty.
1268
1269 2018-10-03  Tom Tromey  <tom@tromey.com>
1270
1271         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
1272
1273 2018-10-03  Tom Tromey  <tom@tromey.com>
1274
1275         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
1276
1277 2018-10-03  Tom Tromey  <tom@tromey.com>
1278
1279         * dwarf2read.c (read_subrange_type): Make "negative_mask"
1280         unsigned.
1281
1282 2018-10-03  Tom Tromey  <tom@tromey.com>
1283
1284         * findvar.c (extract_integer): Do work in an unsigned type.
1285
1286 2018-10-03  Tom Tromey  <tom@tromey.com>
1287
1288         * common/enum-flags.h (enum_flags::operator~): Add static assert.
1289         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
1290         base type.
1291         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
1292         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
1293         type.
1294         * c-lang.h (enum c_string_type_values): Use unsigned as base
1295         type.
1296         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
1297
1298 2018-10-03  Tom Tromey  <tom@tromey.com>
1299
1300         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
1301         <~dwarf2_frame_state_reg_info>: Update.
1302         <dwarf2_frame_state_reg_info>: Update.
1303         <alloc_regs>: Add assertion.  Update.
1304         <reg>: Now a std::vector.
1305         <num_regs>: Remove.
1306         <swap>: Update.
1307         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
1308         (execute_cfa_program_test, dwarf2_frame_cache): Update.
1309
1310 2018-10-03  Tom Tromey  <tom@tromey.com>
1311
1312         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
1313
1314 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1315
1316         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
1317
1318 2018-10-02  Tom Tromey  <tom@tromey.com>
1319
1320         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
1321
1322 2018-10-02  John Darrington <john@darrington.wattle.id.au>
1323
1324         * NEWS: Mention changed commands.
1325         * ser-uds.c: New file.
1326         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
1327         * configure: Regenerate.
1328         * Makefile.in: Add new file.
1329         * serial.c (serial_open): Check if filename is a socket
1330           and lookup the appropriate interface accordingly.
1331
1332 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
1333
1334         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
1335         define.
1336         (AARCH64_EXTRA_MAGIC): Likewise.
1337         (AARCH64_FPSIMD_MAGIC): Likewise.
1338         (AARCH64_SVE_MAGIC): Likewise.
1339         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
1340         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
1341         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
1342         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
1343         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
1344         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
1345         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
1346         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
1347         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
1348         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
1349         (read_aarch64_ctx): Add function.
1350         (aarch64_linux_sigframe_init): Detect FP registers.
1351
1352 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
1353
1354         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
1355         (AARCH64_D0_REGNUM): Likewise.
1356         (AARCH64_S0_REGNUM): Likewise.
1357         (AARCH64_H0_REGNUM): Likewise.
1358         (AARCH64_B0_REGNUM): Likewise.
1359         (AARCH64_SVE_V0_REGNUM): Likewise.
1360         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
1361         (AARCH64_D0_REGNUM): Likewise.
1362         (AARCH64_S0_REGNUM): Likewise.
1363         (AARCH64_H0_REGNUM): Likewise.
1364         (AARCH64_B0_REGNUM): Likewise.
1365         (AARCH64_SVE_V0_REGNUM): Likewise.
1366
1367 2018-10-01  Gary Benson <gbenson@redhat.com>
1368
1369         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
1370         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
1371         prfpregset_t instead of gdb_prfpregset_t.
1372         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
1373         * configure, config.in: Rebuild.
1374
1375 2018-10-01  Gary Benson <gbenson@redhat.com>
1376
1377         * common/gdb_proc_service.h: New file, factored out from...
1378         * gdb_proc_service.h: Moved common code to the above file.
1379         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
1380
1381 2018-10-01  Gary Benson <gbenson@redhat.com>
1382
1383         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
1384         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
1385
1386 2018-10-01  Gary Benson <gbenson@redhat.com>
1387
1388         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
1389         (AC_CHECK_HEADERS): Check for linux/elf.h.
1390         * configure, config.in: Rebuild.
1391         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
1392         doesn't define elf_fpregset_t.
1393
1394 2018-10-01  Gary Benson <gbenson@redhat.com>
1395
1396         * gdb_proc_service.h: Whitespace change.
1397
1398 2018-10-01  Tom Tromey  <tom@tromey.com>
1399
1400         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
1401         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
1402         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
1403
1404 2018-10-01  Tom Tromey  <tom@tromey.com>
1405
1406         * README: Minor change.
1407
1408 2018-09-30  Pedro Alves  <palves@redhat.com>
1409
1410         * darwin-nat-info.c (darwin_debug_regions_recurse)
1411         (info_mach_exceptions_command): Remove unused local variables.
1412         * darwin-nat.c (darwin_decode_notify_message)
1413         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
1414         (darwin_stop_inferior, darwin_setup_exceptions)
1415         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
1416         (darwin_nat_target::attach, darwin_nat_target::detach)
1417         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
1418         local variables.
1419         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
1420         variables.
1421
1422 2018-09-29  Tom Tromey  <tom@tromey.com>
1423
1424         * README: Remove some leftover text.
1425
1426 2018-09-29  Tom Tromey  <tom@tromey.com>
1427
1428         * PROBLEMS: Rewrite.
1429         * README: Update.
1430
1431 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
1432
1433         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
1434         case with explicit breakpoint kind.
1435         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
1436         'additional_info' and related logic.
1437         (riscv_debug_breakpoints): New variable.
1438         (riscv_breakpoint_kind_from_pc): Use the length of the existing
1439         instruction to determine the breakpoint kind.
1440         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
1441         flag.  Update description of 'set/show riscv
1442         use-compressed-breakpoints' flag.
1443
1444 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
1445
1446         (NEWS): Mention changes to frame related commands.
1447         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
1448         (add_prefix_cmd_suppress_notification): New function.
1449         (add_com_suppress_notification): Call
1450         add_cmd_suppress_notification.
1451         * command.h (add_cmd_suppress_notification): Declare.
1452         (add_prefix_cmd_suppress_notification): Declare.
1453         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
1454         (parse_frame_specification): Moved from stack.c, with
1455         simplification to handle a single argument.
1456         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
1457         switch to the selected frame.  Add a header comment.
1458         * stack.c: Remove 'safe-ctype.h' include.
1459         (find_frame_for_function): Add declaration.
1460         (find_frame_for_address): New function.
1461         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
1462         (frame_selection_by_function_completer): New function.
1463         (info_frame_command): Rename to...
1464         (info_frame_command_core): ...this, and update parameter types.
1465         (select_frame_command): Rename to...
1466         (select_frame_command_core): ...this, and update parameter types.
1467         (frame_command): Rename to...
1468         (frame_command_core): ...this, and update parameter types.
1469         (class frame_command_helper): New class to wrap implementations of
1470         frame related sub-commands.
1471         (frame_apply_cmd_list): New static global.
1472         (frame_cmd_list): Make static.
1473         (select_frame_cmd_list): New global for sub-commands.
1474         (info_frame_cmd_list): New global for sub-commands.
1475         (_initialize_stack): Register sub-commands for 'frame',
1476         'select-frame', and 'info frame'.  Update 'frame apply' commands
1477         to use frame_apply_cmd_list.  Move function local static
1478         frame_apply_list to file static frame_apply_cmd_list for
1479         consistency.
1480         * stack.h (select_frame_command): Delete declarationn.
1481         (select_frame_for_mi): Declare new function.
1482
1483 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
1484
1485         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
1486         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
1487         and NOP.
1488
1489 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
1490
1491         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
1492
1493 2018-09-26  Tom Tromey  <tom@tromey.com>
1494
1495         * valops.c (auto_abandon): Remove dead code.
1496
1497 2018-09-26  Tom Tromey  <tom@tromey.com>
1498
1499         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
1500
1501 2018-09-24  Tom Tromey  <tom@tromey.com>
1502
1503         * common/pathstuff.c (get_standard_cache_dir): Make
1504         "xdg_cache_home" and "home" const.
1505         * top.c (init_history): Make "tmpenv" const.
1506         * main.c (get_init_files): Make "homedir" const.
1507
1508 2018-09-23  Tom Tromey  <tom@tromey.com>
1509
1510         PR python/18852:
1511         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
1512
1513 2018-09-23  Tom Tromey  <tom@tromey.com>
1514
1515         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
1516         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
1517         * python/python-internal.h (gdbpy_handle_exception): Declare.
1518         * python/py-utils.c (gdbpy_handle_exception): New function.
1519
1520 2018-09-23  Tom Tromey  <tom@tromey.com>
1521
1522         PR python/17284:
1523         * python/py-type.c (typy_template_argument): Check for negative
1524         argument number.
1525
1526 2018-09-23  Tom Tromey  <tom@tromey.com>
1527
1528         PR python/14062:
1529         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
1530
1531 2018-09-23  Tom Tromey  <tom@tromey.com>
1532
1533         PR python/18170:
1534         * python/py-value.c (valpy_int): Allow conversion from pointer
1535         type.
1536
1537 2018-09-23  Tom Tromey  <tom@tromey.com>
1538
1539         PR python/20126:
1540         * python/py-value.c (valpy_int): Respect type sign.
1541
1542 2018-09-23  Tom Tromey  <tom@tromey.com>
1543
1544         PR python/18352;
1545         * python/py-value.c (valpy_float): Allow conversions from int or
1546         char.
1547         (valpy_int, valpy_long): Allow conversions from float.
1548
1549 2018-09-23  Tom Tromey  <tom@tromey.com>
1550
1551         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
1552         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
1553
1554 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1555
1556         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
1557         __sighndlr.
1558         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
1559
1560 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
1561
1562         * windows-nat.c (windows_nat_target::wait): Remove a spurious
1563         target_terminal::ours().
1564
1565 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
1566
1567         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
1568         of vl to ULONGEST.
1569
1570 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
1571
1572         * breakpoint.c (update_inserted_breakpoint_locations): Remove
1573         redundant condition.
1574
1575 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1576
1577         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
1578
1579         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
1580         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
1581         * sol-thread.c (ps_pdmodel): Don't guard definition.
1582
1583         * procfs.c: Fix formatting.
1584
1585         * procfs.c (sysset_t_alloc): Remove.
1586         (create_procinfo): Use XNEW instead of sysset_t_alloc.
1587         (procfs_debug_inferior): Likewise.
1588         (procfs_set_exec_trap): Likewise.
1589         (proc_set_traced_sysentry): Don't allocate argp dynamically.
1590         (proc_set_traced_sysexit): Likewise.
1591
1592         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
1593         (dead_procinfo): Likewise.
1594         (proc_warn): Likewise.
1595         (proc_error): Likewise.
1596         (proc_get_LDT_entry): Likewise.
1597         (do_attach): Likewise.
1598         (procfs_target::pid_to_str): Likewise.
1599         (iterate_over_mappings): Likewise.
1600
1601         * procfs.c (create_procinfo): Fix ARI warning.
1602         (proc_get_status): Likewise.
1603         (proc_stop_process): Likewise.
1604         (proc_run_process): Likewise.
1605         (proc_kill): Likewise.
1606         (proc_get_LDT_entry): Likewise.
1607         (procfs_find_LDT_entry): Likewise.
1608         (proc_update_threads): Likewise.
1609         (proc_iterate_over_threads): Likewise.
1610         (do_attach): Likewise.
1611         (procfs_xfer_memory): Likewise.
1612         (invalidate_cache): Likewise.
1613         (procfs_target::resume): Likewise.
1614         (procfs_init_inferior): Likewise.
1615         (procfs_set_exec_trap): Likewise.
1616         (procfs_target::thread_alive): Likewise.
1617         (procfs_target::pid_to_exec_file): Likewise.
1618         (iterate_over_mappings): Likewise.
1619         (procfs_target::make_corefile_notes): Likewise.
1620         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
1621
1622         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
1623         (procfs_find_LDT_entry): Likewise.
1624         * sol-thread.c (ps_lgetLDT): Likewise.
1625
1626 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1627
1628         PR tdep/17903
1629         * procfs.c (procfs_target): Declare pid_to_exec_file.
1630         (procfs_target::pid_to_exec_file): New.
1631
1632 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1633
1634         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
1635         renaming.
1636         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
1637         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
1638
1639 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1640
1641         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
1642         (supply_fpregset, fill_fpregset): Move ...
1643         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
1644         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
1645         Remove references to ioctl-based procfs.
1646         Include <sys/reg.h>.
1647         Remove PR_MODEL_NATIVE guards.
1648         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
1649         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
1650
1651 2018-09-19  Xavier Roirand  <roirand@adacore.com>
1652
1653         PR gdb/20981:
1654         * solib-darwin.c (darwin_get_dyld_bfd): New function.
1655         (darwin_solib_get_all_image_info_addr_at_init): Update call.
1656         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
1657
1658 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
1659
1660         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
1661         (fbsd_print_sockaddr_in6): Likewise.
1662
1663 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
1664             Chris January  <chris.january@arm.com>
1665
1666         * eval.c (skip_undetermined_arglist): Skip argument list helper.
1667         (evaluate_subexp_standard): Return a dummy type when
1668         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
1669         OP_F77_UNDETERMINED_ARGLIST case.
1670         * expression.h (enum noside): Update comment.
1671
1672 2018-09-19  George Vasick <george.vasick@oracle.com>
1673
1674         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
1675
1676 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
1677             April Chin <april.chin@oracle.com>
1678             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1679
1680         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
1681         uint_t lwpid_t.
1682         (create_procinfo): Print pids in /proc without leading zeros.
1683
1684 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
1685
1686         * nios2-tdep.c (nios2_gcc_target_options): New.
1687         (nios2_gdb_arch_init): Install new hook.
1688
1689 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
1690
1691         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
1692         New file.
1693         * update-gnulib.sh: Apply patch.
1694         * configure: Re-generate.
1695
1696 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1697
1698         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
1699         description.  Make "info proc" command descriptions more
1700         consistent.
1701
1702 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1703
1704         * NEWS: Mention 'info proc files' command.
1705
1706 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1707
1708         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
1709         descriptors for IP_FILES and IP_ALL.
1710
1711 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1712
1713         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
1714         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
1715         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
1716         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
1717         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
1718         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
1719         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
1720         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
1721         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
1722         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
1723         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
1724         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
1725         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
1726         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
1727         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
1728         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
1729         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
1730         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
1731         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
1732         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
1733         (struct fbsd_sockaddr_un): New types.
1734         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
1735         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
1736         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
1737         (fbsd_core_info_proc_files): New functions.
1738         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
1739         IP_ALL.
1740         * fbsd-tdep.h (fbsd_info_proc_files_header)
1741         (fbsd_info_proc_files_entry): New.
1742
1743 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1744
1745         * defs.h (enum info_proc_what) [IP_FILES]: New value.
1746         * infcmd.c (info_proc_cmd_files): New function.
1747         (_initialize_infcmd): Register 'info proc files' command.
1748
1749 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1750
1751         * gnulib/aclocal-m4-deps.mk: Re-generate.
1752         * gnulib/aclocal.m4: Re-generate.
1753         * gnulib/config.in: Re-generate.
1754         * gnulib/configure: Re-generate.
1755         * gnulib/import/Makefile.am: Re-generate.
1756         * gnulib/import/Makefile.in: Re-generate.
1757         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
1758         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
1759         * gnulib/import/arpa_inet.in.h: New file.
1760         * gnulib/import/inet_ntop.c: New file.
1761         * gnulib/import/m4/arpa_inet_h.m4: New file.
1762         * gnulib/import/m4/inet_ntop.m4: New file.
1763         * gnulib/import/m4/netinet_in_h.m4: New file.
1764         * gnulib/import/m4/socklen.m4: New file.
1765         * gnulib/import/m4/sockpfaf.m4: New file.
1766         * gnulib/import/m4/stdalign.m4: New file.
1767         * gnulib/import/m4/sys_uio_h.m4: New file.
1768         * gnulib/import/netinet_in.in.h: New file.
1769         * gnulib/import/stdalign.in.h: New file.
1770         * gnulib/import/sys_socket.c: New file.
1771         * gnulib/import/sys_socket.in.h: New file.
1772         * gnulib/import/sys_uio.in.h: New file.
1773         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
1774         module.
1775
1776 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1777
1778         * gnulib/aclocal-m4-deps.mk: New file.
1779         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
1780         deterministically.
1781
1782 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1783
1784         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
1785         KVE_PATH.
1786
1787 2018-09-18  Tom Tromey  <tom@tromey.com>
1788
1789         * compile/compile-object-load.c (struct
1790         link_hash_table_cleanup_data): Add constructor and destructor.
1791         Use DISABLE_COPY_AND_ASSIGN.
1792         (~link_hash_table_cleanup_data): Rename from
1793         link_hash_table_free.  Now a destructor.
1794         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
1795
1796 2018-09-18  Tom Tromey  <tom@tromey.com>
1797
1798         * compile/compile-object-run.c (do_module_cleanup): Use delete.
1799         * compile/compile-object-load.c (struct munmap_list): Move to
1800         header file.
1801         (munmap_list::add): Rename from munmap_list_add; rewrite.
1802         (munmap_list::~munmap_list): Rename from munmap_list_free.
1803         (munmap_listp_free_cleanup): Remove.
1804         (compile_object_load): Update.
1805         * compile/compile-object-load.h (struct munmap_list): Move from
1806         compile-object-load.c.  Rewrite.
1807
1808 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
1809
1810         * aarch64-tdep.c (pass_in_v): Use register size.
1811         (aarch64_extract_return_value): Likewise.
1812         (aarch64_store_return_value): Likewise.
1813
1814 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1815
1816         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
1817         rlim_t.
1818
1819 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1820
1821         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
1822         Fix short help line.
1823
1824 2018-09-17  Tom Tromey  <tom@tromey.com>
1825
1826         PR python/20445:
1827         * configure: Rebuild.
1828         * configure.ac: Conditionally use -DNDEBUG for Python.
1829
1830 2018-09-17  Tom Tromey  <tom@tromey.com>
1831
1832         * configure: Rebuild.
1833         * configure.ac: Use gmp as a library dependency when checking for
1834         mpfr.
1835
1836 2018-09-17  Pedro Alves  <palves@redhat.com>
1837
1838         * python/py-inferior.c (find_inferior_object): Delete.
1839
1840 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
1841
1842         * compile/compile-cplus-types.c
1843         (compile_cplus_instance::enter_scope): Don't use new_scope after
1844         std::move.
1845
1846 2018-09-17  Tom Tromey  <tom@tromey.com>
1847
1848         * common/pathstuff.c (get_standard_cache_dir): Use
1849         ~/Library/Caches on macOS.
1850         * common/pathstuff.h (get_standard_cache_dir): Update comment.
1851
1852 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
1853
1854         PR python/23669
1855         * breakpoint.c (commands_cmd_element): New.
1856         (_initialize_breakpoint): Assign commands_cmd_element.
1857         * breakpoint.h (commands_cmd_element): New.
1858         * cli/cli-script.c (while_cmd_element, if_command,
1859         define_cmd_element): New.
1860         (command_name_equals): Remove.
1861         (process_next_line): Compare commands by pointer, not by name.
1862         (_initialize_cli_script): Assign the various cmd_list_element
1863         variables.
1864         * compile/compile.c (compile_cmd_element): New.
1865         (_initialize_compile): Assign compile_cmd_element.
1866         * compile/compile.h (compile_cmd_element): New.
1867         * guile/guile.c (guile_cmd_element): New.
1868         (install_gdb_commands): Assign guile_cmd_element.
1869         * guile/guile.h (guile_cmd_element): New.
1870         * python/python.c (python_cmd_element): New.
1871         (_initialize_python): Assign python_cmd_element.
1872         * python/python.h (python_cmd_element): New.
1873         * tracepoint.c (while_stepping_cmd_element): New.
1874         (_initialize_tracepoint): Assign while_stepping_cmd_element.
1875         * tracepoint.h (while_stepping_cmd_element): New.
1876
1877 2018-09-17  Tom Tromey  <tom@tromey.com>
1878
1879         * infrun.c (save_infcall_suspend_state): Return
1880         infcall_suspend_state_up.
1881         (save_infcall_control_state): Return infcall_control_state_up.
1882         * inferior.h (save_infcall_suspend_state)
1883         (save_infcall_control_state): Declare later.  Return unique
1884         pointers.
1885
1886 2018-09-17  Tom Tromey  <tom@tromey.com>
1887
1888         * infrun.c (struct stop_context): Declare constructor,
1889         destructor, "changed" method.
1890         (stop_context::stop_context): Rename from save_stop_context.
1891         (stop_context::~stop_context): Rename from
1892         release_stop_context_cleanup.
1893         (normal_stop): Update.
1894         (stop_context::changed): Rename from stop_context_changed.  Return
1895         bool.
1896
1897 2018-09-17  Tom Tromey  <tom@tromey.com>
1898
1899         * inferior.h (struct infcall_suspend_state_deleter): New.
1900         (infcall_suspend_state_up): New typedef.
1901         (struct infcall_control_state_deleter): New.
1902         (infcall_control_state_up): New typedef.
1903         (make_cleanup_restore_infcall_suspend_state)
1904         (make_cleanup_restore_infcall_control_state): Don't declare.
1905         * infcall.c (call_function_by_hand_dummy): Update.
1906         * infrun.c (do_restore_infcall_suspend_state_cleanup)
1907         (make_cleanup_restore_infcall_suspend_state): Remove.
1908         (do_restore_infcall_control_state_cleanup)
1909         (make_cleanup_restore_infcall_control_state): Remove.
1910
1911 2018-09-17  Tom Tromey  <tom@tromey.com>
1912
1913         * gdbthread.h (struct thread_control_state): Add initializer.
1914         (class thread_info) <control>: Remove initializer.
1915         * inferior.h (struct inferior_control_state): Add initializer.
1916         (class inferior) <control>: Remove initializer.
1917         (exit_inferior_1): Update.
1918         * infrun.c (struct infcall_control_state): Add constructors.
1919         (save_infcall_control_state): Use new.
1920         (restore_infcall_control_state, discard_infcall_control_state):
1921         Use delete.
1922
1923 2018-09-17  Tom Tromey  <tom@tromey.com>
1924
1925         * infrun.c (struct infcall_suspend_state) <registers>: Now a
1926         unique_ptr.
1927         <siginfo_data>: Now a unique_xmalloc_ptr.
1928         (save_infcall_suspend_state, restore_infcall_suspend_state)
1929         (discard_infcall_suspend_state)
1930         (get_infcall_suspend_state_regcache): Update.
1931
1932 2018-09-17  Tom Tromey  <tom@tromey.com>
1933
1934         * gdbthread.h (struct thread_suspend_state): Add initializers.
1935         (class thread_info) <suspend>: Remove initializer.
1936         * infrun.c (struct infcall_suspend_state): Add initializers.
1937         (save_infcall_suspend_state): Use new.
1938         (discard_infcall_suspend_state): Use delete.
1939
1940 2018-09-16  Tom Tromey  <tom@tromey.com>
1941
1942         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
1943         Remove.
1944         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
1945         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
1946         (py_varobj_iter_new): Likewise.
1947         (py_varobj_get_iterator): Use gdbpy_ref.
1948
1949 2018-09-16  Tom Tromey  <tom@tromey.com>
1950
1951         * python/py-threadevent.c (py_get_event_thread): Simplify.
1952         * python/py-inferior.c (infpy_thread_from_thread_handle):
1953         Return immediately after calling thread_to_thread_object.  Use
1954         Py_RETURN_NONE.
1955         (thread_to_thread_object): Set the exception on a NULL return.
1956
1957 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
1958
1959         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
1960
1961 2018-09-16  Tom Tromey  <tom@tromey.com>
1962
1963         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
1964         Remove.
1965
1966 2018-09-16  Tom Tromey  <tom@tromey.com>
1967
1968         * python/python-internal.h (thread_to_thread_object): Change
1969         return type.
1970         * python/py-inferior.c (thread_to_thread_object): Return a new
1971         reference.
1972         (infpy_thread_from_thread_handle): Update.
1973         * python/py-infthread.c (gdbpy_selected_thread): Update.
1974         * python/py-stopevent.c (create_stop_event_object): Update.
1975         * python/py-threadevent.c (py_get_event_thread): Return a new
1976         reference.
1977         (py_get_event_thread): Update.
1978         * python/py-event.h (py_get_event_thread): Change return type.
1979         * python/py-continueevent.c (create_continue_event_object):
1980         Update.
1981
1982 2018-09-16  Tom Tromey  <tom@tromey.com>
1983
1984         * python/py-progspace.c (pspy_get_objfiles): Update.
1985         * python/python-internal.h (objfile_to_objfile_object): Change
1986         return type.
1987         * python/py-newobjfileevent.c (create_new_objfile_event_object):
1988         Update.
1989         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
1990         Update.
1991         * python/python.c (gdbpy_get_current_objfile): Update.
1992         (gdbpy_objfiles): Update.
1993         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
1994         Update.
1995         (objfile_to_objfile_object): Return a new reference.
1996         * python/py-symtab.c (stpy_get_objfile): Update.
1997         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
1998         Update.
1999
2000 2018-09-16  Tom Tromey  <tom@tromey.com>
2001
2002         * python/py-inferior.c (infpy_get_progspace): Update.
2003         * python/python-internal.h (pspace_to_pspace_object): Change
2004         return type.
2005         * python/py-newobjfileevent.c
2006         (create_clear_objfiles_event_object): Update.
2007         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
2008         Update.
2009         * python/python.c (gdbpy_get_current_progspace): Update.
2010         (gdbpy_progspaces): Update.
2011         * python/py-progspace.c (pspace_to_pspace_object): Return a new
2012         reference.
2013         * python/py-objfile.c (objfpy_get_progspace): Update.
2014         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
2015         Update.
2016
2017 2018-09-16  Tom Tromey  <tom@tromey.com>
2018
2019         * python/lib/gdb/__init__.py (current_progspace, objfiles)
2020         (solib_name, block_for_pc, find_pc_line): New functions.
2021         (execute_unwinders): Update.
2022         * python/py-block.c (gdbpy_block_for_pc): Remove.
2023         * python/py-inferior.c (infpy_get_progspace): New function.
2024         (inferior_object_getset) <progspace>: Add.
2025         * python/py-progspace.c (pspy_objfiles): Rewrite.
2026         (pspy_solib_name, pspy_block_for_pc)
2027         (pspy_find_pc_line, pspy_is_valid): New functions.
2028         (progspace_object_methods): Add entries for solib_name,
2029         block_for_pc, find_pc_line, is_valid.
2030         * python/python-internal.h (gdbpy_block_for_pc)
2031         (build_objfiles_list): Don't declare.
2032         * python/python.c: Don't include solib.h.
2033         (gdbpy_solib_name, gdbpy_find_pc_line)
2034         (gdbpy_get_current_progspace, build_objfiles_list)
2035         (gdbpy_objfiles): Remove.
2036         (GdbMethods) <current_progspace, objfiles, block_for_pc,
2037         solib_name, find_pc_line>: Remove entries.
2038
2039 2018-09-16  Tom Tromey  <tom@tromey.com>
2040
2041         * top.c (new_ui_command): Use GNU style for metasyntactic
2042         variables.
2043         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
2044         variables.
2045         * maint.c (maintenance_translate_address): Remove "<>" around
2046         text.
2047         * interps.c (interpreter_exec_cmd): Use GNU style for
2048         metasyntactic variables.
2049         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
2050         metasyntactic variables.
2051         * tracepoint.c (tfind_range_command): Use GNU style for
2052         metasyntactic variables.
2053         (tfind_outside_command): Likewise.
2054         (_initialize_tracepoint): Likewise.
2055         * remote.c (extended_remote_target::create_inferior): Use GNU
2056         style for metasyntactic variables.
2057         * sparc64-tdep.c (adi_examine_command): Use GNU style for
2058         metasyntactic variables.
2059         (adi_assign_command): Likewise.
2060
2061 2018-09-16  Tom Tromey  <tom@tromey.com>
2062
2063         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
2064         metasyntactic variables.  Print message if no disassembler options
2065         are available.
2066
2067 2018-09-15  Tom Tromey  <tom@tromey.com>
2068
2069         * infcmd.c (get_inferior_args): Return const char *.
2070         * inferior.h (get_inferior_args): Return type now const.
2071         * linux-tdep.c (linux_fill_prpsinfo): Update.
2072         * procfs.c (procfs_target::make_corefile_notes): Update.
2073
2074 2018-09-07  Tom Tromey  <tom@tromey.com>
2075
2076         * python/python.c (execute_gdb_command): Call bpstat_do_actions
2077         inside the TRY.
2078
2079 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
2080
2081         * nios2-tdep.c (nios2_type_align): New.
2082         (nios2_gdb_arch_init): Install type_align hook.
2083
2084 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
2085
2086         * eval.c (fake_method::fake_method): Call xzalloc directly for a
2087         type that is neither object file owned, nor gdbarch owned.
2088         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
2089         gdbarch is non-NULL.
2090         (alloc_type_instance): Allocate non-objfile owned types on the
2091         gdbarch obstack.
2092         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
2093         using TYPE_ALLOC to ensure memory is allocated on the correct
2094         obstack.
2095         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
2096         obstack, or the gdbarch obstack.
2097         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
2098
2099 2018-09-14  Tom Tromey  <tom@tromey.com>
2100
2101         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
2102         block.
2103
2104 2018-09-14  Tom Tromey  <tom@tromey.com>
2105
2106         * nat/fork-inferior.c (get_startup_shell): Remove "static".
2107
2108 2018-09-13  Tom Tromey  <tom@tromey.com>
2109
2110         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
2111         static.
2112
2113 2018-09-13  Tom Tromey  <tom@tromey.com>
2114
2115         * exec.c (try_open_exec_file): Use std::string.
2116
2117 2018-09-13  Tom Tromey  <tom@tromey.com>
2118
2119         * utils.h (gdb_bfd_errmsg): Return std::string.
2120         * exec.c (exec_file_attach): Update.
2121         * compile/compile-object-load.c (compile_object_load): Update.
2122         * utils.c (gdb_bfd_errmsg): Return std::string.
2123
2124 2018-09-13  Tom Tromey  <tom@tromey.com>
2125
2126         * procfs.c (struct procinfo_deleter): New.
2127         (procinfo_up): New typedef.
2128         (do_destroy_procinfo_cleanup): Remove.
2129         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
2130
2131 2018-09-13  Tom Tromey  <tom@tromey.com>
2132
2133         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
2134
2135 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2136 2018-09-13  Tom Tromey  <tom@tromey.com>
2137
2138         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
2139         (pspy_get_objfiles): New function.
2140         (progspace_object_methods): New.
2141         (pspace_object_type): Add tp_methods callback.
2142         * python/python-internal.h (build_objfiles_list): New
2143         declaration.
2144         * python/python.c (build_objfiles_list): New function.
2145         (gdbpy_objfiles): Implement using build_objfiles_list.
2146         * NEWS: Mention the Progspace.objfiles method.
2147
2148 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2149
2150         * python/py-inferior.c (infpy_get_progspace): New function.
2151         (inferior_object_getset): Add progspace property.
2152         * NEWS: Mention the new property.
2153
2154 2018-09-13  Tom Tromey  <tom@tromey.com>
2155
2156         PR rust/23650:
2157         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
2158
2159 2018-09-13  Tom Tromey  <tom@tromey.com>
2160
2161         PR rust/23626:
2162         * rust-lang.c (rust_enum_variant): Now static.
2163         (rust_empty_enum_p): New function.
2164         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
2165         Handle empty enum.
2166
2167 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2168
2169         * python/py-inferior.c (infpy_repr): New.
2170         (inferior_object_type): Register infpy_repr.
2171         * python/py-objfile.c (objfpy_repr): New.
2172         (objfile_object_type): Register objfpy_repr.
2173
2174 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
2175
2176         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
2177
2178 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
2179
2180         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
2181         typo.
2182
2183 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
2184
2185         * common/common-utils.c: Don't include '<sys/stat.h>'.
2186         (is_regular_file): Move to...
2187         * common/filestuff.c (is_regular_file): ... here.
2188         * common/common-utils.h (is_regular_file): Move to...
2189         * common/filestuff.h (is_regular_file): ... here.
2190
2191 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
2192
2193         * skip.c (debug_skip): New variable.
2194         (skiplist_entry::do_skip_file_p): Add debug output.
2195         (skiplist_entry::do_skip_gfile_p): Likewise.
2196         (skiplist_entry::skip_function_p): Likewise.
2197         (_initialize_step_skip): Create debug command.
2198         * NEWS: Mention set/show debug skip.
2199
2200 2018-09-11  Xavier Roirand  <roirand@adacore.com>
2201
2202         * darwin-nat.c (should_disable_startup_with_shell):
2203         New function.
2204         (darwin_nat_target::create_inferior): Add call.
2205
2206 2018-09-11  Xavier Roirand  <roirand@adacore.com>
2207
2208         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
2209         inf_port, msg_state>: Initialize.
2210         (struct darwin_thread_info) <signaled, single_step>: Change
2211         type and initialize.
2212         (struct darwin_thread_info) <event>: Initialize.
2213
2214 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2215
2216         PR gdb/23555
2217         PR gdb/23558
2218         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
2219         guesses.
2220
2221 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2222
2223         Revert:
2224         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
2225
2226         PR gdb/23555
2227         PR gdb/23558
2228         * gnulib/aclocal.m4: Regenerate.
2229         * gnulib/config.in: Regenerate.
2230         * gnulib/configure: Regenerate.
2231         * gnulib/import/Makefile.am: Update.
2232         * gnulib/import/Makefile.in: Update.
2233         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
2234         * gnulib/import/_Noreturn.h: ... this.
2235         * gnulib/import/alloca.in.h: Update.
2236         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
2237         * gnulib/import/arg-nonnull.h: ... this.
2238         * gnulib/import/assure.h: Update.
2239         * gnulib/import/at-func.c: Update.
2240         * gnulib/import/basename-lgpl.c: Update.
2241         * gnulib/import/extra/snippet/c++defs.h: Rename to...
2242         * gnulib/import/c++defs.h: ... this.
2243         * gnulib/import/canonicalize-lgpl.c: Update.
2244         * gnulib/import/cdefs.h: Update.
2245         * gnulib/import/chdir-long.c: Update.
2246         * gnulib/import/chdir-long.h: Update.
2247         * gnulib/import/cloexec.c: Update.
2248         * gnulib/import/cloexec.h: Update.
2249         * gnulib/import/close.c: Update.
2250         * gnulib/import/closedir.c: Update.
2251         * gnulib/import/config.charset: Update.
2252         * gnulib/import/dirent-private.h: Update.
2253         * gnulib/import/dirent.in.h: Update.
2254         * gnulib/import/dirfd.c: Update.
2255         * gnulib/import/dirname-lgpl.c: Update.
2256         * gnulib/import/dirname.h: Update.
2257         * gnulib/import/dosname.h: Update.
2258         * gnulib/import/dup-safer-flag.c: Update.
2259         * gnulib/import/dup-safer.c: Update.
2260         * gnulib/import/dup.c: Update.
2261         * gnulib/import/dup2.c: Update.
2262         * gnulib/import/errno.in.h: Update.
2263         * gnulib/import/error.c: Update.
2264         * gnulib/import/error.h: Update.
2265         * gnulib/import/exitfail.c: Update.
2266         * gnulib/import/exitfail.h: Update.
2267         * gnulib/import/extra/update-copyright: Update.
2268         * gnulib/import/fchdir.c: Update.
2269         * gnulib/import/fcntl.c: Update.
2270         * gnulib/import/fcntl.in.h: Update.
2271         * gnulib/import/fd-hook.c: Update.
2272         * gnulib/import/fd-hook.h: Update.
2273         * gnulib/import/fd-safer-flag.c: Update.
2274         * gnulib/import/fd-safer.c: Update.
2275         * gnulib/import/fdopendir.c: Update.
2276         * gnulib/import/filename.h: Update.
2277         * gnulib/import/filenamecat-lgpl.c: Update.
2278         * gnulib/import/filenamecat.h: Update.
2279         * gnulib/import/flexmember.h: Update.
2280         * gnulib/import/float+.h: Update.
2281         * gnulib/import/float.c: Update.
2282         * gnulib/import/float.in.h: Update.
2283         * gnulib/import/fnmatch.c: Update.
2284         * gnulib/import/fnmatch.in.h: Update.
2285         * gnulib/import/fnmatch_loop.c: Update.
2286         * gnulib/import/fpucw.h: Update.
2287         * gnulib/import/frexp.c: Update.
2288         * gnulib/import/frexpl.c: Update.
2289         * gnulib/import/fstat.c: Update.
2290         * gnulib/import/fstatat.c: Update.
2291         * gnulib/import/getcwd-lgpl.c: Update.
2292         * gnulib/import/getcwd.c: Update.
2293         * gnulib/import/getdtablesize.c: Update.
2294         * gnulib/import/getlogin_r.c: Update.
2295         * gnulib/import/getprogname.c: Update.
2296         * gnulib/import/getprogname.h: Update.
2297         * gnulib/import/gettext.h: Update.
2298         * gnulib/import/gettimeofday.c: Update.
2299         * gnulib/import/glob-libc.h: Update.
2300         * gnulib/import/glob.c: Update.
2301         * gnulib/import/glob.in.h: Update.
2302         * gnulib/import/glob_internal.h: Update.
2303         * gnulib/import/glob_pattern_p.c: Update.
2304         * gnulib/import/globfree.c: Update.
2305         * gnulib/import/hard-locale.c: Update.
2306         * gnulib/import/hard-locale.h: Update.
2307         * gnulib/import/intprops.h: Update.
2308         * gnulib/import/inttypes.in.h: Update.
2309         * gnulib/import/isnan.c: Update.
2310         * gnulib/import/isnand-nolibm.h: Update.
2311         * gnulib/import/isnand.c: Update.
2312         * gnulib/import/isnanl-nolibm.h: Update.
2313         * gnulib/import/isnanl.c: Update.
2314         * gnulib/import/itold.c: Update.
2315         * gnulib/import/libc-config.h: Update.
2316         * gnulib/import/limits.in.h: Update.
2317         * gnulib/import/localcharset.c: Update.
2318         * gnulib/import/localcharset.h: Update.
2319         * gnulib/import/localtime-buffer.c: Update.
2320         * gnulib/import/localtime-buffer.h: Update.
2321         * gnulib/import/lstat.c: Update.
2322         * gnulib/import/m4/00gnulib.m4: Update.
2323         * gnulib/import/m4/__inline.m4: Update.
2324         * gnulib/import/m4/absolute-header.m4: Update.
2325         * gnulib/import/m4/alloca.m4: Update.
2326         * gnulib/import/m4/builtin-expect.m4: Update.
2327         * gnulib/import/m4/canonicalize.m4: Update.
2328         * gnulib/import/m4/chdir-long.m4: Update.
2329         * gnulib/import/m4/close.m4: Update.
2330         * gnulib/import/m4/closedir.m4: Update.
2331         * gnulib/import/m4/configmake.m4: Update.
2332         * gnulib/import/m4/d-ino.m4: Update.
2333         * gnulib/import/m4/d-type.m4: Update.
2334         * gnulib/import/m4/dirent_h.m4: Update.
2335         * gnulib/import/m4/dirfd.m4: Update.
2336         * gnulib/import/m4/dirname.m4: Update.
2337         * gnulib/import/m4/double-slash-root.m4: Update.
2338         * gnulib/import/m4/dup.m4: Update.
2339         * gnulib/import/m4/dup2.m4: Update.
2340         * gnulib/import/m4/eealloc.m4: Update.
2341         * gnulib/import/m4/environ.m4: Update.
2342         * gnulib/import/m4/errno_h.m4: Update.
2343         * gnulib/import/m4/error.m4: Update.
2344         * gnulib/import/m4/exponentd.m4: Update.
2345         * gnulib/import/m4/exponentl.m4: Update.
2346         * gnulib/import/m4/extensions.m4: Update.
2347         * gnulib/import/m4/extern-inline.m4: Update.
2348         * gnulib/import/m4/fchdir.m4: Update.
2349         * gnulib/import/m4/fcntl-o.m4: Update.
2350         * gnulib/import/m4/fcntl.m4: Update.
2351         * gnulib/import/m4/fcntl_h.m4: Update.
2352         * gnulib/import/m4/fdopendir.m4: Update.
2353         * gnulib/import/m4/filenamecat.m4: Update.
2354         * gnulib/import/m4/flexmember.m4: Update.
2355         * gnulib/import/m4/float_h.m4: Update.
2356         * gnulib/import/m4/fnmatch.m4: Update.
2357         * gnulib/import/m4/fnmatch_h.m4: Update.
2358         * gnulib/import/m4/fpieee.m4: Update.
2359         * gnulib/import/m4/frexp.m4: Update.
2360         * gnulib/import/m4/frexpl.m4: Update.
2361         * gnulib/import/m4/fstat.m4: Update.
2362         * gnulib/import/m4/fstatat.m4: Update.
2363         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
2364         * gnulib/import/m4/getcwd-path-max.m4: Update.
2365         * gnulib/import/m4/getcwd.m4: Update.
2366         * gnulib/import/m4/getdtablesize.m4: Update.
2367         * gnulib/import/m4/getlogin.m4: Update.
2368         * gnulib/import/m4/getlogin_r.m4: Update.
2369         * gnulib/import/m4/getpagesize.m4: Update.
2370         * gnulib/import/m4/getprogname.m4: Update.
2371         * gnulib/import/m4/gettimeofday.m4: Update.
2372         * gnulib/import/m4/glibc21.m4: Update.
2373         * gnulib/import/m4/glob.m4: Update.
2374         * gnulib/import/m4/glob_h.m4: Update.
2375         * gnulib/import/m4/gnulib-cache.m4: Update.
2376         * gnulib/import/m4/gnulib-common.m4: Update.
2377         * gnulib/import/m4/gnulib-comp.m4: Update.
2378         * gnulib/import/m4/gnulib-tool.m4: Update.
2379         * gnulib/import/m4/hard-locale.m4: Update.
2380         * gnulib/import/m4/include_next.m4: Update.
2381         * gnulib/import/m4/inttypes-pri.m4: Update.
2382         * gnulib/import/m4/inttypes.m4: Update.
2383         * gnulib/import/m4/isnand.m4: Update.
2384         * gnulib/import/m4/isnanl.m4: Update.
2385         * gnulib/import/m4/largefile.m4: Update.
2386         * gnulib/import/m4/limits-h.m4: Update.
2387         * gnulib/import/m4/localcharset.m4: Update.
2388         * gnulib/import/m4/locale-fr.m4: Update.
2389         * gnulib/import/m4/locale-ja.m4: Update.
2390         * gnulib/import/m4/locale-zh.m4: Update.
2391         * gnulib/import/m4/localtime-buffer.m4: Update.
2392         * gnulib/import/m4/longlong.m4: Update.
2393         * gnulib/import/m4/lstat.m4: Update.
2394         * gnulib/import/m4/malloc.m4: Update.
2395         * gnulib/import/m4/malloca.m4: Update.
2396         * gnulib/import/m4/math_h.m4: Update.
2397         * gnulib/import/m4/mbrtowc.m4: Update.
2398         * gnulib/import/m4/mbsinit.m4: Update.
2399         * gnulib/import/m4/mbsrtowcs.m4: Update.
2400         * gnulib/import/m4/mbstate_t.m4: Update.
2401         * gnulib/import/m4/memchr.m4: Update.
2402         * gnulib/import/m4/memmem.m4: Update.
2403         * gnulib/import/m4/mempcpy.m4: Update.
2404         * gnulib/import/m4/memrchr.m4: Update.
2405         * gnulib/import/m4/mkdir.m4: Update.
2406         * gnulib/import/m4/mkstemp.m4: Update.
2407         * gnulib/import/m4/mmap-anon.m4: Update.
2408         * gnulib/import/m4/mode_t.m4: Update.
2409         * gnulib/import/m4/msvc-inval.m4: Update.
2410         * gnulib/import/m4/msvc-nothrow.m4: Update.
2411         * gnulib/import/m4/multiarch.m4: Update.
2412         * gnulib/import/m4/nocrash.m4: Update.
2413         * gnulib/import/m4/off_t.m4: Update.
2414         * gnulib/import/m4/onceonly.m4: Update.
2415         * gnulib/import/m4/open-cloexec.m4: Update.
2416         * gnulib/import/m4/open.m4: Update.
2417         * gnulib/import/m4/openat.m4: Update.
2418         * gnulib/import/m4/opendir.m4: Update.
2419         * gnulib/import/m4/pathmax.m4: Update.
2420         * gnulib/import/m4/rawmemchr.m4: Update.
2421         * gnulib/import/m4/readdir.m4: Update.
2422         * gnulib/import/m4/readlink.m4: Update.
2423         * gnulib/import/m4/realloc.m4: Update.
2424         * gnulib/import/m4/rename.m4: Update.
2425         * gnulib/import/m4/rewinddir.m4: Update.
2426         * gnulib/import/m4/rmdir.m4: Update.
2427         * gnulib/import/m4/save-cwd.m4: Update.
2428         * gnulib/import/m4/secure_getenv.m4: Update.
2429         * gnulib/import/m4/setenv.m4: Update.
2430         * gnulib/import/m4/signal_h.m4: Update.
2431         * gnulib/import/m4/ssize_t.m4: Update.
2432         * gnulib/import/m4/stat-time.m4: Update.
2433         * gnulib/import/m4/stat.m4: Update.
2434         * gnulib/import/m4/std-gnu11.m4: Update.
2435         * gnulib/import/m4/stdbool.m4: Update.
2436         * gnulib/import/m4/stddef_h.m4: Update.
2437         * gnulib/import/m4/stdint.m4: Update.
2438         * gnulib/import/m4/stdio_h.m4: Update.
2439         * gnulib/import/m4/stdlib_h.m4: Update.
2440         * gnulib/import/m4/strchrnul.m4: Update.
2441         * gnulib/import/m4/strdup.m4: Update.
2442         * gnulib/import/m4/strerror.m4: Update.
2443         * gnulib/import/m4/string_h.m4: Update.
2444         * gnulib/import/m4/strstr.m4: Update.
2445         * gnulib/import/m4/strtok_r.m4: Update.
2446         * gnulib/import/m4/sys_socket_h.m4: Update.
2447         * gnulib/import/m4/sys_stat_h.m4: Update.
2448         * gnulib/import/m4/sys_time_h.m4: Update.
2449         * gnulib/import/m4/sys_types_h.m4: Update.
2450         * gnulib/import/m4/tempname.m4: Update.
2451         * gnulib/import/m4/time_h.m4: Update.
2452         * gnulib/import/m4/unistd-safer.m4: Update.
2453         * gnulib/import/m4/unistd_h.m4: Update.
2454         * gnulib/import/m4/warn-on-use.m4: Update.
2455         * gnulib/import/m4/wchar_h.m4: Update.
2456         * gnulib/import/m4/wchar_t.m4: Update.
2457         * gnulib/import/m4/wctype_h.m4: Update.
2458         * gnulib/import/m4/wint_t.m4: Update.
2459         * gnulib/import/malloc.c: Update.
2460         * gnulib/import/malloc/scratch_buffer.h: Update.
2461         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
2462         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
2463         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
2464         * gnulib/import/malloca.c: Update.
2465         * gnulib/import/malloca.h: Update.
2466         * gnulib/import/malloca.valgrind: Update.
2467         * gnulib/import/math.in.h: Update.
2468         * gnulib/import/mbrtowc.c: Update.
2469         * gnulib/import/mbsinit.c: Update.
2470         * gnulib/import/mbsrtowcs-impl.h: Update.
2471         * gnulib/import/mbsrtowcs-state.c: Update.
2472         * gnulib/import/mbsrtowcs.c: Update.
2473         * gnulib/import/memchr.c: Update.
2474         * gnulib/import/memmem.c: Update.
2475         * gnulib/import/mempcpy.c: Update.
2476         * gnulib/import/memrchr.c: Update.
2477         * gnulib/import/mkdir.c: Update.
2478         * gnulib/import/mkstemp.c: Update.
2479         * gnulib/import/msvc-inval.c: Update.
2480         * gnulib/import/msvc-inval.h: Update.
2481         * gnulib/import/msvc-nothrow.c: Update.
2482         * gnulib/import/msvc-nothrow.h: Update.
2483         * gnulib/import/open.c: Update.
2484         * gnulib/import/openat-die.c: Update.
2485         * gnulib/import/openat-priv.h: Update.
2486         * gnulib/import/openat-proc.c: Update.
2487         * gnulib/import/openat.c: Update.
2488         * gnulib/import/openat.h: Update.
2489         * gnulib/import/opendir.c: Update.
2490         * gnulib/import/pathmax.h: Update.
2491         * gnulib/import/pipe-safer.c: Update.
2492         * gnulib/import/rawmemchr.c: Update.
2493         * gnulib/import/readdir.c: Update.
2494         * gnulib/import/readlink.c: Update.
2495         * gnulib/import/realloc.c: Update.
2496         * gnulib/import/ref-add.sin: Update.
2497         * gnulib/import/ref-del.sin: Update.
2498         * gnulib/import/rename.c: Update.
2499         * gnulib/import/rewinddir.c: Update.
2500         * gnulib/import/rmdir.c: Update.
2501         * gnulib/import/same-inode.h: Update.
2502         * gnulib/import/save-cwd.c: Update.
2503         * gnulib/import/save-cwd.h: Update.
2504         * gnulib/import/scratch_buffer.h: Update.
2505         * gnulib/import/secure_getenv.c: Update.
2506         * gnulib/import/setenv.c: Update.
2507         * gnulib/import/signal.in.h: Update.
2508         * gnulib/import/stat-time.c: Update.
2509         * gnulib/import/stat-time.h: Update.
2510         * gnulib/import/stat-w32.c: Update.
2511         * gnulib/import/stat-w32.h: Update.
2512         * gnulib/import/stat.c: Update.
2513         * gnulib/import/stdbool.in.h: Update.
2514         * gnulib/import/stddef.in.h: Update.
2515         * gnulib/import/stdint.in.h: Update.
2516         * gnulib/import/stdio.in.h: Update.
2517         * gnulib/import/stdlib.in.h: Update.
2518         * gnulib/import/str-two-way.h: Update.
2519         * gnulib/import/strchrnul.c: Update.
2520         * gnulib/import/strdup.c: Update.
2521         * gnulib/import/streq.h: Update.
2522         * gnulib/import/strerror-override.c: Update.
2523         * gnulib/import/strerror-override.h: Update.
2524         * gnulib/import/strerror.c: Update.
2525         * gnulib/import/string.in.h: Update.
2526         * gnulib/import/stripslash.c: Update.
2527         * gnulib/import/strnlen1.c: Update.
2528         * gnulib/import/strnlen1.h: Update.
2529         * gnulib/import/strstr.c: Update.
2530         * gnulib/import/strtok_r.c: Update.
2531         * gnulib/import/sys_stat.in.h: Update.
2532         * gnulib/import/sys_time.in.h: Update.
2533         * gnulib/import/sys_types.in.h: Update.
2534         * gnulib/import/tempname.c: Update.
2535         * gnulib/import/tempname.h: Update.
2536         * gnulib/import/time.in.h: Update.
2537         * gnulib/import/unistd--.h: Update.
2538         * gnulib/import/unistd-safer.h: Update.
2539         * gnulib/import/unistd.in.h: Update.
2540         * gnulib/import/unsetenv.c: Update.
2541         * gnulib/import/verify.h: Update.
2542         * gnulib/import/extra/snippet/warn-on-use.h: Update.
2543         * gnulib/import/wchar.in.h: Update.
2544         * gnulib/import/wctype.in.h: Update.
2545         * gnulib/import/xalloc-oversized.h: Update.
2546         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
2547         "53e2c179f26a890fa6685af4b6c1397ee370433b".
2548
2549 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
2550
2551         * record-btrace.c (get_thread_current_frame): Remove
2552         old_inferior_ptid.
2553
2554 2018-09-10  Jerome Guitton  <guitton@adacore.com>
2555
2556         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
2557         with check_tag to 1 if and only if the type is tagged and the
2558         component being searched cannot been found in the current
2559         view. Otherwise, always call ada_to_fixed_type with
2560         check_tag to 0.
2561
2562 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2563
2564         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
2565         declaration.
2566         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
2567         * ada-varobj.c (ada_varobj_get_number_of_children,
2568         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
2569
2570 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2571
2572         * ada-valprint.c (ada_value_print): Use type instead of
2573         enclosing type.
2574
2575 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2576
2577         * ada-lang.c (ada_value_subscript): Handle case when parameter is
2578         an array of access to unconstrained array.
2579
2580 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2581
2582         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
2583         (ada_check_typedef): Use it.
2584
2585 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2586
2587         * ada-varobj.c (ada_varobj_describe_struct_child)
2588         (ada_varobj_describe_child): Handle union case like struct one.
2589
2590 2018-09-10  Tom Tromey  <tom@tromey.com>
2591
2592         PR python/18380:
2593         * python/python.c (_initialize_python): Make example in "python"
2594         help work in Python 3.
2595
2596 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
2597
2598         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
2599         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
2600         $(EXEEXT) to the script, as it is not a program.
2601
2602 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
2603
2604         * python/py-prettyprint.c (pretty_print_one_value): Return
2605         gdbpy_ref<>.
2606         (print_string_repr): Adjust.
2607         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
2608         * python/python-internal.h (apply_varobj_pretty_printer): Return
2609         gdbpy_ref<>.
2610         * varobj.c (varobj_value_get_print_value): Adjust.
2611
2612 2018-09-08  Tom Tromey  <tom@tromey.com>
2613
2614         PR python/16047:
2615         * python/py-prettyprint.c (pretty_print_one_value): Check for
2616         to_string method.
2617
2618 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2619
2620         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
2621         replace_operator_with_call.
2622
2623 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2624
2625         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
2626
2627 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2628
2629         * ada-typeprint.c (print_range): Print the bounds using TYPE
2630         rather than its TYPE_TARGET_TYPE.
2631
2632 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2633
2634         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
2635         call to ada_to_fixed_value_create.
2636
2637 2018-09-08  Jerome Guitton  <guitton@adacore.com>
2638
2639         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
2640
2641 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2642
2643         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
2644         by calls to error.
2645
2646 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2647
2648         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
2649         Move update of loop variable "fi".
2650
2651 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2652
2653         * ada-lang.c (value_assign_to_component): In the case of
2654         big-endian targets, extract the bits of the given VAL
2655         using an src_offset of zero if container is not a scalar.
2656
2657 2018-09-06  Simon Ser  <contact@emersion.fr>
2658
2659         PR gdb/23105
2660         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
2661         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
2662         * fbsd-tdep.c (fbsd_make_note_desc): New.
2663         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
2664         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
2665         * target.h (enum target_object) Add FreeBSD-specific
2666         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
2667
2668 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2669
2670         * compile/compile-c.h (generate_c_for_variable_locations):
2671         Change reference to pointer.
2672         * compile/compile-c-support.c (compile_program) <compute>:
2673         Likewise.
2674         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
2675         (generate_c_for_for_one_variable): Likewise
2676         (generate_c_for_variable_locations): Likewise
2677         * compile/compile-c-types.c (compile_c_instance::convert_type):
2678         Likewise
2679         * compile/compile-cplus-symbols.c (convert_one_symbol):
2680         std::move the scope passed to enter_scope.
2681         * compile/compile-cplus-types.c
2682         (compile_cplus_instance::enter_scope): Make parameter
2683         rvalue-reference.
2684         (compile_cplus_instance::new_scope): Change reference to
2685         pointer.
2686         (compile_cplus_instance::convert_type): Likewise
2687         (compile_cplus_convert_typedef): std::move the scope passed to
2688         enter_scope.
2689         (compile_cplus_convert_struct_or_union): Likewise.
2690         (compile_cplus_convert_enum): Likewise.
2691         (compile_cplus_convert_namespace): Likewise.
2692         * compile/compile-cplus.h (compile_cplus_instance)
2693         <enter_scope>: Make parameter rvalue-reference.
2694         * compile/compile-internal.h (compile_instance)
2695         <get_cached_type>: Likewise
2696         * compile/compile-loc2c.c (push): Likewise
2697         (pushf): Likewise
2698         (unary): Likewise
2699         (binary): Likewise
2700         (print_label): Likewise
2701         (pushf_register_address): Likewise
2702         (pushf_register): Likewise
2703         (do_compile_dwarf_expr_to_c): Likewise
2704         (compile_dwarf_expr_to_c): Likewise
2705         (compile_dwarf_bounds_to_c): Likewise
2706         * compile/compile.c (compile_instance::get_cached_type):
2707         Likewise
2708         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
2709         (compile_dwarf_bounds_to_c): Likewise
2710         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
2711         (dwarf2_compile_property_to_c): Likewise
2712         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
2713         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
2714         Likewise
2715
2716 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2717
2718         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
2719         * tui/tui-data.c (init_content_element): Don't initialize it.
2720
2721 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2722
2723         * tui/tui-data.h (struct tui_win_info)
2724         <detail::opaque>: Remove.
2725         * tui/tui-data.c (init_win_info): Remove assignment.
2726
2727 2018-09-05  Tom Tromey  <tom@tromey.com>
2728
2729         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
2730         -Wformat-nonliteral.
2731         * target-float.c (host_float_ops<T>::to_string)
2732         (host_float_ops<T>::from_string): Use
2733         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
2734         * configure: Rebuild.
2735
2736 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
2737
2738         * printcmd.c (printf_c_string): Use
2739         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
2740         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
2741
2742 2018-09-05  Tom Tromey  <tom@tromey.com>
2743
2744         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
2745
2746 2018-09-05  Tom de Vries  <tdevries@suse.de>
2747
2748         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
2749         with resolve_abstract_p == true.
2750         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
2751         defaulting to false. Propagate resolve_abstract_p to
2752         dwarf2_fetch_die_loc_sect_off.
2753         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
2754         parameter, defaulting to false.
2755         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
2756         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
2757         parameter.
2758         * dwarf2read.h (struct die_info): Forward-declare.
2759         (die_info_ptr): New typedef.
2760         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
2761
2762 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
2763
2764         GDB 8.2 released.
2765
2766 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
2767             Pedro Alves  <palves@redhat.com>
2768
2769         * gnulib/Makefile.in (aclocal_m4_deps): Move to
2770         "aclocal-m4-deps.mk".  Include file here.
2771         $(srcdir)/aclocal.m4: Add "configure.ac".
2772         * gnulib/aclocal-m4-deps.mk: New file.
2773         * gnulib/update-gnulib.sh: Automatically update
2774         "aclocal-m4-deps.mk".
2775
2776 2018-09-04  Tom Tromey  <tom@tromey.com>
2777
2778         * configure: Rebuild.
2779         * configure.ac: Remove multi-ice code.
2780
2781 2018-09-04  Tom Tromey  <tom@tromey.com>
2782
2783         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
2784         (ada-exp.o): Update.
2785
2786 2018-09-04  Tom Tromey  <tom@tromey.com>
2787
2788         * Makefile.in (printcmd.o, target-float.o): Remove.
2789         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
2790
2791 2018-09-04  Tom Tromey  <tom@tromey.com>
2792
2793         * gnulib/Makefile.in: Remove obsolete comment.
2794         * Makefile.in: Remove obsolete comment.
2795
2796 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
2797
2798         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
2799         line with '+'.
2800
2801 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2802
2803         * riscv-tdep.c: Add 'prologue-value.h' include.
2804         (struct riscv_unwind_cache): New struct.
2805         (riscv_debug_unwinder): New global.
2806         (riscv_scan_prologue): Update arguments, capture register details
2807         from prologue scan.
2808         (riscv_skip_prologue): Reformat arguments line, move end of
2809         prologue calculation into riscv_scan_prologue.
2810         (riscv_frame_cache): Update return type, create
2811         riscv_unwind_cache, scan the prologue, and fill in remaining cache
2812         details.
2813         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
2814         (riscv_frame_prev_register): Use the trad_frame within the
2815         riscv_unwind_cache.
2816         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
2817         flag.
2818
2819 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2820
2821         * trad-frame.h (trad_frame_set_realreg): Declare.
2822         (trad_frame_set_addr): Declare.
2823         * trad-frame.c (trad_frame_set_realreg): Define new function.
2824         (trad_frame_set_addr): Define new function.
2825         (trad_frame_set_reg_realreg): Use new function.
2826         (trad_frame_set_reg_addr): Use new function.
2827
2828 2018-09-01  Keith Seitz  <keiths@redhat.com>
2829
2830         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
2831         pulongest instead of "%lld".
2832         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
2833         ATTRIBUTE_UNUSED.
2834
2835 2018-08-31  Tom Tromey  <tom@tromey.com>
2836
2837         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
2838         variant part type.
2839
2840 2018-08-31  Pedro Alves  <palves@redhat.com>
2841
2842         * gdbarch.h: Regenerate.
2843
2844 2018-08-31  Pedro Alves  <palves@redhat.com>
2845
2846         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
2847         * target.h (Hardware watchpoint interfaces): Describe
2848         continuable/steppable/non-steppable watchpoints.
2849         * gdbarch.h, gdbarch.c: Regenerate.
2850
2851 2018-08-31  Pedro Alves  <palves@redhat.com>
2852
2853         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
2854         Delete.
2855         * s390-linux-nat.c
2856         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
2857         * target.h (target_ops::have_continuable_watchpoint): Delete.
2858         (target_have_continuable_watchpoint): Delete.
2859         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
2860         * target-delegates.c: Regenerate.
2861
2862 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
2863
2864         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
2865         the files present in "gnulib/import/m4/".
2866
2867 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2868
2869         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
2870         c.sw, c.swsp, and c.sdsp.
2871
2872 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2873
2874         * riscv-tdep.c (struct riscv_inferior_data): Delete.
2875         (riscv_read_misa_reg): Don't cache value read into inferior data.
2876         (riscv_new_inferior_data): Delete.
2877         (riscv_inferior_data_cleanup): Delete.
2878         (riscv_inferior_data): Delete.
2879         (riscv_invalidate_inferior_data): Delete.
2880         (_initialize_riscv_tdep): Remove initialisation of inferior data.
2881
2882 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
2883
2884         * compile/compile-cplus-types.c
2885         (compile_cplus_instance::leave_scope): Take the address of scope
2886         object.
2887         (compile_cplus_instance::convert_qualified_base): Compare quals
2888         to 0.
2889
2890 2018-08-30  Keith Seitz  <keiths@redhat.com>
2891
2892         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
2893         Use "%s" and host_address_to_string instead of "%p" in printf.
2894
2895 2018-08-29  Keith Seitz  <keiths@redhat.com>
2896
2897         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
2898         and compile-cplus-types.c.
2899         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
2900         * c-lang.c (cplus_language_defn): Set C++ compile functions.
2901         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
2902         Declare.
2903         * compile/compile-c-support.c: Include compile-cplus.h.
2904         (load_libcompile): Templatize.
2905         (get_compile_context): "New" function.
2906         (c_get_compile_context): Use get_compile_context.
2907         (cplus_get_compile_context): New function.
2908         (cplus_push_user_expression, cplus_pop_user_expression)
2909         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
2910         (cplus_compute_program): Define new structs/functions.
2911         * compile/compile-cplus-symmbols.c: New file.
2912         * compile/compile-cplus-types.c: New file.
2913         * compile/compile-cplus.h: New file.
2914         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
2915         Declare.
2916         * compile/compile-object-load.c (get_out_value_type): Use
2917         strncmp_iw when comparing symbol names.
2918         (compile_object_load): Add mst_bss and mst_data.
2919         * compile/compile.c (_initialize_compile): Remove
2920         -Wno-implicit-function-declaration from `compile_args'.
2921         * compile/gcc-cp-plugin.h: New file.
2922         * NEWS: Mention C++ compile support and new debug options.
2923
2924 2018-08-29  Keith Seitz  <keiths@redhat.com>
2925
2926         * linespec.c (collect_info::add_symbol): Make virtual.
2927         (struct symbol_searcher_collect_info): New struct.
2928         (symbol_searcher::find_all_symbols): New method.
2929         * symtab.h (class symbol_searcher): New class.
2930
2931 2018-08-29  Keith Seitz  <keiths@redhat.com>
2932
2933         * linespec.c (struct linespec) <function_symbols, label_symbols>:
2934         Change to vector of block_symbol.  Update all users.
2935         (struct collect_info) <symbols>: Likewise.
2936         (collect_info::add_symbol): Take block_symbol as argument.
2937         Update all callers.
2938         (decode_compound_collector) <m_symbols>: Change type to vector
2939         of block_symbol.  Update all users.
2940         (decode_compound_collector::operator ()): Change parameter type
2941         to block_symbol.
2942         (find_method, find_function_symbols, find_linespec_symbols)
2943         (find_label_symbols_in_block, find_label_symbols): Change symbol
2944         vectors to block_symbol vectors.
2945         * symtab.h (symbol_found_callback_ftype): Change parameter type to
2946         block_symbol.
2947
2948 2018-08-29  Keith Seitz  <keiths@redhat.com>
2949
2950         * linespec.c (symbolp): Remove typedef and VEC definitions.
2951         (bound_minimal_symbol_d): Likewise.
2952
2953 2018-08-29  Keith Seitz  <keiths@redhat.com>
2954
2955         * linespec.c (decode_compound_collector::decode_compound_collector):
2956         Remove initialization for `m_symtabs'.
2957         (decode_compound_collector::release_symbols): Change return type
2958         to std::vector.  Update all callers.
2959         (class decode_compound_collector) <m_symbols>: Change type to
2960         std::vector.
2961         (lookup_prefix_sym): Change return type to std::vector.  Update all
2962         callers.
2963         (compare_symbols): Remove.
2964         (std_compare_symbols): Rename to `compare_symbols'.
2965         (find_method): Change `sym_classes' parameter to std::vector.
2966         Update all callers.  Use std::sort to sort sym_classes.
2967         (find_linespec_symbols): Remove cleanup.
2968
2969 2018-08-29  Keith Seitz  <keiths@redhat.com>
2970
2971         * linespec.c (struct linespec) <minimal_symbols>: Change type to
2972         std::vector.  Update all users.
2973         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
2974         (struct collect_info) <minimal_symbols>: Likewise.
2975         (compare_msymbols): Return bool.  Change parameters to const
2976         bound_minimal_symbol references.
2977         (find_method, find_function_symbols, find_linespec_symbols): Change
2978         `minsyms' parameter to std::vector.  Update all callers.
2979
2980 2018-08-29  Keith Seitz  <keiths@redhat.com>
2981
2982         * linespec.c (struct linespec) <label_symbols>: Change type to
2983         std::vector.  Update all users.
2984         (find_label_symbols_in_block): Change `result' parameter to
2985         std::vector.  Update all callers.
2986         (find_label_symbols): Return std::vector.  Update all callers.
2987
2988 2018-08-29  Keith Seitz  <keiths@redhat.com>
2989
2990         * linespec.c (struct linespec) <function_symbols>: Change type to
2991         std::vector.  Update all users.
2992         (struct collect_info) <function_symbols>: Likewise.
2993         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
2994         (std_compare_symbols): New function.
2995         (find_method, find_function_symbols, find_linespec_symbols)
2996         (find_label_symbols_in_block): Change `symbols' parameter to
2997         std::vector.  Update all callers.
2998         (find_label_symbols): Likewise for `function_symbols' and
2999         `label_funcs_ret'.
3000
3001 2018-08-29  Keith Seitz  <keiths@redhat.com>
3002
3003         * linespec.c (symtab_vector_up): Define.
3004         (struct linespec) <file_symtabs>: Change type to std::vector *.
3005         Update all uses.
3006         (struct collect_info) <file_symtabs>: Likewise.
3007         (collect_symtabs_from_filename): Return symtab_vector_up.
3008         Update all callers.
3009         (decode_objc): Remove cleanup.
3010         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
3011         (symtab_collector::release_symtabs): Return symtab_vector_up.
3012         Update all callers.
3013         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
3014         Update all users.
3015         (collect_symtabs_from_filename, symtabs_from_filename): Return
3016         symtab_vector_up.  Update all callers.
3017
3018 2018-08-29  Tom Tromey  <tom@tromey.com>
3019
3020         * csky-tdep.c (csky_analyze_prologue): Use
3021         core_addr_to_string_nz.
3022
3023 2018-08-29  Tom Tromey  <tom@tromey.com>
3024
3025         * windows-nat.c (struct xlate_exception) <them>: Change type to
3026         DWORD.
3027         (xlate): Fix formatting.  Remove last entry.
3028         (struct xlate_exception, xlate): Comment out.
3029         (windows_nat_target::resume): Use ranged for.
3030
3031 2018-08-29  Jim Wilson  <jimw@sifive.com>
3032
3033         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
3034         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
3035         of NT_PRFPREG.
3036         (riscv_linux_nat_target::store_registers): Likewise.
3037
3038 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
3039
3040         PR gdb/23555
3041         PR gdb/23558
3042         * gnulib/aclocal.m4: Regenerate.
3043         * gnulib/config.in: Regenerate.
3044         * gnulib/configure: Regenerate.
3045         * gnulib/import/Makefile.am: Update.
3046         * gnulib/import/Makefile.in: Update.
3047         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
3048         * gnulib/import/_Noreturn.h: ... this.
3049         * gnulib/import/alloca.in.h: Update.
3050         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
3051         * gnulib/import/arg-nonnull.h: ... this.
3052         * gnulib/import/assure.h: Update.
3053         * gnulib/import/at-func.c: Update.
3054         * gnulib/import/basename-lgpl.c: Update.
3055         * gnulib/import/extra/snippet/c++defs.h: Rename to...
3056         * gnulib/import/c++defs.h: ... this.
3057         * gnulib/import/canonicalize-lgpl.c: Update.
3058         * gnulib/import/cdefs.h: Update.
3059         * gnulib/import/chdir-long.c: Update.
3060         * gnulib/import/chdir-long.h: Update.
3061         * gnulib/import/cloexec.c: Update.
3062         * gnulib/import/cloexec.h: Update.
3063         * gnulib/import/close.c: Update.
3064         * gnulib/import/closedir.c: Update.
3065         * gnulib/import/config.charset: Update.
3066         * gnulib/import/dirent-private.h: Update.
3067         * gnulib/import/dirent.in.h: Update.
3068         * gnulib/import/dirfd.c: Update.
3069         * gnulib/import/dirname-lgpl.c: Update.
3070         * gnulib/import/dirname.h: Update.
3071         * gnulib/import/dosname.h: Update.
3072         * gnulib/import/dup-safer-flag.c: Update.
3073         * gnulib/import/dup-safer.c: Update.
3074         * gnulib/import/dup.c: Update.
3075         * gnulib/import/dup2.c: Update.
3076         * gnulib/import/errno.in.h: Update.
3077         * gnulib/import/error.c: Update.
3078         * gnulib/import/error.h: Update.
3079         * gnulib/import/exitfail.c: Update.
3080         * gnulib/import/exitfail.h: Update.
3081         * gnulib/import/extra/update-copyright: Update.
3082         * gnulib/import/fchdir.c: Update.
3083         * gnulib/import/fcntl.c: Update.
3084         * gnulib/import/fcntl.in.h: Update.
3085         * gnulib/import/fd-hook.c: Update.
3086         * gnulib/import/fd-hook.h: Update.
3087         * gnulib/import/fd-safer-flag.c: Update.
3088         * gnulib/import/fd-safer.c: Update.
3089         * gnulib/import/fdopendir.c: Update.
3090         * gnulib/import/filename.h: Update.
3091         * gnulib/import/filenamecat-lgpl.c: Update.
3092         * gnulib/import/filenamecat.h: Update.
3093         * gnulib/import/flexmember.h: Update.
3094         * gnulib/import/float+.h: Update.
3095         * gnulib/import/float.c: Update.
3096         * gnulib/import/float.in.h: Update.
3097         * gnulib/import/fnmatch.c: Update.
3098         * gnulib/import/fnmatch.in.h: Update.
3099         * gnulib/import/fnmatch_loop.c: Update.
3100         * gnulib/import/fpucw.h: Update.
3101         * gnulib/import/frexp.c: Update.
3102         * gnulib/import/frexpl.c: Update.
3103         * gnulib/import/fstat.c: Update.
3104         * gnulib/import/fstatat.c: Update.
3105         * gnulib/import/getcwd-lgpl.c: Update.
3106         * gnulib/import/getcwd.c: Update.
3107         * gnulib/import/getdtablesize.c: Update.
3108         * gnulib/import/getlogin_r.c: Update.
3109         * gnulib/import/getprogname.c: Update.
3110         * gnulib/import/getprogname.h: Update.
3111         * gnulib/import/gettext.h: Update.
3112         * gnulib/import/gettimeofday.c: Update.
3113         * gnulib/import/glob-libc.h: Update.
3114         * gnulib/import/glob.c: Update.
3115         * gnulib/import/glob.in.h: Update.
3116         * gnulib/import/glob_internal.h: Update.
3117         * gnulib/import/glob_pattern_p.c: Update.
3118         * gnulib/import/globfree.c: Update.
3119         * gnulib/import/hard-locale.c: Update.
3120         * gnulib/import/hard-locale.h: Update.
3121         * gnulib/import/intprops.h: Update.
3122         * gnulib/import/inttypes.in.h: Update.
3123         * gnulib/import/isnan.c: Update.
3124         * gnulib/import/isnand-nolibm.h: Update.
3125         * gnulib/import/isnand.c: Update.
3126         * gnulib/import/isnanl-nolibm.h: Update.
3127         * gnulib/import/isnanl.c: Update.
3128         * gnulib/import/itold.c: Update.
3129         * gnulib/import/libc-config.h: Update.
3130         * gnulib/import/limits.in.h: Update.
3131         * gnulib/import/localcharset.c: Update.
3132         * gnulib/import/localcharset.h: Update.
3133         * gnulib/import/localtime-buffer.c: Update.
3134         * gnulib/import/localtime-buffer.h: Update.
3135         * gnulib/import/lstat.c: Update.
3136         * gnulib/import/m4/00gnulib.m4: Update.
3137         * gnulib/import/m4/__inline.m4: Update.
3138         * gnulib/import/m4/absolute-header.m4: Update.
3139         * gnulib/import/m4/alloca.m4: Update.
3140         * gnulib/import/m4/builtin-expect.m4: Update.
3141         * gnulib/import/m4/canonicalize.m4: Update.
3142         * gnulib/import/m4/chdir-long.m4: Update.
3143         * gnulib/import/m4/close.m4: Update.
3144         * gnulib/import/m4/closedir.m4: Update.
3145         * gnulib/import/m4/configmake.m4: Update.
3146         * gnulib/import/m4/d-ino.m4: Update.
3147         * gnulib/import/m4/d-type.m4: Update.
3148         * gnulib/import/m4/dirent_h.m4: Update.
3149         * gnulib/import/m4/dirfd.m4: Update.
3150         * gnulib/import/m4/dirname.m4: Update.
3151         * gnulib/import/m4/double-slash-root.m4: Update.
3152         * gnulib/import/m4/dup.m4: Update.
3153         * gnulib/import/m4/dup2.m4: Update.
3154         * gnulib/import/m4/eealloc.m4: Update.
3155         * gnulib/import/m4/environ.m4: Update.
3156         * gnulib/import/m4/errno_h.m4: Update.
3157         * gnulib/import/m4/error.m4: Update.
3158         * gnulib/import/m4/exponentd.m4: Update.
3159         * gnulib/import/m4/exponentl.m4: Update.
3160         * gnulib/import/m4/extensions.m4: Update.
3161         * gnulib/import/m4/extern-inline.m4: Update.
3162         * gnulib/import/m4/fchdir.m4: Update.
3163         * gnulib/import/m4/fcntl-o.m4: Update.
3164         * gnulib/import/m4/fcntl.m4: Update.
3165         * gnulib/import/m4/fcntl_h.m4: Update.
3166         * gnulib/import/m4/fdopendir.m4: Update.
3167         * gnulib/import/m4/filenamecat.m4: Update.
3168         * gnulib/import/m4/flexmember.m4: Update.
3169         * gnulib/import/m4/float_h.m4: Update.
3170         * gnulib/import/m4/fnmatch.m4: Update.
3171         * gnulib/import/m4/fnmatch_h.m4: Update.
3172         * gnulib/import/m4/fpieee.m4: Update.
3173         * gnulib/import/m4/frexp.m4: Update.
3174         * gnulib/import/m4/frexpl.m4: Update.
3175         * gnulib/import/m4/fstat.m4: Update.
3176         * gnulib/import/m4/fstatat.m4: Update.
3177         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
3178         * gnulib/import/m4/getcwd-path-max.m4: Update.
3179         * gnulib/import/m4/getcwd.m4: Update.
3180         * gnulib/import/m4/getdtablesize.m4: Update.
3181         * gnulib/import/m4/getlogin.m4: Update.
3182         * gnulib/import/m4/getlogin_r.m4: Update.
3183         * gnulib/import/m4/getpagesize.m4: Update.
3184         * gnulib/import/m4/getprogname.m4: Update.
3185         * gnulib/import/m4/gettimeofday.m4: Update.
3186         * gnulib/import/m4/glibc21.m4: Update.
3187         * gnulib/import/m4/glob.m4: Update.
3188         * gnulib/import/m4/glob_h.m4: Update.
3189         * gnulib/import/m4/gnulib-cache.m4: Update.
3190         * gnulib/import/m4/gnulib-common.m4: Update.
3191         * gnulib/import/m4/gnulib-comp.m4: Update.
3192         * gnulib/import/m4/gnulib-tool.m4: Update.
3193         * gnulib/import/m4/hard-locale.m4: Update.
3194         * gnulib/import/m4/include_next.m4: Update.
3195         * gnulib/import/m4/inttypes-pri.m4: Update.
3196         * gnulib/import/m4/inttypes.m4: Update.
3197         * gnulib/import/m4/isnand.m4: Update.
3198         * gnulib/import/m4/isnanl.m4: Update.
3199         * gnulib/import/m4/largefile.m4: Update.
3200         * gnulib/import/m4/limits-h.m4: Update.
3201         * gnulib/import/m4/localcharset.m4: Update.
3202         * gnulib/import/m4/locale-fr.m4: Update.
3203         * gnulib/import/m4/locale-ja.m4: Update.
3204         * gnulib/import/m4/locale-zh.m4: Update.
3205         * gnulib/import/m4/localtime-buffer.m4: Update.
3206         * gnulib/import/m4/longlong.m4: Update.
3207         * gnulib/import/m4/lstat.m4: Update.
3208         * gnulib/import/m4/malloc.m4: Update.
3209         * gnulib/import/m4/malloca.m4: Update.
3210         * gnulib/import/m4/math_h.m4: Update.
3211         * gnulib/import/m4/mbrtowc.m4: Update.
3212         * gnulib/import/m4/mbsinit.m4: Update.
3213         * gnulib/import/m4/mbsrtowcs.m4: Update.
3214         * gnulib/import/m4/mbstate_t.m4: Update.
3215         * gnulib/import/m4/memchr.m4: Update.
3216         * gnulib/import/m4/memmem.m4: Update.
3217         * gnulib/import/m4/mempcpy.m4: Update.
3218         * gnulib/import/m4/memrchr.m4: Update.
3219         * gnulib/import/m4/mkdir.m4: Update.
3220         * gnulib/import/m4/mkstemp.m4: Update.
3221         * gnulib/import/m4/mmap-anon.m4: Update.
3222         * gnulib/import/m4/mode_t.m4: Update.
3223         * gnulib/import/m4/msvc-inval.m4: Update.
3224         * gnulib/import/m4/msvc-nothrow.m4: Update.
3225         * gnulib/import/m4/multiarch.m4: Update.
3226         * gnulib/import/m4/nocrash.m4: Update.
3227         * gnulib/import/m4/off_t.m4: Update.
3228         * gnulib/import/m4/onceonly.m4: Update.
3229         * gnulib/import/m4/open-cloexec.m4: Update.
3230         * gnulib/import/m4/open.m4: Update.
3231         * gnulib/import/m4/openat.m4: Update.
3232         * gnulib/import/m4/opendir.m4: Update.
3233         * gnulib/import/m4/pathmax.m4: Update.
3234         * gnulib/import/m4/rawmemchr.m4: Update.
3235         * gnulib/import/m4/readdir.m4: Update.
3236         * gnulib/import/m4/readlink.m4: Update.
3237         * gnulib/import/m4/realloc.m4: Update.
3238         * gnulib/import/m4/rename.m4: Update.
3239         * gnulib/import/m4/rewinddir.m4: Update.
3240         * gnulib/import/m4/rmdir.m4: Update.
3241         * gnulib/import/m4/save-cwd.m4: Update.
3242         * gnulib/import/m4/secure_getenv.m4: Update.
3243         * gnulib/import/m4/setenv.m4: Update.
3244         * gnulib/import/m4/signal_h.m4: Update.
3245         * gnulib/import/m4/ssize_t.m4: Update.
3246         * gnulib/import/m4/stat-time.m4: Update.
3247         * gnulib/import/m4/stat.m4: Update.
3248         * gnulib/import/m4/std-gnu11.m4: Update.
3249         * gnulib/import/m4/stdbool.m4: Update.
3250         * gnulib/import/m4/stddef_h.m4: Update.
3251         * gnulib/import/m4/stdint.m4: Update.
3252         * gnulib/import/m4/stdio_h.m4: Update.
3253         * gnulib/import/m4/stdlib_h.m4: Update.
3254         * gnulib/import/m4/strchrnul.m4: Update.
3255         * gnulib/import/m4/strdup.m4: Update.
3256         * gnulib/import/m4/strerror.m4: Update.
3257         * gnulib/import/m4/string_h.m4: Update.
3258         * gnulib/import/m4/strstr.m4: Update.
3259         * gnulib/import/m4/strtok_r.m4: Update.
3260         * gnulib/import/m4/sys_socket_h.m4: Update.
3261         * gnulib/import/m4/sys_stat_h.m4: Update.
3262         * gnulib/import/m4/sys_time_h.m4: Update.
3263         * gnulib/import/m4/sys_types_h.m4: Update.
3264         * gnulib/import/m4/tempname.m4: Update.
3265         * gnulib/import/m4/time_h.m4: Update.
3266         * gnulib/import/m4/unistd-safer.m4: Update.
3267         * gnulib/import/m4/unistd_h.m4: Update.
3268         * gnulib/import/m4/warn-on-use.m4: Update.
3269         * gnulib/import/m4/wchar_h.m4: Update.
3270         * gnulib/import/m4/wchar_t.m4: Update.
3271         * gnulib/import/m4/wctype_h.m4: Update.
3272         * gnulib/import/m4/wint_t.m4: Update.
3273         * gnulib/import/malloc.c: Update.
3274         * gnulib/import/malloc/scratch_buffer.h: Update.
3275         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
3276         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
3277         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
3278         * gnulib/import/malloca.c: Update.
3279         * gnulib/import/malloca.h: Update.
3280         * gnulib/import/malloca.valgrind: Update.
3281         * gnulib/import/math.in.h: Update.
3282         * gnulib/import/mbrtowc.c: Update.
3283         * gnulib/import/mbsinit.c: Update.
3284         * gnulib/import/mbsrtowcs-impl.h: Update.
3285         * gnulib/import/mbsrtowcs-state.c: Update.
3286         * gnulib/import/mbsrtowcs.c: Update.
3287         * gnulib/import/memchr.c: Update.
3288         * gnulib/import/memmem.c: Update.
3289         * gnulib/import/mempcpy.c: Update.
3290         * gnulib/import/memrchr.c: Update.
3291         * gnulib/import/mkdir.c: Update.
3292         * gnulib/import/mkstemp.c: Update.
3293         * gnulib/import/msvc-inval.c: Update.
3294         * gnulib/import/msvc-inval.h: Update.
3295         * gnulib/import/msvc-nothrow.c: Update.
3296         * gnulib/import/msvc-nothrow.h: Update.
3297         * gnulib/import/open.c: Update.
3298         * gnulib/import/openat-die.c: Update.
3299         * gnulib/import/openat-priv.h: Update.
3300         * gnulib/import/openat-proc.c: Update.
3301         * gnulib/import/openat.c: Update.
3302         * gnulib/import/openat.h: Update.
3303         * gnulib/import/opendir.c: Update.
3304         * gnulib/import/pathmax.h: Update.
3305         * gnulib/import/pipe-safer.c: Update.
3306         * gnulib/import/rawmemchr.c: Update.
3307         * gnulib/import/readdir.c: Update.
3308         * gnulib/import/readlink.c: Update.
3309         * gnulib/import/realloc.c: Update.
3310         * gnulib/import/ref-add.sin: Update.
3311         * gnulib/import/ref-del.sin: Update.
3312         * gnulib/import/rename.c: Update.
3313         * gnulib/import/rewinddir.c: Update.
3314         * gnulib/import/rmdir.c: Update.
3315         * gnulib/import/same-inode.h: Update.
3316         * gnulib/import/save-cwd.c: Update.
3317         * gnulib/import/save-cwd.h: Update.
3318         * gnulib/import/scratch_buffer.h: Update.
3319         * gnulib/import/secure_getenv.c: Update.
3320         * gnulib/import/setenv.c: Update.
3321         * gnulib/import/signal.in.h: Update.
3322         * gnulib/import/stat-time.c: Update.
3323         * gnulib/import/stat-time.h: Update.
3324         * gnulib/import/stat-w32.c: Update.
3325         * gnulib/import/stat-w32.h: Update.
3326         * gnulib/import/stat.c: Update.
3327         * gnulib/import/stdbool.in.h: Update.
3328         * gnulib/import/stddef.in.h: Update.
3329         * gnulib/import/stdint.in.h: Update.
3330         * gnulib/import/stdio.in.h: Update.
3331         * gnulib/import/stdlib.in.h: Update.
3332         * gnulib/import/str-two-way.h: Update.
3333         * gnulib/import/strchrnul.c: Update.
3334         * gnulib/import/strdup.c: Update.
3335         * gnulib/import/streq.h: Update.
3336         * gnulib/import/strerror-override.c: Update.
3337         * gnulib/import/strerror-override.h: Update.
3338         * gnulib/import/strerror.c: Update.
3339         * gnulib/import/string.in.h: Update.
3340         * gnulib/import/stripslash.c: Update.
3341         * gnulib/import/strnlen1.c: Update.
3342         * gnulib/import/strnlen1.h: Update.
3343         * gnulib/import/strstr.c: Update.
3344         * gnulib/import/strtok_r.c: Update.
3345         * gnulib/import/sys_stat.in.h: Update.
3346         * gnulib/import/sys_time.in.h: Update.
3347         * gnulib/import/sys_types.in.h: Update.
3348         * gnulib/import/tempname.c: Update.
3349         * gnulib/import/tempname.h: Update.
3350         * gnulib/import/time.in.h: Update.
3351         * gnulib/import/unistd--.h: Update.
3352         * gnulib/import/unistd-safer.h: Update.
3353         * gnulib/import/unistd.in.h: Update.
3354         * gnulib/import/unsetenv.c: Update.
3355         * gnulib/import/verify.h: Update.
3356         * gnulib/import/extra/snippet/warn-on-use.h: Update.
3357         * gnulib/import/wchar.in.h: Update.
3358         * gnulib/import/wctype.in.h: Update.
3359         * gnulib/import/xalloc-oversized.h: Update.
3360         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
3361         "53e2c179f26a890fa6685af4b6c1397ee370433b".
3362
3363 2018-08-16  Gary Benson <gbenson@redhat.com>
3364
3365         PR gdb/13000:
3366         * gdb/main.c (captured_main_1): Exit with nonzero status
3367         in batch mode if the last command to be executed failed.
3368         * NEWS: Mention the above.
3369
3370 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
3371
3372         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
3373         end of warning message.
3374
3375 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3376
3377         PR gdb/22943:
3378         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
3379         (aarch64_extract_return_value): Use
3380         aapcs_is_vfp_call_or_return_candidate.
3381         (aarch64_return_in_memory): Likewise.
3382         (aarch64_store_return_value): Likewise.
3383
3384 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3385
3386         * aarch64-tdep.c
3387         (aapcs_is_vfp_call_or_return_candidate): Make static
3388         (pass_in_v_or_stack): Remove function.
3389         (pass_in_v_vfp_candidate): New function.
3390         (aarch64_push_dummy_call): Check for float register candidates.
3391
3392 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3393
3394         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
3395         (aapcs_is_vfp_call_or_return_candidate_1): New function.
3396         (aapcs_is_vfp_call_or_return_candidate): Likewise.
3397
3398 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
3399
3400         PR build/23399
3401         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
3402         (struct ipa_sym_addresses): Rename to...
3403         (struct ipa_sym_addresses_common): ... this.
3404         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
3405
3406 2018-08-28  Tom Tromey  <tom@tromey.com>
3407
3408         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3409         (token_fifo): Now a std::vector.
3410         (yylex, c_parse): Update.
3411         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3412         (token_fifo): Now a std::vector.
3413         (yylex, d_parse): Update.
3414         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3415         (token_fifo): Now a std::vector.
3416         (yylex, go_parse): Update.
3417
3418 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
3419
3420         * parser-defs.h (struct type_stack) <elements>: Change type to
3421         std::vector<union type_stack_elt>.
3422         <depth, size>: Remove.
3423         * parse.c (parse_exp_in_context_1): Adjust.
3424         (type_stack_reserve): Remove.
3425         (check_type_stack_depth): Remove.
3426         (insert_into_type_stack): Adjust to std::vector.
3427         (insert_type): Likewise.
3428         (push_type): Likewise.
3429         (push_type_int): Likewise.
3430         (insert_type_address_space): Likewise.
3431         (pop_type): Likewise.
3432         (pop_type_int): Likewise.
3433         (pop_typelist): Likewise.
3434         (pop_type_stack): Likewise.
3435         (append_type_stack): Likewise.
3436         (push_type_stack): Likewise.
3437         (get_type_stack): Likewise.
3438         (type_stack_cleanup): Likewise.
3439         (push_typelist): Likewise.
3440         (follow_types): Likewise.
3441         (_initialize_parse): Likewise.
3442
3443 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
3444
3445         * NEWS: Mention csky target.
3446
3447 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
3448             Hafiz Abid Qadeer  <abidh@codesourcery.com>
3449             Don Breazeal  <donb@codesourcery.com>
3450
3451         * csky-linux-tdep.c: New file.
3452         * csky-tdep.c: Likewise.
3453         * csky-tdep.h: Likewise.
3454         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
3455         csky-tdep.o.
3456         (HFILES_NO_SRCDIR): Add csky-tdep.h.
3457         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
3458         * configure.tgt: Add csky support.
3459
3460 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
3461
3462         * python/py-framefilter.c (py_print_frame): Print frame architecture
3463         when printing on an MI output.
3464
3465 2018-08-27  Tom Tromey  <tom@tromey.com>
3466
3467         PR build/23087:
3468         * configure: Rebuild.
3469         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
3470
3471 2018-08-27  Tom Tromey  <tom@tromey.com>
3472
3473         * aarch64-linux-tdep.c
3474         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
3475         casts to int.
3476
3477 2018-08-27  Tom Tromey  <tom@tromey.com>
3478
3479         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
3480         unsigned.
3481         (ppc64_standard_linkage1, ppc64_standard_linkage2)
3482         (ppc64_standard_linkage3, ppc64_standard_linkage4)
3483         (ppc64_standard_linkage5, ppc64_standard_linkage6)
3484         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
3485         unsigned.
3486
3487 2018-08-27  Tom Tromey  <tom@tromey.com>
3488
3489         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
3490         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
3491
3492 2018-08-27  Tom Tromey  <tom@tromey.com>
3493
3494         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
3495         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
3496         ULONGEST_MAX.
3497         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
3498         ULONGEST_MAX.
3499         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
3500         ULONGEST_MAX.
3501         * sparc-linux-tdep.c (sparc32_linux_sigframe)
3502         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
3503         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
3504         ULONGEST_MAX.
3505         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
3506         (ppc64_linux_sigaction_tramp_frame)
3507         (ppc32_linux_sighandler_tramp_frame)
3508         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
3509         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
3510         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
3511         * mn10300-linux-tdep.c (am33_linux_sigframe)
3512         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
3513         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
3514         * mips-linux-tdep.c (mips_linux_o32_sigframe)
3515         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
3516         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
3517         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
3518         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
3519         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
3520         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
3521         * microblaze-linux-tdep.c
3522         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
3523         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
3524         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
3525         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
3526         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
3527         * common/common-types.h (ULONGEST_MAX): New define.
3528         (CORE_ADDR_MAX): Fix formatting.
3529         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
3530         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
3531         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
3532         (arm_linux_rt_sigreturn_tramp_frame)
3533         (arm_eabi_linux_sigreturn_tramp_frame)
3534         (arm_eabi_linux_rt_sigreturn_tramp_frame)
3535         (thumb2_eabi_linux_sigreturn_tramp_frame)
3536         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
3537         (arm_linux_restart_syscall_tramp_frame)
3538         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
3539         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
3540         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
3541         ULONGEST_MAX.
3542         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
3543
3544 2018-08-27  Tom Tromey  <tom@tromey.com>
3545
3546         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
3547         CORE_ADDR_MAX.
3548         * mips-tdep.c (mips_deal_with_atomic_sequence)
3549         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
3550         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
3551         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
3552         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
3553         CORE_ADDR_MAX.
3554         * aarch64-tdep.c (aarch64_software_single_step): Use
3555         CORE_ADDR_MAX.
3556
3557 2018-08-27  Tom Tromey  <tom@tromey.com>
3558
3559         * linespec.c (complete_linespec_component): Add cast to "char".
3560         * completer.c (completion_tracker::build_completion_result): Add
3561         cast to "char".
3562
3563 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3564
3565         * solist.h (struct solist, struct target_so_ops): Fix
3566         indentation.
3567
3568 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3569
3570         * ada-tasks.c (ada_task_info_s): Remove typedef.
3571         (DEF_VEC_O(ada_task_info_s)): Remove.
3572         (struct ada_tasks_inferior_data): Initialize fields.
3573         <task_list>: Make an std::vector.
3574         (get_ada_tasks_inferior_data): Allocate with new.
3575         (ada_get_task_number): Adjust.
3576         (get_task_number_from_id): Likewise.
3577         (valid_task_id): Likewise.
3578         (ada_get_task_info_from_ptid): Likewise.
3579         (iterate_over_live_ada_tasks): Likewise.
3580         (add_ada_task): Likewise.
3581         (read_known_tasks): Likewise.
3582         (ada_build_task_list): Likewise.
3583         (print_ada_task_info): Likewise.
3584         (info_task): Likewise.
3585         (task_command_1): Likewise.
3586
3587 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3588
3589         * ada-lang.c (add_angle_brackets): Return std::string.
3590
3591 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
3592
3593         * python/py-threadevent.c (py_get_event_thread): Initialize
3594         pythread.
3595
3596 2018-08-24  Pedro Alves  <palves@redhat.com>
3597
3598         * python/py-bpevent.c (create_breakpoint_event_object): Use
3599         copy-initialization.
3600         * python/py-continueevent.c (emit_continue_event): Use
3601         copy-initialization.
3602         * python/py-exitedevent.c (create_exited_event_object): Return a
3603         gdbpy_ref<>.
3604         (emit_exited_event): Use copy-initialization.
3605         * python/py-inferior.c (python_new_inferior)
3606         (python_inferior_deleted, add_thread_object): Use
3607         copy-initialization.
3608         * python/py-infevents.c (create_inferior_call_event_object)
3609         (create_register_changed_event_object)
3610         (create_memory_changed_event_object): Return a gdbpy_ref<>.
3611         (emit_inferior_call_event, emit_memory_changed_event)
3612         (emit_register_changed_event): Use copy-initialization.
3613         * python/py-newobjfileevent.c (create_new_objfile_event_object):
3614         Return a gdbpy_ref<>.
3615         (emit_new_objfile_event): Use copy-initialization.
3616         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
3617         (emit_clear_objfiles_event): Use copy-initialization.
3618         * python/py-signalevent.c (create_signal_event_object): Use
3619         copy-initialization.
3620         * python/py-threadevent.c (create_thread_event_object): Use
3621         copy-initialization.
3622
3623 2018-08-24  Pedro Alves  <palves@redhat.com>
3624             Simon Marchi  <simon.marchi@ericsson.com>
3625
3626         PR gdb/23379
3627         * python/py-continueevent.c: Include "gdbthread.h".
3628         (create_continue_event_object): Add intro comment.  Add 'ptid'
3629         parameter.  Use it to find thread to pass to
3630         create_thread_event_object.
3631         (emit_continue_event): Pass PTID down to
3632         create_continue_event_object.
3633         * python/py-event.h (py_get_event_thread): Declare.
3634         (create_thread_event_object): Remove default from 'thread'
3635         parameter.
3636         * python/py-stopevent.c (create_stop_event_object): Use
3637         py_get_event_thread.
3638         * python/py-threadevent.c (get_event_thread): Rename to ...
3639         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
3640         and use it to find the thread.
3641         (create_thread_event_object): Assert that THREAD isn't null.
3642         Don't find the event thread here.
3643
3644 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
3645
3646         * block.h (blockrange, blockranges): New struct declarations.
3647         (struct block): Add new field named `ranges'.
3648         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
3649         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
3650         macros for accessing ranges in struct block.
3651         (make_blockranges): New declaration.
3652         block.c (make_blockranges): New function.
3653         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
3654         for block.
3655         * symtab.h (find_pc_partial_function): Add new parameter `block'.
3656         * blockframe.c (cache_pc_function_block): New static global.
3657         (clear_pc_function_cache): Clear cache_pc_function_block.
3658         (find_pc_partial_function): Move comment to symtab.h.  Add
3659         support for non-contiguous blocks.
3660         * cli/cli-cmds.c (block.h): Include.
3661         (print_disassembly): Handle printing of non-contiguous blocks.
3662         (disassemble_current_function): Likewise.
3663         (disassemble_command): Likewise.
3664
3665         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
3666         BLOCK_START.
3667         * blockframe.c (get_pc_function_start): Likewise.
3668         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
3669         (gcc_symbol_address): Likewise.
3670         * compile/compile-object-run.c (compile_object_run): Likewise.
3671         * compile/compile.c (get_expr_block_and_pc): Likewise.
3672         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
3673         (func_addr_to_tail_call_list): Likewise.
3674         * findvar.c (default_read_var_value): Likewise.
3675         * inline-frame.c (inline_frame_this_id): Likewise.
3676         (skip-inline_frames): Likewise.
3677         * infcmd.c (until_next_command): Likewise.
3678         * linespec.c (convert_linespec_to_sals): Likewise.
3679         * parse.c (parse_exp_in_context_1): Likewise.
3680         * printcmd.c (build_address_symbolic): likewise.
3681         (info_address_command): Likewise.
3682         symtab.c (find_function_start_sal): Likewise.
3683         (skip_prologue_sal): Likewise.
3684         (find_function_alias_target): Likewise.
3685         (find_gnu_ifunc): Likewise.
3686         * stack.c (find_frame_funname): Likewise.
3687         * symtab.c (fixup_symbol_section): Likewise.
3688         (find_function_start_sal): Likewise.
3689         (skip_prologue_sal): Likewsie.
3690         (find_function_alias_target): Likewise.
3691         (find_gnu_ifunc): Likewise.
3692         * tracepoint.c (info_scope_command): Likewise.
3693         * value.c (value_fn_field): Likewise.
3694
3695         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
3696         in place of find_pc_partial_function.
3697         * blockframe.c (find_function_entry_range_from_pc): New function.
3698         * symtab.h (find_function_entry_range_from_pc): Declare and document.
3699         * objfiles.c (objfile_relocate1): Relocate start and end addresses
3700         for each range in a block.
3701
3702
3703 2018-08-23  Xavier Roirand  <roirand@adacore.com>
3704
3705         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
3706         incrementation.
3707
3708 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3709
3710         * solib-svr4.c (read_program_headers_from_bfd): Return
3711         gdb::optional<gdb::byte_vector>.
3712         (svr4_exec_displacement): Adjust.
3713
3714 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3715
3716         * solib-svr4.c (read_program_header): Return
3717         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
3718         (find_program_interpreter): Return
3719         gdb::optional<gdb::byte_vector>.
3720         (scan_dyntag_auxv): Adjust.
3721         (enable_break): Adjust.
3722         (svr4_exec_displacement): Adjust.
3723
3724 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3725
3726         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
3727         * inf-child.c (inf_child_target::terminal_save_inferior): New.
3728
3729 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3730
3731         * guile/scm-string.c (gdbscm_scm_from_printf): Use
3732         string_vprintf.
3733         * guile/scm-utils.c (gdbscm_printf): Likewise.
3734         * serial.c (serial_printf): Likewise.
3735         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
3736
3737 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
3738
3739         * stack.c (print_frame): Print frame architecture when printing on
3740         an MI output.
3741         * NEWS: Mention new "arch" attribute in frame output.
3742
3743 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
3744
3745         * arch/aarch64.h (aarch64_regnum): Update comment.
3746
3747 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
3748
3749         * NEWS: Add SVE to 8.2 section.
3750
3751 2018-08-21  Pedro Alves  <palves@redhat.com>
3752
3753         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
3754         out from gdbscm_parse_function_args.
3755         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
3756         gdbscm_parse_function_args_1.
3757
3758 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
3759
3760         PR gdb/17816
3761         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
3762         operator.
3763
3764 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
3765
3766         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
3767
3768 2018-08-19  Michael Spang  <spang@google.com>
3769
3770         PR gdb/11786
3771         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
3772         for PT_TLS segments.
3773
3774 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
3775
3776         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
3777         dwarf_variable_value.
3778         * dwarf2-frame.c (class dwarf_expr_executor):
3779         Add override for dwarf_variable_value.
3780         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
3781         (class symbol_needs_eval_context): Likewise.
3782         (indirect_synthetic_pointer): Add forward declaration.
3783         (sect_variable_value): New function.
3784         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
3785         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
3786         for DW_OP_GNU_variable_value.
3787
3788 2018-08-16  Tom Tromey  <tom@tromey.com>
3789
3790         * top.c (read_command_file): Update.
3791         (command_line_input): Remove "repeat" argument.
3792         * ada-lang.c (get_selections): Update.
3793         * linespec.c (decode_line_2): Update.
3794         * defs.h (command_line_input): Remove argument.
3795         * cli/cli-script.c (read_next_line): Update.
3796         * python/py-gdb-readline.c: Update.
3797
3798 2018-08-17  Tom Tromey  <tom@tromey.com>
3799
3800         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
3801         command_line_input.
3802
3803 2018-08-15  Tom Tromey  <tom@tromey.com>
3804
3805         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
3806
3807 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
3808
3809         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
3810         If used, use find_pc_partial_function to find address range
3811         to disassemble.
3812         * mi/mi-main.c (mi_cmd_list_features): Report
3813         "data-disassemble-a-option" feature.
3814         * NEWS: Mention new -data-disassemble option -a.
3815
3816 2018-08-13  Tom Tromey  <tom@tromey.com>
3817
3818         * common/common-defs.h (_FORTIFY_SOURCE): Define.
3819
3820 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3821
3822         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
3823         (aarch64_linux_collect_sve_regset): Likewise.
3824         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
3825         * regcache.h (regcache_map_entry_size): New function.
3826
3827 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3828
3829         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
3830         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
3831         (SVE_HEADER_VL_LENGTH): Likewise.
3832         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
3833         (SVE_HEADER_FLAGS_LENGTH): Likewise.
3834         (SVE_HEADER_RESERVED_LENGTH): Likewise.
3835         (SVE_HEADER_SIZE_OFFSET): Likewise.
3836         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
3837         (SVE_HEADER_VL_OFFSET): Likewise.
3838         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
3839         (SVE_HEADER_FLAGS_OFFSET): Likewise.
3840         (SVE_HEADER_RESERVED_OFFSET): Likewise.
3841         (SVE_HEADER_SIZE): Likewise.
3842         (aarch64_linux_core_read_vq): Add function.
3843         (aarch64_linux_core_read_description): Check for SVE section.
3844
3845 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3846
3847         * aarch64-fbsd-tdep.c
3848         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
3849         collect_size.
3850         * aarch64-linux-tdep.c
3851         (aarch64_linux_iterate_over_regset_sections): Likewise.
3852         * alpha-linux-tdep.c
3853         (alpha_linux_iterate_over_regset_sections):
3854         * alpha-nbsd-tdep.c
3855         (alphanbsd_iterate_over_regset_sections): Likewise.
3856         * amd64-fbsd-tdep.c
3857         (amd64fbsd_iterate_over_regset_sections): Likewise.
3858         * amd64-linux-tdep.c
3859         (amd64_linux_iterate_over_regset_sections): Likewise.
3860         * arm-bsd-tdep.c
3861         (armbsd_iterate_over_regset_sections): Likewise.
3862         * arm-fbsd-tdep.c
3863         (arm_fbsd_iterate_over_regset_sections): Likewise.
3864         * arm-linux-tdep.c
3865         (arm_linux_iterate_over_regset_sections): Likewise.
3866         * corelow.c (get_core_registers_cb): Likewise.
3867         (core_target::fetch_registers): Likewise.
3868         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
3869         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
3870         * gdbarch.h (void): Regenerate.
3871         * gdbarch.sh: Add supply_size and collect_size.
3872         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
3873         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
3874         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
3875         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
3876         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
3877         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
3878         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
3879         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
3880         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
3881         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
3882         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
3883         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
3884         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
3885         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
3886         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections): Likewise.
3887         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
3888         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
3889         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
3890         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
3891         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
3892         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
3893         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections): Likewise.
3894         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
3895         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
3896         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
3897         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
3898         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
3899         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
3900         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
3901         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
3902
3903 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
3904
3905         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
3906         with string_printf.
3907
3908 2018-08-10  Keith Seitz  <keiths@redhat.com>
3909
3910         * compile/compile-c-support.c (add_code_header, add_code_footer):
3911         Move into policy class.
3912         (c_push_user_expression, pop_user_expression_nop)
3913         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
3914         (compile_program): New host class.
3915         (c_compile_program): New typedef.
3916         (c_compute_porgram): Use c_compile_program.
3917
3918 2018-08-10  Keith Seitz  <keiths@redhat.com>
3919
3920         * compile/compile-internal.h (compile_instance::~compile_instance):
3921         Remove calls to htab_delete.
3922         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
3923         * compile.c (compile_instance::compile_instance): Initialize
3924         htab unique pointers.
3925         (compile_instance::get_cached_type, compile_instance::insert_type)
3926         (compile_instance::error_symbol_once): Update for unique_ptr.
3927
3928 2018-08-10  Keith Seitz  <keiths@redhat.com>
3929
3930         * compile/compile-c-symbols.c (struct symbol_error)
3931         (hash_symbol_error, eq_symbol_error, del_symbol_error)
3932         (compile_instance::insert_symbol_error)
3933         (compile_instance::error_symbol_once): Move to ...
3934         * compile/compile.c: ... here.
3935
3936 2018-08-10  Keith Seitz  <keiths@redhat.com>
3937
3938         * compile/compile-c-support.c (c_get_compile_context): Use `new'
3939         instead of `new_compile_instance'.
3940         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
3941         Update description.
3942         If the symbol error map is not initialized, create it.
3943         (generate_c_for_for_one_symbol): Do not check/initialize
3944         the symbol error map.
3945         * compile/compile-c-types.c (compile_c_instance): Make a class.
3946         Update all callers.
3947         (compile_instance::compile_instance): Initialize the type cache.
3948         (get_cached_type): New function.
3949         (insert_type): Update description.
3950         (compile_c_instance::m_default_cflags): Define.
3951         (convert_type): Update description.  Use get_cached_type.
3952         (delete_instance): Moved to destructor.
3953         (new_compile_instance): Moved to constructor.
3954         * compile/compile-c.h (compile_c_instance): Make class inheriting
3955         from compile_instance.
3956         <base>: Remove field.
3957         <type_map, symbol_err_map>: Move to base class.
3958         <c_plugin>: Rename to `m_plugin' and remove pointer type.
3959         * compile/compile-internal.h (compile_instance): Make class.
3960         <type_map_t, symbol_err_map_t>: Define.
3961         <fe>: Rename to `m_gcc_fe'.
3962         <scope, block, gcc_target_options>: Add `m_' prefix.
3963         <m_type_map, m_symbol_err_map>: New fields, moved from
3964         compile_c_instance.
3965         <destroy>: Remove.
3966         (convert_type, new_compile_instance): Remove.
3967         * compile/compile.c (cleanup_compile_instance): Remove.
3968         (compile_to_object): Use unique_ptr to eliminate cleanups.
3969         (compile_instance::set_print_callback, compile_instance::version)
3970         (compile_instance::set_verbose)
3971         (compile_instance::set_driver_filename)
3972         (compile_instance::set_triplet_regexp)
3973         (compile_instance::set_arguments)
3974         (compile_instance::set_source_file)
3975         (compile_instance::compile): Define.
3976
3977 2018-08-10  Keith Seitz  <keiths@redhat.com>
3978
3979         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
3980         * compile/compile-c-types.c: Define GCC_METHODN macros and include
3981         gcc-c-fe.def to define C plugin.
3982         (delete_instance): Delete `c_plugin'.
3983         (new_compile_instance): Initialize `c_plugin'.
3984         * compile/compile-c.h: Include gcc_c_plugin.h.
3985         (struct compile_c_instance) <c_plugin>: New member.
3986         * gcc-c-plugin.h: New file.
3987         Update all callers with API change.
3988
3989 2018-08-10  Keith Seitz  <keiths@redhat.com>
3990
3991         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
3992         (HFILES_NO_SRCDIR): ... to here.
3993         Add compile-internal.h and compile-c.h.
3994         * compile/compile-c-support.c: Include compile-c.h.
3995         * compile/compile-c-symbols.c: Include compile-c.h.
3996         (generate_c_for_variable_locations): Update comment.
3997         * compile/compile-c-types.c: Include compile-c.h.
3998         * compile/compile-c.h: New file -- moved C language declarations
3999         from other files here.
4000         * compile/compile-internal.h: Do not include hashtab.h or
4001         common/enum-flags.h.
4002         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
4003         (gcc_convert_symbol, gcc_symbol_address)
4004         (generate_c_for_variable_locations, c_get_mode_for_size)
4005         (c_get_range_decl_name): Definitions moved to compile-c.h.
4006         * compile/compile-loc2c.c: Include compile-c.h.
4007
4008 2018-08-10  Keith Seitz  <keiths@redhat.com>
4009
4010         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
4011         (c_symbol_substitution_name): ... this.
4012         Update all callers.
4013
4014 2018-08-10  Keith Seitz  <keiths@redhat.com>
4015
4016         * compile/compile-c-support.c (c_compute_program): Use
4017         unique_xmalloc_ptr to eliminate cleanup.
4018         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
4019         Return a unique_xmalloc_ptr and eliminate cleanup.
4020         * compile/compile-internal.h (generate_c_for_variable_locations):
4021         Return unique_xmalloc_ptr and update description.
4022
4023 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
4024
4025         * corelow.c (core_target::get_core_register_section): Rename
4026         min_size to section_min_size.
4027
4028 2018-08-09  Jim Wilson  <jimw@sifive.com>
4029
4030         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
4031         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
4032         * NEWS: Mention new GNU/Linux RISC-V target.
4033         * configure.host: Add riscv*-*-linux*.
4034         * configure.nat: Add riscv*.
4035         * configure.tgt: Add riscv*-*-linux*.
4036         * riscv-linux-nat.c: New file.
4037         * riscv-linux-tdep.c: New file.
4038
4039 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4040
4041         * infrun.c (resume): Make static, add forward declaration.
4042         (proceed): Update header comment.
4043         * infrun.h (resume): Delete declaration.
4044
4045 2018-08-09  Tom Tromey  <tom@tromey.com>
4046
4047         * riscv-tdep.h: Minor formatting fixes.
4048
4049 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
4050
4051         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
4052         * dwarf-index-cache.c (create_dir_and_check): Likewise.
4053         (test_mkdir_recursive): Likewise.
4054         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
4055
4056 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4057
4058         * valarith.c (value_subscripted_rvalue): If an array is not in
4059         memory, and we don't know the upper bound, then we can't know that
4060         the requested element exists or not.
4061
4062 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
4063
4064         * target.c (str_comma_list_concat_elem): Fix typo in comment.
4065         (target_options_to_string): Add comment.
4066
4067 2018-08-08  Tom Tromey  <tom@tromey.com>
4068
4069         * unittests/scoped_mmap-selftests.c: Check result of "write".
4070
4071 2018-08-08  Jim Wilson  <jimw@sifive.com>
4072
4073         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
4074         (decode_register_index_short): New.
4075         (decode_j_type_insn, decode_cj_type_insn): New.
4076         (decode_b_type_insn, decode_cb_type_insn): New.
4077         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
4078         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
4079         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
4080         is_c_sw_insn instead of is_sw_insn.
4081         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
4082         (riscv_software_single_step): New.
4083         * riscv-tdep.h (riscv_software_single_step): Declare.
4084
4085         * riscv-tdep.c (riscv_isa_xlen): Drop static.
4086         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
4087
4088 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
4089
4090         PR gdb/18050:
4091         * target.c (dispose_inferior): Don't dispose of inferiors that are
4092         already killed.
4093
4094 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
4095
4096         * remote.c (remote_target::download_tracepoint): Change char* to
4097         const char*.
4098
4099 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
4100
4101         * target.h (target_options_to_string): Return an std::string.
4102         * target.c (str_comma_list_concat_elem): Return void, use
4103         std::string.
4104         (do_option): Likewise.
4105         (target_options_to_string): Return an std::string.
4106         * linux-nat.c (linux_nat_target::wait): Adjust.
4107         * target-debug.h (target_debug_print_options): Adjust.
4108
4109 2018-08-07  Tom Tromey  <tom@tromey.com>
4110
4111         * Makefile.in (CPPFLAGS): New variable.
4112         (INTERNAL_CPPFLAGS): Use it.
4113
4114 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4115
4116         * NEWS: Mention the index cache.
4117
4118 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4119
4120         * common/pathstuff.h (get_standard_cache_dir): New.
4121         * common/pathstuff.c (get_standard_cache_dir): New.
4122         * build-id.h (build_id_to_string): New.
4123         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
4124         DEBUG_STR_SUFFIX): Move to here.
4125         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
4126         DEBUG_STR_SUFFIX): Move from there.
4127         (write_psymtabs_to_index): Make non-static, add basename
4128         parameter.  Write to temporary files, rename when done.
4129         (save_gdb_index_command): Adjust call to
4130         write_psymtabs_to_index.
4131         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
4132         field.
4133         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
4134         (get_gdb_index_contents_from_cache): New.
4135         (get_gdb_index_contents_from_cache_dwz): New.
4136         (dwarf2_initialize_objfile): Read index from cache.
4137         (dwarf2_build_psymtabs): Save to index.
4138         * dwarf-index-cache.h: New file.
4139         * dwarf-index-cache.c: New file.
4140         * dwarf-index-write.h: New file.
4141
4142 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4143
4144         * gnulib/aclocal.m4: Re-generate.
4145         * gnulib/config.in: Re-generate.
4146         * gnulib/configure: Re-generate.
4147         * gnulib/import/Makefile.am: Re-generate.
4148         * gnulib/import/Makefile.in: Re-generate.
4149         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
4150         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
4151         * gnulib/import/m4/mkdir.m4: New file.
4152         * gnulib/import/mkdir.c: New file.
4153         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
4154         module.
4155
4156 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4157
4158         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
4159         * common/scoped_mmap.c: New file.
4160         * common/scoped_mmap.h (destroy): New method.
4161         (~scoped_mmap, reset): Use destroy.
4162         (scoped_mmap): New move constructor.
4163         (mmap_file): New declaration.
4164         * unittests/scoped_mmap-selftests.c (test_normal,
4165         test_invalid_filename, run_tests): New functions.
4166         (_initialize_scoped_mmap_selftests): Register selftest.
4167
4168 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4169
4170         * dwarf2read.c (read_gdb_index_from_section): Rename to...
4171         (read_gdb_index_from_buffer): ... this.  Remove section
4172         parameter, add buffer parameter.
4173         (get_gdb_index_contents_ftype,
4174         get_gdb_index_contents_dwz_ftype): New typedefs.
4175         (dwarf2_read_gdb_index): Add callback parameters to get the
4176         index contents.
4177         (get_gdb_index_contents_from_section): New.
4178         (dwarf2_initialize_objfile): Update call to
4179         dwarf2_read_gdb_index.
4180
4181 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4182
4183         * common/filestuff.h (gdb_fopen_cloexec): New overload.
4184         (gdb_open_cloexec): Likewise.
4185         * nat/linux-osdata.c (command_from_pid): Use string_printf.
4186         (commandline_from_pid): Likewise.
4187         (linux_xfer_osdata_threads): Likewise.
4188         (linux_xfer_osdata_fds): Likewise.
4189         * ada-lang.c (is_package_name): Likewise.
4190         * auxv.c (procfs_xfer_auxv): Likewise.
4191         * breakpoint.c (print_one_breakpoint_location): Use
4192         uiout::field_fmt.
4193         (print_one_catch_solib): Use string_printf.
4194         * coff-pe-read.c (add_pe_exported_sym): Likewise.
4195         (add_pe_forwarded_sym): Likewise.
4196         * dwarf2read.c (create_type_unit_group): Likewise.
4197         (build_error_marker_type): Likewise.
4198         * infcall.c (get_function_name): Likewise.
4199         * valprint.c (print_converted_chars_to_obstack): Likewise.
4200         * xtensa-tdep.c (xtensa_register_type): Likewise.
4201
4202 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
4203
4204         * remote.c (remote_target::download_tracepoint): Fix format
4205         string errors.
4206
4207 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4208
4209         * tracefile.c: Include common/byte-vector.h.
4210         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
4211         with trace_regblock_size if needed.  Update uses of buf.
4212
4213 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4214
4215         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
4216         std::vector<unsigned char>.
4217         * tracepoint.c (collection_list::collection_list): Remove
4218         m_regs_mask initializer from initializer list.  Resize
4219         m_regs_mask using the largest remote register number.
4220         (collection_list::add_remote_register): Remove size check on
4221         m_regs_mask.  Use at to access element.
4222         (collection_list::stringify): Change type of temp_buf to
4223         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
4224         stringify the register mask.  Use pack_hex_byte for the register
4225         mask.
4226
4227 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4228
4229         * tracepoint.h (class collection_list) <add_register>: Remove.
4230         <add_remote_register, add_ax_registers, add_local_register>:
4231         Declare.
4232         <add_memrange>: Add scope parameter.
4233         * tracepoint.c (encode_actions_1): Likewise.
4234         (collection_list::add_register): Rename to ...
4235         (collection_list::add_remote_register): ... this.  Update
4236         comment.
4237         (collection_list::add_ax_registers, add_local_register): New
4238         methods.
4239         (collection_list::add_memrange): Add scope parameter.  Call
4240         add_local_register instead of add_register.
4241         (finalize_tracepoint_aexpr): New function.
4242         (collection_list::collect_symbol): Update calls to add_memrange.
4243         Call add_local_register instead of add_register.  Call
4244         add_ax_registers.  Call finalize_tracepoint_aexpr.
4245         (encode_actions_1): Get remote regnos for $reg action.  Call
4246         add_remote_register, add_ax_registers, and add_local_register.
4247         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
4248         (validate_actionline): Call finalize_tracepoint_aexpr.
4249
4250 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4251
4252         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
4253         Replace array buf with gdb::char_vector buf, of size
4254         get_remote_packet_size ().  Replace references to buf and
4255         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
4256         and xsnprintf with snprintf.  Raise errors if the buffer is too
4257         small.
4258
4259 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4260
4261         * remote.c (remote_target::download_tracepoint): Fix the has_more
4262         predicate in the QTDP action list iteration.
4263
4264 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4265
4266         * remote.c (remote_target::download_tracepoint): Fix indentation
4267         in for block.
4268
4269 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4270
4271         * proc-api.c (_initialize_proc_api): Remove c, unused.
4272         * procfs.c (procfs_init_inferior): Remove signals, unused.
4273         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
4274         unused.
4275
4276 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
4277             Andrew Burgess  <andrew.burgess@embecosm.com>
4278
4279         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
4280         'W_STOPCODE (0)' as this could be ambiguous.
4281
4282 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
4283
4284         * ser-tcp.c (net_open): Fix thinko when deciding whether to
4285         disable TCP's Nagle algorithm (use "ai_protocol" instead of
4286         "ai_socktype").
4287
4288 2018-08-02  Tom Tromey  <tom@tromey.com>
4289
4290         PR symtab/16842.
4291         * dwarf2read.c (read_func_scope): Set symtab on template parameter
4292         symbols.
4293         (process_structure_scope): Likewise.
4294
4295 2018-08-02  Xavier Roirand  <roirand@adacore.com>
4296
4297         PR gdb/22629:
4298         * darwin-nat.c (darwin_kill_inferior): Fix handling of
4299         kill inferior.
4300
4301 2018-08-02  Tom Tromey  <tom@tromey.com>
4302
4303         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
4304         (darwin_suspend_inferior, darwin_resume_inferior)
4305         (darwin_decode_notify_message, darwin_resume_inferior_threads)
4306         (darwin_check_new_threads): Check result of get_darwin_inferior.
4307
4308 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
4309
4310         GDB 8.1.1 released.
4311
4312 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
4313
4314         * varobj.c (varobj_get_path_expr_parent): Report an error if
4315         parent is a dynamic varobj.
4316
4317 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
4318
4319         * gnulib/aclocal.m4: Re-generate.
4320         * gnulib/config.in: Re-generate.
4321         * gnulib/configure: Re-generate.
4322         * gnulib/import/Makefile.in: Re-generate.
4323         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
4324         * gnulib/import/m4/onceonly.m4: Re-generate.
4325
4326 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
4327
4328         * target-descriptions.c (struct xml_test_tdesc): New.
4329         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
4330         (record_xml_tdesc): Update.
4331         (maintenance_check_xml_descriptions): Update.
4332         * target-descriptions.h (record_xml_tdesc): Update comment.
4333
4334 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
4335
4336         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
4337         checking array bounds are defined.
4338
4339 2018-07-30  Tom Tromey  <tom@tromey.com>
4340
4341         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
4342         irreflexivity violation.
4343
4344 2018-07-30  Tom Tromey  <tom@tromey.com>
4345
4346         * cli/cli-decode.c (lookup_cmd): Remove lint code.
4347         * value.c (unpack_long): Remove lint code.
4348         * valops.c (value_ind): Remove lint code.
4349         * valarith.c (value_x_binop, value_x_unop, value_equal)
4350         (value_pos): Remove lint code.
4351
4352 2018-07-28  Tom de Vries  <tdevries@suse.de>
4353
4354         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
4355         with undefined upper bound as <optimized out>.
4356
4357 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
4358
4359         * gcore.in: Rename variable "name" to "prefix".  Expand
4360         "usage" text.
4361
4362 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
4363
4364         * windows-nat.c (windows_nat_target::create_inferior): Update to
4365         call close() in global namespace.
4366
4367 2018-07-26  Tom Tromey  <tom@tromey.com>
4368
4369         * dwarf-index-write.c (add_address_entry): Don't add objfile
4370         offsets.
4371         * dbxread.c (find_stab_function): Rename from
4372         find_stab_function_addr.  Return a bound_minimal_symbol.
4373         (read_dbx_symtab): Use raw_text_low, raw_text_high.
4374         Don't add objfile offsets.
4375         (end_psymtab): Use raw_text_low, raw_text_high,
4376         MSYMBOL_VALUE_RAW_ADDRESS.
4377         (read_ofile_symtab): Update.
4378         (process_one_symbol): Update.
4379         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
4380         offsets.
4381         (dw2_relocate): Remove.
4382         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
4383         searching addrmap.
4384         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
4385         Update.
4386         (process_psymtab_comp_unit_reader, add_partial_symbol)
4387         (add_partial_subprogram, dwarf2_ranges_read): Update.
4388         (load_partial_dies): Update.
4389         (add_address_entry): Don't add objfile offsets.
4390         (dwarf2_build_include_psymtabs): Update.
4391         (create_addrmap_from_aranges): Don't add objfile offsets.
4392         (dw2_find_pc_sect_compunit_symtab): Update.
4393         * mdebugread.c (parse_symbol): Don't add objfile offsets.
4394         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
4395         Update.
4396         (parse_partial_symbols): Don't add objfile offsets.  Use
4397         raw_text_low, raw_text_high.  Update.
4398         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
4399         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
4400         or call 'relocate' quick function.  Clear psymbol_map.
4401         * psympriv.h (struct partial_symbol) <address>: Add section
4402         offset.
4403         <set_unrelocated_address>: Rename from set_address.
4404         <raw_text_low, raw_text_high>: New methods.
4405         <text_low, text_high>: Add objfile parameter.
4406         (add_psymbol_to_bcache): Add 'section' parameter.  Call
4407         set_unrelocated_address.
4408         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4409         (find_pc_psymbol): Update.
4410         (fixup_psymbol_section, relocate_psymtabs): Remove.
4411         (dump_psymtab, psym_functions): Update.
4412         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
4413         parameter.
4414         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
4415         (start_psymtab_common): Update.
4416         * symfile-debug.c (debug_qf_relocate): Remove.
4417         (debug_sym_quick_functions): Update.
4418         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
4419         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
4420         Update.
4421
4422 2018-07-26  Tom Tromey  <tromey@redhat.com>
4423
4424         * dbxread.c (end_psymtab): Use text_high_valid and
4425         text_low_valid.
4426         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
4427         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
4428         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
4429         Update comment.
4430         <text_low_valid, text_high_valid>: New fields.
4431         <set_text_low, set_text_high>: Update.
4432         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
4433
4434 2018-07-26  Tom Tromey  <tom@tromey.com>
4435
4436         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
4437         Update.
4438         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
4439         textlow and texthigh fields.
4440         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
4441         Update.
4442         * mdebugread.c (parse_lines, parse_partial_symbols)
4443         (psymtab_to_symtab_1): Update.
4444         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
4445         Rename fields.  Update comment.  Now private.
4446         <text_low, text_high, set_text_low, set_text_high>: New methods.
4447         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4448         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
4449         (start_psymtab_common, maintenance_info_psymtabs)
4450         (maintenance_check_psymtabs): Update.
4451         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
4452         texthigh fields.
4453         (scan_xcoff_symtab): Update.
4454
4455 2018-07-26  Tom Tromey  <tromey@redhat.com>
4456
4457         * psympriv.h (struct partial_symbol) <unrelocated_address,
4458         address, set_address>: New methods.
4459         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
4460         (fixup_psymbol_section, relocate_psymtabs): Update.
4461         (print_partial_symbols): Add 'objfile' parameter.  Update.
4462         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
4463         Update.
4464
4465 2018-07-26  Tom Tromey  <tom@tromey.com>
4466
4467         * dwarf-index-write.c (write_psymbols, debug_names::insert)
4468         (debug_names::write_psymbols): Update.
4469         * psympriv.h (struct partial_symbol): Derive from
4470         general_symbol_info.
4471         <obj_section>: New method.
4472         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
4473         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4474         (find_pc_sect_psymbol, fixup_psymbol_section)
4475         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
4476         (print_partial_symbols, recursively_search_psymtabs)
4477         (compare_psymbols, psymbol_hash, psymbol_compare)
4478         (add_psymbol_to_bcache, maintenance_check_psymtabs)
4479         (psymbol_name_matches, psym_fill_psymbol_map): Update.
4480
4481 2018-07-26  Tom Tromey  <tromey@redhat.com>
4482
4483         * dbxread.c (end_psymtab): Remove dead code.
4484
4485 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
4486
4487         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
4488         DWARF unwinders are disabled.
4489         * dwarf2-frame.c: Add dwarf2read.h include.
4490         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
4491         disabled.
4492         (dwarf2_frame_unwinders_enabled_p): Define.
4493         (show_dwarf_unwinders_enabled_p): New function.
4494         (_initialize_dwarf2_frame): Register switch to control DWARF
4495         unwinder use.
4496         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
4497         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
4498         (show_dwarf_cmdlist): Remove static keyword.
4499         * dwarf2read.h (set_dwarf_cmdlist): Declare.
4500         (show_dwarf_cmdlist): Declare.
4501         * NEWS: Document new feature.
4502
4503 2018-07-26  Tom de Vries  <tdevries@suse.de>
4504
4505         PR breakpoints/23366
4506         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
4507
4508 2018-07-26  Tom de Vries  <tdevries@suse.de>
4509
4510         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
4511         DW_AT_count can't be translated to a dynamic prop.
4512
4513 2018-07-25  Tom de Vries  <tdevries@suse.de>
4514
4515         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
4516         try/catch.
4517
4518 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
4519
4520         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
4521
4522 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
4523
4524         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
4525
4526 2018-07-24  Keith Seitz  <keiths@redhat.comt
4527
4528         PR symtab/23010
4529         * dwarf2read.c (dw2_add_symbol_to_list): New function.
4530         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
4531         instead of add_symbol_to_list.
4532         (read_file_scope): Call prepare_one_comp_unit before reading
4533         any other DIEs.
4534
4535 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
4536
4537         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
4538
4539 2018-07-24  Tom Tromey  <tom@tromey.com>
4540
4541         * utils.c (malloc, realloc, free): Don't declare.
4542         * configure, config.in: Rebuild.
4543         * configure.ac: Don't check for declarations of free, malloc, or
4544         realloc.
4545
4546 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
4547
4548         * aarch64-linux-nat.c
4549         (aarch64_linux_nat_target::stopped_data_address): Remove unused
4550         variable.
4551         * arm-linux-nat.c (fetch_regs): Likewise.
4552         (store_regs): Likewise.
4553         (fetch_vfp_regs): Likewise.
4554         (store_vfp_regs): Likewise.
4555         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
4556         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
4557         (arm_linux_nat_target::insert_watchpoint): Likewise.
4558         (arm_linux_nat_target::remove_watchpoint): Likewise.
4559         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
4560         Likewise.
4561         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
4562         Likewise.
4563         * ppc-linux-nat.c (fetch_register): Likewise.
4564         (fetch_all_gp_regs): Likewise.
4565         (fetch_ppc_registers): Likewise.
4566         (store_all_gp_regs): Likewise.
4567         (store_ppc_registers): Likewise.
4568         (hwdebug_insert_point): Likewise.
4569         (can_use_watchpoint_cond_accel): Likewise.
4570         * remote-sim.c (gdb_os_write_stdout): Likewise.
4571
4572 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
4573             Tom Tromey  <tom@tromey.com>
4574
4575         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
4576         test for it.
4577         * configure: Rebuild.
4578
4579 2018-07-22  Tom Tromey  <tom@tromey.com>
4580
4581         * regformats/regdat.sh: Define xmltarget_${name} inside
4582         #ifndef IN_PROCESS_AGENT.
4583
4584 2018-07-22  Tom Tromey  <tom@tromey.com>
4585
4586         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
4587
4588 2018-07-22  Tom Tromey  <tom@tromey.com>
4589
4590         * symfile.c (reread_symbols): Notify iter, not objfile.
4591
4592 2018-07-22  Tom Tromey  <tom@tromey.com>
4593
4594         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
4595         Use arch_ops.
4596         (ravenscar_thread_target::prepare_to_store): Likewise.
4597
4598 2018-07-22  Tom Tromey  <tom@tromey.com>
4599
4600         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
4601         unused variable.  Call value_fetch_lazy when needed.
4602         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
4603         Remove unused variable.  Call value_fetch_lazy when needed.
4604
4605 2018-07-22  Tom Tromey  <tom@tromey.com>
4606
4607         * m32c-tdep.c (mark_dma): Return void.
4608         (make_regs): Remove unused declarations.
4609
4610 2018-07-22  Tom Tromey  <tom@tromey.com>
4611
4612         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
4613         cmdscm_get_valid_command_smob_arg_unsafe for effect.
4614         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
4615         bkscm_get_valid_block_smob_arg_unsafe for effect.
4616
4617 2018-07-22  Tom Tromey  <tom@tromey.com>
4618
4619         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
4620         value_type.
4621
4622 2018-07-22  Tom Tromey  <tom@tromey.com>
4623
4624         * windows-nat.c (saved_context): Conditionally define.
4625         * remote.c (remote_target::remote_btrace_maybe_reopen):
4626         Conditionally declare "warned".
4627         * inflow.c (sigquit_ours): Conditionally define.
4628         (new_tty): Move "tty" declaration inside #if.
4629         * guile/guile.c (guile_datadir): Conditionally define.
4630         * charset.c (set_be_le_names): Move some declarations inside #if.
4631         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
4632         #if.
4633         (parse_xml_btrace_conf): Likewise.
4634
4635 2018-07-22  Tom Tromey  <tom@tromey.com>
4636
4637         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
4638
4639 2018-07-22  Tom Tromey  <tom@tromey.com>
4640
4641         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
4642         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
4643         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
4644         * buildsym-legacy.c (get_macro_table): Remove unused variable.
4645         * stack.c (frame_apply_level_command): Remove unused variable.
4646         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
4647         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
4648         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
4649         unused variable.
4650         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
4651         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
4652         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
4653         variable.
4654         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
4655         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
4656         variable.
4657         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
4658         Remove unused variable.
4659         * cli/cli-script.c (recurse_read_control_structure): Remove unused
4660         variable.
4661         * common/tdesc.c (print_xml_feature::visit): Remove unused
4662         variable.
4663         * compile/compile-object-load.c (store_regs): Remove unused
4664         variables.
4665         * complaints.c (clear_complaints): Remove unused variable.
4666         * corelow.c (core_target_open): Remove unused variable.
4667         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
4668         variable.
4669         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
4670         variable.
4671         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
4672         variable.
4673         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
4674         variable.
4675         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
4676         variable.
4677         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
4678         variable.
4679         * ia64-tdep.c (examine_prologue): Remove unused variable.
4680         * infcall.c (run_inferior_call): Remove unused variable.
4681         * inferior.c (exit_inferior): Remove unused variable.
4682         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
4683         * linespec.c (decode_line_2): Remove unused variable.
4684         * linux-nat.c (super_close): Remove.
4685         * linux-tdep.c (linux_info_proc): Remove unused variable.
4686         * mi/mi-main.c (mi_execute_command): Remove unused variable.
4687         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
4688         Remove unused variable.
4689         * parse.c (find_minsym_type_and_address): Remove unused variable.
4690         * printcmd.c (info_symbol_command, printf_floating): Remove unused
4691         variable.
4692         * python/py-breakpoint.c (bppy_set_commands): Remove unused
4693         variable.
4694         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
4695         variables.
4696         * record-btrace.c (record_btrace_target::store_registers): Remove
4697         unused variable.
4698         (cmd_show_record_btrace_cpu): Remove unused variable.
4699         * riscv-tdep.c (riscv_register_reggroup_p)
4700         (riscv_push_dummy_call, riscv_return_value): Remove unused
4701         variable.
4702         * rust-exp.y (literal): Remove unused variable.
4703         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
4704         unused variable.
4705         <STRUCTOP_ANONYMOUS>: Likewise.
4706         * s390-linux-tdep.c (s390_linux_init_abi_31)
4707         (s390_linux_init_abi_64): Remove unused variable.
4708         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
4709         (file_select_thread, net_windows_open, _initialize_ser_windows):
4710         Remove unused variables.
4711         * symtab.c (find_pc_sect_line): Remove unused variable.
4712         * target-memory.c (compute_garbled_blocks): Remove unused
4713         variable.
4714         (target_write_memory_blocks): Remove unused variable.
4715         * target.c (target_stack::unpush): Remove unused variables.
4716         * tracepoint.c (start_tracing, all_tracepoint_actions)
4717         (merge_uploaded_trace_state_variables)
4718         (print_one_static_tracepoint_marker): Remove unused variable.
4719         * unittests/basic_string_view/element_access/char/1.cc (test01):
4720         Remove unused variable.
4721         * windows-nat.c (windows_continue, windows_add_all_dlls)
4722         (do_initial_windows_stuff, windows_nat_target::create_inferior):
4723         Remove unused variables.
4724
4725 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
4726
4727         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
4728         attr_profile in HAVE_ELF.
4729         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
4730         HAVE_ELF.
4731
4732 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
4733
4734         * frame.c (frame_register_unwind): Change parameter name.
4735         (frame_unwind_register): Likewise.
4736         (frame_unwind_register_value): Likewise.
4737         (frame_unwind_register_signed): Likewise.
4738         (frame_unwind_register_unsigned): Likewise.
4739         * frame.h (frame_register_unwind): Likewise.
4740         (frame_unwind_register): Likewise.
4741         (frame_unwind_register_value): Likewise.
4742         (frame_unwind_register_signed): Likewise.
4743         (frame_unwind_register_unsigned): Likewise.
4744         (frame_unwind_arch): Likewise.
4745
4746 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
4747
4748         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
4749         ISA maintenance.
4750
4751 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
4752
4753         * mips-linux-nat.c (mips_linux_nat_target::read_description):
4754         Call `get_ptrace_pid' rather than extracting the ptrace PID by
4755         hand.
4756
4757 2018-07-20  Keith Seitz  <keiths@redhat.com>
4758
4759         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
4760         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
4761         m_compunit_symtab, m_language>: Add "m_" prefix.
4762         Update all uses.
4763         * buildsym.c: Update all uses.
4764
4765 2018-07-20  Tom Tromey  <tom@tromey.com>
4766
4767         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
4768         * buildsym.h (record_line_ftype): Remove typedef.
4769
4770 2018-07-20  Tom Tromey  <tom@tromey.com>
4771
4772         * buildsym-legacy.h (augment_type_symtab): Don't declare.
4773         (end_expandable_symtab): Likewise.
4774         (end_symtab_get_static_block): Likewise.
4775         (end_symtab_from_static_block): Likewise.
4776         * buildsym-legacy.c (augment_type_symtab): Remove.
4777         (end_expandable_symtab): Remove.
4778         (end_symtab_get_static_block): Remove.
4779         (end_symtab_from_static_block): Remove.
4780
4781 2018-07-20  Tom Tromey  <tom@tromey.com>
4782
4783         * dwarf2read.c: Include buildsym.h.
4784         (struct dwarf2_cu) <builder>: New method.
4785         (fixup_go_packaging): Update.
4786         (process_full_comp_unit, process_full_type_unit): Update.  Don't
4787         use scoped_free_pendings.
4788         (using_directives): Add "cu" parameter, remove "language".
4789         (read_import_statement, setup_type_unit_groups, )
4790         (read_func_scope, read_lexical_block_scope)
4791         (dwarf2_record_block_ranges, read_namespace): Update.
4792         (lnp_state_machine::lnp_state_machine): Add cu parameter.
4793         (lnp_state_machine::handle_end_sequence): Update.
4794         (class lnp_state_machine) <m_cu>: New member.
4795         <m_record_line_callback>: Remove.
4796         <m_currently_recording_lines>: New member.
4797         (lnp_state_machine::handle_set_file): Update.
4798         (noop_record_line): Remove.
4799         (dwarf_record_line_p): Add cu parameter.
4800         (dwarf_record_line_1, dwarf_finish_line): Likewise.
4801         (lnp_state_machine::record_line)
4802         (lnp_state_machine::lnp_state_machine)
4803         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
4804         (dwarf_decode_lines): Update.
4805         (dwarf2_start_subfile): Add cu parameter.
4806         (dwarf2_start_symtab, new_symbol): Update.
4807         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
4808         Remove dwarf2_per_objfile parameter.
4809         (dwarf_decode_macros): Update.
4810
4811 2018-07-20  Tom Tromey  <tom@tromey.com>
4812
4813         * stabsread.c (define_symbol): Update.
4814         * buildsym-legacy.h (get_buildsym_compunit): Declare.
4815         * dwarf2read.c (new_symbol): Update.
4816         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
4817         * cp-namespace.c: Include buildsym.h.
4818         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
4819         * buildsym-legacy.c (get_buildsym_compunit): New function.
4820
4821 2018-07-20  Tom Tromey  <tom@tromey.com>
4822
4823         * xcoffread.c: Include buildsym-legacy.h.
4824         * windows-nat.c: Include buildsym-legacy.h.
4825         * stabsread.c: Include buildsym-legacy.h.
4826         * mdebugread.c: Include buildsym-legacy.h.
4827         * buildsym-legacy.h: New file.
4828         * buildsym-legacy.c: New file, from buildsym.c.
4829         * go32-nat.c: Include buildsym-legacy.h.
4830         * dwarf2read.c: Include buildsym-legacy.h.
4831         * dbxread.c: Include buildsym-legacy.h.
4832         * cp-namespace.c: Include buildsym-legacy.h.
4833         * coffread.c: Include buildsym-legacy.h.
4834         * buildsym.h: Move some contents to buildsym-legacy.h.
4835         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
4836         buildsym-legacy.c.
4837         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
4838
4839 2018-07-20  Tom Tromey  <tom@tromey.com>
4840
4841         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
4842         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
4843         (buildsym_compunit::buildsym_compunit)
4844         (buildsym_compunit::~buildsym_compunit)
4845         (buildsym_compunit::get_macro_table): Define.
4846
4847 2018-07-20  Tom Tromey  <tom@tromey.com>
4848
4849         * buildsym.c (reset_symtab_globals): Remove.
4850         (buildsym_compunit::end_symtab_from_static_block): Update.
4851         (buildsym_compunit::augment_type_symtab): Update.
4852         (end_symtab_from_static_block): Call free_buildsym_compunit.
4853         (augment_type_symtab, end_symtab, end_expandable_symtab):
4854         Likewise.
4855
4856 2018-07-20  Tom Tromey  <tom@tromey.com>
4857
4858         * arch-utils.c: Do not include buildsym.h.
4859         * mipsread.c: Do not include buildsym.h.
4860         * machoread.c: Do not include buildsym.h.
4861         * elfread.c: Do not include buildsym.h.
4862
4863 2018-07-20  Tom Tromey  <tom@tromey.com>
4864
4865         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
4866         initialization.
4867         (buildsym_compunit): Add new constructor.
4868         (struct buildsym_compunit) <get_last_source_file, finish_block,
4869         record_block_range, start_subfile, patch_subfile_names,
4870         push_subfile, pop_subfile, record_line, get_compunit_symtab,
4871         set_last_source_start_addr, get_last_source_start_addr,
4872         get_local_using_directives, set_local_using_directives,
4873         get_global_using_directives, outermost_context_p,
4874         get_current_context_stack, get_context_stack_depth,
4875         get_current_subfile, get_local_symbols, get_file_symbols,
4876         get_global_symbols, record_debugformat, record_producer,
4877         push_context, pop_context, end_symtab_get_static_block,
4878         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
4879         New public methods.
4880         <record_pending_block, finish_block_internal, make_blockvector,
4881         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
4882         private methods.
4883         Update all users.
4884
4885 2018-05-22  Tom Tromey  <tom@tromey.com>
4886
4887         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
4888         parameter.
4889         (finish_block_internal): Update.
4890
4891 2018-07-20  Tom Tromey  <tom@tromey.com>
4892
4893         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
4894         parameter.
4895         (finish_block_internal): Update.
4896
4897 2018-07-20  Tom Tromey  <tom@tromey.com>
4898
4899         * buildsym.h (EXTERN): Don't define or undef.
4900         * buildsym.c (EXTERN): Don't define.
4901
4902 2018-07-20  Tom Tromey  <tom@tromey.com>
4903
4904         * buildsym.c: Remove TODO comment.
4905
4906 2018-07-20  Tom Tromey  <tom@tromey.com>
4907
4908         * coffread.c (coff_symtab_read): Update.
4909         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
4910         (xcoff_new_init): Update.
4911         * mipsread.c (mipscoff_new_init): Update.
4912         * mdebugread.c (mdebug_build_psymtabs): Update.
4913         * elfread.c (elf_new_init): Update.
4914         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
4915         Update.
4916         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
4917         (coffstab_build_psymtabs, elfstab_build_psymtabs)
4918         (stabsect_build_psymtabs): Update.
4919         * buildsym.h (buildsym_init): Don't declare.
4920         * buildsym.c: Update comment.
4921         (prepare_for_building): Remove.
4922         (start_symtab, restart_symtab): Update.
4923         (reset_symtab_globals): Update comment.
4924         (buildsym_init): Remove.
4925
4926 2018-07-20  Tom Tromey  <tom@tromey.com>
4927
4928         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
4929         * stabsread.c (patch_block_stabs, define_symbol, read_type)
4930         (read_enum_type, common_block_start, common_block_end)
4931         (cleanup_undefined_types_1, finish_global_stabs): Update.
4932         * mdebugread.c (psymtab_to_symtab_1): Update.
4933         * dwarf2read.c (fixup_go_packaging, read_func_scope)
4934         (read_lexical_block_scope, new_symbol): Update.
4935         * dbxread.c (process_one_symbol): Update.
4936         * coffread.c (coff_symtab_read, process_coff_symbol)
4937         (coff_read_enum_type): Update.
4938         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
4939         declare.
4940         (get_local_symbols, get_file_symbols, get_global_symbols): New
4941         functions.
4942         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
4943         m_global_symbols.
4944         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
4945         (~scoped_free_pendings): Update.
4946         (finish_block, prepare_for_building, reset_symtab_globals)
4947         (end_symtab_get_static_block, end_symtab_with_blockvector)
4948         (augment_type_symtab, push_context): Update.
4949         (get_local_symbols, get_file_symbols, get_global_symbols): New
4950         functions.
4951         (buildsym_init): Update.
4952
4953 2018-07-20  Tom Tromey  <tom@tromey.com>
4954
4955         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
4956         (process_full_type_unit): Likewise.
4957         (dwarf2_start_symtab): Set list_in_scope.
4958
4959 2018-07-20  Tom Tromey  <tom@tromey.com>
4960
4961         * dwarf2read.c (process_psymtab_comp_unit_reader)
4962         (build_type_psymtabs_reader): Do not set list_in_scope.
4963
4964 2018-07-20  Tom Tromey  <tom@tromey.com>
4965
4966         * buildsym.c (free_pendings): Remove.
4967         (add_symbol_to_list, scoped_free_pendings)
4968         (finish_block_internal, buildsym_init): Update.
4969
4970 2018-07-20  Tom Tromey  <tom@tromey.com>
4971
4972         * xcoffread.c (read_xcoff_symtab): Update.
4973         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
4974         Update.
4975         * dbxread.c (process_one_symbol): Update.
4976         * coffread.c (coff_symtab_read): Update.
4977         * buildsym.h (finish_block): Update.
4978         * buildsym.c (finish_block): Remove "listhead" argument.
4979         (end_symtab_get_static_block): Update.
4980
4981 2018-07-20  Tom Tromey  <tom@tromey.com>
4982
4983         * buildsym.h (class scoped_free_pendings): Remove constructor.
4984         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
4985         method.
4986         <m_pending_block_obstack, m_pending_blocks>: New members.
4987         (pending_block_obstack, pending_blocks): Remove.
4988         (scoped_free_pendings::scoped_free_pendings): Default.
4989         (~scoped_free_pendings): Update.
4990         (free_pending_blocks): Remove.
4991         (finish_block_internal, record_pending_block, make_blockvector)
4992         (end_symtab_get_static_block, augment_type_symtab, push_context)
4993         (buildsym_init): Update.
4994
4995 2018-07-20  Tom Tromey  <tom@tromey.com>
4996
4997         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
4998         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
4999         members.
5000         (pending_addrmap, pending_addrmap_obstack)
5001         (pending_addrmap_interesting): Remove.
5002         (scoped_free_pendings, record_block_range, make_blockvector)
5003         (prepare_for_building, reset_symtab_globals, buildsym_init):
5004         Update.
5005
5006 2018-07-20  Tom Tromey  <tom@tromey.com>
5007
5008         * xcoffread.c (process_linenos): Update.
5009         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
5010         * mdebugread.c (psymtab_to_symtab_1): Update.
5011         * dwarf2read.c (setup_type_unit_groups)
5012         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
5013         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
5014         * dbxread.c (process_one_symbol): Update.
5015         * coffread.c (coff_symtab_read, enter_linenos)
5016         (process_coff_symbol): Update.
5017         * buildsym.h (current_subfile): Don't declare.
5018         (get_current_subfile): Declare.
5019         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
5020         member.
5021         (start_subfile, free_buildsym_compunit, push_subfile)
5022         (prepare_for_building, start_symtab): Update.
5023         (get_current_subfile): New function.
5024
5025 2018-07-20  Tom Tromey  <tom@tromey.com>
5026
5027         * coffread.c (coff_symtab_read): Update.
5028         * xcoffread.c (read_xcoff_symtab): Update.
5029         * dwarf2read.c (new_symbol): Update.
5030         (read_func_scope, read_lexical_block_scope): Update.
5031         * dbxread.c (process_one_symbol): Update.
5032         * buildsym.h (context_stack, context_stack_depth): Don't declare.
5033         (outermost_context_p): Remove macro.
5034         (outermost_context_p, get_current_context_stack)
5035         (get_context_stack_depth): Declare.
5036         (pop_context): Return struct context_stack.
5037         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
5038         member.
5039         (context_stack_size): Remove.
5040         (INITIAL_CONTEXT_STACK_SIZE): Remove.
5041         (prepare_for_building, end_symtab_get_static_block)
5042         (augment_type_symtab, push_context): Update.
5043         (pop_context): Return struct context_stack.
5044         (outermost_context_p, get_current_context_stack)
5045         (get_context_stack_depth): New functions.
5046         (buildsym_init): Update.
5047
5048 2018-07-20  Tom Tromey  <tom@tromey.com>
5049
5050         * rust-exp.y: Now a pure parser.  Update all rules.
5051         (%union): Move earlier.
5052         (current_parser, work_obstack): Remove globals.
5053         (rust_parser, ~rust_parser): Update.
5054         (class rust_parser) <copy_name, concat3, crate_name, super_name,
5055         lex_character, lex_number, lex_string, lex_identifier,
5056         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
5057         convert_name, convert_params_to_expression,
5058         convert_ast_to_expression, ast_basic_type, ast_operation,
5059         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
5060         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
5061         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
5062         ast_array_type, ast_slice_type, ast_reference_type,
5063         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
5064         (rust_parse): Update.
5065         (rustyyerror, rustyylex): Add parser parameter.
5066         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
5067         (rust_lex_stringish_test, rust_lex_test_sequence)
5068         (rust_lex_test_trailing_dot, rust_lex_test_completion)
5069         (rust_lex_test_push_back, rust_lex_tests): Update.
5070
5071 2018-07-19  Pedro Alves  <palves@redhat.com>
5072
5073         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
5074         gdb::unique_xmalloc_ptr.
5075         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
5076         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
5077         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
5078         copy-initialization.
5079         * guile/scm-pretty-print.c (ppscm_print_children): Use
5080         gdb::unique_xmalloc_ptr instead of cleanups.
5081         (gdbscm_apply_val_pretty_printer): Remove cleanups.
5082         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
5083         gdb::unique_xmalloc_ptr.
5084         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
5085         Adjust to use gdb::unique_xmalloc_ptr.
5086         * guile/scm-utils.c (extract_arg): Adjust.
5087         * guile/scm-value.c (gdbscm_value_field): Adjust to use
5088         gdb::unique_xmalloc_ptr instead of a cleanup.
5089
5090 2018-07-19  Tom Tromey  <tom@tromey.com>
5091
5092         * utils.c (do_value_free_to_mark)
5093         (make_cleanup_value_free_to_mark): Remove.
5094         * utils.h (make_cleanup_value_free_to_mark): Remove.
5095
5096 2018-07-19  Pedro Alves  <palves@redhat.com>
5097
5098         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
5099         forwarding reference.
5100
5101 2018-07-18  Pedro Alves  <palves@redhat.com>
5102
5103         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
5104         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
5105         cleanup.
5106
5107 2018-07-18  Pedro Alves  <palves@redhat.com>
5108
5109         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
5110         exceptions.
5111         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
5112         (gdbscm_wrap): New.
5113         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
5114         directly instead of a cleanup.
5115         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
5116         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
5117         (vlscm_binop_gdbthrow): New, factored out from ...
5118         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
5119         (vlscm_rich_compare): Use gdbscm_wrap.
5120         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
5121         instead of a cleanup.
5122         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
5123         cleanup.
5124         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
5125         Use xfree directly instead of a cleanup.
5126         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
5127         Adjust to use gdbscm_wrap and scoped_value_mark.
5128         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
5129         (gdbscm_value_address, gdbscm_value_dereference)
5130         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
5131         scoped_value_mark.
5132         (gdbscm_value_dynamic_type): Use scoped_value_mark.
5133         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
5134         scoped_value_mark.
5135         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
5136         gdbscm_wrap and scoped_value_mark.
5137         (gdbscm_value_to_string): Use xfree directly instead of a
5138         cleanup.  Move 'buffer' unique_ptr to TRY scope.
5139         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
5140         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
5141         scoped_value_mark.
5142         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
5143         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
5144         scoped_value_mark.
5145         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
5146         gdbscm_wrap.
5147
5148 2018-07-18  Tom de Vries  <tdevries@suse.de>
5149
5150         * findvar.c (default_read_var_value): Also resolve dynamic type for
5151         LOC_OPTIMIZED_OUT vars.
5152
5153 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
5154
5155         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
5156         decoding.
5157
5158 2018-07-17  Tom Tromey  <tom@tromey.com>
5159
5160         * guile/scm-param.c (pascm_set_func, pascm_show_func)
5161         (compute_enum_list, pascm_set_param_value_x)
5162         (gdbscm_parameter_value): Update.
5163         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
5164         (gdbscm_scm_to_host_string): Update.
5165         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
5166         Update.
5167         * guile/scm-cmd.c (cmdscm_add_completion): Update.
5168         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
5169         * guile/scm-string.c (gdbscm_scm_to_string): Return
5170         unique_xmalloc_ptr.
5171         (gdbscm_scm_to_host_string): Likewise.
5172
5173 2018-07-17  Tom Tromey  <tom@tromey.com>
5174
5175         * guile/guile.c (gdbscm_eval_from_control_command): Update.
5176         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
5177         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
5178         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
5179         unique_xmalloc_ptr.
5180
5181 2018-07-17  Tom Tromey  <tom@tromey.com>
5182
5183         * guile/scm-param.c (pascm_signal_setshow_error): Update.
5184         * guile/guile-internal.h (gdbscm_exception_message_to_string):
5185         Update.
5186         * guile/scm-cmd.c (cmdscm_function): Update.
5187         * guile/scm-pretty-print.c
5188         (ppscm_print_exception_unless_memory_error): Update.
5189         * guile/scm-exception.c (gdbscm_exception_message_to_string):
5190         Return unique_xmalloc_ptr.
5191
5192 2018-07-17  Tom Tromey  <tom@tromey.com>
5193
5194         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
5195         Use string_printf.
5196
5197 2018-07-17  Jim Wilson  <jimw@sifive.com>
5198
5199         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
5200         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
5201         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
5202         unecessary braces after EF_RISCV_RVC test.  Delete call to
5203         set_gdbarch_decr_pc_after_break.
5204
5205         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
5206         RISCV_LAST_FP_REGNUM + 1.
5207         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
5208
5209 2018-07-17  Tom Tromey  <tom@tromey.com>
5210
5211         * configure.ac: Remove --disable-gdbcli.
5212         * configure: Rebuild.
5213         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
5214         (SUBDIR_CLI_CFLAGS): Remove.
5215         (SFILES): Use SUBDIR_CLI_SRCS.
5216         (COMMON_OBS): Use SUBDIR_CLI_OBS.
5217
5218 2018-07-17  Tom Tromey  <tom@tromey.com>
5219
5220         PR gdb/18624:
5221         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
5222
5223 2018-07-16  Jim Wilson  <jimw@sifive.com>
5224
5225         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
5226
5227 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5228
5229         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
5230         variable.
5231         (libunwind_frame_sniffer): Likewise.
5232         (libunwind_frame_prev_register): Likewise.
5233         (libunwind_sigtramp_frame_sniffer): Likewise.
5234         * ia64-tdep.c (ia64_access_reg): Likewise.
5235         (ia64_access_rse_reg): Likewise.
5236         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
5237         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
5238
5239 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5240
5241         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
5242
5243 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5244
5245         * remote-sim.c (gdbsim_target::close,
5246         gdbsim_target::mourn_inferior): Remove unused variables.
5247
5248 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
5249
5250         * ia64-tdep.c (ktab_buf): New global.
5251         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
5252         (get_kernel_table): Adjust.
5253
5254 2018-07-16  Tom Tromey  <tom@tromey.com>
5255
5256         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
5257         * dwarf2read.c (using_directives, new_symbol): Use
5258         outermost_context_p.
5259         * dbxread.c (process_one_symbol): Use outermost_context_p.
5260         * coffread.c (coff_symtab_read): Use outermost_context_p.
5261
5262 2018-07-16  Tom Tromey  <tom@tromey.com>
5263
5264         * dwarf2read.c (using_directives, read_func_scope)
5265         (read_lexical_block_scope): Update.
5266         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
5267         * buildsym.h (local_using_directives, global_using_directives):
5268         Don't declare.
5269         (get_local_using_directives, set_local_using_directives)
5270         (get_global_using_directives): Declare.
5271         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
5272         m_global_using_directives>: New members.
5273         (finish_block_internal, prepare_for_building)
5274         (reset_symtab_globals, end_symtab_get_static_block)
5275         (push_context): Update.
5276         (get_local_using_directives, set_local_using_directives)
5277         (get_global_using_directives): New functions.
5278         (buildsym_init): Update.
5279
5280 2018-07-16  Tom Tromey  <tom@tromey.com>
5281
5282         * xcoffread.c (xcoff_initial_scan): Don't call
5283         free_pending_blocks.
5284         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
5285         * buildsym.h (class scoped_free_pendings): Add constructor.
5286         (free_pending_blocks): Don't declare.
5287         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
5288         (free_pending_blocks): Now static.
5289
5290 2018-07-16  Tom Tromey  <tom@tromey.com>
5291
5292         * buildsym.h (push_subfile, pop_subfile): Update declarations.
5293         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
5294         member.
5295         (struct subfile_stack): Remove.
5296         (subfile_stack): Remove.
5297         (push_subfile, pop_subfile, buildsym_init): Update.
5298
5299 2018-07-16  Tom Tromey  <tom@tromey.com>
5300
5301         * buildsym.c (push_subfile): Use gdb_assert.
5302         (pop_subfile): Use gdb_assert.
5303
5304 2018-07-16  Tom Tromey  <tom@tromey.com>
5305
5306         * buildsym.h (merge_symbol_lists): Remove.
5307         * buildsym.c (merge_symbol_lists): Remove.
5308
5309 2018-07-16  Tom Tromey  <tom@tromey.com>
5310
5311         * stabsread.c (scan_file_globals): Update comment.
5312         * stabsread.h (scan_file_globals): Move from buildsym.h.
5313         * buildsym.h (scan_file_globals): Move to stabsread.h.
5314
5315 2018-07-16  Tom Tromey  <tom@tromey.com>
5316
5317         * xcoffread.c (xcoff_new_init): Update.
5318         * mipsread.c (mipscoff_new_init): Update.
5319         * mdebugread.c (mdebug_build_psymtabs): Update.
5320         * elfread.c (elf_new_init): Update.
5321         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
5322         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
5323         * buildsym.h (buildsym_new_init): Don't declare.
5324         * buildsym.c (buildsym_new_init): Remove.
5325
5326 2018-07-16  Tom Tromey  <tom@tromey.com>
5327
5328         * stabsread.h (within_function): Move from buildsym.h.
5329         * stabsread.c (start_stabs): Clear within_function.
5330         * coffread.c (coff_start_symtab): Clear within_function.
5331         * buildsym.h (within_function): Move to stabsread.h.
5332         * buildsym.c (prepare_for_building): Update.
5333
5334 2018-07-16  Tom Tromey  <tom@tromey.com>
5335
5336         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
5337         * dwarf2read.c (dwarf2_start_symtab): Don't set
5338         processing_gcc_compilation.
5339         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
5340
5341 2018-07-16  Tom Tromey  <tom@tromey.com>
5342
5343         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
5344         (next_symbol_text_func): Move from buildsym.h.
5345         * stabsread.c (hashname): Move from buildsym.c.
5346         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
5347         (next_symbol_text_func, hashname): Move to stabsread.h.
5348         * buildsym.c: Don't include bcache.h
5349         (hashname): Move to stasbread.c.
5350
5351 2018-07-16  Tom Tromey  <tom@tromey.com>
5352
5353         * buildsym.h (context_stack_size): Don't declare.
5354         * buildsym.c (context_stack_size): New global.
5355
5356 2018-07-16  Tom Tromey  <tom@tromey.com>
5357
5358         * dbxread.c (processing_acc_compilation): New global.
5359         * buildsym.h (processing_acc_compilation): Don't declare.
5360
5361 2018-07-16  Tom Tromey  <tom@tromey.com>
5362
5363         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
5364         * dbxread.c (read_ofile_symtab): Update.
5365         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
5366         * buildsym.h (last_source_start_addr): Remove.
5367         (set_last_source_start_addr, get_last_source_start_addr):
5368         Declare.
5369         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
5370         parameter.
5371         (struct buildsym_compunit) <m_last_source_start_addr>: New
5372         member.
5373         (prepare_for_building): Remove start_addr parameter.
5374         (start_symtab, restart_symtab, end_symtab_get_static_block)
5375         (end_symtab_with_blockvector): Update.
5376         (set_last_source_start_addr, get_last_source_start_addr): New
5377         functions.
5378
5379 2018-07-16  Tom Tromey  <tom@tromey.com>
5380
5381         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
5382         member.
5383         (have_line_numbers): Remove.
5384         (record_line, prepare_for_building, end_symtab_get_static_block)
5385         (augment_type_symtab): Update.
5386
5387 2018-07-16  Tom Tromey  <tom@tromey.com>
5388
5389         * buildsym.c (~buildsym_compunit): Free the macro table.
5390         (struct buildsym_compunit) <get_macro_table, release_macros>: New
5391         methods.
5392         <m_pending_macros>: New member.
5393         (pending_macros): Remove.
5394         (~scoped_free_pendings, get_macro_table, prepare_for_building)
5395         (reset_symtab_globals, end_symtab_get_static_block)
5396         (end_symtab_with_blockvector, augment_type_symtab)
5397         (buildsym_init): Update.
5398
5399 2018-07-16  Tom Tromey  <tom@tromey.com>
5400
5401         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
5402         parameter.
5403         (buildsym_compunit::set_last_source_file): New method.
5404         <m_last_source_file>: New member.
5405         (prepare_for_building): Remove "name" parameter.
5406         (start_symtab, restart_symtab, reset_symtab_globals): Update.
5407         (last_source_file): Remove.
5408         (set_last_source_file, get_last_source_file): Update.
5409
5410 2018-07-16  Tom Tromey  <tom@tromey.com>
5411
5412         * buildsym.c (prepare_for_building): Add assert.
5413
5414 2018-07-16  Tom Tromey  <tom@tromey.com>
5415
5416         * buildsym.c (~buildsym_compunit): Update.
5417         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
5418         (start_subfile, patch_subfile_names)
5419         (end_symtab_with_blockvector): Update.
5420
5421 2018-07-16  Tom Tromey  <tom@tromey.com>
5422
5423         * buildsym.c (struct buildsym_compunit): Add constructor,
5424         destructor, initializers.
5425         (start_buildsym_compunit): Remove.
5426         (free_buildsym_compunit): Use "delete".
5427         (start_symtab, restart_symtab): Use "new".
5428
5429 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
5430
5431         * symfile.c (set_objfile_default_section_offset): Remove struct
5432         keyword.
5433
5434 2018-07-14  Stafford Horne  <shorne@gmail.com>
5435
5436         * (Responsible Maintainers): Add myself as or1k maintainer.
5437
5438 2018-07-13  Tom Tromey  <tom@tromey.com>
5439
5440         * symfile.c (set_objfile_default_section_offset): Use extra braces
5441         around initializer.
5442
5443 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
5444
5445         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
5446         non-branching basr.
5447
5448 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5449
5450         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5451         unittests/cli-utils-selftests.c
5452         * unittests/cli-utils-selftests.c: New file.
5453
5454 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5455
5456         * NEWS: Mention new commands. Mention change to 'thread apply'.
5457
5458 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5459
5460         * thread.c (thr_try_catch_cmd): New function.
5461         (thread_apply_all_command): Handle qcs flags.
5462         (thread_apply_command): Handle qcs flags.
5463         (taas_command): New function.
5464         (tfaas_command): New function.
5465         (_initialize_thread): Update to setup the new commands 'taas
5466         and 'tfaas'. Change doc string for 'thread apply'.
5467
5468 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5469
5470         * stack.c: (trailing_outermost_frame): New function, mostly
5471         extracted from backtrace_command_1.
5472         (leading_innermost_frame): New function.
5473         (backtrace_command_1): Update to call trailing_outermost_frame.
5474         (frame_apply_command_count): New function.
5475         (frame_apply_level_command): New function.
5476         (frame_apply_all_command): New function.
5477         (frame_apply_command): New function.
5478         (faas_command): New function.
5479         (frame_cmd_list): New variable.
5480         (_initialize_stack): Update to setup the new commands 'frame apply'
5481         and 'faas'.
5482
5483 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5484
5485         * cli-utils.c (number_or_range_parser::get_number): Only handle
5486         numbers or convenience var as numbers.
5487         (parse_flags): New function.
5488         (parse_flags_qcs): New function.
5489         (number_or_range_parser::finished): Ensure parsing end is detected
5490         before end of string.
5491         * cli-utils.h (parse_flags): New function.
5492         (parse_flags_qcs): New function.
5493         (number_or_range_parser): Remove m_finished bool.
5494         (number_or_range_parser::skip_range): Set m_in_range to false.
5495
5496 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
5497
5498         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
5499         on Windows.
5500
5501 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
5502             Jan Kratochvil  <jan.kratochvil@redhat.com>
5503             Paul Fertser  <fercerpav@gmail.com>
5504             Tsutomu Seki  <sekiriki@gmail.com>
5505             Pedro Alves  <palves@redhat.com>
5506
5507         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5508         'unittests/parse-connection-spec-selftests.c'.
5509         (COMMON_SFILES): Add 'common/netstuff.c'.
5510         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
5511         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
5512         * common/netstuff.c: New file.
5513         * common/netstuff.h: New file.
5514         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
5515         (wait_for_connect): Update comment.  New parameter
5516         'gdb::optional<int> sock' instead of 'struct serial *scb'.
5517         Use 'sock' directly instead of 'scb->fd'.
5518         (try_connect): New function, with code from 'net_open'.
5519         (net_open): Rewrite main loop to deal with multiple
5520         sockets/addresses.  Handle IPv6-style hostnames; implement
5521         support for IPv6 connections.
5522         * unittests/parse-connection-spec-selftests.c: New file.
5523
5524 2018-07-11  Pedro Alves  <palves@redhat.com>
5525
5526         PR gdb/23377
5527         * remote.c (remote_target::remote_detach_pid): Call
5528         set_current_process.
5529
5530 2018-07-11  Pedro Alves  <palves@redhat.com>
5531
5532         * h8300-tdep.c (h8300_gdbarch_init): Remove
5533         set_gdbarch_ecoff_reg_to_regnum calls.
5534
5535 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
5536
5537         PR c++/23373
5538         * c-typeprint.c (c_type_print_base_struct_union): Don't print
5539         offsets/sizes for static members of a class/struct.
5540
5541 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
5542
5543         * target-descriptions.c (tdesc_register_bitsize): Rename.
5544         * target-descriptions.h (tdesc_register_bitsize): Likewise.
5545         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
5546         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
5547
5548 2018-07-10  Tom Tromey  <tom@tromey.com>
5549
5550         * breakpoint.c (moribund_locations): Now static and a
5551         std::vector.
5552         (breakpoint_init_inferior, moribund_breakpoint_here_p)
5553         (build_bpstat_chain, update_global_location_list)
5554         (breakpoint_retire_moribund): Update.
5555         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
5556         VEC.
5557
5558 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
5559
5560         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
5561         (riscv_register_reggroup_p): Use new function, remove unneeded
5562         parenthesis.
5563         (riscv_push_dummy_call): Extend assert to compare against xlen or
5564         flen based on register type.
5565
5566 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
5567
5568         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
5569
5570 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5571
5572         * remote.c (show_hardware_watchpoint_limit): New function.
5573         (show_hardware_watchpoint_length_limit): New function.
5574         (show_hardware_breakpoint_limit): New function.
5575         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
5576         where appropriate, update help text.
5577
5578 2018-07-09  Tom Tromey  <tom@tromey.com>
5579
5580         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
5581         (CLIBS): Don't mention NAT_CLIBS.
5582
5583 2018-07-09  Tom Tromey  <tom@tromey.com>
5584
5585         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
5586         (LIBGDB_OBS, clean mostlyclean): Update.
5587         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
5588
5589 2018-07-09  Tom Tromey  <tom@tromey.com>
5590
5591         * Makefile.in (%.c: %.y): Use ECHO_YACC.
5592         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
5593         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
5594
5595 2018-07-09  Tom Tromey  <tom@tromey.com>
5596
5597         * Makefile.in (ALLDEPFILES): Remove exec.c.
5598         (COMMON_OBS): Remove exec.o.
5599         (COMMON_SFILES): Add exec.c.
5600
5601 2018-07-09  Tom Tromey  <tom@tromey.com>
5602
5603         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
5604
5605 2018-07-09  Tom Tromey  <tom@tromey.com>
5606
5607         * Makefile.in (clean mostlyclean): Remove stamp-version.
5608         (version.c): Depend on stamp-version.
5609         (stamp-version): New rule, from version.c rule.
5610
5611 2018-07-09  Tom Tromey  <tom@tromey.com>
5612
5613         * Makefile.in (init.c): Depend on stamp-init.
5614         (stamp-init): New rule, from init.c rule.
5615         (clean mostlyclean): Remove stamp-init.
5616
5617 2018-07-09  Tom Tromey  <tom@tromey.com>
5618
5619         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
5620         SUBDIR_GCC_COMPILE_SRCS.
5621
5622 2018-07-09  Tom Tromey  <tom@tromey.com>
5623
5624         * Makefile.in (init.c): Remove some unused sed rules.
5625
5626 2018-07-09  Tom Tromey  <tom@tromey.com>
5627
5628         * Makefile.in (TSOBS): Remove.
5629         (INIT_FILES): Update.
5630         (LIBGDB_OBS): Update.
5631         (COMMON_SFILES): Add inflow.c.
5632         (SFILES): Remove inflow.c.
5633
5634 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
5635
5636         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
5637
5638 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
5639
5640         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
5641         get_saveloc_name, is_signal_frame_name, step_name,
5642         init_remote_name, create_addr_space_name,
5643         destroy_addr_space_name, search_unwind_table_name,
5644         find_dyn_list_name): Constify.
5645
5646 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
5647
5648         * darwin-nat.c (darwin_pthread_kill): New function.
5649         (darwin_resume_thread): Use darwin_pthread_kill.
5650
5651 2018-07-05  Tom de Vries  <tdevries@suse.de>
5652
5653         * macroexp.c (macro_buffer) <operator=>: New member function.
5654
5655 2018-07-04  Tom Tromey  <tom@tromey.com>
5656
5657         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
5658
5659 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
5660
5661         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
5662         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
5663         * maint.c: Likewise.
5664         * top.c: Likewise.
5665
5666 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
5667
5668         * NEWS: Create a new section for the next release branch.
5669         Rename the section of the current branch, now that it has
5670         been cut.
5671
5672 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
5673
5674         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
5675         * version.in: Bump version to 8.2.50.DATE-git.
5676
5677 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
5678             Pedro Alves  <palves@redhat.com>
5679
5680         * linux-nat.c (linux_init_ptrace): Rename to ...
5681         (linux_init_ptrace_procfs): ... this.  Call
5682         linux_proc_init_warnings.
5683         (linux_nat_target::post_attach)
5684         (linux_nat_target::post_startup_inferior): Adjust.
5685         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
5686         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
5687
5688 2018-07-04  Tom de Vries  <tdevries@suse.de>
5689
5690         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
5691         check ...
5692         (read_comp_unit_head): ... here.
5693
5694 2018-07-03  Tom Tromey  <tom@tromey.com>
5695
5696         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
5697         (stop_tracing, tstatus_command)
5698         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
5699         (print_one_static_tracepoint_marker): Update.
5700         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
5701         std::vector.
5702         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
5703         VEC.
5704         (all_tracepoints, static_tracepoints_here): Return std::vector.
5705
5706 2018-07-03  Tom Tromey  <tom@tromey.com>
5707
5708         * common/ptid.c (ptid_equal): Remove.
5709         * common/ptid.h (ptid_equal): Don't declare.
5710         * ada-tasks.c: Update.
5711         * breakpoint.c: Update.
5712         * common/agent.c: Update.
5713         * corelow.c: Update.
5714         * darwin-nat-info.c: Update.
5715         * darwin-nat.c: Update.
5716         * dcache.c: Update.
5717         * dtrace-probe.c: Update.
5718         * dummy-frame.c: Update.
5719         * fbsd-nat.c: Update.
5720         * frame.c: Update.
5721         * gdbthread.h: Update.
5722         * gnu-nat.c: Update.
5723         * go32-nat.c: Update.
5724         * inf-loop.c: Update.
5725         * inf-ptrace.c: Update.
5726         * infcall.c: Update.
5727         * infcmd.c: Update.
5728         * inflow.c: Update.
5729         * infrun.c: Update.
5730         * linux-fork.c: Update.
5731         * linux-nat.c: Update.
5732         * linux-thread-db.c: Update.
5733         * mi/mi-cmd-var.c: Update.
5734         * mi/mi-interp.c: Update.
5735         * mi/mi-main.c: Update.
5736         * nto-procfs.c: Update.
5737         * ppc-linux-tdep.c: Update.
5738         * procfs.c: Update.
5739         * python/py-inferior.c: Update.
5740         * python/py-record-btrace.c: Update.
5741         * python/py-record.c: Update.
5742         * ravenscar-thread.c: Update.
5743         * regcache.c: Update.
5744         * remote-sim.c: Update.
5745         * remote.c: Update.
5746         * sol-thread.c: Update.
5747         * solib.c: Update.
5748         * target.c: Update.
5749         * tui/tui-stack.c: Update.
5750         * varobj.c: Update.
5751         * windows-nat.c: Update.
5752         * windows-tdep.c: Update.
5753
5754 2018-07-03  Tom Tromey  <tom@tromey.com>
5755
5756         * common/ptid.c (ptid_match): Remove.
5757         * common/ptid.h (ptid_match): Don't declare.
5758         * fbsd-nat.c: Update.
5759         * infcmd.c: Update.
5760         * infrun.c: Update.
5761         * linux-nat.c: Update.
5762         * record-btrace.c: Update.
5763         * regcache.c: Update.
5764         * remote.c: Update.
5765
5766 2018-07-03  Tom Tromey  <tom@tromey.com>
5767
5768         * common/ptid.c (ptid_tid_p): Remove.
5769         * common/ptid.h (ptid_tid_p): Don't declare.
5770         * sol-thread.c: Update.
5771
5772 2018-07-03  Tom Tromey  <tom@tromey.com>
5773
5774         * common/ptid.c (ptid_lwp_p): Remove.
5775         * common/ptid.h (ptid_lwp_p): Don't declare.
5776         * fbsd-nat.c: Update.
5777         * linux-nat.c: Update.
5778         * nat/linux-procfs.c: Update.
5779         * nat/x86-linux-dregs.c: Update.
5780         * sol-thread.c: Update.
5781
5782 2018-07-03  Tom Tromey  <tom@tromey.com>
5783
5784         * common/ptid.c (ptid_is_pid): Remove.
5785         * common/ptid.h (ptid_is_pid): Don't declare.
5786         * infrun.c: Update.
5787         * linux-nat.c: Update.
5788         * mi/mi-interp.c: Update.
5789         * remote.c: Update.
5790         * thread.c: Update.
5791
5792 2018-07-03  Tom Tromey  <tom@tromey.com>
5793
5794         * common/ptid.c (ptid_get_tid): Remove.
5795         * common/ptid.h (ptid_get_tid): Don't declare.
5796         * ada-tasks.c: Update.
5797         * aix-thread.c: Update.
5798         * bsd-uthread.c: Update.
5799         * darwin-nat.c: Update.
5800         * fbsd-nat.c: Update.
5801         * i386-darwin-nat.c: Update.
5802         * infrun.c: Update.
5803         * linux-tdep.c: Update.
5804         * nto-procfs.c: Update.
5805         * ppc-ravenscar-thread.c: Update.
5806         * python/py-infthread.c: Update.
5807         * ravenscar-thread.c: Update.
5808         * sol-thread.c: Update.
5809         * sparc-ravenscar-thread.c: Update.
5810         * windows-nat.c: Update.
5811
5812 2018-07-03  Tom Tromey  <tom@tromey.com>
5813
5814         * common/ptid.c (ptid_get_lwp): Remove.
5815         * common/ptid.h (ptid_get_lwp): Don't declare.
5816         * aarch64-linux-nat.c: Update.
5817         * ada-tasks.c: Update.
5818         * aix-thread.c: Update.
5819         * amd64-linux-nat.c: Update.
5820         * arm-linux-nat.c: Update.
5821         * corelow.c: Update.
5822         * fbsd-nat.c: Update.
5823         * fbsd-tdep.c: Update.
5824         * gnu-nat.c: Update.
5825         * i386-cygwin-tdep.c: Update.
5826         * i386-gnu-nat.c: Update.
5827         * i386-linux-nat.c: Update.
5828         * ia64-linux-nat.c: Update.
5829         * inf-ptrace.c: Update.
5830         * infrun.c: Update.
5831         * linux-fork.c: Update.
5832         * linux-nat.c: Update.
5833         * linux-tdep.c: Update.
5834         * linux-thread-db.c: Update.
5835         * mips-linux-nat.c: Update.
5836         * nat/aarch64-linux-hw-point.c: Update.
5837         * nat/aarch64-linux.c: Update.
5838         * nat/linux-btrace.c: Update.
5839         * nat/linux-osdata.c: Update.
5840         * nat/linux-procfs.c: Update.
5841         * nat/x86-linux-dregs.c: Update.
5842         * obsd-nat.c: Update.
5843         * ppc-fbsd-nat.c: Update.
5844         * ppc-linux-nat.c: Update.
5845         * procfs.c: Update.
5846         * python/py-infthread.c: Update.
5847         * ravenscar-thread.c: Update.
5848         * remote.c: Update.
5849         * s390-linux-nat.c: Update.
5850         * sol-thread.c: Update.
5851         * sol2-tdep.c: Update.
5852         * spu-linux-nat.c: Update.
5853         * x86-linux-nat.c: Update.
5854         * xtensa-linux-nat.c: Update.
5855
5856 2018-07-03  Tom Tromey  <tom@tromey.com>
5857
5858         * common/ptid.c (ptid_get_pid): Remove.
5859         * common/ptid.h (ptid_get_pid): Don't declare.
5860         * aarch64-linux-nat.c: Update.
5861         * ada-lang.c: Update.
5862         * aix-thread.c: Update.
5863         * alpha-bsd-nat.c: Update.
5864         * amd64-fbsd-nat.c: Update.
5865         * amd64-linux-nat.c: Update.
5866         * arm-linux-nat.c: Update.
5867         * arm-nbsd-nat.c: Update.
5868         * auxv.c: Update.
5869         * break-catch-syscall.c: Update.
5870         * breakpoint.c: Update.
5871         * bsd-uthread.c: Update.
5872         * corelow.c: Update.
5873         * ctf.c: Update.
5874         * darwin-nat.c: Update.
5875         * fbsd-nat.c: Update.
5876         * fbsd-tdep.c: Update.
5877         * gcore.c: Update.
5878         * gnu-nat.c: Update.
5879         * hppa-nbsd-nat.c: Update.
5880         * hppa-obsd-nat.c: Update.
5881         * i386-fbsd-nat.c: Update.
5882         * ia64-linux-nat.c: Update.
5883         * inf-ptrace.c: Update.
5884         * infcmd.c: Update.
5885         * inferior.c: Update.
5886         * inferior.h: Update.
5887         * inflow.c: Update.
5888         * infrun.c: Update.
5889         * linux-fork.c: Update.
5890         * linux-nat.c: Update.
5891         * linux-tdep.c: Update.
5892         * linux-thread-db.c: Update.
5893         * m68k-bsd-nat.c: Update.
5894         * mi/mi-interp.c: Update.
5895         * mi/mi-main.c: Update.
5896         * mips-linux-nat.c: Update.
5897         * mips-nbsd-nat.c: Update.
5898         * mips64-obsd-nat.c: Update.
5899         * nat/aarch64-linux-hw-point.c: Update.
5900         * nat/aarch64-linux.c: Update.
5901         * nat/linux-btrace.c: Update.
5902         * nat/linux-osdata.c: Update.
5903         * nat/linux-procfs.c: Update.
5904         * nat/x86-linux-dregs.c: Update.
5905         * nto-procfs.c: Update.
5906         * obsd-nat.c: Update.
5907         * ppc-linux-nat.c: Update.
5908         * ppc-nbsd-nat.c: Update.
5909         * ppc-obsd-nat.c: Update.
5910         * proc-service.c: Update.
5911         * procfs.c: Update.
5912         * python/py-inferior.c: Update.
5913         * python/py-infthread.c: Update.
5914         * ravenscar-thread.c: Update.
5915         * record.c: Update.
5916         * remote-sim.c: Update.
5917         * remote.c: Update.
5918         * rs6000-nat.c: Update.
5919         * s390-linux-nat.c: Update.
5920         * sh-nbsd-nat.c: Update.
5921         * sol-thread.c: Update.
5922         * sparc-nat.c: Update.
5923         * sparc64-tdep.c: Update.
5924         * spu-linux-nat.c: Update.
5925         * spu-tdep.c: Update.
5926         * target-debug.h: Update.
5927         * target.c: Update.
5928         * thread.c: Update.
5929         * tid-parse.c: Update.
5930         * tracefile-tfile.c: Update.
5931         * vax-bsd-nat.c: Update.
5932         * windows-nat.c: Update.
5933         * x86-linux-nat.c: Update.
5934         * x86-nat.c: Update.
5935
5936 2018-07-03  Tom Tromey  <tom@tromey.com>
5937
5938         * common/ptid.c (pid_to_ptid): Remove.
5939         * common/ptid.h (pid_to_ptid): Don't declare.
5940         * aix-thread.c: Update.
5941         * arm-linux-nat.c: Update.
5942         * common/ptid.c: Update.
5943         * common/ptid.h: Update.
5944         * corelow.c: Update.
5945         * ctf.c: Update.
5946         * darwin-nat.c: Update.
5947         * fbsd-nat.c: Update.
5948         * fork-child.c: Update.
5949         * gnu-nat.c: Update.
5950         * go32-nat.c: Update.
5951         * inf-ptrace.c: Update.
5952         * infcmd.c: Update.
5953         * inferior.c: Update.
5954         * infrun.c: Update.
5955         * linux-fork.c: Update.
5956         * linux-nat.c: Update.
5957         * nat/aarch64-linux-hw-point.c: Update.
5958         * nat/fork-inferior.c: Update.
5959         * nat/x86-linux-dregs.c: Update.
5960         * nto-procfs.c: Update.
5961         * obsd-nat.c: Update.
5962         * procfs.c: Update.
5963         * progspace.c: Update.
5964         * remote.c: Update.
5965         * rs6000-nat.c: Update.
5966         * s390-linux-nat.c: Update.
5967         * sol-thread.c: Update.
5968         * spu-linux-nat.c: Update.
5969         * target.c: Update.
5970         * top.c: Update.
5971         * tracefile-tfile.c: Update.
5972         * windows-nat.c: Update.
5973
5974 2018-07-03  Tom Tromey  <tom@tromey.com>
5975
5976         * common/ptid.h (ptid_build): Don't declare.
5977         * common/ptid.c (ptid_build): Remove.
5978         * aix-thread.c: Update.
5979         * bsd-kvm.c: Update.
5980         * bsd-uthread.c: Update.
5981         * common/agent.c: Update.
5982         * common/ptid.c: Update.
5983         * common/ptid.h: Update.
5984         * corelow.c: Update.
5985         * darwin-nat.c: Update.
5986         * fbsd-nat.c: Update.
5987         * gnu-nat.c: Update.
5988         * linux-fork.c: Update.
5989         * linux-nat.c: Update.
5990         * linux-thread-db.c: Update.
5991         * nat/linux-osdata.c: Update.
5992         * nat/linux-procfs.c: Update.
5993         * nto-procfs.c: Update.
5994         * obsd-nat.c: Update.
5995         * proc-service.c: Update.
5996         * procfs.c: Update.
5997         * ravenscar-thread.c: Update.
5998         * remote-sim.c: Update.
5999         * remote.c: Update.
6000         * sol-thread.c: Update.
6001         * target.c: Update.
6002         * windows-nat.c: Update.
6003
6004 2018-07-03  Tom Tromey  <tom@tromey.com>
6005
6006         * infrun.c (follow_exec): Use exit_inferior_silent.
6007         * inferior.c (exit_inferior_num_silent): Remove.
6008         * inferior.h (exit_inferior_num_silent): Don't declare.
6009
6010 2018-07-03  Tom Tromey  <tom@tromey.com>
6011
6012         PR cli/23340:
6013         * darwin-nat.c (darwin_attach_pid): Reset inferior and
6014         inferior_ptid on error.
6015
6016 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
6017             Simon Marchi  <simon.marchi@polymtl.ca>
6018
6019         PR tdep/8282
6020         * disasm.h (gdb_disassembler): Add
6021         `m_disassembler_options_holder'. member
6022         * disasm.c (get_all_disassembler_options): New function.
6023         (gdb_disassembler::gdb_disassembler): Use it.
6024         (gdb_buffered_insn_length_init_dis): Likewise.
6025         (gdb_buffered_insn_length): Adjust accordingly.
6026         (set_disassembler_options): Handle options with arguments.
6027         (show_disassembler_options_sfunc): Likewise.  Add a leading new
6028         line if showing options with descriptions.
6029         (disassembler_options_completer): Adapt to using the
6030         `disasm_options_and_args_t' structure.
6031         * mips-tdep.c (mips_disassembler_options): New variable.
6032         (mips_disassembler_options_o32): Likewise.
6033         (mips_disassembler_options_n32): Likewise.
6034         (mips_disassembler_options_n64): Likewise.
6035         (gdb_print_insn_mips): Don't set `disassembler_options'.
6036         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
6037         functions.
6038         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
6039         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
6040         `gdbarch_disassembler_options_implicit' and
6041         `gdbarch_valid_disassembler_options'.
6042         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
6043         `disasm_options_and_args_t' structure.
6044         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
6045         method.
6046         (valid_disassembler_options): Switch from `disasm_options_t' to
6047         the `disasm_options_and_args_t' structure.
6048         * NEWS: Document `set disassembler-options' support for the MIPS
6049         target.
6050         * gdbarch.h: Regenerate.
6051         * gdbarch.c: Regenerate.
6052
6053 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
6054
6055         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
6056
6057 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
6058
6059         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
6060         parameter in call to amd64_target_description.
6061         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
6062         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
6063         (amd64fbsd_init_abi): Likewise.
6064         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
6065         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
6066         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
6067         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
6068
6069 2018-06-29  Pedro Alves  <palves@redhat.com>
6070
6071         * gdb/amd64-tdep.h (amd64_create_target_description): Add
6072         "segments" parameter.
6073         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
6074         (_initialize_amd64_tdep): Update call to
6075         amd64_create_target_description.
6076         (amd64_target_description): Add "segments" parameter.  Adjust
6077         the implementation to use it.
6078         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
6079         call to amd64_create_target_description.
6080         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
6081         * gdb/arch/amd64.h (amd64_create_target_description): Add
6082         "segments" register.
6083         * gdb/arch/amd64.c (amd64_create_target_description): Add
6084         "segments" parameter.  Call create_feature_i386_64bit_segments
6085         only if SEGMENTS is true.
6086         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
6087         call to amd64_create_target_description.
6088
6089 2018-06-29  Pedro Alves  <palves@redhat.com>
6090
6091         * thread.c (thread_target_id_str): New, factored out from ...
6092         (print_thread_info_1): ... here.  Use it to compute the max
6093         "Target Id" column width.
6094
6095 2018-06-29  Pedro Alves  <palves@redhat.com>
6096
6097         * remote.c (remote_target::extra_thread_info): Delete
6098         'display_buf' and 'n' locals.  from the cache, regardless of
6099         packet mechanims is in use.  Use cache for qThreadExtra and qP
6100         methods too.
6101
6102 2018-06-29  Pedro Alves  <palves@redhat.com>
6103
6104         * blockframe.c (find_pc_sect_containing_function): New function.
6105         * breakpoint.c (print_breakpoint_location): Don't call
6106         find_pc_sect_function.
6107         * linespec.c (create_sals_line_offset): Record the location's
6108         symbol in the sal.
6109         * linespec.c (convert_address_location_to_sals): Fill in sal's
6110         symbol with find_pc_sect_containing_function.
6111         * symtab.c (find_function_start_sal): Rename to ...
6112         (find_function_start_sal_1): ... this.
6113         (find_function_start_sal): Reimplement as wrapper around
6114         find_function_start_sal_1, and use
6115         find_pc_sect_containing_function to fill in the sal's symbol.
6116         (find_function_start_sal(symbol*, bool)): Adjust.
6117         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
6118         comments.
6119         (find_pc_sect_containing_function): Declare.
6120
6121 2018-06-29  Pedro Alves  <palves@redhat.com>
6122
6123         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
6124         true if the the location has no symbol.
6125
6126 2018-06-28  Tom Tromey  <tom@tromey.com>
6127
6128         * NEWS: Mention --enable-codesign.
6129         * silent-rules.mk (ECHO_SIGN): New variable.
6130         * configure.ac: Add --enable-codesign.
6131         * configure: Rebuild.
6132         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
6133         (gdb$(EXEEXT)): Optionally invoke codesign.
6134
6135 2018-06-28  Pedro Alves  <palves@redhat.com>
6136
6137         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
6138         comments.
6139         (switch_to_thread_no_regs): Adjust comment.
6140         * infcmd.c (stop_pc): Delete.
6141         (post_create_inferior, info_program_command): Replace references
6142         to stop_pc with references to thread_info->suspend.stop_pc.
6143         * inferior.h (stop_pc): Delete declaration.
6144         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
6145         (handle_inferior_event_1, handle_signal_stop)
6146         (process_event_stop_test, keep_going_stepped_thread)
6147         (handle_step_into_function, handle_step_into_function_backward)
6148         (print_stop_location): Replace references to stop_pc with
6149         references to thread_info->suspend.stop_pc.
6150         (struct infcall_suspend_state) <stop_pc>: Delete field.
6151         (save_infcall_suspend_state, restore_infcall_suspend_state):
6152         Remove references to inf_stat->stop_pc.
6153         * linux-fork.c (fork_load_infrun_state): Likewise.
6154         * record-btrace.c (record_btrace_set_replay): Likewise.
6155         * record-full.c (record_full_goto_entry): Likewise.
6156         * remote.c (print_one_stopped_thread): Likewise.
6157         * target.c (target_resume): Extend comment.
6158         * thread.c (set_executing_thread): New.
6159         (set_executing): Use it.
6160         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
6161         Remove references to stop_pc.
6162
6163 2018-06-28  Pedro Alves  <palves@redhat.com>
6164
6165         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
6166         Moving fetching stop_pc until after ecs->event_thread is refreshed.
6167
6168 2018-06-28  Tom Tromey  <tom@tromey.com>
6169
6170         * coffread.c (coff_symfile_finish): Update.
6171         * xcoffread.c (xcoff_symfile_finish): Update.
6172         * elfread.c (elf_symfile_finish): Update.
6173         * symfile.h (dwarf2_free_objfile): Don't declare.
6174         * dwarf2read.c (_initialize_dwarf2_read): Use
6175         register_objfile_data_with_cleanup.
6176         (dwarf2_free_objfile): Now static.  Change signature.
6177
6178 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6179
6180         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
6181         option "-o" to add-symbol-file-load to add an offset to each
6182         section's load address.
6183         * symfile.c (set_objfile_default_section_offset): New function.
6184
6185 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6186
6187         * symfile.c (add_symbol_file_command): Make sure that sections
6188         with the same name are sorted in the same order.
6189
6190 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6191
6192         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
6193         require the second argument.  If omitted, load sections at the
6194         addresses specified in the file.
6195
6196 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6197
6198         * symfile.c (symbol_file_command, symbol_file_add_main_1)
6199         (_initialize_symfile): Add option "-o" to symbol-file to add an
6200         offset to each section of the symbol file.
6201
6202 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6203
6204         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
6205
6206 2018-06-27  Tom Tromey  <tom@tromey.com>
6207
6208         * stack.c (_initialize_stack): Update "func" help text.
6209
6210 2018-06-27  Tom Tromey  <tom@tromey.com>
6211
6212         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
6213         std::vector.
6214         (unwind_infopy_str, pyuw_create_unwind_info)
6215         (unwind_infopy_add_saved_register, pyuw_sniffer)
6216         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
6217         Update.
6218         (struct saved_reg): Add constructor.
6219         <value>: Now a gdbpy_ref<>.
6220
6221 2018-06-27  Tom Tromey  <tom@tromey.com>
6222
6223         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
6224
6225 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6226
6227         * gdb-gdb.py.in: Format using autopep8.
6228
6229 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6230
6231         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
6232         (type_lookup_function): Recognize CORE_ADDR values.
6233
6234 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6235
6236         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
6237         print tag_name.
6238
6239 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6240
6241         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
6242         <__lt__>: Add.
6243
6244 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6245
6246         * gdb-gdb.py: Move to...
6247         * gdb-gdb.py.in: ... here.
6248         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
6249         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
6250         dependencies.
6251         (distclean): Remove gdb-gdb.py when cleaning.
6252         (gdb-gdb.py, gdb-gdb.gdb): New rules.
6253         * configure: Re-generate.
6254
6255 2018-06-27  Pedro Alves  <palves@redhat.com>
6256
6257         * proc-service.c (get_ps_regcache): New.
6258         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
6259         (ps_lsetfpregs): Use it.
6260
6261 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
6262
6263         PR gdb/21695
6264         * dwarf2read.c (lnp_state_machine::check_line_address): Update declaration.
6265         (dwarf_decode_lines_1): Adjust.
6266
6267 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6268
6269         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
6270         override.
6271         <info_proc>: Likewise.
6272
6273 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
6274
6275         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
6276         to windows_fetch_one_register, and only handle the case of
6277         fetching one register.  Move the code that reloads the context
6278         and iterates over all registers if R is negative to...
6279         (windows_nat_target::fetch_registers): ... here.
6280         (do_windows_store_inferior_registers): Rename to
6281         windows_store_one_register, and only handle the case of storing
6282         one register.  Move the code that handles the case where r is
6283         negative to...
6284         (windows_nat_target::store_registers) ... here.
6285
6286 2018-06-26  Tom Tromey  <tom@tromey.com>
6287
6288         PR rust/22574:
6289         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
6290         * rust-lang.c (rust_print_struct_def): Add podata parameter.
6291         Update.
6292         (rust_internal_print_type): Add podata parameter.
6293         (rust_print_type): Update.
6294
6295 2018-06-26  Tom Tromey  <tom@tromey.com>
6296
6297         * typeprint.h (struct print_offset_data) <update, finish,
6298         maybe_print_hole>: New methods.
6299         <indentation>: New constant.
6300         * typeprint.c (print_offset_data::indentation): Define.
6301         (print_offset_data::maybe_print_hole, print_offset_data::update)
6302         (print_offset_data::finish): Move from c-typeprint.c and rename.
6303         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
6304         (print_spaces_filtered_with_print_options): Update.
6305         (c_print_type_union_field_offset, maybe_print_hole)
6306         (c_print_type_struct_field_offset): Move to typeprint.c and
6307         rename.
6308         (c_type_print_base_struct_union): Update.
6309
6310 2018-06-25  Pedro Alves  <palves@redhat.com>
6311
6312         * gdbthread.h (thread_info_ref, delete_thread)
6313         (delete_thread_silent, first_thread_of_inferior)
6314         (any_thread_of_inferior, switch_to_thread)
6315         (enable_thread_stack_temporaries)
6316         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6317         (get_last_thread_stack_temporary)
6318         (value_in_thread_stack_temporaries, can_access_registers_thread):
6319         Spell out "struct thread_info" instead of just "thread_info".
6320         * inferior.h (notice_new_inferior): Likewise.
6321
6322 2018-06-25  Pedro Alves  <palves@redhat.com>
6323
6324         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
6325         pass thread_info pointer to delete_thread.
6326         (windows_nat_target::detach): Pass inferior pointer to
6327         detach_inferior.
6328         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
6329         delete_thread.
6330         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
6331         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
6332         and pass a thread_info pointer to delete_thread.
6333         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
6334         pass thread_info pointer to delete_thread.
6335         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
6336         delete_thread_silent call.
6337         * procfs.c (procfs_target::detach): Pass inferior pointer to
6338         detach_inferior.
6339         (procfs_target::wait): Pass thread_info pointer to delete_thread.
6340         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
6341         delete_thread_silent call.
6342         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
6343         pass thread_info pointer to delete_thread.
6344         (windows_nat_target::detach): Pass inferior pointer to
6345         delete_inferior.
6346
6347 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
6348
6349         * regcache.c (readable_regcache::read_part): Fix asserts.
6350         (reg_buffer::raw_collect_part): New function.
6351         (regcache::write_part): Fix asserts.
6352         (reg_buffer::raw_supply_part): New function.
6353         (regcache::transfer_regset_register): New helper function.
6354         (regcache::transfer_regset): Call new functions.
6355         (regcache_supply_regset): Use gdb_byte*.
6356         (regcache::supply_regset): Likewise.
6357         (regcache_collect_regset): Likewise.
6358         (regcache::collect_regset): Likewise.
6359         * regcache.h (reg_buffer::raw_collect_part): New declaration.
6360         (reg_buffer::raw_supply_part): Likewise.
6361         (regcache::transfer_regset_register): Likewise.
6362         (regcache::transfer_regset): Use gdb_byte*.
6363
6364 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
6365
6366         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
6367
6368 2018-06-21  Pedro Alves  <palves@redhat.com>
6369
6370         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
6371         instead of a ptid_t.  All callers adjusted.
6372         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
6373         adjusted.
6374         (print_ada_task_info, display_current_task_id, task_command_1):
6375         Adjust.
6376         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
6377         inferior_thread.
6378         (breakpoint_kind): Adjust.
6379         (remove_breakpoints_pid): Rename to ...
6380         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
6381         pointer.  All callers adjusted.
6382         (bpstat_clear_actions): Use inferior_thread.
6383         (get_bpstat_thread): New.
6384         (bpstat_do_actions): Use it.
6385         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
6386         to take a thread_info pointer.  All callers adjusted.
6387         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
6388         (breakpoint_re_set_thread): Use inferior_thread.
6389         * breakpoint.h (struct inferior): Forward declare.
6390         (bpstat_stop_status): Update.
6391         (remove_breakpoints_pid): Delete.
6392         (remove_breakpoints_inf): New.
6393         * bsd-uthread.c (bsd_uthread_target::wait)
6394         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
6395         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
6396         (maint_btrace_packet_history_cmd)
6397         (maint_btrace_clear_packet_history_cmd): Adjust.
6398         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
6399         inferior_thread.
6400         * cli/cli-interp.c: Include "inferior.h".
6401         * common/refcounted-object.h (struct
6402         refcounted_object_ref_policy): New.
6403         * compile/compile-object-load.c: Include gdbthread.h.
6404         (store_regs): Use inferior_thread.
6405         * corelow.c (core_target::close): Use current_inferior.
6406         (core_target_open): Adjust to use first_thread_of_inferior and use
6407         the current inferior.
6408         * ctf.c (ctf_target::close): Adjust to use current_inferior.
6409         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
6410         <thread>: ... this new field.  All references adjusted.
6411         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
6412         Take a thread_info pointer instead of a ptid_t.
6413         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
6414         (dummy_frame_discard, register_dummy_frame_dtor): Take a
6415         thread_info pointer instead of a ptid_t.
6416         * elfread.c: Include "inferior.h".
6417         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
6418         Use inferior_thread.
6419         * eval.c (evaluate_subexp): Likewise.
6420         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
6421         inferior_thread.
6422         * gdb_proc_service.h (struct thread_info): Forward declare.
6423         (struct ps_prochandle) <ptid>: Delete, replaced by ...
6424         <thread>: ... this new field.  All references adjusted.
6425         * gdbarch.h, gdbarch.c: Regenerate.
6426         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
6427         'thread' parameter.  All implementations and callers adjusted.
6428         * gdbthread.h (thread_info) <set_running>: New method.
6429         (delete_thread, delete_thread_silent): Take a thread_info pointer
6430         instead of a ptid.
6431         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
6432         (first_thread_of_process): Delete, replaced by ...
6433         (first_thread_of_inferior): ... this new function.  All callers
6434         adjusted.
6435         (any_live_thread_of_process): Delete, replaced by ...
6436         (any_live_thread_of_inferior): ... this new function.  All callers
6437         adjusted.
6438         (switch_to_thread, switch_to_no_thread): Declare.
6439         (is_executing): Delete.
6440         (enable_thread_stack_temporaries): Update comment.
6441         <enable_thread_stack_temporaries>: Take a thread_info pointer
6442         instead of a ptid_t.  Incref the thread.
6443         <~enable_thread_stack_temporaries>: Decref the thread.
6444         <m_ptid>: Delete
6445         <m_thr>: New.
6446         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6447         (get_last_thread_stack_temporary)
6448         (value_in_thread_stack_temporaries, can_access_registers_thread):
6449         Take a thread_info pointer instead of a ptid_t.  All callers
6450         adjusted.
6451         * infcall.c (get_call_return_value): Use inferior_thread.
6452         (run_inferior_call): Work with thread pointers instead of ptid_t.
6453         (call_function_by_hand_dummy): Work with thread pointers instead
6454         of ptid_t.  Use thread_info_ref.
6455         * infcmd.c (proceed_thread_callback): Access thread's state
6456         directly.
6457         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
6458         access thread's state directly.
6459         (continue_command): Use inferior_thread.
6460         (info_program_command): Use find_thread_ptid and access thread
6461         state directly.
6462         (proceed_after_attach_callback): Use thread state directly.
6463         (notice_new_inferior): Take a thread_info pointer instead of a
6464         ptid_t.  All callers adjusted.
6465         (exit_inferior): Take an inferior pointer instead of a pid.  All
6466         callers adjusted.
6467         (exit_inferior_silent): New.
6468         (detach_inferior): Delete.
6469         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
6470         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
6471         (detach_inferior_command, kill_inferior_command): Use
6472         find_inferior_id instead of valid_gdb_inferior_id and
6473         gdb_inferior_id_to_pid.
6474         (inferior_command): Use inferior and thread pointers.
6475         * inferior.h (struct thread_info): Forward declare.
6476         (notice_new_inferior): Take a thread_info pointer instead of a
6477         ptid_t.  All callers adjusted.
6478         (detach_inferior): Delete declaration.
6479         (exit_inferior, exit_inferior_silent): Take an inferior pointer
6480         instead of a pid.  All callers adjusted.
6481         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
6482         (valid_gdb_inferior_id): Delete.
6483         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
6484         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
6485         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
6486         ...
6487         <inf>: ... this new field.
6488         <step_ptid>: Delete, replaced by ...
6489         <step_thread>: ... this new field.
6490         (get_displaced_stepping_state): Take an inferior pointer instead
6491         of a pid.  All callers adjusted.
6492         (displaced_step_in_progress_any_inferior): Adjust.
6493         (displaced_step_in_progress_thread): Take a thread pointer instead
6494         of a ptid_t.  All callers adjusted.
6495         (displaced_step_in_progress, add_displaced_stepping_state): Take
6496         an inferior pointer instead of a pid.  All callers adjusted.
6497         (get_displaced_step_closure_by_addr): Adjust.
6498         (remove_displaced_stepping_state): Take an inferior pointer
6499         instead of a pid.  All callers adjusted.
6500         (displaced_step_prepare_throw, displaced_step_prepare)
6501         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
6502         All callers adjusted.
6503         (start_step_over): Adjust.
6504         (infrun_thread_ptid_changed): Remove bit updating ptids in the
6505         displaced step queue.
6506         (do_target_resume): Adjust.
6507         (fetch_inferior_event): Use inferior_thread.
6508         (context_switch, get_inferior_stop_soon): Take an
6509         execution_control_state pointer instead of a ptid_t.  All callers
6510         adjusted.
6511         (switch_to_thread_cleanup): Delete.
6512         (stop_all_threads): Use scoped_restore_current_thread.
6513         * inline-frame.c: Include "gdbthread.h".
6514         (inline_state) <inline_state>: Take a thread pointer instead of a
6515         ptid_t.  All callers adjusted.
6516         <ptid>: Delete, replaced by ...
6517         <thread>: ... this new field.
6518         (find_inline_frame_state): Take a thread pointer instead of a
6519         ptid_t.  All callers adjusted.
6520         (skip_inline_frames, step_into_inline_frame)
6521         (inline_skipped_frames, inline_skipped_symbol): Take a thread
6522         pointer instead of a ptid_t.  All callers adjusted.
6523         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
6524         (inline_skipped_frames, inline_skipped_symbol): Likewise.
6525         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
6526         pointers directly.
6527         * linux-nat.c (get_detach_signal): Likewise.
6528         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
6529         (thread_db_notice_clone): Adjust.
6530         (thread_db_find_new_threads_silently)
6531         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
6532         a thread pointer instead of a ptid_t.  All callers adjusted.
6533         * mi/mi-cmd-var.c: Include "inferior.h".
6534         (mi_cmd_var_update_iter): Update to use thread pointers.
6535         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
6536         inferior directly.
6537         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
6538         out to ...
6539         (mi_output_running): ... this new function.
6540         (mi_on_resume_1): Adjust to use it.
6541         (mi_user_selected_context_changed): Adjust to use inferior_thread.
6542         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
6543         directly.
6544         (interrupt_thread_callback): : Adjust to use thread and inferior
6545         pointers.
6546         * proc-service.c: Include "gdbthread.h".
6547         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
6548         * progspace-and-thread.c: Include "inferior.h".
6549         * progspace.c: Include "inferior.h".
6550         * python/py-exitedevent.c (create_exited_event_object): Adjust to
6551         hold a reference to an inferior_object.
6552         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
6553         inferior_thread.
6554         * python/py-inferior.c (struct inferior_object): Give the type a
6555         tag name instead of a typedef.
6556         (python_on_normal_stop): No need to check if the current thread is
6557         listed.
6558         (inferior_to_inferior_object): Change return type to
6559         inferior_object.  All callers adjusted.
6560         (find_thread_object): Delete, bits factored out to ...
6561         (thread_to_thread_object): ... this new function.
6562         * python/py-infthread.c (create_thread_object): Use
6563         inferior_to_inferior_object.
6564         (thpy_is_stopped): Use thread pointer directly.
6565         (gdbpy_selected_thread): Use inferior_thread.
6566         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
6567         field, replaced with ...
6568         <thread>: ... this new field.  All users adjusted.
6569         (btpy_insn_or_gap_new): Drop const.
6570         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
6571         callers adjusted.
6572         * python/py-record.c: Include "gdbthread.h".
6573         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6574         a ptid_t.  All callers adjusted.
6575         (gdbpy_current_recording): Use inferior_thread.
6576         * python/py-record.h (recpy_record_object) <ptid>: Delete
6577         field, replaced with ...
6578         <thread>: ... this new field.  All users adjusted.
6579         (recpy_element_object) <ptid>: Delete
6580         field, replaced with ...
6581         <thread>: ... this new field.  All users adjusted.
6582         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6583         a ptid_t.  All callers adjusted.
6584         * python/py-threadevent.c: Include "gdbthread.h".
6585         (get_event_thread): Use thread_to_thread_object.
6586         * python/python-internal.h (struct inferior_object): Forward
6587         declare.
6588         (find_thread_object, find_inferior_object): Delete declarations.
6589         (thread_to_thread_object, inferior_to_inferior_object): New
6590         declarations.
6591         * record-btrace.c: Include "inferior.h".
6592         (require_btrace_thread): Use inferior_thread.
6593         (record_btrace_frame_sniffer)
6594         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
6595         (get_thread_current_frame): Use scoped_restore_current_thread and
6596         switch_to_thread.
6597         (get_thread_current_frame): Use thread pointer directly.
6598         (record_btrace_replay_at_breakpoint): Use thread's inferior
6599         pointer directly.
6600         * record-full.c: Include "inferior.h".
6601         * regcache.c: Include "gdbthread.h".
6602         (get_thread_arch_regcache): Use the inferior's address space
6603         directly.
6604         (get_thread_regcache, registers_changed_thread): New.
6605         * regcache.h (get_thread_regcache(thread_info *thread)): New
6606         overload.
6607         (registers_changed_thread): New.
6608         (remote_target) <remote_detach_1>: Swap order of parameters.
6609         (remote_add_thread): <remote_add_thread>: Return the new thread.
6610         (get_remote_thread_info(ptid_t)): New overload.
6611         (remote_target::remote_notice_new_inferior): Use thread pointers
6612         directly.
6613         (remote_target::process_initial_stop_replies): Use
6614         thread_info::set_running.
6615         (remote_target::remote_detach_1, remote_target::detach)
6616         (extended_remote_target::detach): Adjust.
6617         * stack.c (frame_show_address): Use inferior_thread.
6618         * target-debug.h (target_debug_print_thread_info_pp): New.
6619         * target-delegates.c: Regenerate.
6620         * target.c (default_thread_address_space): Delete.
6621         (memory_xfer_partial_1): Use current_inferior.
6622         (target_detach): Use current_inferior.
6623         (target_thread_address_space): Delete.
6624         (generic_mourn_inferior): Use current_inferior.
6625         * target.h (struct target_ops) <thread_address_space>: Delete.
6626         (target_thread_address_space): Delete.
6627         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
6628         pointers directly.
6629         (delete_thread_1, delete_thread, delete_thread_silent): Take a
6630         thread pointer instead of a ptid_t.  Adjust all callers.
6631         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
6632         (first_thread_of_process): Delete, replaced by ...
6633         (first_thread_of_inferior): ... this new function.  All callers
6634         adjusted.
6635         (any_thread_of_process): Rename to ...
6636         (any_thread_of_inferior): ... this, and take an inferior pointer.
6637         (any_live_thread_of_process): Rename to ...
6638         (any_live_thread_of_inferior): ... this, and take an inferior
6639         pointer.
6640         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6641         (value_in_thread_stack_temporaries)
6642         (get_last_thread_stack_temporary): Take a thread pointer instead
6643         of a ptid_t.  Adjust all callers.
6644         (thread_info::set_running): New.
6645         (validate_registers_access): Use inferior_thread.
6646         (can_access_registers_ptid): Rename to ...
6647         (can_access_registers_thread): ... this, and take a thread
6648         pointer.
6649         (print_thread_info_1): Adjust to compare thread pointers instead
6650         of ptids.
6651         (switch_to_no_thread, switch_to_thread): Make extern.
6652         (scoped_restore_current_thread::~scoped_restore_current_thread):
6653         Use m_thread pointer directly.
6654         (scoped_restore_current_thread::scoped_restore_current_thread):
6655         Use inferior_thread.
6656         (thread_command): Use thread pointer directly.
6657         (thread_num_make_value_helper): Use inferior_thread.
6658         * top.c (execute_command): Use inferior_thread.
6659         * tui/tui-interp.c: Include "inferior.h".
6660         * varobj.c (varobj_create): Use inferior_thread.
6661         (value_of_root_1): Use find_thread_global_id instead of
6662         global_thread_id_to_ptid.
6663
6664 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
6665
6666         * regcache.c (readable_regcache::read_part): Avoid memcpy when
6667         possible.
6668         (regcache::write_part): Likewise.
6669         (readable_regcache::cooked_read_part): Update comment.
6670         (readable_regcache::cooked_write_part): Likewise.
6671         * regcache.h: (readable_regcache::read_part): Likewise.
6672         (regcache::write_part): Likewise.
6673
6674 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
6675             Dirk Schubert  <dirk.schubert@arm.com>
6676
6677         * aarch64-linux-nat.c (post_attach): New.
6678         (aarch64_linux_nat_target::post_attach): Override post_attach to
6679         record the number of hardware debug registers.
6680
6681 2018-06-20  Tom Tromey  <tom@tromey.com>
6682
6683         * python/py-param.c (add_setshow_generic): Make parameters const.
6684         (parmpy_init): Update.
6685
6686 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
6687
6688         * regcache.h (regcache_cooked_read_ftype): Rename to...
6689         (register_read_ftype): ...this, change type to function_view.
6690         (class reg_buffer) <save>: Remove src parameter.
6691         (readonly_detached_regcache) <readonly_detached_regcache>: Make
6692         parameter non-const in first overload.  Remove src parameter in
6693         second overload.
6694         * regcache.c (do_cooked_read): Remove.
6695         (readonly_detached_regcache::readonly_detached_regcache): Make
6696         parameter non-const, adjust call to other constructor.
6697         (reg_buffer::save): Remove src parameter.
6698         * frame.c (do_frame_register_read): Remove.
6699         (frame_save_as_regcache): Use lambda function.
6700         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
6701         parameter to ppu2spu_data *.
6702         (ppu2spu_sniffer): Use lambda function.
6703
6704 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
6705
6706         * record-full.c (record_full_target::insert_breakpoint): Remove
6707         "struct" keyword, add const.
6708
6709 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
6710
6711         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
6712         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
6713         * configure.ac: Remove AC_PREREQ, add missing quoting.
6714         * gnulib/configure.ac: Modernize usage of
6715         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
6716         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
6717         (AUTOMAKE_VERSION): Bump to 1.15.1.
6718         * configure: Re-generate.
6719         * config.in: Re-generate.
6720         * aclocal.m4: Re-generate.
6721         * gnulib/aclocal.m4: Re-generate.
6722         * gnulib/config.in: Re-generate.
6723         * gnulib/configure: Re-generate.
6724         * gnulib/import/Makefile.in: Re-generate.
6725
6726 2018-06-19  Pedro Alves  <palves@redhat.com>
6727
6728         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
6729         (lookup_minimal_symbol_by_pc_section): ... here with
6730         gdb_assert_not_reached added.
6731
6732 2018-06-19  Pedro Alves  <palves@redhat.com>
6733
6734         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
6735         parameter with a block parameter.  Compare location's block symbol
6736         with the frame's block instead of addresses.
6737         (skip_inline_frames): Pass the current block instead of the
6738         frame's address.  Break out as soon as we determine the frame
6739         should not be skipped.
6740
6741 2018-06-18  Tom Tromey  <tom@tromey.com>
6742
6743         * solib-aix.c (solib_aix_get_section_offsets): Return
6744         unique_xmalloc_ptr.
6745         (solib_aix_solib_create_inferior_hook): Update.
6746
6747 2018-06-18  Tom Tromey  <tom@tromey.com>
6748
6749         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
6750
6751 2018-06-18  Tom Tromey  <tom@tromey.com>
6752
6753         * solib-frv.c (frv_relocate_main_executable): Use
6754         unique_xmalloc_ptr.
6755         * solib-dsbt.c (dsbt_relocate_main_executable): Use
6756         unique_xmalloc_ptr.
6757
6758 2018-06-18  Tom Tromey  <tom@tromey.com>
6759
6760         * objfiles.h (inhibit_section_map_updates): Update.
6761         (resume_section_map_updates, resume_section_map_updates_cleanup):
6762         Remove.
6763         * solib-svr4.c (svr4_handle_solib_event): Update.
6764         * objfiles.c (inhibit_section_map_updates): Return
6765         scoped_restore_tmpl<int>.
6766         (resume_section_map_updates, resume_section_map_updates_cleanup):
6767         Remove.
6768
6769 2018-06-18  Tom Tromey  <tom@tromey.com>
6770
6771         * valprint.h (read_string): Update.
6772         * valprint.c (read_string): Change type of "buffer".
6773         (val_print_string): Update.
6774         * python/py-value.c (valpy_string): Update.
6775         * language.h (struct language_defn) <la_get_string>: Change
6776         type of "buffer".
6777         (default_get_string, c_get_string): Update.
6778         * language.c (default_get_string): Change type of "buffer".
6779         * guile/scm-value.c (gdbscm_value_to_string): Update.
6780         * c-lang.c (c_get_string): Change type of "buffer".
6781
6782 2018-06-18  Tom Tromey  <tom@tromey.com>
6783
6784         * ser-mingw.c (struct pipe_state_destroyer): New.
6785         (pipe_state_up): New typedef.
6786         (cleanup_pipe_state): Remove.
6787         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
6788
6789 2018-06-18  Tom Tromey  <tom@tromey.com>
6790
6791         * rust-lang.h (rust_yyerror): Don't declare.
6792         * rust-lang.c (rust_language_defn): Update.
6793         * rust-exp.y (yyerror): Now static.
6794         * parse.c (parse_exp_in_context_1): Update.
6795         * p-lang.h (p_yyerror): Don't declare.
6796         * p-lang.c (p_language_defn): Update.
6797         * p-exp.y (yyerror): Now static.
6798         * opencl-lang.c (opencl_language_defn): Update.
6799         * objc-lang.c (objc_language_defn): Update.
6800         * m2-lang.h (m2_yyerror): Don't declare.
6801         * m2-lang.c (m2_language_defn): Update.
6802         * m2-exp.y (yyerror): Now static.
6803         * language.h (struct language_defn) <la_error>: Remove.
6804         * language.c (unk_lang_error): Remove.
6805         (unknown_language_defn, auto_language_defn): Remove.
6806         * go-lang.h (go_yyerror): Don't declare.
6807         * go-lang.c (go_language_defn): Update.
6808         * go-exp.y (yyerror): Now static.
6809         * f-lang.h (f_yyerror): Don't declare.
6810         * f-lang.c (f_language_defn): Update.
6811         * f-exp.y (yyerror): Now static.
6812         * d-lang.h (d_yyerror): Don't declare.
6813         * d-lang.c (d_language_defn): Update.
6814         * d-exp.y (yyerror): Now static.
6815         * c-lang.h (c_yyerror): Don't declare.
6816         * c-lang.c (c_language_defn, cplus_language_defn)
6817         (asm_language_defn, minimal_language_defn): Update.
6818         * c-exp.y (yyerror): Now static.
6819         * ada-lang.h (ada_yyerror): Don't declare.
6820         * ada-lang.c (ada_language_defn): Update.
6821         * ada-exp.y (yyerror): Now static.
6822
6823 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
6824
6825         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
6826         (store_sveregs_to_thread): Likewise.
6827         (aarch64_linux_fetch_inferior_registers): Check for SVE.
6828         (aarch64_linux_store_inferior_registers): Likewise.
6829         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
6830         function.
6831         (aarch64_sve_regs_copy_to_regcache): Likewise.
6832         (aarch64_sve_regs_copy_from_regcache): Likewise.
6833         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
6834         declaration.
6835         (aarch64_sve_regs_copy_to_regcache): Likewise.
6836         (aarch64_sve_regs_copy_from_regcache): Likewise.
6837         (sve_context): Structure from Linux headers.
6838         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
6839         (SVE_SIG_ZREG_SIZE): Likewise.
6840         (SVE_SIG_PREG_SIZE): Likewise.
6841         (SVE_SIG_FFR_SIZE): Likewise.
6842         (SVE_SIG_REGS_OFFSET): Likewise.
6843         (SVE_SIG_ZREGS_OFFSET): Likewise.
6844         (SVE_SIG_ZREG_OFFSET): Likewise.
6845         (SVE_SIG_ZREGS_SIZE): Likewise.
6846         (SVE_SIG_PREGS_OFFSET): Likewise.
6847         (SVE_SIG_PREG_OFFSET): Likewise.
6848         (SVE_SIG_PREGS_SIZE): Likewise.
6849         (SVE_SIG_FFR_OFFSET): Likewise.
6850         (SVE_SIG_REGS_SIZE): Likewise.
6851         (SVE_SIG_CONTEXT_SIZE): Likewise.
6852         (SVE_PT_REGS_MASK): Likewise.
6853         (SVE_PT_REGS_FPSIMD): Likewise.
6854         (SVE_PT_REGS_SVE): Likewise.
6855         (SVE_PT_VL_INHERIT): Likewise.
6856         (SVE_PT_VL_ONEXEC): Likewise.
6857         (SVE_PT_REGS_OFFSET): Likewise.
6858         (SVE_PT_FPSIMD_OFFSET): Likewise.
6859         (SVE_PT_FPSIMD_SIZE): Likewise.
6860         (SVE_PT_SVE_ZREG_SIZE): Likewise.
6861         (SVE_PT_SVE_PREG_SIZE): Likewise.
6862         (SVE_PT_SVE_FFR_SIZE): Likewise.
6863         (SVE_PT_SVE_FPSR_SIZE): Likewise.
6864         (SVE_PT_SVE_FPCR_SIZE): Likewise.
6865         (__SVE_SIG_TO_PT): Likewise.
6866         (SVE_PT_SVE_OFFSET): Likewise.
6867         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
6868         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
6869         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
6870         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
6871         (SVE_PT_SVE_PREG_OFFSET): Likewise.
6872         (SVE_PT_SVE_PREGS_SIZE): Likewise.
6873         (SVE_PT_SVE_FFR_OFFSET): Likewise.
6874         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
6875         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
6876         (SVE_PT_SVE_SIZE): Likewise.
6877         (SVE_PT_SIZE): Likewise.
6878         (HAS_SVE_STATE): New define.
6879
6880 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
6881
6882         * nat/aarch64-sve-linux-sigcontext.h: New file.
6883         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
6884         new files.
6885         (SVE_VQ_MIN): Likewise.
6886         (SVE_VQ_MAX): Likewise.
6887         (SVE_VL_MIN): Likewise.
6888         (SVE_VL_MAX): Likewise.
6889         (SVE_NUM_ZREGS): Likewise.
6890         (SVE_NUM_PREGS): Likewise.
6891         (sve_vl_valid): Likewise.
6892         (struct user_sve_header): Likewise.
6893
6894 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
6895             Richard Bunt <Richard.Bunt@arm.com>
6896
6897         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
6898         was requested by GDB.
6899
6900 2018-06-15  Tom de Vries  <tdevries@suse.de>
6901
6902         * MAINTAINERS (Write After Approval): Add Tom de Vries.
6903
6904 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
6905
6906         * gnulib/update-gnulib.sh: Print expected versions of
6907         autoconf/aclocal.
6908
6909 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
6910
6911         * arch-utils.c (default_type_align): Use type_length_units.
6912         * gdbtypes.c (type_align): Use type_length_units.
6913
6914 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6915
6916         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
6917         of 'define' command.
6918
6919 2018-06-14  Tom de Vries  <tdevries@suse.de>
6920
6921         PR cli/22573
6922         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
6923         get_no_prettyformat_print_options.
6924
6925 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
6926
6927         * sparc-nat.h: Include target.h.
6928         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
6929         <fetch_registers>: Remove this argument in function call.
6930         <store_registers>: Remove this argument in function call, remove
6931         extra semicolon.
6932         <low_forget_process>: Call sparc64_forget_process instead of
6933         sparc_forget_process.
6934
6935 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
6936
6937         * procfs.c (_initialize_procfs): Use add_inf_child_target.
6938         (procfs_target::make_corefile_notes): Adjust to new
6939         target_read_alloc return type.
6940
6941 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6942             Stephen Roberts  <stephen.roberts@arm.com>
6943
6944         PR gdb/22882
6945         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
6946         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
6947         Move should_notify_stop local into more inner scope.
6948
6949 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6950             Stephen Roberts  <stephen.roberts@arm.com>
6951
6952         PR gdb/22882
6953         * infrun.c (resume_1): Add call to mark_async_event_handler.
6954
6955 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6956
6957         * infrun.c (do_target_wait): Change old version of $pc printed.
6958
6959 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
6960
6961         * dwarf2read.c (read_index_from_section): Rename to...
6962         (read_gdb_index_from_section): ... this, update all callers.
6963         (dwarf2_read_index): Rename to...
6964         (dwarf2_read_gdb_index): ... this, update all callers.
6965
6966 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
6967
6968         * gdb/hppa-linux-nat.c
6969         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
6970         hppa_linux_nat_target::fetch_registers.
6971
6972 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6973
6974         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
6975         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
6976         (AARCH64_DWARF_SVE_FFR): Likewise.
6977         (AARCH64_DWARF_SVE_P0): Likewise.
6978         (AARCH64_DWARF_SVE_Z0): Likewise.
6979
6980 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6981
6982         * common/common-regcache.h (raw_compare): New function.
6983         * regcache.c (regcache::raw_compare): Likewise.
6984         * regcache.h (regcache::raw_compare): New declaration.
6985
6986 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6987
6988         * common/common-regcache.h (reg_buffer_common): New structure.
6989         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
6990         (reg_buffer::raw_supply): Likewise.
6991         (reg_buffer::raw_supply_integer): Likewise.
6992         (reg_buffer::raw_supply_zeroed): Likewise.
6993         (reg_buffer::raw_collect): Likewise.
6994         (reg_buffer::raw_collect_integer): Likewise.
6995         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
6996         (reg_buffer::raw_supply): Likewise.
6997         (reg_buffer::raw_supply_integer): Likewise.
6998         (reg_buffer::raw_supply_zeroed): Likewise.
6999         (reg_buffer::raw_collect): Likewise.
7000         (reg_buffer::raw_collect_integer): Likewise.
7001
7002 2018-06-10  Tom Tromey  <tom@tromey.com>
7003
7004         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
7005         (class remote_state) <stop_reply_queue>: Now std::vector.
7006         (remote_state::~remote_state)
7007         (remote_target::stop_reply_queue_length): Update.
7008         (struct queue_iter_param, remove_child_of_pending_fork)
7009         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
7010         (check_pending_event_prevents_wildcard_vcont_callback)
7011         (remove_stop_reply_for_inferior)
7012         (remove_stop_reply_of_remote_state)
7013         (remote_notif_remove_once_on_match)
7014         (stop_reply_match_ptid_and_ws)
7015         (remote_kill_child_of_pending_fork): Remove.
7016         (remote_target::remove_new_fork_children)
7017         (remote_target::check_pending_events_prevent_wildcard_vcont)
7018         (remote_target::discard_pending_stop_replies)
7019         (remote_target::discard_pending_stop_replies_in_queue)
7020         (remote_target::remote_notif_remove_queued_reply)
7021         (remote_target::queued_stop_reply)
7022         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
7023         (remote_target::wait, remote_target::kill_new_fork_children)
7024         (remote_target::async): Update.
7025
7026 2018-06-10  Tom Tromey  <tom@tromey.com>
7027
7028         * record-full.c (record_full_arch_list_cleanups): Remove.
7029         (record_full_message): Use try/catch.
7030         (record_full_wait_cleanups): Remove.
7031         (record_full_wait_1): Use try/catch.
7032         (record_full_restore): Likewise.
7033
7034 2018-06-10  Tom Tromey  <tom@tromey.com>
7035
7036         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
7037         declare VEC.  Add constructor.
7038         <in_target_beneath>: Now bool.
7039         (record_full_breakpoints): Now a std::vector, static.
7040         (record_full_sync_record_breakpoints)
7041         (record_full_init_record_breakpoints)
7042         (record_full_target::insert_breakpoint)
7043         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
7044
7045 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
7046
7047         * dwarf2read.c (process_cu_includes): Remove struct keyword.
7048         * serial.c (serial_interface_lookup): Remove struct keyword.
7049
7050 2018-06-10  Tom Tromey  <tom@tromey.com>
7051
7052         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
7053         method.
7054         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
7055         a method.
7056         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
7057         method.
7058         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
7059         "beneath" as a method.
7060         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
7061         Use "beneath" as a method.
7062
7063 2018-06-10  Tom Tromey  <tom@tromey.com>
7064
7065         * tracefile.c (struct trace_file_writer_deleter): New.
7066         <operator()>: Rename from trace_file_writer_xfree.
7067         (trace_file_writer_up): New typedef.
7068         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
7069
7070 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
7071
7072         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
7073         <m_registers, m_register_status>: Change type to
7074         std::unique_ptr.
7075         * regcache.c (reg_buffer::reg_buffer): Use new instead of
7076         XCNEWVEC.
7077
7078 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
7079
7080         * common/common-regcache.h (enum register_status): Add
7081         underlying type "signed char".
7082         * regcache.h (reg_buffer) <m_register_status>: Change type to
7083         register_status *.
7084         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
7085         register_status instead of signed char.
7086         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
7087         (reg_buffer::get_register_status): Remove cast.
7088         (readable_regcache::raw_read): Remove cast.
7089         (readable_regcache::cooked_read): Remove cast.
7090
7091 2018-06-09  Tom Tromey  <tom@tromey.com>
7092
7093         * source.c (reverse_search_command, forward_search_command): Use
7094         scoped_fd.
7095
7096 2018-06-09  Tom Tromey  <tom@tromey.com>
7097
7098         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
7099         (serial_ops_list): Now static, std::vector.
7100         (serial_interface_lookup, serial_add_interface): Update.
7101
7102 2018-06-09  Tom Tromey  <tom@tromey.com>
7103
7104         * dwarf2read.c (process_cu_includes): Update.
7105         (process_full_comp_unit): Update.
7106         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
7107         std::vector.
7108
7109 2018-06-08  Paul Koning  <paul_koning@dell.com>
7110
7111         PR gdb/23252
7112
7113         * python/python.c (do_start_initialization):
7114         Avoid call to internal Python API.
7115         (init__gdb_module): New function.
7116
7117 2018-06-08  Gary Benson <gbenson@redhat.com>
7118
7119         * linux-thread-db.c (valprint.h): New include.
7120         (struct check_thread_db_info): New structure.
7121         (check_thread_db_on_load, tdb_testinfo): New static globals.
7122         (check_thread_db, check_thread_db_callback): New functions.
7123         (try_thread_db_load_1): Run integrity checks if requested.
7124         (maintenance_check_libthread_db): New function.
7125         (_initialize_thread_db): Register "maint check libthread-db"
7126         and "maint set/show check-libthread-db".
7127         * NEWS: Mention the above new commands.
7128
7129 2018-06-08  Tom Tromey  <tom@tromey.com>
7130
7131         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
7132         now a method.
7133
7134 2018-06-08  Tom Tromey  <tom@tromey.com>
7135
7136         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
7137
7138 2018-06-08  Tom Tromey  <tom@tromey.com>
7139
7140         * common/btrace-common.h (struct btrace_data): Add constructor,
7141         destructor, move assignment operator.
7142         <empty, clear, fini>: New methods.
7143         <format>: Initialize.
7144         (btrace_data_init, btrace_data_fini, btrace_data_clear)
7145         (btrace_data_empty): Don't declare.
7146         * common/btrace-common.c (btrace_data_init): Remove.
7147         (btrace_data::fini): Rename from btrace_data_fini.
7148         (btrace_data::empty): Rename from btrace_data_empty.
7149         (btrace_data::clear): Rename from btrace_data_clear.  Return
7150         bool.
7151         * btrace.h (make_cleanup_btrace_data): Don't declare.
7152         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
7153         (parse_xml_btrace): Update.
7154         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
7155         (maint_btrace_clear_packet_history_cmd): Update.
7156
7157 2018-06-07  Pedro Alves  <palves@redhat.com>
7158
7159         * target.h (target_ops) <beneath>: Now a method.  All references
7160         updated.
7161         (class target_stack): New.
7162         * target.c (g_target_stack): New.
7163         (g_current_top_target): Delete.
7164         (current_top_target): Get the top target out of g_target_stack.
7165         (target_stack::push, target_stack::unpush): New.
7166         (push_target, unpush_target): Reimplement.
7167         (target_is_pushed): Reimplement in terms of g_target_stack.
7168         (target_ops::beneath, target_stack::find_beneath): New.
7169
7170 2018-06-07  Pedro Alves  <palves@redhat.com>
7171
7172         * target.h (find_target_beneath): Delete declaration.
7173         * target.c (find_target_beneath): Delete definition.
7174         * aix-thread.c: All callers of find_target_beneath adjusted to
7175         call target_ops::beneath instead.
7176         * bsd-uthread.c: Likewise.
7177         * linux-thread-db.c: Likewise.
7178         * ravenscar-thread.c: Likewise.
7179         * sol-thread.c: Likewise.
7180         * spu-multiarch.c: Likewise.
7181
7182 2018-06-07  Pedro Alves  <palves@redhat.com>
7183
7184         * target.h (target_ops) <beneath>: Now a method.  All references
7185         updated.
7186         (target_ops) <m_beneath>: New.
7187         * target.c (target_ops::beneath): New.
7188         * corelow.c: Adjust all references to target_ops::beneath.
7189         * linux-thread-db.c: Likewise.
7190         * make-target-delegates: Likewise.
7191         * record-btrace.c: Likewise.
7192         * record-full.c: Likewise.
7193         * remote.c: Likewise.
7194         * target.c: Likewise.
7195         * target-delegates.c: Regenerate.
7196
7197 2018-06-07  Pedro Alves  <palves@redhat.com>
7198
7199         * target.h (target_stack): Delete.
7200         (current_top_target): Declare function.
7201         * target.c (target_stack): Delete.
7202         (g_current_top_target): New.
7203         (current_top_target): New function.
7204         * auxv.c: Use current_top_target instead of target_stack
7205         throughout.
7206         * avr-tdep.c: Likewise.
7207         * breakpoint.c: Likewise.
7208         * corefile.c: Likewise.
7209         * elfread.c: Likewise.
7210         * eval.c: Likewise.
7211         * exceptions.c: Likewise.
7212         * frame.c: Likewise.
7213         * gdbarch-selftests.c: Likewise.
7214         * gnu-v3-abi.c: Likewise.
7215         * ia64-tdep.c: Likewise.
7216         * ia64-vms-tdep.c: Likewise.
7217         * infcall.c: Likewise.
7218         * infcmd.c: Likewise.
7219         * infrun.c: Likewise.
7220         * linespec.c: Likewise.
7221         * linux-tdep.c: Likewise.
7222         * minsyms.c: Likewise.
7223         * ppc-linux-nat.c: Likewise.
7224         * ppc-linux-tdep.c: Likewise.
7225         * procfs.c: Likewise.
7226         * regcache.c: Likewise.
7227         * remote.c: Likewise.
7228         * rs6000-tdep.c: Likewise.
7229         * s390-linux-nat.c: Likewise.
7230         * s390-tdep.c: Likewise.
7231         * solib-aix.c: Likewise.
7232         * solib-darwin.c: Likewise.
7233         * solib-dsbt.c: Likewise.
7234         * solib-spu.c: Likewise.
7235         * solib-svr4.c: Likewise.
7236         * solib-target.c: Likewise.
7237         * sparc-tdep.c: Likewise.
7238         * sparc64-tdep.c: Likewise.
7239         * spu-tdep.c: Likewise.
7240         * symfile.c: Likewise.
7241         * symtab.c: Likewise.
7242         * target-descriptions.c: Likewise.
7243         * target-memory.c: Likewise.
7244         * target.c: Likewise.
7245         * target.h: Likewise.
7246         * tracefile-tfile.c: Likewise.
7247         * tracepoint.c: Likewise.
7248         * valops.c: Likewise.
7249         * valprint.c: Likewise.
7250         * value.c: Likewise.
7251         * windows-tdep.c: Likewise.
7252         * mi/mi-main.c: Likewise.
7253
7254 2018-06-07  Tom Tromey  <tom@tromey.com>
7255
7256         * valprint.h (build_address_symbolic): Declare.
7257         * printcmd.c (print_address_symbolic): Update.
7258         (build_address_symbolic): Change "name" and "filename" to
7259         std::string.
7260         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
7261         Update.
7262         * defs.h (build_address_symbolic): Remove declaration.
7263
7264 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
7265
7266         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
7267         (aarch64_vnv_type): Add function.
7268         (aarch64_pseudo_register_name): Add V regs for SVE.
7269         (aarch64_pseudo_register_type): Likewise.
7270         (aarch64_pseudo_register_reggroup_p): Likewise.
7271         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
7272         (aarch64_pseudo_read_value): Add V regs for SVE.
7273         (aarch64_pseudo_write_2): Use V0 offset for SVE
7274         (aarch64_pseudo_write): Add V regs for SVE.
7275         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
7276
7277 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
7278
7279         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
7280         (sve_vl_from_vq): Likewise.
7281
7282 2018-06-05  Tom Tromey  <tom@tromey.com>
7283
7284         * cli/cli-cmds.c (show_version): Update.
7285         * top.c (print_gdb_version): Add "interactive" parameter.
7286         Update.
7287         * main.c (captured_main_1): Update.
7288         * top.h (print_gdb_version): Add "interactive" parameter and a
7289         comment.
7290
7291 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
7292
7293         * common/enum-flags.h: Add trailing semicolon to example in
7294         comment.
7295
7296 2018-06-05  Tom Tromey  <tom@tromey.com>
7297
7298         PR cli/12326:
7299         * NEWS: Add entry about pager.
7300         * utils.c (pagination_disabled_for_command): New global.
7301         (prompt_for_continue): Allow "c" response to prompt.
7302         (reinitialize_more_filter): Clear
7303         pagination_disabled_for_command.
7304         (fputs_maybe_filtered): Check pagination_disabled_for_command.
7305
7306 2018-06-04  Tom Tromey  <tom@tromey.com>
7307
7308         * ada-lang.h (ada_lookup_symbol_list): Update.
7309         * ada-lang.c (resolve_subexp): Update.
7310         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
7311         parameter.
7312         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
7313         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
7314         results parameter to std::vector.
7315         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
7316         Update.
7317         * ada-exp.y (block_lookup): Update.
7318         (select_possible_type_sym): Change type of syms.  Remove nsyms
7319         parameter.
7320         (write_var_or_type, write_name_assoc): Update.
7321
7322 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
7323
7324         * windows-nat.c (windows_nat_target::xfer_partial): Return
7325         TARGET_XFER_E_IO if we need to delegate to the target beneath
7326         but BENEATH is NULL.
7327
7328 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
7329
7330         * Makefile.in (config.status): Add configure.nat as a
7331         dependency.
7332
7333 2018-06-04  Tom Tromey  <tom@tromey.com>
7334
7335         * cp-name-parser.y (cpname_state): Add method declarations.
7336         (HANDLE_QUAL): Update.
7337         (cpname_state::d_grab, cpname_state::fill_comp)
7338         (cpname_state::make_operator, cpname_state::make_dtor)
7339         (cpname_state::make_builtin_type, cpname_state::make_name)
7340         (cpname_state::d_qualify, cpname_state::d_int_type)
7341         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
7342         (%union): Move earlier.
7343
7344 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7345
7346         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
7347
7348 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7349
7350         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
7351         (aarch64_pseudo_write_1): Likewise.
7352         (aarch64_pseudo_read_value): Use helper.
7353         (aarch64_pseudo_write): Likewise.
7354
7355 2018-06-04  Pedro Alves  <palves@redhat.com>
7356
7357         * darwin-nat.c (darwin_ops): Delete.
7358         (darwin_attach_pid): Use get_native_target.
7359
7360 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7361
7362         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
7363         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
7364
7365 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7366
7367         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
7368         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
7369         (aarch64_gdbarch_init): Check for SVE.
7370         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
7371
7372 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7373
7374         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
7375         * aarch64-tdep.h (aarch64_read_description): Likewise.
7376         * arch/aarch64.c (aarch64_create_target_description): Likewise.
7377         * arch/aarch64.h (aarch64_create_target_description): Likewise.
7378         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
7379         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
7380         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
7381
7382 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
7383
7384         * value.c (value_fetch_lazy_bitfield): New.
7385         (value_fetch_lazy_memory): New.
7386         (value_fetch_lazy_register): New.
7387         (value_fetch_lazy): Factor out to smaller functions.
7388
7389 2018-06-01  Tom Tromey  <tom@tromey.com>
7390
7391         * cp-name-parser.y (backslashable, represented): Now const.
7392
7393 2018-06-01  Tom Tromey  <tom@tromey.com>
7394
7395         * cp-name-parser.y: Include parser-defs.h.
7396         (parser_fprintf): Remove declaration.
7397
7398 2018-06-01  Tom Tromey  <tom@tromey.com>
7399
7400         * cp-name-parser.y: Use %pure-parser, %lex-param, and
7401         %parse-param.
7402         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
7403         (global_result): Remove globals.
7404         (struct cpname_state): New.
7405         (yyparse): Don't declare.
7406         (yylex, yyerror): Move declarations after %union.
7407         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
7408         (make_name): Add state parameter.
7409         Update all callers.
7410         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
7411         parameter.
7412         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
7413         Update.
7414         (yylex): Add lvalp, state parameters.
7415         (yyerror): Add state parameter.
7416         (cp_demangled_name_to_comp): Update.
7417
7418 2018-06-01  Tom Tromey  <tom@tromey.com>
7419
7420         * cp-name-parser.y (parser_fprintf): Declare.
7421         (GDB_YY_REMAP_PREFIX): Define.
7422         Include yy-remap.h.  Don't redefine yy* identifiers.
7423
7424 2018-06-01  Tom Tromey  <tom@tromey.com>
7425
7426         * python/py-type.c (typy_legacy_template_argument): Update.
7427         * cp-support.h (cp_demangled_name_to_comp): Update.
7428         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
7429         parameter to be a "std::string *".
7430         (main): Update.
7431
7432 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
7433
7434         * ada-lex.l: Include "diagnostics.h" instead of
7435         "common/diagnostics.h".
7436         * unittests/environ-selftests.c: Likewise.
7437         * common/diagnostics.h: Moved to ../include.
7438
7439 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
7440
7441         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
7442         to language_mode_manual while calling breakpoint_re_set_one.
7443
7444 2018-06-01  Tom Tromey  <tom@tromey.com>
7445
7446         * valops.c (value_cast_structs, destructor_name_p): Update.
7447         * symtab.c (gdb_mangle_name): Update.
7448         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
7449         Update.
7450         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
7451         (pascal_object_print_value_fields, pascal_object_print_value):
7452         Update.
7453         * p-typeprint.c (pascal_type_print_derivation_info): Update.
7454         * linespec.c (find_methods): Update.
7455         * gdbtypes.h (type_name_no_tag): Remove.
7456         (type_name_or_error): Rename from type_name_no_tag_or_error.
7457         * gdbtypes.c (type_name_no_tag): Remove.
7458         (type_name_or_error): Rename from type_name_no_tag_or_error.
7459         (lookup_struct_elt_type, check_typedef): Update.
7460         * expprint.c (print_subexp_standard): Update.
7461         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
7462         * d-namespace.c (d_lookup_nested_symbol): Update.
7463         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
7464         (cp_print_class_member): Update.
7465         * cp-namespace.c (cp_lookup_nested_symbol): Update.
7466         * completer.c (add_struct_fields): Update.
7467         * c-typeprint.c (cp_type_print_derivation_info)
7468         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
7469         Update.
7470         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
7471         (ada_prefer_type, ada_is_exception_sym): Update.
7472
7473 2018-06-01  Tom Tromey  <tom@tromey.com>
7474
7475         * valops.c (enum_constant_from_type, value_namespace_elt)
7476         (value_maybe_namespace_elt): Update.
7477         * valarith.c (find_size_for_pointer_math): Update.
7478         * target-descriptions.c (make_gdb_type): Update.
7479         * symmisc.c (print_symbol): Update.
7480         * stabsread.c (define_symbol, read_type)
7481         (complain_about_struct_wipeout, add_undefined_type)
7482         (cleanup_undefined_types_1): Update.
7483         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
7484         (rust_range_type_p, val_print_struct, rust_print_struct_def)
7485         (rust_internal_print_type, rust_composite_type)
7486         (rust_evaluate_funcall, rust_evaluate_subexp)
7487         (rust_inclusive_range_type_p): Update.
7488         * python/py-type.c (typy_get_tag): Update.
7489         * p-typeprint.c (pascal_type_print_base): Update.
7490         * mdebugread.c (parse_symbol, parse_type): Update.
7491         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
7492         Update.
7493         * guile/scm-type.c (gdbscm_type_tag): Update.
7494         * go-lang.c (sixg_string_p): Update.
7495         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
7496         Update.
7497         * gdbtypes.h (struct main_type) <tag_name>: Remove.
7498         (TYPE_TAG_NAME): Remove.
7499         * gdbtypes.c (type_name_no_tag): Simplify.
7500         (check_typedef, check_types_equal, recursive_dump_type)
7501         (copy_type_recursive, arch_composite_type): Update.
7502         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
7503         in summary mode when needed.
7504         * eval.c (evaluate_funcall): Update.
7505         * dwarf2read.c (fixup_go_packaging, read_structure_type)
7506         (process_structure_scope, read_enumeration_type)
7507         (read_namespace_type, read_module_type, determine_prefix): Update.
7508         * cp-support.c (inspect_type): Update.
7509         * coffread.c (process_coff_symbol, decode_base_type): Update.
7510         * c-varobj.c (c_is_path_expr_parent): Update.
7511         * c-typeprint.c (c_type_print_base_struct_union): Update.
7512         (c_type_print_base_1): Update.  Print struct/class/union/enum in
7513         summary when using C language.
7514         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
7515         (gen_maybe_namespace_elt): Update.
7516         * ada-lang.c (ada_type_name): Simplify.
7517         (empty_record, ada_template_to_fixed_record_type_1)
7518         (template_to_static_fixed_type)
7519         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
7520
7521 2018-06-01  Tom Tromey  <tom@tromey.com>
7522
7523         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
7524         c_print_type.
7525         * c-typeprint.c (c_print_type_1): Add "language" parameter.
7526         (c_print_type): Update.
7527         (c_print_type): New overload.
7528         (c_type_print_varspec_prefix, c_type_print_args)
7529         (c_type_print_varspec_suffix, c_print_type_no_offsets)
7530         (c_type_print_base_struct_union, c_type_print_base_1)
7531         (cp_type_print_method_args): Add "language" parameter.
7532         (c_type_print_base): Update.
7533         * c-lang.h (c_print_type): Add new overload.
7534
7535 2018-06-01  Tom Tromey  <tom@tromey.com>
7536
7537         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
7538         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
7539
7540 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
7541
7542         * aarch64-tdep.c (aarch64_sve_register_names): New const
7543         var.
7544         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
7545         (AARCH64_SVE_Z_REGS_NUM): New define.
7546         (AARCH64_SVE_P_REGS_NUM): Likewise.
7547         (AARCH64_SVE_NUM_REGS): Likewise.
7548
7549 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
7550
7551         * nat/linux-ptrace.h [__alpha__]
7552         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
7553         definitions.
7554
7555 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
7556
7557         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
7558         the endianness selected.
7559         * NEWS: Document `set endian auto' mode operation update.
7560
7561 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7562
7563         * Makefile.in: Add new header.
7564         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
7565         (sve_vl_from_vg): Likewise.
7566         (sve_vq_from_vl): Likewise.
7567         (sve_vl_from_vq): Likewise.
7568         (sve_vq_from_vg): Likewise.
7569         (sve_vg_from_vq): Likewise.
7570         * configure.nat: Add new c file.
7571         * nat/aarch64-sve-linux-ptrace.c: New file.
7572         * nat/aarch64-sve-linux-ptrace.h: New file.
7573
7574 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7575
7576         * aarch64-linux-nat.c (aarch64_linux_read_description):
7577         Add parmeter zero.
7578         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
7579         Likewise.
7580         * aarch64-tdep.c (tdesc_aarch64_list): Add.
7581         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
7582         (aarch64_gdbarch_init): Add parmeter zero.
7583         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
7584         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
7585         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
7586         parmeter.
7587         * doc/gdb.texinfo: Describe SVE feature
7588         * features/aarch64-sve.c: New file.
7589
7590 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
7591
7592         PR gdb/23210
7593         * gdbarch.sh (significant_addr_bit): Default to zero when
7594         not set by target architecture.
7595         * gdbarch.c: Re-generated.
7596         * utils.c (address_significant): Update.
7597
7598 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
7599
7600         * stack.c (func_command): Remove trailing newline in call to error.
7601
7602 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7603
7604         * regcache.h (regcache_raw_collect): Remove, update callers to
7605         use regcache::raw_collect.
7606         * regcache.c (regcache_raw_collect): Remove.
7607
7608 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7609
7610         * regcache.h (regcache_raw_supply): Remove, update callers to
7611         use detached_regcache::raw_supply.
7612         * regcache.c (regcache_raw_supply): Remove.
7613
7614 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7615
7616         * regcache.h (regcache_cooked_write_part): Remove, update
7617         callers to use regcache::cooked_write_part.
7618         * regcache.c (regcache_cooked_write_part): Remove.
7619
7620 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7621
7622         * regcache.h (regcache_cooked_read_part): Remove, update callers
7623         to use readable_regcache::cooked_read_part.
7624         * regcache.c (regcache_cooked_read_part): Remove.
7625
7626 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7627
7628         * regcache.h (regcache_cooked_read_value): Remove, update
7629         callers to use readable_regcache::cooked_read_value.
7630         * regcache.c (regcache_cooked_read_value): Remove.
7631
7632 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7633
7634         * regcache.h (regcache_cooked_write): Remove, update callers to
7635         use regcache::cooked_write.
7636         * regcache.c (regcache_cooked_write): Remove.
7637
7638 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7639
7640         * regcache.h (regcache_invalidate): Remove, update callers to
7641         use detached_regcache::invalidate instead.
7642         * regcache.c (regcache_invalidate): Remove.
7643
7644 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7645
7646         * regcache.h (regcache_raw_write_part): Remove, update callers
7647         to use regcache::raw_write_part instead.
7648         * regcache.c (regcache_raw_write_part): Remove.
7649
7650 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7651
7652         * regcache.h (regcache_raw_read_part): Remove, update callers to
7653         use readable_regcache::raw_read_part instead.
7654         * regcache.c (regcache_raw_read_part): Remove.
7655
7656 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7657
7658         * regcache.h (regcache_cooked_read): Remove, update callers to
7659         use readable_regcache::cooked_read instead.
7660         * regcache.c (regcache_cooked_read): Remove.
7661
7662 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7663
7664         * regcache.h (regcache_raw_write): Remove, update callers to use
7665         regcache::raw_write instead.
7666         * regcache.c (regcache_raw_write): Remove.
7667
7668 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7669
7670         * regcache.h (regcache_raw_read): Remove, update callers to use
7671         readable_regcache::raw_read instead.
7672         * regcache.c (regcache_raw_read): Remove.
7673
7674 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7675
7676         * regcache.h (regcache_raw_update): Remove, update callers to
7677         use readable_regcache::raw_update instead.
7678         * regcache.c (regcache_raw_update): Remove.
7679
7680 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7681
7682         * regcache.h (regcache_register_status): Remove, update callers
7683         to use reg_buffer::get_register_status directly instead.
7684         * regcache.c (regcache_register_status): Remove.
7685
7686 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7687
7688         * regcache.h (regcache_get_ptid): Remove, update all callers to
7689         call regcache::ptid instead.
7690         * regcache.c (regcache_get_ptid): Remove.
7691
7692 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7693
7694         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
7695
7696 2018-05-30  Pedro Alves  <palves@redhat.com>
7697
7698         * common/common-exceptions.h (exception_rethrow): Use
7699         ATTRIBUTE_NORETURN.
7700
7701 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
7702
7703         * breakpoint.c (print_solib_event, check_status_catch_solib):
7704         Remove struct keyword in range-based for loops.
7705         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
7706         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
7707         Likewise.
7708         * linespec.c (find_superclass_methods, search_minsyms_for_name):
7709         Likewise.
7710         * symfile.c (addr_info_make_relative): Likewise.
7711         * thread.c (value_in_thread_stack_temporaries): Likewise.
7712
7713 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
7714
7715         PR gdb/16841
7716         * valops.c (value_struct_elt_for_reference): Call check_typedef on
7717         aggregate type to get its real type before accessing it.
7718
7719 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
7720
7721         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
7722         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
7723         * coff-pe-read.c (add_pe_forwarded_sym): Replace
7724         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
7725         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
7726         * jit.c (jit_breakpoint_re_set_internal): Likewise.
7727         * printcmd.c (info_address_command): Likewise.
7728
7729 2018-05-29  Tom Tromey  <tom@tromey.com>
7730
7731         * windows-nat.c (handle_exception): Update fall-through comment.
7732
7733 2018-05-29  Tom Tromey  <tom@tromey.com>
7734
7735         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
7736         (struct program_space) <added_solibs>: Now a std::vector.
7737         * breakpoint.c (print_solib_event): Update.
7738         (check_status_catch_solib): Update.
7739         * progspace.c (clear_program_space_solib_cache): Update.
7740         * solib.c (update_solib_list): Update.
7741
7742 2018-05-29  Tom Tromey  <tom@tromey.com>
7743
7744         * python/py-type.c (typy_richcompare): Update.
7745         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
7746         * gdbtypes.h (types_deeply_equal): Return bool.
7747         (types_equal): Likewise.
7748         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
7749         declare VEC.
7750         (check_types_equal): Change worklist to std::vector.  Return
7751         bool.
7752         (struct type_equality_entry): Add constructor.
7753         (compare_maybe_null_strings): Return bool.
7754         (check_types_worklist): Return bool.  Change worklist to
7755         std::vector.
7756         (types_deeply_equal): Use std::vector.
7757         (types_equal): Return bool.
7758         (compare_maybe_null_strings): Simplify.
7759
7760 2018-05-29  Tom Tromey  <tom@tromey.com>
7761
7762         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
7763
7764 2018-05-29  Tom Tromey  <tom@tromey.com>
7765
7766         * objc-lang.h: Don't include cp-support.h.
7767         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
7768         declare VEC.
7769
7770 2018-05-27  Tom Tromey  <tom@tromey.com>
7771
7772         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
7773
7774 2018-05-25  Tom Tromey  <tom@tromey.com>
7775
7776         * value.c (value::location): Initialize.
7777
7778 2018-05-25  Tom Tromey  <tom@tromey.com>
7779
7780         * dbxread.c (init_bincl_list): Remove.
7781         (bincl_list): Now a std::vector.
7782         (bincls_allocated, next_bincl): Remove.
7783         (free_bincl_list, do_free_bincl_list_cleanup)
7784         (make_cleanup_free_bincl_list): Remove.
7785         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
7786         unique_xmalloc_ptr.
7787         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
7788         (struct header_file_location): Add constructor.
7789         (add_bincl_to_list): Remove.
7790
7791 2018-05-25  Tom Tromey  <tom@tromey.com>
7792
7793         * tui/tui.c (tui_enable): Update.
7794         * mi/mi-interp.c (mi_interp::init): Update.
7795         * interps.h (class interp) <name>: New method.
7796         <m_name>: Rename from name.
7797         (~scoped_restore_interp): Update.
7798         * interps.c (interp::interp): Update.
7799         (interp_add, interp_set, interp_lookup_existing)
7800         (current_interp_named_p): Update.
7801
7802 2018-05-25  Tom Tromey  <tom@tromey.com>
7803
7804         * interps.c (interp_name): Remove.
7805         * mi/mi-interp.c (mi_interp::init): Update.
7806         * interps.h (interp_name): Remove.
7807         (~scoped_restore_interp): Update.
7808         * tui/tui.c (tui_enable): Update.
7809
7810 2018-05-25  Tom Tromey  <tom@tromey.com>
7811
7812         * utils.c (fputs_maybe_filtered): Update.
7813         * linespec.c (decode_line_full): Update.
7814         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
7815         (mi_print_breakpoint_for_event, mi_solib_loaded)
7816         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
7817         (mi_user_selected_context_changed): Update.
7818         * mi/mi-main.c (mi_execute_command): Update.
7819         * cli/cli-script.c (execute_control_command): Update.
7820         * python/python.c (execute_gdb_command): Update.
7821         * solib.c (info_sharedlibrary_command): Update.
7822         * interps.c (interp_ui_out): Remove.
7823         * interps.h (interp_ui_out): Remove.
7824
7825 2018-05-25  Tom Tromey  <tom@tromey.com>
7826
7827         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
7828         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
7829         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
7830
7831 2018-05-25  Tom Tromey  <tom@tromey.com>
7832
7833         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
7834         * interps.c (interp_exec): Use scoped_restore.
7835
7836 2018-05-25  Tom Tromey  <tom@tromey.com>
7837
7838         * remote.c (remote_target::remote_file_get): Use
7839         gdb::byte_vector.
7840         (remote_target::remote_file_put): Likewise.
7841
7842 2018-05-25  Tom Tromey  <tom@tromey.com>
7843
7844         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
7845         a std::string.
7846         (get_pe_section_index, add_pe_exported_sym): Update.
7847         (read_pe_exported_syms): Use gdb::def_vector.
7848
7849 2018-05-25  Tom Tromey  <tom@tromey.com>
7850
7851         * frame.c (remove_prev_frame): Remove.
7852         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
7853
7854 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
7855
7856         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
7857         Remove prototypes.
7858         * mips-linux-nat.c (supply_fpregset): Always call
7859         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
7860         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
7861         `mips_fill_fpregset'.
7862         * mips-linux-tdep.c (mips_supply_fpregset)
7863         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
7864         (mips_fill_fpregset_wrapper): Remove functions.
7865         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
7866         (mips_linux_fpregset): Remove variable.
7867         (mips_linux_iterate_over_regset_sections): Use
7868         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
7869         (mips_linux_o32_sigframe_init): Remove comment.
7870
7871 2018-05-25  Pedro Alves  <palves@redhat.com>
7872
7873         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
7874         (struct readahead_cache, struct packet_reg, struct
7875         remote_arch_state, class remote_state): Move higher up in the
7876         file.
7877         (remote_target::m_remote_state): Now an object instead of a pointer.
7878         (remote_target::get_remote_state): Adjust.
7879
7880 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
7881
7882         * stack.c (select_and_print_frame): Delete.
7883         (struct function_bounds): Move struct within function.
7884         (func_command): Most content moved into new function
7885         find_frame_for_function, use new function, print result, add
7886         function comment.
7887         (find_frame_for_function): New function, now returns a result.
7888
7889 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7890
7891         * stack.c (iterate_over_block_arg_vars): Fix comment.
7892         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
7893
7894 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
7895
7896         PR gdb/23203
7897         * frame.c
7898         (scoped_restore_selected_frame::scoped_restore_selected_frame):
7899         Define.
7900         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
7901         Define.
7902         * frame.h (class scoped_restore_selected_frame): New class.
7903         * stack.c (print_frame_local_vars): Remove catching and rethrowing
7904         of any exception, use scoped_restore_selected_frame to restore the
7905         frame instead.
7906
7907 2018-05-24  Pedro Alves  <palves@redhat.com>
7908
7909         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
7910         override.
7911
7912 2018-05-23  Tom Tromey  <tom@tromey.com>
7913
7914         * complaints.c (struct complaints): Remove.
7915         (symfile_complaint_book): Remove.
7916         (series): New global.
7917         (complaint_internal): Update.
7918         (clear_complaints): Update.
7919
7920 2018-05-23  Tom Tromey  <tom@tromey.com>
7921
7922         * complaints.c (counters): New global.
7923         (struct complain): Remove.
7924         (struct complaints) <root>: Remove.
7925         (complaint_sentinel): Remove.
7926         (symfile_complaint_book): Update.
7927         (find_complaint) Remove.
7928         (complaint_internal, clear_complaints): Update.
7929
7930 2018-05-23  Tom Tromey  <tom@tromey.com>
7931
7932         * complaints.c (struct complain) <file, line>: Remove.
7933         (find_complaint): Remove file, line parameters.
7934         (complaint_internal): Update.
7935
7936 2018-05-23  Tom Tromey  <tom@tromey.com>
7937
7938         * complaints.c (vcomplaint): Remove.
7939         (complaint_internal) Merge in contents of vcomplaint.
7940
7941 2018-05-23  Tom Tromey  <tom@tromey.com>
7942
7943         * complaints.c (struct complaints) <explanation>: Remove.
7944         (symfile_explanations): Remove.
7945         (symfile_complaint_book): Update.
7946         (vcomplaint): Update.
7947         (struct explanation): Remove.
7948
7949 2018-05-23  Tom Tromey  <tom@tromey.com>
7950
7951         * complaints.c (symfile_complaints): Remove.
7952         (complaint_internal): Remove "complaints" parameter.
7953         (clear_complaints, vcomplaint): Remove "c" parameter.
7954         (get_complaints): Remove.
7955         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
7956         (dwarf2_debug_line_missing_file_complaint)
7957         (dwarf2_debug_line_missing_end_sequence_complaint)
7958         (dwarf2_complex_location_expr_complaint)
7959         (dwarf2_const_value_length_mismatch_complaint)
7960         (dwarf2_section_buffer_overflow_complaint)
7961         (dwarf2_macro_malformed_definition_complaint)
7962         (dwarf2_invalid_attrib_class_complaint)
7963         (create_addrmap_from_index, dw2_symtab_iter_next)
7964         (dw2_expand_marked_cus)
7965         (dw2_debug_names_iterator::find_vec_in_debug_names)
7966         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
7967         (create_debug_type_hash_table, init_cutu_and_read_dies)
7968         (partial_die_parent_scope, add_partial_enumeration)
7969         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
7970         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
7971         (read_import_statement, read_file_scope, create_dwo_cu_reader)
7972         (create_cus_hash_table, create_dwp_hash_table)
7973         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
7974         (dwarf2_rnglists_process, dwarf2_ranges_process)
7975         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
7976         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
7977         (handle_struct_member_die, process_structure_scope)
7978         (read_array_type, read_common_block, read_module_type)
7979         (read_tag_pointer_type, read_typedef, read_base_type)
7980         (read_subrange_type, load_partial_dies, partial_die_info::read)
7981         (partial_die_info::read, partial_die_info::read)
7982         (partial_die_info::read, read_checked_initial_length_and_offset)
7983         (dwarf2_string_attr, read_formatted_entries)
7984         (dwarf_decode_line_header)
7985         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
7986         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
7987         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
7988         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
7989         (get_signatured_type, get_DW_AT_signature_type)
7990         (decode_locdesc, file_file_name, consume_improper_spaces)
7991         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
7992         (dwarf_decode_macro_bytes, dwarf_decode_macros)
7993         (dwarf2_symbol_mark_computed, set_die_type)
7994         (read_attribute_value): Update.
7995         * stap-probe.c (handle_stap_probe, get_stap_base_address):
7996         Update.
7997         * dbxread.c (unknown_symtype_complaint)
7998         (lbrac_mismatch_complaint, repeated_header_complaint)
7999         (set_namestring, function_outside_compilation_unit_complaint)
8000         (read_dbx_symtab, process_one_symbol): Update.
8001         * gdbtypes.c (stub_noname_complaint): Update.
8002         * windows-nat.c (handle_unload_dll): Update.
8003         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
8004         (decode_base_type): Update.
8005         * xcoffread.c (bf_notfound_complaint, ef_complaint)
8006         (eb_complaint, record_include_begin, record_include_end)
8007         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
8008         (process_xcoff_symbol, read_symbol)
8009         (function_outside_compilation_unit_complaint)
8010         (scan_xcoff_symtab): Update.
8011         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
8012         * buildsym.c (finish_block_internal, make_blockvector)
8013         (end_symtab_get_static_block, augment_type_symtab): Update.
8014         * dtrace-probe.c (dtrace_process_dof)
8015         (dtrace_static_probe_ops::get_probes): Update.
8016         * complaints.h (struct complaint): Don't declare.
8017         (symfile_complaints): Remove.
8018         (complaint_internal): Remove "complaints" parameter.
8019         (complaint): Likewise.
8020         (clear_complaints): Likewise.
8021         * symfile.c (syms_from_objfile_1, finish_new_objfile)
8022         (reread_symbols): Update.
8023         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
8024         (dwarf2_frame_cache, decode_frame_entry): Update.
8025         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
8026         * objc-lang.c (lookup_objc_class, lookup_child_selector)
8027         (info_selectors_command): Update.
8028         * macrotab.c (macro_include, check_for_redefinition)
8029         (macro_undef): Update.
8030         * objfiles.c (filter_overlapping_sections): Update.
8031         * stabsread.c (invalid_cpp_abbrev_complaint)
8032         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
8033         (define_symbol, error_type, read_type, rs6000_builtin_type)
8034         (stabs_method_name_from_physname, read_member_functions)
8035         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
8036         (attach_fields_to_type, complain_about_struct_wipeout)
8037         (read_range_type, read_args, common_block_start)
8038         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
8039         Update.
8040         * mdebugread.c (index_complaint, unknown_ext_complaint)
8041         (basic_type_complaint, bad_tag_guess_complaint)
8042         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
8043         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
8044         (parse_procedure, parse_lines)
8045         (function_outside_compilation_unit_complaint)
8046         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
8047         (bad_tag_guess_complaint, reg_value_complaint): Update.
8048         * cp-support.c (demangled_name_complaint): Update.
8049         * macroscope.c (sal_macro_scope): Update.
8050         * dwarf-index-write.c (class debug_names): Update.
8051
8052 2018-05-23  Tom Tromey  <tom@tromey.com>
8053
8054         * complaints.c (clear_complaints): Remove "noisy" parameter.
8055         * complaints.h (clear_complaints): Update.
8056         * symfile.c (syms_from_objfile_1, finish_new_objfile)
8057         (reread_symbols): Update.
8058
8059 2018-05-23  Tom Tromey  <tom@tromey.com>
8060
8061         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
8062         SUBSEQUENT_MESSAGE.
8063         (vcomplaint, clear_complaints): Update.
8064         (symfile_explanations): Remove some messages.
8065
8066 2018-05-23  Tom Tromey  <tom@tromey.com>
8067
8068         * complaints.c (internal_complaint): Remove.
8069         * complaints.h (internal_complaint): Remove.
8070
8071 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
8072
8073         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
8074
8075 2018-05-22  Pedro Alves  <palves@redhat.com>
8076
8077         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
8078         (remote_fileio_badfd, remote_fileio_return_errno)
8079         (remote_fileio_return_success, remote_fileio_func_open)
8080         (remote_fileio_func_open, remote_fileio_func_close)
8081         (remote_fileio_func_read, remote_fileio_func_write)
8082         (remote_fileio_func_lseek, remote_fileio_func_rename)
8083         (remote_fileio_func_unlink, remote_fileio_func_stat)
8084         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
8085         (remote_fileio_func_isatty, remote_fileio_func_system): Add
8086         remote_target parameter.
8087         (remote_fio_func_map) <func>: Add remote_target parameter.
8088         (do_remote_fileio_request, remote_fileio_request):
8089         * remote-fileio.h (remote_fileio_request):
8090         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
8091         remote_target parameter.
8092         (remote_notif_process, handle_notification): Adjust to pass down
8093         the remote.
8094         (remote_notif_state_allocate): Add remote_target parameter.  Save
8095         it.
8096         * remote-notif.h (struct remote_target): Forward declare.
8097         (struct notif_client) <parse, ack, can_get_pending_events>: Add
8098         remote_target parameter.
8099         (struct remote_notif_state) <remote>: New field.
8100         (remote_notif_ack, remote_notif_parse): Add remote_target
8101         parameter.
8102         (remote_notif_state_allocate, remote_notif_state_allocate): Add
8103         remote_target parameter.
8104         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
8105         (threads_listing_context, rmt_thread_action, protocol_feature)
8106         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
8107         (packet_result, struct threads_listing_context, remote_state):
8108         Move definitions and declarations higher up.
8109         (remote_target) <~remote_target>: Declare.
8110         (remote_download_command_source, remote_file_put, remote_file_get)
8111         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
8112         (remote_hostio_pread_vFile, remote_hostio_send_command)
8113         (remote_hostio_set_filesystem, remote_hostio_open)
8114         (remote_hostio_close, remote_hostio_unlink, remote_state)
8115         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
8116         (get_memory_write_packet_size, get_memory_read_packet_size)
8117         (append_pending_thread_resumptions, remote_detach_1)
8118         (append_resumption, remote_resume_with_vcont)
8119         (add_current_inferior_and_thread, wait_ns, wait_as)
8120         (process_stop_reply, remote_notice_new_inferior)
8121         (process_initial_stop_replies, remote_add_thread)
8122         (btrace_sync_conf, remote_btrace_maybe_reopen)
8123         (remove_new_fork_children, kill_new_fork_children)
8124         (discard_pending_stop_replies, stop_reply_queue_length)
8125         (check_pending_events_prevent_wildcard_vcont)
8126         (discard_pending_stop_replies_in_queue, stop_reply)
8127         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
8128         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
8129         (remote_interrupt_as, remote_interrupt_ns)
8130         (remote_get_noisy_reply, remote_query_attached)
8131         (remote_add_inferior, remote_current_thread, get_current_thread)
8132         (set_thread, set_general_thread, set_continue_thread)
8133         (set_general_process, write_ptid)
8134         (remote_unpack_thread_info_response, remote_get_threadinfo)
8135         (parse_threadlist_response, remote_get_threadlist)
8136         (remote_threadlist_iterator, remote_get_threads_with_ql)
8137         (remote_get_threads_with_qxfer)
8138         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
8139         (get_offsets, remote_check_symbols, remote_supported_packet)
8140         (remote_query_supported, remote_packet_size)
8141         (remote_serial_quit_handler, remote_detach_pid)
8142         (remote_vcont_probe, remote_resume_with_hc)
8143         (send_interrupt_sequence, interrupt_query)
8144         (remote_notif_get_pending_events, fetch_register_using_p)
8145         (send_g_packet, process_g_packet, fetch_registers_using_g)
8146         (store_register_using_P, store_registers_using_G)
8147         (set_remote_traceframe, check_binary_download)
8148         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
8149         (remote_xfer_live_readonly_partial, remote_read_bytes)
8150         (remote_send_printf, remote_flash_write, readchar)
8151         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
8152         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
8153         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
8154         (extended_remote_disable_randomization, extended_remote_run)
8155         (send_environment_packet, extended_remote_environment_support)
8156         (extended_remote_set_inferior_cwd, remote_write_qxfer)
8157         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
8158         (packet_command): Now methods of ...
8159         (remote_target): ... this class.
8160         (m_remote_state) <remote_target>: New field.
8161         (struct remote_state) <stop_reply_queue,
8162         remote_async_inferior_event_token, wait_forever_enabled_p>: New
8163         fields.
8164         (remote_state::remote_state): Allocate stop_reply_queue.
8165         (remote_state): Delete global.
8166         (get_remote_state_raw): Delete.
8167         (remote_target::get_remote_state): Allocate m_remote_state on
8168         demand.
8169         (get_current_remote_target): New.
8170         (remote_ops, extended_remote_ops): Delete.
8171         (wait_forever_enabled_p, remote_async_inferior_event_token):
8172         Delete, moved to struct remote_state.
8173         (remote_target::close): Delete self.  Destruction bits split to
8174         ...
8175         (remote_target::~remote_target): ... this.
8176         (show_memory_packet_size): Adjust to use
8177         get_current_remote_target.
8178         (struct protocol_feature) <func>: Add remote_target parameter.
8179         All callers adjusted.
8180         (curr_quit_handler_target): New.
8181         (remote_serial_quit_handler): Reimplement.
8182         (remote_target::open_1): Adjust to use get_current_remote_target.
8183         Heap-allocate remote_target/extended_remote_target instances.
8184         (vcont_builder::vcont_builder): Add remote_target parameter, and
8185         save it in m_remote.  All callers adjusted.
8186         (vcont_builder::m_remote): New field.
8187         (vcont_builder::restart, vcont_builder::flush)
8188         (vcont_builder::push_action): Use it.
8189         (remote_target::commit_resume): Use it.
8190         (struct queue_iter_param) <remote>: New field.
8191         (remote_target::remove_new_fork_children): Fill in 'remote' field.
8192         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
8193         (check_pending_event_prevents_wildcard_vcont_callback)
8194         (remote_target::check_pending_events_prevent_wildcard_vcont)
8195         (remote_target::discard_pending_stop_replies)
8196         (remote_target::discard_pending_stop_replies_in_queue)
8197         (remote_target::remote_notif_remove_queued_reply): Fill in
8198         'remote' field.
8199         (remote_notif_get_pending_events): New.
8200         (remote_target::readchar, remote_target::remote_serial_write):
8201         Save/restore curr_quit_handler_target.
8202         (putpkt): New.
8203         (kill_new_fork_children): Fill in 'remote' field.
8204         (packet_command): Use get_current_remote_target, defer to
8205         remote_target method of same name.
8206         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
8207         parameter, and save it in m_remote.  All callers adjusted.
8208         (scoped_remote_fd::release): Use m_remote.
8209         (scoped_remote_fd::m_remote): New field.
8210         (remote_file_put, remote_file_get, remote_file_delete): Use
8211         get_current_remote_target, defer to remote_target method of same
8212         name.
8213         (remote_btrace_reset): Add remote_state paremeter.  Update all
8214         callers.
8215         (remote_async_inferior_event_handler). Pass down 'data'.
8216         (remote_new_objfile): Use get_current_remote_target.
8217         (remote_target::vcont_r_supported): New.
8218         (set_range_stepping): Use get_current_remote_target and
8219         remote_target::vcont_r_supported.
8220         (_initialize_remote): Don't allocate 'remote_state' and
8221         'stop_reply_queue' globals.
8222         * remote.h (struct remote_target): Forward declare.
8223         (getpkt, putpkt, remote_notif_get_pending_events): Add
8224         'remote_target' parameter.
8225
8226 2018-05-22  Pedro Alves  <palves@redhat.com>
8227
8228         * remote.c (vcont_builder): Now a class.  Make all data members
8229         private.
8230         (vcont_builder) <vcont_builder, restart, flush, push_action>:
8231         Declare methods.
8232         (vcont_builder_restart): Rename to ...
8233         (vcont_builder::restart): ... this.
8234         (vcont_builder_flush): Rename to ...
8235         (vcont_builder::flush): ... this.
8236         (vcont_builder_push_action): Rename to ...
8237         (vcont_builder::push_action): ... this.
8238         (remote_target::commit_resume): Adjust.
8239
8240 2018-05-22  Pedro Alves  <palves@redhat.com>
8241
8242         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
8243         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
8244         (get_fixed_memory_packet_size): New.
8245         (get_memory_packet_size): Use it.
8246         (set_memory_packet_size): Don't override the config size with
8247         DEFAULT_MAX_MEMORY_PACKET_SIZE.
8248         (show_memory_packet_size): Use get_fixed_memory_packet_size.
8249         Don't refer to get_memory_packet_size if not connected to a remote
8250         target.  Show "(default)" if configured size is 0.
8251
8252 2018-05-22  Pedro Alves  <palves@redhat.com>
8253
8254         * remote.c (remote_target::mourn_inferior): Move
8255         discard_pending_stop_replies call here from ...
8256         (_initialize_remote): ... here.
8257
8258 2018-05-22  Pedro Alves  <palves@redhat.com>
8259
8260         * remote.c (compare_section_command): Remove set_general_process
8261         call.
8262
8263 2018-05-22  Pedro Alves  <palves@redhat.com>
8264
8265         * remote.c (struct packet_reg, struct remote_arch_state):
8266         Move higher up in the file.
8267         (remote_state) <m_arch_states>: Store remote_arch_state values
8268         instead of remote_arch_state pointers.
8269         (remote_state::get_remote_arch_state): Adjust.
8270
8271 2018-05-22  Pedro Alves  <palves@redhat.com>
8272
8273         * remote.c: Include <unordered_map>.
8274         (remote_state): Now a class.
8275         (remote_state) <get_remote_arch_state>: Declare method.
8276         <get_remote_arch_state>: New field.
8277         (remote_arch_state) <remote_arch_state>: Declare ctor.
8278         <regs>: Now a unique_ptr.
8279         (remote_gdbarch_data_handle): Delete.
8280         (get_remote_arch_state): Delete.
8281         (remote_state::get_remote_arch_state): New.
8282         (get_remote_state): Adjust to call remote_state's
8283         get_remote_arch_state method.
8284         (init_remote_state): Delete, bits factored out to ...
8285         (remote_arch_state::remote_arch_state): ... this new method.
8286         (get_remote_packet_size, get_memory_packet_size)
8287         (process_g_packet, remote_target::fetch_registers)
8288         (remote_target::prepare_to_store, store_registers_using_G)
8289         (remote_target::store_registers, remote_target::get_trace_status):
8290         Adjust to call remote_state's method.
8291         (_initialize_remote): Remove reference to
8292         remote_gdbarch_data_handle.
8293
8294 2018-05-22  Pedro Alves  <palves@redhat.com>
8295
8296         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
8297         pread>: New method declarations.
8298         (remote_target::open_1): Adjust.
8299         (readahead_cache_invalidate): Rename to ...
8300         (readahead_cache::invalidate): ... this, and adjust to be a class
8301         method.
8302         (readahead_cache_invalidate_fd): Rename to ...
8303         (readahead_cache::invalidate_fd): ... this, and adjust to be a
8304         class method.
8305         (remote_hostio_pwrite): Adjust.
8306         (remote_hostio_pread_from_cache): Rename to ...
8307         (readahead_cache::pread): ... this, and adjust to be a class
8308         method.
8309         (remote_hostio_close): Adjust.
8310
8311 2018-05-22  Pedro Alves  <palves@redhat.com>
8312
8313         * remote.c (remote_hostio_close_cleanup): Delete.
8314         (class scoped_remote_fd): New.
8315         (remote_file_put, remote_file_get): Use it.
8316
8317 2018-05-22  Pedro Alves  <palves@redhat.com>
8318
8319         (struct vCont_action_support): Use bool and initialize all fields.
8320         (struct readahead_cache): Initialize all fields.
8321         (remote_state): Use bool and initialize all fields.
8322         (remote_state::remote_state, remote_state::~remote_state): New.
8323         (new_remote_state): Delete.
8324         (_initialize_remote): Use new to allocate remote_state.
8325
8326 2018-05-22  Pedro Alves  <palves@redhat.com>
8327             張俊芝  <zjz@zjz.name>
8328
8329         PR gdb/22973
8330         * c-exp.y: Include "c-support.h".
8331         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
8332         of tolower.  Use c_ident_is_alpha to scan names.
8333         * c-lang.c: Include "c-support.h".
8334         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
8335         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
8336         * c-support.h: New file, with bits factored out from ...
8337         * cp-name-parser.y: ... this file.
8338         Include "c-support.h".
8339         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
8340         c-support.h and renamed.
8341         (symbol_end, yylex): Adjust.
8342
8343 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8344
8345         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
8346         parameter type to CORE_ADDR.
8347         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
8348         parameter type in declaration to CORE_ADDR.
8349         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
8350         target_auxv_search to get AT_HWCAP and use the result to get the
8351         target description.
8352         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
8353         to CORE_ADDR. Remove the cast of the return value to unsigned
8354         long. Fix error predicate of target_auxv_search.
8355         (ppc_linux_nat_target::read_description): Change the type of the
8356         hwcap variable to CORE_ADDR.
8357
8358 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8359
8360         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
8361         if the size of fpscr is larger than 32 bits.
8362
8363 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8364
8365         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
8366         (ppc32_linux_vsxregmap): New global.
8367         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
8368         regcache_supply_regset, and regcache_collect_regset.
8369         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
8370         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
8371         (fetch_vsx_register, store_vsx_register): Remove.
8372         (fetch_vsx_registers): Add regno parameter. Get regset using
8373         ppc_linux_vsxregset. Use regset to supply registers.
8374         (store_vsx_registers): Add regno parameter. Get regset using
8375         ppc_linux_vsxregset. Use regset to collect registers.
8376         (fetch_register): Call fetch_vsx_registers instead of
8377         fetch_vsx_register.
8378         (store_register): Call store_vsx_registers instead of
8379         store_vsx_register.
8380         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
8381         new regno parameter.
8382         (store_ppc_registers): Call store_vsx_registers with -1 for the
8383         new regno parameter.
8384         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
8385         (ppc_collect_vsxregset): Remove.
8386
8387 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8388
8389         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
8390         offset fields.
8391         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
8392         for vector register offset fields.
8393         (ppc64_fbsd_reg_offsets): Likewise.
8394         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
8395         to vector register offset fields.
8396         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
8397         to vector register offset fields.
8398         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
8399         vector register offset fields.
8400         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
8401         initializers for vector register offset fields.
8402         (rs6000_aix64_reg_offsets): Likewise.
8403         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
8404         (ppc_supply_vrregset): Remove.
8405         (ppc_collect_vrregset): Remove.
8406         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
8407         (ppc_linux_vrregset) : New function.
8408         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
8409         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
8410         (ppc32_linux_vrregset): Remove.
8411         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
8412         and use result instead of ppc32_linux_vrregset.
8413         (ppc32_linux_reg_offsets): Remove initializers for vector register
8414         offset fields.
8415         (ppc64_linux_reg_offsets): Likewise.
8416         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
8417         * ppc-linux-nat.c: Include regset.h.
8418         (gdb_vrregset_t): Adjust comment to account for little-endian
8419         mode.
8420         (supply_vrregset, fill_vrregset): Remove.
8421         (fetch_altivec_register, store_altivec_register): Remove.
8422         (fetch_altivec_registers): Add regno parameter. Get regset using
8423         ppc_linux_vrregset. Use regset to supply registers.
8424         (store_altivec_registers): Add regno parameter. Get regset using
8425         ppc_linux_vrregset. Use regset to collect registers.
8426         (fetch_register): Call fetch_altivec_registers instead of
8427         fetch_altivec_register.
8428         (store_register): Call store_altivec_registers instead of
8429         store_altivec_register.
8430         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
8431         the new regno parameter.
8432         (store_ppc_registers): Call store_altivec_registers with -1 for
8433         the new regno parameter.
8434
8435 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8436
8437         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
8438         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
8439         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
8440         (gdb_vrregset_t): Change array type size to
8441         PPC_LINUX_SIZEOF_VRREGSET.
8442         (gdb_vsxregset_t): Change array type size to
8443         PPC_LINUX_SIZEOF_VSXREGSET.
8444         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
8445         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
8446         PPC_LINUX_SIZEOF_VSXREGSET.
8447
8448 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8449
8450         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
8451         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
8452         nat/ppc-linux.c.
8453         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
8454         ppc_linux_target_wordsize with tid.
8455         (ppc_linux_nat_target::read_description): Call ppc_linux_target
8456         wordsize with tid.
8457         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
8458         (ppc64_64bit_inferior_p): Add static and inline specifiers.
8459         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
8460         tid parameter. Remove static specifier.
8461         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
8462         (ppc_linux_target_wordsize): New declaration.
8463
8464 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8465
8466         * arch/ppc-linux-common.c: New file.
8467         * arch/ppc-linux-common.h: New file.
8468         * arch/ppc-linux-tdesc.h: New file.
8469         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
8470         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
8471         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
8472         arch/ppc-linux-tdesc.h.
8473         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
8474         arch/ppc-linux-tdesc.h.
8475         (ppc_linux_nat_target::read_description): Remove target
8476         description matching code. Fill a ppc_linux_features struct and
8477         call ppc_linux_match_description with it. Move comment about ISA
8478         2.05 to ppc-linux-common.c.
8479         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
8480         arch/ppc-linux-tdesc.h.
8481         (ppc_linux_core_read_description): Remove target description
8482         matching code. Fill a ppc_linux_features struct and call
8483         ppc_linux_match_description with it.
8484         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
8485         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
8486         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
8487         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
8488         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
8489         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
8490         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
8491         (tdesc_powerpc_e500l): Remove.
8492
8493 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
8494
8495         * ada-lang.c (catch_assert_command): Pass empty string instead
8496         of NULL for excep_string argument.
8497
8498 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
8499
8500         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
8501         the width of the requested register exceeds the width of the
8502         `ptrace' data type.
8503
8504 2018-05-21  Tom Tromey  <tom@tromey.com>
8505
8506         * printcmd.c (output_command): Remove.
8507         (output_command_const): Rename to output_command.
8508         * valprint.h (output_command): Rename from output_command_const.
8509         * tracepoint.c (trace_dump_actions): Call output_command.
8510
8511 2018-05-21  Tom Tromey  <tom@tromey.com>
8512
8513         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
8514         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
8515         * ada-lang.h (create_ada_exception_catchpoint): Update.
8516         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
8517         std::string.
8518         (create_excep_cond_exprs, ~ada_catchpoint)
8519         (should_stop_exception, print_one_exception)
8520         (print_mention_exception, print_recreate_exception): Update.
8521         (ada_get_next_arg): Remove.
8522         (catch_ada_exception_command_split): Use std::string.  Change type
8523         of "excep_string", "cond_string".
8524         (catch_ada_exception_command): Update.
8525         (create_ada_exception_catchpoint): Change type of excep_string.
8526         (ada_exception_sal): Remove excep_string parameter.
8527         (~ada_catchpoint): Remove.
8528
8529 2018-05-21  Tom Tromey  <tom@tromey.com>
8530
8531         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
8532         cleanup.
8533
8534 2018-05-21  Tom Tromey  <tom@tromey.com>
8535
8536         * ada-lang.c (ada_exception_message_1, ada_exception_message):
8537         Return unique_xmalloc_ptr.
8538         (print_it_exception): Update.
8539
8540 2018-05-21  Tom Tromey  <tom@tromey.com>
8541
8542         * tracepoint.c (trace_dump_actions): Use std::string.
8543
8544 2018-05-21  Tom Tromey  <tom@tromey.com>
8545
8546         * symfile.c (reread_symbols): Use std::string for original_name.
8547
8548 2018-05-21  Tom Tromey  <tom@tromey.com>
8549
8550         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
8551         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
8552         constructor.
8553
8554 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
8555
8556         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
8557         instance to...
8558         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
8559         * objfiles.c (get_objfile_bfd_data): Allocate
8560         objfile_per_bfd_storage with obstack_new when allocating on
8561         obstack.
8562
8563 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8564
8565         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
8566         OBSTACK_ZALLOC.
8567         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
8568         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
8569         * mdebugread.c (mdebug_build_psymtabs): Likewise.
8570         (add_pending): Likewise.
8571         (parse_symbol): Likewise.
8572         (parse_partial_symbols): Likewise.
8573         (psymtab_to_symtab_1): Likewise.
8574         (new_psymtab): Likewise.
8575         (elfmdebug_build_psymtabs): Likewise.
8576         * minsyms.c (terminate_minimal_symbol_table): Likewise.
8577         * objfiles.c (get_objfile_bfd_data): Likewise.
8578         (objfile_register_static_link): Likewise.
8579         * psymtab.c (allocate_psymtab): Likewise.
8580         * stabsread.c (read_member_functions): Likewise.
8581         * xcoffread.c (xcoff_end_psymtab): Likewise.
8582
8583 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8584
8585         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
8586         compiler supports std::is_trivially_constructible.
8587         * common/poison.h: Include obstack.h.
8588         (IsMallocable): Define to is_trivially_constructible if the
8589         compiler supports it, define to true_type otherwise.
8590         (xobnew): New.
8591         (XOBNEW): Redefine.
8592         (xobnewvec): New.
8593         (XOBNEWVEC): Redefine.
8594         * gdb_obstack.h (obstack_zalloc): New.
8595         (OBSTACK_ZALLOC): Redefine.
8596         (obstack_calloc): New.
8597         (OBSTACK_CALLOC): Redefine.
8598         (obstack_new): New.
8599         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
8600         (gdbarch_obstack): New declaration in gdbarch.h, definition in
8601         gdbarch.c.
8602         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
8603         obstack_calloc/obstack_zalloc.
8604         (gdbarch_obstack_zalloc): Remove.
8605         * target-descriptions.c (tdesc_data_init): Use obstack_new.
8606
8607 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8608
8609         * stack.c (backtrace_command_1): Remove useless variable int i.
8610
8611 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8612
8613         * stack.c (print_frame_info): Fix comment.
8614
8615 2018-05-18  Tom Tromey  <tom@tromey.com>
8616
8617         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
8618         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
8619         (~dwarf2_per_objfile): Update
8620         (dwarf2_get_dwz_file): Use new.
8621         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
8622         unique_ptr.
8623
8624 2018-05-18  Tom Tromey  <tom@tromey.com>
8625
8626         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
8627         unique_ptr.
8628         * dwarf2read.c (struct dwp_file): Add constructor and
8629         initializers.
8630         (open_and_init_dwp_file): Return a unique_ptr.
8631         (dwarf2_per_objfile, create_dwp_hash_table)
8632         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
8633         (lookup_dwo_unit_in_dwp): Update.
8634         (open_and_init_dwp_file, get_dwp_file): Update.
8635
8636 2018-05-18  Tom Tromey  <tom@tromey.com>
8637
8638         * dwarf2read.c (dwarf2_per_objfile): Update.
8639         (struct mapped_index): Add initializers.
8640         (dwarf2_read_index): Use new.
8641         (dw2_symtab_iter_init): Update.
8642         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
8643         unique_ptr.
8644
8645 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8646
8647         * dwarf2read.c (mapped_index) <total_size>: Remove.
8648
8649 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8650
8651         * unittests/format_pieces-selftests.c (test_format_specifier):
8652         Add ARI comments.
8653
8654 2018-05-18  Tom Tromey  <tom@tromey.com>
8655
8656         * c-typeprint.c (maybe_print_hole): New function.
8657         (c_print_type_struct_field_offset): Update.
8658         (c_type_print_base_struct_union): Call maybe_print_hole.
8659
8660 2018-05-17  Keith Seitz  <keiths@redhat.com>
8661
8662         * breakpoint.c (build_bpstat_chain): New function, moved from
8663         bpstat_stop_status.
8664         (bpstat_stop_status): Add optional parameter, `stop_chain'.
8665         If no stop chain is passed, call build_bpstat_chain to build it.
8666         * breakpoint.h (build_bpstat_chain): Declare.
8667         (bpstat_stop_status): Move documentation here from breakpoint.c.
8668         * infrun.c (handle_signal_stop): Before eliding inlined frames,
8669         build the stop chain and pass it to skip_inline_frames.
8670         Pass this stop chain to bpstat_stop_status.
8671         * inline-frame.c: Include breakpoint.h.
8672         (stopped_by_user_bp_inline_frame): New function.
8673         (skip_inline_frames): Add parameter `stop_chain'.
8674         Move documention to inline-frame.h.
8675         If non-NULL, use stopped_by_user_bp_inline_frame to determine
8676         whether the frame should be elided.
8677         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
8678         Add moved documentation and update for new parameter.
8679
8680 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
8681
8682         PR cli/14975
8683         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
8684         unittests/format_pieces-selftests.c.
8685         * common/format.h (format_piece) <operator==>: New.
8686         (format_pieces) <operator[]>: Remove.
8687         * common/format.c (format_pieces::format_pieces): Handle \e.
8688         * unittests/format_pieces-selftests.c: New.
8689
8690 2018-05-17  Tom Tromey  <tom@tromey.com>
8691
8692         PR symtab/23010:
8693         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
8694         (dw2_instantiate_symtab): Add skip_partial parameter.
8695         (dw2_find_last_source_symtab, dw2_map_expand_apply)
8696         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
8697         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
8698         (dw2_expand_symtabs_matching_one)
8699         (dw2_find_pc_sect_compunit_symtab)
8700         (dw2_debug_names_lookup_symbol)
8701         (dw2_debug_names_expand_symtabs_for_function): Update.
8702         (init_cutu_and_read_dies): Add skip_partial parameter.
8703         (process_psymtab_comp_unit, build_type_psymtabs_1)
8704         (process_skeletonless_type_unit, load_partial_comp_unit)
8705         (psymtab_to_symtab_1): Update.
8706         (load_full_comp_unit): Add skip_partial parameter.
8707         (process_imported_unit_die, dwarf2_read_addr_index)
8708         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
8709         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
8710         (read_signatured_type): Update.
8711
8712 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
8713
8714         * value.c (release_value): Remove unused variable.
8715         (record_latest_value): Likewise.
8716         (access_value_history): Likewise.
8717         (preserve_values): Likewise.
8718
8719 2018-05-17  Tom Tromey  <tom@tromey.com>
8720
8721         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
8722         Initialize.
8723
8724 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
8725
8726         PR gdb/22286
8727         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
8728         Also handle registers whose width is not a multiple of
8729         PTRACE_TYPE_RET.
8730         (linux_nat_trad_target::store_register): Likewise.
8731
8732 2018-05-16  Tom Tromey  <tom@tromey.com>
8733
8734         * gdbcore.h (core_bfd): Redefine.
8735         * corelow.c (core_target::close): Update.
8736         (core_target_open): Update.
8737         * progspace.h (struct program_space) <cbfd>: Now a
8738         gdb_bfd_ref_ptr.
8739
8740 2018-05-16  Tom Tromey  <tom@tromey.com>
8741
8742         PR cli/19551:
8743         * symfile-add-flags.h (enum symfile_add_flags)
8744         <SYMFILE_NOT_FILENAME>: New constant.
8745         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
8746         objfile name from BFD.
8747         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
8748         * minidebug.c (find_separate_debug_file_in_section): Put
8749         ".gnu_debugdata" into BFD's file name.
8750
8751 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
8752
8753         * regcache.c (regcache_read_ftype, regcache_write_ftype):
8754         Remove.
8755
8756 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
8757
8758         PR binutils/21446
8759         * aarch64-tdep.c (aarch64_analyze_prologue,
8760         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
8761         Indicate not interested in errors.
8762
8763 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
8764
8765         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
8766         Supply the MIPS_ZERO_REGNUM register.
8767
8768 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
8769
8770         * mips-tdep.c (mask_address_var): Make variable static.
8771
8772 2018-05-14  Tom Tromey  <tom@tromey.com>
8773
8774         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
8775
8776 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
8777
8778         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
8779         FXSAVE_ADDR for the mxcsr register.
8780
8781 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
8782
8783         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
8784
8785 2018-05-11  Pedro Alves  <palves@redhat.com>
8786
8787         * corelow.c (core_target) <core_target>: No longer inline.
8788         Initialize m_core_gdbarch, m_core_vec and build the section table
8789         here.
8790         <~core_target>: New.
8791         <core_gdbarch, get_core_register_section>: New methods.
8792         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
8793         factored out from ...
8794         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
8795         (core_ops): Delete.
8796         (sniff_core_bfd): Add gdbarch parameter.
8797         (core_close): Delete, merged into ...
8798         (core_target::close): ... here.  Delete self.
8799         (core_close_cleanup): Delete.
8800         (core_target_open): Allocate a core_target on the heap.  Use a
8801         unique_ptr instead of a cleanup.  Bits moved into the core_target
8802         ctor.  Adjust to use core_target methods instead of globals.
8803         (get_core_register_section): Rename to ...
8804         (core_target::get_core_register_section): ... this and adjust.
8805         (struct get_core_registers_cb_data): New.
8806         (get_core_registers_cb): Use it.  Use bool.
8807         (core_target::fetch_registers, core_target::files_info)
8808         (core_target::xfer_partial, core_target::read_description)
8809         (core_target::pid_to, core_target::thread_name): Adjust to
8810         reference class fields instead of globals.
8811         * target.h (struct target_ops_deleter, target_ops_up): New.
8812
8813 2018-05-11  Pedro Alves  <palves@redhat.com>
8814
8815         * corefile.c (core_file_command): Move to corelow.c.
8816         * corelow.c (the_core_target): Delete.
8817         (core_file_command): Moved from corefile.c.  Check exec_bfd
8818         instead of the_core_target.  Use target_detach instead of calling
8819         into the_core_target directly.
8820         (maybe_say_no_core_file_now): New.
8821         (core_target::detach): Use it.
8822         (_initialize_corelow): Remove references to the_core_target.
8823         * gdbcore.h (the_core_target): Delete.
8824
8825 2018-05-11  Tom Tromey  <tromey@redhat.com>
8826             Pedro Alves  <palves@redhat.com>
8827
8828         * corefile.c (core_bfd): Remove.
8829         * gdbcore.h (core_bfd): Now a macro.
8830         * progspace.h (struct program_space) <cbfd>: New field.
8831
8832 2018-05-11  Tom Tromey  <tom@tromey.com>
8833
8834         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
8835         gdb::def_vector.
8836
8837 2018-05-10  Tom Tromey  <tom@tromey.com>
8838
8839         * configure: Rebuild.
8840         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
8841
8842 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
8843
8844         PR server/23158:
8845         * regformats/regdat.sh: Adjust script, following the addition
8846         of the new expedite_regs parameter to init_target_desc.
8847
8848 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
8849     
8850         PR gdb/23127
8851         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
8852         set_gdbarch_significant_addr_bit.
8853         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
8854         set_gdbarch_significant_addr_bit.
8855         * utils.c (address_significant): Update to sign extend addr.
8856
8857 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
8858
8859         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
8860         (xtensa_linux_init_abi): Limit tdep->num_regs by
8861         tdep->num_nopriv_regs.
8862         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
8863         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
8864         not initialized.
8865
8866 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
8867
8868         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
8869
8870 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
8871
8872         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
8873         (I387_MXCSR_INIT_VAL): New constant.
8874         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
8875         buffer if it was supplied by the inferior.
8876         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
8877         (i387_xsave_get_clear_bv): New function.
8878         (i387_supply_xsave): Only read x87 control registers from the
8879         xsave buffer if the feature is enabled, and the state will have
8880         been written, otherwise, provide a suitable default.
8881         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
8882         including x87 control registers.  Update control registers if they
8883         have changed from the default value, and mark features as enabled
8884         as required.
8885         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
8886
8887 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
8888
8889         * spu-tdep.c (info_spu_event_command): Fix output formatting.
8890
8891 2018-05-07  Tom Tromey  <tom@tromey.com>
8892
8893         * configure: Rebuild.
8894         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
8895
8896 2018-05-07  Tom Tromey  <tom@tromey.com>
8897
8898         PR tdep/20362:
8899         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
8900         bit.  Use correct value for VDIV.
8901
8902 2018-05-04  Tom Tromey  <tom@tromey.com>
8903
8904         * configure: Rebuild.
8905         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
8906
8907 2018-05-04  Tom Tromey  <tom@tromey.com>
8908
8909         * linux-record.c (record_linux_system_call) <case
8910         RECORD_SYS_RECVFROM>: Add "break".
8911
8912 2018-05-04  Tom Tromey  <tom@tromey.com>
8913
8914         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
8915         Add missing "break".
8916         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
8917         Add missing "break".
8918
8919 2018-05-04  Tom Tromey  <tom@tromey.com>
8920
8921         * rs6000-tdep.c (ppc_process_record_op4)
8922         (ppc_process_record_op63): Add fall-through comment.
8923
8924 2018-05-04  Tom Tromey  <tom@tromey.com>
8925
8926         * i386-tdep.c (i386_process_record): Add fall-through comment.
8927
8928 2018-05-04  Tom Tromey  <tom@tromey.com>
8929
8930         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
8931         comment.
8932
8933 2018-05-04  Tom Tromey  <tom@tromey.com>
8934
8935         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
8936         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
8937         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
8938         comment.
8939         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
8940         comment.
8941         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
8942         comment.
8943
8944 2018-05-04  Tom Tromey  <tom@tromey.com>
8945
8946         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
8947
8948 2018-05-04  Tom Tromey  <tom@tromey.com>
8949
8950         * s390-tdep.c (s390_process_record): Fix fall-through comments.
8951         * xcoffread.c (scan_xcoff_symtab): Move comment later.
8952         * symfile.c (section_is_mapped): Fix fall-through comment.
8953         * stabsread.c (define_symbol, read_member_functions): Fix
8954         fall-through comment.
8955         * s390-linux-tdep.c (s390_process_record): Fix fall-through
8956         comment.
8957         * remote.c (remote_wait_as): Fix fall-through comment.
8958         * p-exp.y (yylex): Fix fall-through comment.
8959         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
8960         comment.
8961         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
8962         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
8963         * jv-exp.y (yylex): Fix fall-through comment.
8964         * go-exp.y (lex_one_token): Fix fall-through comment.
8965         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
8966         fall-through comment.
8967         * f-exp.y (yylex): Fix fall-through comment.
8968         * dwarf2read.c (process_die): Fix fall-through comments.
8969         * dbxread.c (process_one_symbol): Fix fall-through comment.
8970         * d-exp.y (lex_one_token): Fix fall-through comment.
8971         * cp-name-parser.y (yylex): Fix fall-through comment.
8972         * coffread.c (coff_symtab_read): Fix fall-through comment.
8973         * c-exp.y (lex_one_token): Fix fall-through comment.
8974         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
8975         comment.
8976         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
8977         comment.
8978
8979 2018-05-04  Tom Tromey  <tom@tromey.com>
8980
8981         PR python/22730:
8982         * NEWS: Mention gdb.execute change.
8983         * gdbcmd.h (execute_control_command): Don't declare.
8984         * python/python.c (execute_gdb_command): Use read_command_lines_1,
8985         execute_control_commands, execute_control_commands_to_string.
8986         * cli/cli-script.h (execute_control_commands)
8987         (execute_control_commands_to_string): Declare.
8988         (execute_control_command): Add from_tty parameter.
8989         * cli/cli-script.c (execute_control_commands)
8990         (execute_control_commands_to_string): New functions.
8991         (execute_user_command): Use execute_control_commands.
8992         (execute_control_command_1): Add "from_tty" parameter.  Update.
8993         (execute_control_command): Likewise.
8994
8995 2018-05-04  Tom Tromey  <tom@tromey.com>
8996
8997         PR python/22731:
8998         * NEWS: Mention that breakpoint commands are writable.
8999         * python/py-breakpoint.c (bppy_set_commands): New function.
9000         (breakpoint_object_getset) <"commands">: Use it.
9001
9002 2018-05-04  Tom Tromey  <tom@tromey.com>
9003
9004         * tracepoint.c (actions_command): Update.
9005         * mi/mi-cmd-break.c (mi_command_line_array)
9006         (mi_command_line_array_cnt, mi_command_line_array_ptr)
9007         (mi_read_next_line): Remove.
9008         (mi_cmd_break_commands): Update.
9009         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
9010         function_view.
9011         * cli/cli-script.c (get_command_line): Update.
9012         (process_next_line): Use function_view.  Constify.
9013         (recurse_read_control_structure, read_command_lines)
9014         (read_command_lines_1): Change argument types to function_view.
9015         (do_define_command, document_command): Update.
9016         * breakpoint.h (check_tracepoint_command): Don't declare.
9017         * breakpoint.c (check_tracepoint_command): Remove.
9018         (commands_command_1, create_tracepoint_from_upload): Update.
9019
9020 2018-05-04  Tom Tromey  <tom@tromey.com>
9021
9022         PR gdb/11750:
9023         * cli/cli-script.h (enum command_control_type) <define_control>:
9024         New constant.
9025         * cli/cli-script.c (multi_line_command_p): Handle define_control.
9026         (build_command_line, execute_control_command_1)
9027         (process_next_line): Likewise.
9028         (do_define_command): New function, extracted from define_command.
9029         (define_command): Use it.
9030
9031 2018-05-04  Tom Tromey  <tom@tromey.com>
9032
9033         * tracepoint.c (actions_command): Update.
9034         * cli/cli-script.h (read_command_lines): Update.
9035         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
9036         (MAX_TMPBUF): Remove define.
9037         (define_command): Use string_printf.
9038         (document_command): Likewise.
9039         * breakpoint.c (commands_command_1): Update.
9040
9041 2018-05-04  Tom Tromey  <tom@tromey.com>
9042
9043         * top.c (execute_command): Update.
9044         * cli/cli-script.h (print_command_lines): Now varargs.
9045         * cli/cli-script.c (print_command_lines): Now varargs.
9046         (execute_control_command_1) <case while_control, case if_control>:
9047         Update.
9048
9049 2018-05-04  Tom Tromey  <tom@tromey.com>
9050
9051         * tracepoint.c (all_tracepoint_actions): Rename from
9052         all_tracepoint_actions_and_cleanup.  Change return type.
9053         (actions_command, encode_actions_1, encode_actions)
9054         (trace_dump_actions, tdump_command): Update.
9055         * remote.c (remote_download_command_source): Update.
9056         * python/python.c (gdbpy_eval_from_control_command)
9057         (python_command, python_interactive_command): Update.
9058         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
9059         * guile/guile.c (guile_command)
9060         (gdbscm_eval_from_control_command, guile_command): Update.
9061         * compile/compile.c (compile_code_command)
9062         (compile_print_command, compile_to_object): Update.
9063         * cli/cli-script.h (struct command_lines_deleter): New.
9064         (counted_command_line): New typedef.
9065         (struct command_line): Add constructor, destructor.
9066         <body_list>: Remove.
9067         <body_list_0, body_list_1>: New members.
9068         (command_line_up): Remove typedef.
9069         (read_command_lines, read_command_lines_1, get_command_line):
9070         Update.
9071         (copy_command_lines): Don't declare.
9072         * cli/cli-script.c (build_command_line): Use "new".
9073         (get_command_line): Return counted_command_line.
9074         (print_command_lines, execute_user_command)
9075         (execute_control_command_1, while_command, if_command): Update.
9076         (realloc_body_list): Remove.
9077         (process_next_line, recurse_read_control_structure): Update.
9078         (read_command_lines, read_command_lines_1): Return counted_command_line.
9079         (free_command_lines): Use "delete".
9080         (copy_command_lines): Remove.
9081         (define_command, document_command, show_user_1): Update.
9082         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
9083         a counted_command_line.
9084         * breakpoint.h (counted_command_line): Remove typedef.
9085         (breakpoint_set_commands): Update.
9086         * breakpoint.c (check_no_tracepoint_commands)
9087         (validate_commands_for_breakpoint): Update.
9088         (breakpoint_set_commands): Change commands to be a
9089         counted_command_line.
9090         (commands_command_1, update_dprintf_command_list)
9091         (create_tracepoint_from_upload): Update.
9092
9093 2018-05-04  Tom Tromey  <tom@tromey.com>
9094
9095         * cli/cli-decode.h (cmd_list_element): New constructor.
9096         (~cmd_list_element): New destructor.
9097         (struct cmd_list_element): Add initializers.
9098         * cli/cli-decode.c (do_add_cmd): Use "new".
9099         (delete_cmd): Use "delete".
9100
9101 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
9102             Pedro Alves <palves@redhat.com>
9103
9104         PR breakpoints/19806 and support for PR external/20207.
9105         * NEWS: Mention Aarch64 watchpoint improvements.
9106         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
9107         watchpoints and PR external/20207 watchpoints.
9108         * nat/aarch64-linux-hw-point.c
9109         (kernel_supports_any_contiguous_range): New.
9110         (aarch64_watchpoint_offset): New.
9111         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
9112         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
9113         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
9114         (aarch64_align_watchpoint): New parameters aligned_offset_p and
9115         next_addr_orig_p.  Support PR external/20207 watchpoints.
9116         (aarch64_downgrade_regs): New.
9117         (aarch64_dr_state_insert_one_point): New parameters offset and
9118         addr_orig.
9119         (aarch64_dr_state_remove_one_point): Likewise.
9120         (aarch64_handle_breakpoint): Update caller.
9121         (aarch64_handle_aligned_watchpoint): Likewise.
9122         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
9123         aligned_offset.
9124         (aarch64_linux_set_debug_regs): Remove const from state.  Call
9125         aarch64_downgrade_regs.
9126         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
9127         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
9128         (DR_CONTROL_MASK): ... this.
9129         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
9130         (unsigned int aarch64_watchpoint_offset): New prototype.
9131         (aarch64_linux_set_debug_regs): Remove const from state.
9132         * utils.c (align_up, align_down): Move to ...
9133         * common/common-utils.c (align_up, align_down): ... here.
9134         * utils.h (align_up, align_down): Move to ...
9135         * common/common-utils.h (align_up, align_down): ... here.
9136
9137 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
9138
9139         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
9140         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
9141         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
9142         Re-implement to match the ABI as summarized in GCC's
9143         gcc/config/sparc/sparc.c.  All callers updated.
9144         (sparc32_store_arguments): Remove assertion.
9145
9146 2018-05-04  Tom Tromey  <tom@tromey.com>
9147
9148         * printcmd.c: Don't include tui.h.
9149         (decode_format): Use skip_spaces.
9150
9151 2018-05-04  Tom Tromey  <tom@tromey.com>
9152
9153         PR gdb/22619:
9154         * printcmd.c (last_count): New global.
9155         (x_command): Use saved count when repeating.
9156
9157 2018-05-04  Tom Tromey  <tom@tromey.com>
9158
9159         * nto-procfs.c (do_closedir_cleanup): Remove.
9160         (procfs_pidlist): Use gdb_dir_up.
9161         * procfs.c (do_closedir_cleanup): Remove.
9162         (proc_update_threads): Use gdb_dir_up.
9163         * common/filestuff.h (struct gdb_dir_deleter): New.
9164         (gdb_dir_up): New typedef.
9165
9166 2018-05-04  Tom Tromey  <tom@tromey.com>
9167
9168         * ada-lang.c (print_mention_exception): Use std::string.
9169
9170 2018-05-04  Tom Tromey  <tom@tromey.com>
9171
9172         * ada-lang.c (create_excep_cond_exprs): Update.
9173         (ada_exception_catchpoint_cond_string): Use std::string.
9174
9175 2018-05-04  Tom Tromey  <tom@tromey.com>
9176
9177         * ada-lang.c (xget_renaming_scope): Return std::string.
9178         (old_renaming_is_invisible): Update.
9179
9180 2018-05-04  Tom Tromey  <tom@tromey.com>
9181
9182         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
9183         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
9184
9185 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
9186
9187         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
9188
9189 2018-05-04  Tom Tromey  <tom@tromey.com>
9190
9191         * remote.c (remote_query_supported_append): Change type.
9192         (remote_check_symbols): Update.
9193
9194 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
9195
9196         PR gdb/11420
9197         * configure.ac: Prepend libpython.
9198         * python/python-config.py: Likewise.
9199         * configure: Regenerate.
9200
9201 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
9202
9203         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
9204
9205 2018-05-03  Pedro Alves  <palves@redhat.com>
9206
9207         * s390-linux-nat.c
9208         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
9209         override.  Write 'true' instead of '1'.
9210         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
9211         declaration.
9212
9213 2018-05-02  Pedro Alves  <palves@redhat.com>
9214
9215         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
9216         add_inf_child_target.
9217         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
9218         add_inf_child_target.
9219         * aix-thread.c (aix_thread_target_info): New.
9220         (aix_thread_target) <shortname, longname, doc>: Delete.
9221         <info>: New.
9222         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
9223         add_inf_child_target.
9224         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
9225         add_inf_child_target.
9226         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
9227         add_inf_child_target.
9228         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
9229         add_inf_child_target.
9230         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
9231         add_inf_child_target.
9232         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
9233         add_inf_child_target.
9234         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
9235         add_inf_child_target.
9236         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
9237         add_inf_child_target.
9238         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
9239         add_inf_child_target.
9240         * bfd-target.c (target_bfd_target_info): New.
9241         (target_bfd) <shortname, longname, doc>: Delete.
9242         <info>: New.
9243         * bsd-kvm.c (bsd_kvm_target_info): New.
9244         (bsd_kvm_target) <shortname, longname, doc>: Delete.
9245         <info>: New.
9246         (bsd_kvm_target::open): Rename to ...
9247         (bsd_kvm_target_open): ... this.  Adjust.
9248         * bsd-uthread.c (bsd_uthread_target_info): New.
9249         (bsd_uthread_target) <shortname, longname, doc>: Delete.
9250         <info>: New.
9251         * corefile.c (core_file_command): Adjust.
9252         * corelow.c (core_target_info): New.
9253         (core_target) <shortname, longname, doc>: Delete.
9254         <info>: New.
9255         (core_target::open): Rename to ...
9256         (core_target_open): ... this.  Adjust.
9257         * ctf.c (ctf_target_info): New.
9258         (ctf_target) <shortname, longname, doc>: Delete.
9259         <info>: New.
9260         (ctf_target::open): Rename to ...
9261         (ctf_target_open): ... this.
9262         (_initialize_ctf): Adjust.
9263         * exec.c (exec_target_info): New.
9264         (exec_target) <shortname, longname, doc>: Delete.
9265         <info>: New.
9266         (exec_target::open): Rename to ...
9267         (exec_target_open): ... this.
9268         * gdbcore.h (core_target_open): Declare.
9269         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
9270         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
9271         add_inf_child_target.
9272         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
9273         add_inf_child_target.
9274         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
9275         add_inf_child_target.
9276         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
9277         add_inf_child_target.
9278         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
9279         add_inf_child_target.
9280         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
9281         add_inf_child_target.
9282         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
9283         add_inf_child_target.
9284         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
9285         add_inf_child_target.
9286         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
9287         add_inf_child_target.
9288         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
9289         add_inf_child_target.
9290         * inf-child.c (inf_child_target_info): New.
9291         (inf_child_target::info): New.
9292         (inf_child_open_target): Remove 'target' parameter.  Use
9293         get_native_target instead.
9294         (inf_child_target::open): Delete.
9295         (add_inf_child_target): New.
9296         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
9297         Delete.
9298         <info>: New.
9299         (add_inf_child_target): Declare.
9300         (inf_child_open_target): Declare.
9301         * linux-thread-db.c (thread_db_target_info): New.
9302         (thread_db_target) <shortname, longname, doc>: Delete.
9303         <info>: New.
9304         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
9305         add_inf_child_target.
9306         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
9307         add_inf_child_target.
9308         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
9309         add_inf_child_target.
9310         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
9311         add_inf_child_target.
9312         * make-target-delegates (print_class): Adjust.
9313         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
9314         add_inf_child_target.
9315         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
9316         add_inf_child_target.
9317         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
9318         add_inf_child_target.
9319         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
9320         add_inf_child_target.
9321         * nto-procfs.c (nto_native_target_info): New.
9322         (nto_procfs_target_native) <shortname, longname, doc>:
9323         Delete.
9324         <info>: New.
9325         (nto_procfs_target_info): New.
9326         (nto_procfs_target_procfs) <shortname, longname, doc>:
9327         Delete.
9328         <info>: New.
9329         (init_procfs_targets): Adjust.
9330         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
9331         add_inf_child_target.
9332         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
9333         add_inf_child_target.
9334         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
9335         add_inf_child_target.
9336         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
9337         add_inf_child_target.
9338         * ravenscar-thread.c (ravenscar_target_info): New.
9339         (ravenscar_thread_target) <shortname, longname, doc>:
9340         Delete.
9341         <info>: New.
9342         * record-btrace.c (record_btrace_target_info):
9343         (record_btrace_target) <shortname, longname, doc>: Delete.
9344         <info>: New.
9345         (record_btrace_target::open): Rename to ...
9346         (record_btrace_target_open): ... this.  Adjust.
9347         * record-full.c (record_longname, record_doc): New.
9348         (record_full_base_target) <shortname, longname, doc>: Delete.
9349         <info>: New.
9350         (record_full_target_info): New.
9351         (record_full_target): <shortname>: Delete.
9352         <info>: New.
9353         (record_full_core_open_1, record_full_open_1): Update comments.
9354         (record_full_base_target::open): Rename to ...
9355         (record_full_open): ... this.
9356         (cmd_record_full_restore): Update.
9357         (_initialize_record_full): Update.
9358         * remote-sim.c (remote_sim_target_info): New.
9359         (gdbsim_target) <shortname, longname, doc>: Delete.
9360         <info>: New.
9361         (gdbsim_target::open): Rename to ...
9362         (gdbsim_target_open): ... this.
9363         (_initialize_remote_sim): Adjust.
9364         * remote.c (remote_doc): New.
9365         (remote_target_info): New.
9366         (remote_target) <shortname, longname, doc>: Delete.
9367         <info>: New.
9368         (extended_remote_target_info): New.
9369         (extended_remote_target) <shortname, longname, doc>: Delete.
9370         <info>: New.
9371         (remote_target::open_1): Make static.  Adjust.
9372         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
9373         * s390-linux-nat.c (_initialize_s390_nat): Use
9374         add_inf_child_target.
9375         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
9376         add_inf_child_target.
9377         * sol-thread.c (thread_db_target_info): New.
9378         (sol_thread_target) <shortname, longname, doc>: Delete.
9379         <info>: New.
9380         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
9381         add_inf_child_target.
9382         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
9383         add_inf_child_target.
9384         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
9385         add_inf_child_target.
9386         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
9387         add_inf_child_target.
9388         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
9389         add_inf_child_target.
9390         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
9391         add_inf_child_target.
9392         * spu-linux-nat.c (_initialize_spu_nat): Use
9393         add_inf_child_target.
9394         * spu-multiarch.c (spu_multiarch_target_info): New.
9395         (spu_multiarch_target) <shortname, longname, doc>: Delete.
9396         <info>: New.
9397         * target-delegates.c: Regenerate.
9398         * target.c: Include <unordered_map>.
9399         (target_ops_p): Delete.
9400         (DEF_VEC_P(target_ops_p)): Delete.
9401         (target_factories): New.
9402         (test_target_info): New.
9403         (test_target_ops::info): New.
9404         (open_target): Adjust to use target_factories.
9405         (add_target_with_completer): Rename to ...
9406         (add_target): ... this.  Change prototype.  Register target_info
9407         and open callback in target_factories.  Register target_info in
9408         command context instead of target_ops.
9409         (add_target): Delete old implementation.
9410         (add_deprecated_target_alias): Change prototype.  Adjust.
9411         (the_native_target): New.
9412         (set_native_target, get_native_target): New.
9413         (find_default_run_target): Use the_native_target.
9414         (find_attach_target, find_run_target): Simplify.
9415         (target_ops::open): Delete.
9416         (dummy_target_info): New.
9417         (dummy_target::shortname, dummy_target::longname)
9418         (dummy_target::doc): Delete.
9419         (dummy_target::info): New.
9420         (debug_target::shortname, debug_target::longname)
9421         (debug_target::doc): Delete.
9422         (debug_target::info): New.
9423         * target.h (struct target_info): New.
9424         (target_ops::~target_ops): Add comment.
9425         (target_ops::info): New.
9426         (target_ops::shortname, target_ops::longname, target_ops::doc): No
9427         longer virtual.  Implement in terms of target_info.
9428         (set_native_target, get_native_target): Declare.
9429         (target_open_ftype): New.
9430         (add_target, add_target_with_completer)
9431         (add_deprecated_target_alias): Change prototype.
9432         (test_target) <shortname, longname, doc>: Delete.
9433         <info>: New.
9434         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
9435         add_inf_child_target.
9436         * tracefile-tfile.c (tfile_target_info): New.
9437         (tfile_target) <shortname, longname, doc>: Delete.
9438         <info>: New.
9439         (tfile_target::open): Rename to ...
9440         (tfile_target_open): ... this.
9441         (_initialize_tracefile_tfile): Adjust.
9442         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
9443         add_inf_child_target.
9444         * windows-nat.c (_initialize_windows_nat): Use
9445         add_inf_child_target.
9446         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
9447         add_inf_child_target.
9448
9449 2018-05-02  Pedro Alves  <palves@redhat.com>
9450
9451         * linux-nat.h (linux_nat_target) <low_new_thread,
9452         low_delete_thread, low_new_fork, low_forget_process,
9453         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
9454         New virtual methods.
9455         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
9456         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
9457         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
9458         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
9459         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
9460         Delete.
9461         * linux-fork.c (delete_fork): Adjust to call low method.
9462         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
9463         (linux_nat_new_fork, linux_nat_forget_process_hook)
9464         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
9465         (linux_nat_status_is_event):
9466         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
9467         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
9468         to call low method.
9469         (sigtrap_is_event): Rename to ...
9470         (linux_nat_target::low_status_is_event): ... this.
9471         (linux_nat_set_status_is_event): Delete.
9472         (save_stop_reason, linux_nat_wait_1)
9473         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
9474         low methods.
9475         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
9476         (linux_nat_set_new_fork, linux_nat_set_forget_process)
9477         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
9478         (linux_nat_set_prepare_to_resume): Delete.
9479         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
9480         low virtual methods.
9481         * amd64-linux-nat.c: Likewise.
9482         * arm-linux-nat.c: Likewise.
9483         * i386-linux-nat.c: Likewise.
9484         * ia64-linux-nat.c: Likewise.
9485         * mips-linux-nat.c: Likewise.
9486         * ppc-linux-nat.c: Likewise.
9487         * s390-linux-nat.c: Likewise.
9488         * sparc64-linux-nat.c: Likewise.
9489         * x86-linux-nat.c: Likewise.
9490         * x86-linux-nat.h: Include "nat/x86-linux.h".
9491         (x86_linux_nat_target) <low_new_fork, low_forget_process,
9492         low_prepare_to_resume, low_new_thread, low_delete_thread>:
9493         Override methods.
9494
9495 2018-05-02  Pedro Alves  <palves@redhat.com>
9496
9497         * target.h (target_ops)
9498         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
9499         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
9500         stopped_by_watchpoint, have_continuable_watchpoint,
9501         stopped_data_address, watchpoint_addr_within_range,
9502         can_accel_watchpoint_condition, can_run, thread_alive,
9503         has_all_memory, has_memory, has_stack, has_registers,
9504         has_execution, can_async_p, is_async_p, supports_non_stop,
9505         always_non_stop_p, can_execute_reverse, supports_multi_process,
9506         supports_enable_disable_tracepoint,
9507         supports_disable_randomization, supports_string_tracing,
9508         supports_evaluation_of_breakpoint_conditions,
9509         can_run_breakpoint_commands, filesystem_is_local,
9510         can_download_tracepoint, get_trace_state_variable_value,
9511         set_trace_notes, get_tib_address, use_agent, can_use_agent,
9512         record_is_replaying, record_will_replay,
9513         augmented_libraries_svr4_read>: Adjust to return bool.
9514         * aarch64-linux-nat.c: All implementations adjusted.
9515         * aix-thread.c: All implementations adjusted.
9516         * arm-linux-nat.c: All implementations adjusted.
9517         * breakpoint.c: All implementations adjusted.
9518         * bsd-kvm.c: All implementations adjusted.
9519         * bsd-uthread.c: All implementations adjusted.
9520         * corelow.c: All implementations adjusted.
9521         * ctf.c: All implementations adjusted.
9522         * darwin-nat.c: All implementations adjusted.
9523         * darwin-nat.h: All implementations adjusted.
9524         * exec.c: All implementations adjusted.
9525         * fbsd-nat.c: All implementations adjusted.
9526         * fbsd-nat.h: All implementations adjusted.
9527         * gnu-nat.c: All implementations adjusted.
9528         * gnu-nat.h: All implementations adjusted.
9529         * go32-nat.c: All implementations adjusted.
9530         * ia64-linux-nat.c: All implementations adjusted.
9531         * inf-child.c: All implementations adjusted.
9532         * inf-child.h: All implementations adjusted.
9533         * inf-ptrace.c: All implementations adjusted.
9534         * inf-ptrace.h: All implementations adjusted.
9535         * linux-nat.c: All implementations adjusted.
9536         * linux-nat.h: All implementations adjusted.
9537         * mips-linux-nat.c: All implementations adjusted.
9538         * nto-procfs.c: All implementations adjusted.
9539         * ppc-linux-nat.c: All implementations adjusted.
9540         * procfs.c: All implementations adjusted.
9541         * ravenscar-thread.c: All implementations adjusted.
9542         * record-btrace.c: All implementations adjusted.
9543         * record-full.c: All implementations adjusted.
9544         * remote-sim.c: All implementations adjusted.
9545         * remote.c: All implementations adjusted.
9546         * s390-linux-nat.c: All implementations adjusted.
9547         * sol-thread.c: All implementations adjusted.
9548         * spu-multiarch.c: All implementations adjusted.
9549         * target-delegates.c: All implementations adjusted.
9550         * target.c: All implementations adjusted.
9551         * target.h: All implementations adjusted.
9552         * tracefile-tfile.c: All implementations adjusted.
9553         * tracefile.c: All implementations adjusted.
9554         * tracefile.h: All implementations adjusted.
9555         * windows-nat.c: All implementations adjusted.
9556         * x86-linux-nat.h: All implementations adjusted.
9557         * x86-nat.h: All implementations adjusted.
9558
9559 2018-05-02  Pedro Alves  <palves@redhat.com>
9560
9561         * make-target-delegates (scan_target_h): Don't trim lines here.
9562         Replace sequences of tabs and/or whitespace with a single
9563         whitespace.
9564         (top level, parsing methods): Trim each line before processing it
9565         here.
9566
9567 2018-05-02  Pedro Alves  <palves@redhat.com>
9568             John Baldwin  <jhb@freebsd.org>
9569
9570         * target.h (enum strata) <debug_stratum>: New.
9571         (struct target_ops) <all delegation methods>: Replace by C++
9572         virtual methods, and drop "to_" prefix.  All references updated
9573         throughout.
9574         <to_shortname, to_longname, to_doc, to_data,
9575         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
9576         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
9577         virtual methods.  All references updated throughout.
9578         <can_attach, supports_terminal_ours, can_create_inferior,
9579         get_thread_control_capabilities, attach_no_wait>: New
9580         virtual methods.
9581         <insert_breakpoint, remove_breakpoint>: Now
9582         TARGET_DEFAULT_NORETURN methods.
9583         <info_proc>: Now returns bool.
9584         <to_magic>: Delete.
9585         (OPS_MAGIC): Delete.
9586         (current_target): Delete.  All references replaced by references
9587         to ...
9588         (target_stack): ... this.  New.
9589         (target_shortname, target_longname): Adjust.
9590         (target_can_run): Now a function declaration.
9591         (default_child_has_all_memory, default_child_has_memory)
9592         (default_child_has_stack, default_child_has_registers)
9593         (default_child_has_execution): Remove target_ops parameter.
9594         (complete_target_initialization): Delete.
9595         (memory_breakpoint_target): New template class.
9596         (test_target_ops): Refactor as a C++ class with virtual methods.
9597         * make-target-delegates (NAME_PART): Tighten.
9598         (POINTER_PART, CP_SYMBOL): New.
9599         (SIMPLE_RETURN_PART): Reimplement.
9600         (VEC_RETURN_PART): Expect less.
9601         (RETURN_PART, VIRTUAL_PART): New.
9602         (METHOD): Adjust to C++ virtual methods.
9603         (scan_target_h): Remove reference to C99.
9604         (dname): Output "target_ops::" prefix.
9605         (write_function_header): Adjust to output a C++ class method.
9606         (write_declaration): New.
9607         (write_delegator): Adjust to output a C++ class method.
9608         (tdname): Output "dummy_target::" prefix.
9609         (write_tdefault, write_debugmethod): Adjust to output a C++ class
9610         method.
9611         (tdefault_names, debug_names): Delete.
9612         (return_types, tdefaults, styles, argtypes_array): New.
9613         (top level): All methods are delegators.
9614         (print_class): New.
9615         (top level): Print dummy_target and debug_target classes.
9616         * target-delegates.c: Regenerate.
9617         * target-debug.h (target_debug_print_enum_info_proc_what)
9618         (target_debug_print_thread_control_capabilities)
9619         (target_debug_print_thread_info_p): New.
9620         * target.c (dummy_target): Delete.
9621         (the_dummy_target, the_debug_target): New.
9622         (target_stack): Now extern.
9623         (set_targetdebug): Push/unpush debug target.
9624         (default_child_has_all_memory, default_child_has_memory)
9625         (default_child_has_stack, default_child_has_registers)
9626         (default_child_has_execution): Remove target_ops parameter.
9627         (complete_target_initialization): Delete.
9628         (add_target_with_completer): No longer call
9629         complete_target_initialization.
9630         (target_supports_terminal_ours): Use regular delegation.
9631         (update_current_target): Delete.
9632         (push_target): No longer check magic number.  Don't call
9633         update_current_target.
9634         (unpush_target): Don't call update_current_target.
9635         (target_is_pushed): No longer check magic number.
9636         (target_require_runnable): Skip for all stratums over
9637         process_stratum.
9638         (target_ops::info_proc): New.
9639         (target_info_proc): Use find_target_at and
9640         find_default_run_target.
9641         (target_supports_disable_randomization): Use regular delegation.
9642         (target_get_osdata): Use find_target_at.
9643         (target_ops::open, target_ops::close, target_ops::can_attach)
9644         (target_ops::attach, target_ops::can_create_inferior)
9645         (target_ops::create_inferior, target_ops::can_run)
9646         (target_can_run): New.
9647         (default_fileio_target): Use regular delegation.
9648         (target_ops::fileio_open, target_ops::fileio_pwrite)
9649         (target_ops::fileio_pread, target_ops::fileio_fstat)
9650         (target_ops::fileio_close, target_ops::fileio_unlink)
9651         (target_ops::fileio_readlink): New.
9652         (target_fileio_open_1, target_fileio_unlink)
9653         (target_fileio_readlink): Always call the target method.  Handle
9654         FILEIO_ENOSYS.
9655         (return_zero, return_zero_has_execution): Delete.
9656         (init_dummy_target): Delete.
9657         (dummy_target::dummy_target, dummy_target::shortname)
9658         (dummy_target::longname, dummy_target::doc)
9659         (debug_target::debug_target, debug_target::shortname)
9660         (debug_target::longname, debug_target::doc): New.
9661         (target_supports_delete_record): Use regular delegation.
9662         (setup_target_debug): Delete.
9663         (maintenance_print_target_stack): Skip debug_stratum.
9664         (initialize_targets): Instantiate the_dummy_target and
9665         the_debug_target.
9666         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
9667         use target_stack.
9668         (target_auxv_search, fprint_target_auxv): Adjust.
9669         (info_auxv_command): Adjust to use target_stack.
9670         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
9671         * exceptions.c (print_flush): Handle a NULL target_stack.
9672         * regcache.c (target_ops_no_register): Refactor as class with
9673         virtual methods.
9674
9675         * exec.c (exec_target): New class.
9676         (exec_ops): Now an exec_target.
9677         (exec_open, exec_close_1, exec_get_section_table)
9678         (exec_xfer_partial, exec_files_info, exec_has_memory)
9679         (exec_make_note_section): Refactor as exec_target methods.
9680         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
9681         Delete.
9682         (exec_target::find_memory_regions): New.
9683         (_initialize_exec): Don't call init_exec_ops.
9684         * gdbcore.h (exec_file_clear): Delete.
9685
9686         * corefile.c (core_target): Delete.
9687         (core_file_command): Adjust.
9688         * corelow.c (core_target): New class.
9689         (the_core_target): New.
9690         (core_close): Remove target_ops parameter.
9691         (core_close_cleanup): Adjust.
9692         (core_target::close): New.
9693         (core_open, core_detach, get_core_registers, core_files_info)
9694         (core_xfer_partial, core_thread_alive, core_read_description)
9695         (core_pid_to_str, core_thread_name, core_has_memory)
9696         (core_has_stack, core_has_registers, core_info_proc): Rework as
9697         core_target methods.
9698         (ignore, core_remove_breakpoint, init_core_ops): Delete.
9699         (_initialize_corelow): Initialize the_core_target.
9700         * gdbcore.h (core_target): Delete.
9701         (the_core_target): New.
9702
9703         * ctf.c: (ctf_target): New class.
9704         (ctf_ops): Now a ctf_target.
9705         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
9706         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
9707         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
9708         methods.
9709         (init_ctf_ops): Delete.
9710         (_initialize_ctf): Don't call it.
9711         * tracefile-tfile.c (tfile_target): New class.
9712         (tfile_ops): Now a tfile_target.
9713         (tfile_open, tfile_close, tfile_files_info)
9714         (tfile_get_tracepoint_status, tfile_trace_find)
9715         (tfile_fetch_registers, tfile_xfer_partial)
9716         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
9717         Refactor as tfile_target methods.
9718         (tfile_xfer_partial_features): Remove target_ops parameter.
9719         (init_tfile_ops): Delete.
9720         (_initialize_tracefile_tfile): Don't call it.
9721         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
9722         (tracefile_has_stack, tracefile_has_registers)
9723         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
9724         tracefile_target methods.
9725         (init_tracefile_ops): Delete.
9726         (tracefile_target::tracefile_target): New.
9727         * tracefile.h: Include "target.h".
9728         (tracefile_target): New class.
9729         (init_tracefile_ops): Delete.
9730
9731         * spu-multiarch.c (spu_multiarch_target): New class.
9732         (spu_ops): Now a spu_multiarch_target.
9733         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
9734         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
9735         (spu_search_memory, spu_mourn_inferior): Refactor as
9736         spu_multiarch_target methods.
9737         (init_spu_ops): Delete.
9738         (_initialize_spu_multiarch): Remove references to init_spu_ops,
9739         complete_target_initialization.
9740
9741         * ravenscar-thread.c (ravenscar_thread_target): New class.
9742         (ravenscar_ops): Now a ravenscar_thread_target.
9743         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
9744         (ravenscar_thread_alive, ravenscar_pid_to_str)
9745         (ravenscar_fetch_registers, ravenscar_store_registers)
9746         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
9747         (ravenscar_stopped_by_hw_breakpoint)
9748         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
9749         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
9750         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
9751         methods.
9752         (init_ravenscar_thread_ops): Delete.
9753         (_initialize_ravenscar): Remove references to
9754         init_ravenscar_thread_ops and complete_target_initialization.
9755
9756         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
9757         (bsd_uthread_target): New class.
9758         (bsd_uthread_ops): Now a bsd_uthread_target.
9759         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
9760         (bsd_uthread_close, bsd_uthread_mourn_inferior)
9761         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
9762         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
9763         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
9764         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
9765         (bsd_uthread_target): Delete function.
9766         (_initialize_bsd_uthread): Remove reference to
9767         complete_target_initialization.
9768
9769         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
9770         (target_bfd): ... this new class.
9771         (target_bfd_xfer_partial, target_bfd_get_section_table)
9772         (target_bfd_close): Refactor as target_bfd methods.
9773         (target_bfd::~target_bfd): New.
9774         (target_bfd_reopen): Adjust.
9775         (target_bfd::close): New.
9776
9777         * record-btrace.c (record_btrace_target): New class.
9778         (record_btrace_ops): Now a record_btrace_target.
9779         (record_btrace_open, record_btrace_stop_recording)
9780         (record_btrace_disconnect, record_btrace_close)
9781         (record_btrace_async, record_btrace_info)
9782         (record_btrace_insn_history, record_btrace_insn_history_range)
9783         (record_btrace_insn_history_from, record_btrace_call_history)
9784         (record_btrace_call_history_range)
9785         (record_btrace_call_history_from, record_btrace_record_method)
9786         (record_btrace_is_replaying, record_btrace_will_replay)
9787         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
9788         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
9789         (record_btrace_store_registers, record_btrace_prepare_to_store)
9790         (record_btrace_to_get_unwinder)
9791         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
9792         (record_btrace_commit_resume, record_btrace_wait)
9793         (record_btrace_stop, record_btrace_can_execute_reverse)
9794         (record_btrace_stopped_by_sw_breakpoint)
9795         (record_btrace_supports_stopped_by_sw_breakpoint)
9796         (record_btrace_stopped_by_hw_breakpoint)
9797         (record_btrace_supports_stopped_by_hw_breakpoint)
9798         (record_btrace_update_thread_list, record_btrace_thread_alive)
9799         (record_btrace_goto_begin, record_btrace_goto_end)
9800         (record_btrace_goto, record_btrace_stop_replaying_all)
9801         (record_btrace_execution_direction)
9802         (record_btrace_prepare_to_generate_core)
9803         (record_btrace_done_generating_core): Refactor as
9804         record_btrace_target methods.
9805         (init_record_btrace_ops): Delete.
9806         (_initialize_record_btrace): Remove reference to
9807         init_record_btrace_ops.
9808         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
9809         the execution_direction global.
9810         (record_full_base_target, record_full_target)
9811         (record_full_core_target): New classes.
9812         (record_full_ops): Now a record_full_target.
9813         (record_full_core_ops): Now a record_full_core_target.
9814         (record_full_target::detach, record_full_target::disconnect)
9815         (record_full_core_target::disconnect)
9816         (record_full_target::mourn_inferior, record_full_target::kill):
9817         New.
9818         (record_full_open, record_full_close, record_full_async): Refactor
9819         as methods of the record_full_base_target class.
9820         (record_full_resume, record_full_commit_resume): Refactor
9821         as methods of the record_full_target class.
9822         (record_full_wait, record_full_stopped_by_watchpoint)
9823         (record_full_stopped_data_address)
9824         (record_full_stopped_by_sw_breakpoint)
9825         (record_full_supports_stopped_by_sw_breakpoint)
9826         (record_full_stopped_by_hw_breakpoint)
9827         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
9828         methods of the record_full_base_target class.
9829         (record_full_store_registers, record_full_xfer_partial)
9830         (record_full_insert_breakpoint, record_full_remove_breakpoint):
9831         Refactor as methods of the record_full_target class.
9832         (record_full_can_execute_reverse, record_full_get_bookmark)
9833         (record_full_goto_bookmark, record_full_execution_direction)
9834         (record_full_record_method, record_full_info, record_full_delete)
9835         (record_full_is_replaying, record_full_will_replay)
9836         (record_full_goto_begin, record_full_goto_end, record_full_goto)
9837         (record_full_stop_replaying): Refactor as methods of the
9838         record_full_base_target class.
9839         (record_full_core_resume, record_full_core_kill)
9840         (record_full_core_fetch_registers)
9841         (record_full_core_prepare_to_store)
9842         (record_full_core_store_registers, record_full_core_xfer_partial)
9843         (record_full_core_insert_breakpoint)
9844         (record_full_core_remove_breakpoint)
9845         (record_full_core_has_execution): Refactor
9846         as methods of the record_full_core_target class.
9847         (record_full_base_target::supports_delete_record): New.
9848         (init_record_full_ops): Delete.
9849         (init_record_full_core_ops): Delete.
9850         (record_full_save): Refactor as method of the
9851         record_full_base_target class.
9852         (_initialize_record_full): Remove references to
9853         init_record_full_ops and init_record_full_core_ops.
9854
9855         * remote.c (remote_target, extended_remote_target): New classes.
9856         (remote_ops): Now a remote_target.
9857         (extended_remote_ops): Now an extended_remote_target.
9858         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
9859         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
9860         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
9861         (remote_pass_signals, remote_set_syscall_catchpoint)
9862         (remote_program_signals, )
9863         (remote_thread_always_alive): Remove target_ops parameter.
9864         (remote_thread_alive, remote_thread_name)
9865         (remote_update_thread_list, remote_threads_extra_info)
9866         (remote_static_tracepoint_marker_at)
9867         (remote_static_tracepoint_markers_by_strid)
9868         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
9869         (remote_open): Refactor as methods of remote_target.
9870         (extended_remote_open, extended_remote_detach)
9871         (extended_remote_attach, extended_remote_post_attach):
9872         (extended_remote_supports_disable_randomization)
9873         (extended_remote_create_inferior): : Refactor as method of
9874         extended_remote_target.
9875         (remote_set_permissions, remote_open_1, remote_detach)
9876         (remote_follow_fork, remote_follow_exec, remote_disconnect)
9877         (remote_resume, remote_commit_resume, remote_stop)
9878         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
9879         (remote_terminal_ours, remote_wait, remote_fetch_registers)
9880         (remote_prepare_to_store, remote_store_registers)
9881         (remote_flash_erase, remote_flash_done, remote_files_info)
9882         (remote_kill, remote_mourn, remote_insert_breakpoint)
9883         (remote_remove_breakpoint, remote_insert_watchpoint)
9884         (remote_watchpoint_addr_within_range)
9885         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
9886         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
9887         (remote_supports_stopped_by_sw_breakpoint)
9888         (remote_stopped_by_hw_breakpoint)
9889         (remote_supports_stopped_by_hw_breakpoint)
9890         (remote_stopped_by_watchpoint, remote_stopped_data_address)
9891         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
9892         (remote_verify_memory): Refactor as methods of remote_target.
9893         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
9894         parameter.
9895         (remote_xfer_partial, remote_get_memory_xfer_limit)
9896         (remote_search_memory, remote_rcmd, remote_memory_map)
9897         (remote_pid_to_str, remote_get_thread_local_address)
9898         (remote_get_tib_address, remote_read_description): Refactor as
9899         methods of remote_target.
9900         (remote_target::fileio_open, remote_target::fileio_pwrite)
9901         (remote_target::fileio_pread, remote_target::fileio_close): New.
9902         (remote_hostio_readlink, remote_hostio_fstat)
9903         (remote_filesystem_is_local, remote_can_execute_reverse)
9904         (remote_supports_non_stop, remote_supports_disable_randomization)
9905         (remote_supports_multi_process, remote_supports_cond_breakpoints)
9906         (remote_supports_enable_disable_tracepoint)
9907         (remote_supports_string_tracing)
9908         (remote_can_run_breakpoint_commands, remote_trace_init)
9909         (remote_download_tracepoint, remote_can_download_tracepoint)
9910         (remote_download_trace_state_variable, remote_enable_tracepoint)
9911         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
9912         (remote_trace_start, remote_get_trace_status)
9913         (remote_get_tracepoint_status, remote_trace_stop)
9914         (remote_trace_find, remote_get_trace_state_variable_value)
9915         (remote_save_trace_data, remote_get_raw_trace_data)
9916         (remote_set_disconnected_tracing, remote_core_of_thread)
9917         (remote_set_circular_trace_buffer, remote_traceframe_info)
9918         (remote_get_min_fast_tracepoint_insn_len)
9919         (remote_set_trace_buffer_size, remote_set_trace_notes)
9920         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
9921         (remote_disable_btrace, remote_teardown_btrace)
9922         (remote_read_btrace, remote_btrace_conf)
9923         (remote_augmented_libraries_svr4_read, remote_load)
9924         (remote_pid_to_exec_file, remote_can_do_single_step)
9925         (remote_execution_direction, remote_thread_handle_to_thread_info):
9926         Refactor as methods of remote_target.
9927         (init_remote_ops, init_extended_remote_ops): Delete.
9928         (remote_can_async_p, remote_is_async_p, remote_async)
9929         (remote_thread_events, remote_upload_tracepoints)
9930         (remote_upload_trace_state_variables): Refactor as methods of
9931         remote_target.
9932         (_initialize_remote): Remove references to init_remote_ops and
9933         init_extended_remote_ops.
9934
9935         * remote-sim.c (gdbsim_target): New class.
9936         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
9937         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
9938         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
9939         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
9940         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
9941         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
9942         Refactor as methods of gdbsim_target.
9943         (gdbsim_ops): Now a gdbsim_target.
9944         (init_gdbsim_ops): Delete.
9945         (gdbsim_cntrl_c): Adjust.
9946         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
9947
9948         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
9949         (the_amd64_linux_nat_target): New.
9950         (amd64_linux_fetch_inferior_registers)
9951         (amd64_linux_store_inferior_registers): Refactor as methods of
9952         amd64_linux_nat_target.
9953         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
9954         * i386-linux-nat.c: Don't include "linux-nat.h".
9955         (i386_linux_nat_target): New class.
9956         (the_i386_linux_nat_target): New.
9957         (i386_linux_fetch_inferior_registers)
9958         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
9959         as methods of i386_linux_nat_target.
9960         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
9961         * inf-child.c (inf_child_ops): Delete.
9962         (inf_child_fetch_inferior_registers)
9963         (inf_child_store_inferior_registers): Delete.
9964         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
9965         methods of inf_child_target.
9966         (inf_child_target::supports_terminal_ours)
9967         (inf_child_target::terminal_init)
9968         (inf_child_target::terminal_inferior)
9969         (inf_child_target::terminal_ours_for_output)
9970         (inf_child_target::terminal_ours, inf_child_target::interrupt)
9971         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
9972         New.
9973         (inf_child_open, inf_child_disconnect, inf_child_close)
9974         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
9975         (inf_child_post_startup_inferior, inf_child_can_run)
9976         (inf_child_pid_to_exec_file): Refactor as methods of
9977         inf_child_target.
9978         (inf_child_follow_fork): Delete.
9979         (inf_child_target::can_create_inferior)
9980         (inf_child_target::can_attach): New.
9981         (inf_child_target::has_all_memory, inf_child_target::has_memory)
9982         (inf_child_target::has_stack, inf_child_target::has_registers)
9983         (inf_child_target::has_execution): New.
9984         (inf_child_fileio_open, inf_child_fileio_pwrite)
9985         (inf_child_fileio_pread, inf_child_fileio_fstat)
9986         (inf_child_fileio_close, inf_child_fileio_unlink)
9987         (inf_child_fileio_readlink, inf_child_use_agent)
9988         (inf_child_can_use_agent): Refactor as methods of
9989         inf_child_target.
9990         (return_zero, inf_child_target): Delete.
9991         (inf_child_target::inf_child_target): New.
9992         * inf-child.h: Include "target.h".
9993         (inf_child_target): Delete function prototype.
9994         (inf_child_target): New class.
9995         (inf_child_open_target, inf_child_mourn_inferior)
9996         (inf_child_maybe_unpush_target): Delete.
9997         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
9998         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
9999         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
10000         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
10001         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
10002         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
10003         (inf_ptrace_wait, inf_ptrace_xfer_partial)
10004         (inf_ptrace_thread_alive, inf_ptrace_files_info)
10005         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
10006         methods of inf_ptrace_target.
10007         (inf_ptrace_target): Delete function.
10008         * inf-ptrace.h: Include "inf-child.h".
10009         (inf_ptrace_target): Delete function declaration.
10010         (inf_ptrace_target): New class.
10011         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
10012         * linux-nat.c (linux_target): New.
10013         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
10014         (linux_nat_target::~linux_nat_target): New.
10015         (linux_child_post_attach, linux_child_post_startup_inferior)
10016         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
10017         (linux_child_remove_fork_catchpoint)
10018         (linux_child_insert_vfork_catchpoint)
10019         (linux_child_remove_vfork_catchpoint)
10020         (linux_child_insert_exec_catchpoint)
10021         (linux_child_remove_exec_catchpoint)
10022         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
10023         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
10024         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
10025         (linux_nat_stopped_data_address)
10026         (linux_nat_stopped_by_sw_breakpoint)
10027         (linux_nat_supports_stopped_by_sw_breakpoint)
10028         (linux_nat_stopped_by_hw_breakpoint)
10029         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
10030         (linux_nat_kill, linux_nat_mourn_inferior)
10031         (linux_nat_xfer_partial, linux_nat_thread_alive)
10032         (linux_nat_update_thread_list, linux_nat_pid_to_str)
10033         (linux_nat_thread_name, linux_child_pid_to_exec_file)
10034         (linux_child_static_tracepoint_markers_by_strid)
10035         (linux_nat_is_async_p, linux_nat_can_async_p)
10036         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
10037         (linux_nat_supports_multi_process)
10038         (linux_nat_supports_disable_randomization, linux_nat_async)
10039         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
10040         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
10041         (linux_nat_fileio_open, linux_nat_fileio_readlink)
10042         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
10043         methods of linux_nat_target.
10044         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
10045         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
10046         parameter.
10047         (check_stopped_by_watchpoint): Adjust.
10048         (linux_xfer_partial): Delete.
10049         (linux_target_install_ops, linux_target, linux_nat_add_target):
10050         Delete.
10051         (linux_nat_target::linux_nat_target): New.
10052         * linux-nat.h: Include "inf-ptrace.h".
10053         (linux_nat_target): New.
10054         (linux_target, linux_target_install_ops, linux_nat_add_target):
10055         Delete function declarations.
10056         (linux_target): Declare global.
10057         * linux-thread-db.c (thread_db_target): New.
10058         (thread_db_target::thread_db_target): New.
10059         (thread_db_ops): Delete.
10060         (the_thread_db_target): New.
10061         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
10062         (thread_db_update_thread_list, thread_db_pid_to_str)
10063         (thread_db_extra_thread_info)
10064         (thread_db_thread_handle_to_thread_info)
10065         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
10066         (thread_db_resume): Refactor as methods of thread_db_target.
10067         (init_thread_db_ops): Delete.
10068         (_initialize_thread_db): Remove reference to init_thread_db_ops.
10069         * x86-linux-nat.c: Don't include "linux-nat.h".
10070         (super_post_startup_inferior): Delete.
10071         (x86_linux_nat_target::~x86_linux_nat_target): New.
10072         (x86_linux_child_post_startup_inferior)
10073         (x86_linux_read_description, x86_linux_enable_btrace)
10074         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
10075         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
10076         methods of x86_linux_nat_target.
10077         (x86_linux_create_target): Delete.  Bits folded ...
10078         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
10079         pointer.
10080         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
10081         (x86_linux_nat_target): New class.
10082         (x86_linux_create_target): Delete.
10083         (x86_linux_add_target): Now takes a linux_nat_target pointer.
10084         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
10085         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
10086         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
10087         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
10088         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
10089         make extern.
10090         (x86_use_watchpoints): Delete.
10091         * x86-nat.h: Include "breakpoint.h" and "target.h".
10092         (x86_use_watchpoints): Delete.
10093         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
10094         (x86_stopped_by_watchpoint, x86_stopped_data_address)
10095         (x86_insert_watchpoint, x86_remove_watchpoint)
10096         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
10097         (x86_stopped_by_hw_breakpoint): New declarations.
10098         (x86_nat_target): New template class.
10099
10100         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
10101         (the_ppc_linux_nat_target): New.
10102         (ppc_linux_fetch_inferior_registers)
10103         (ppc_linux_can_use_hw_breakpoint)
10104         (ppc_linux_region_ok_for_hw_watchpoint)
10105         (ppc_linux_ranged_break_num_registers)
10106         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
10107         (ppc_linux_insert_mask_watchpoint)
10108         (ppc_linux_remove_mask_watchpoint)
10109         (ppc_linux_can_accel_watchpoint_condition)
10110         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
10111         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
10112         (ppc_linux_watchpoint_addr_within_range)
10113         (ppc_linux_masked_watch_num_registers)
10114         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
10115         (ppc_linux_read_description): Refactor as methods of
10116         ppc_linux_nat_target.
10117         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
10118
10119         * procfs.c (procfs_xfer_partial): Delete forward declaration.
10120         (procfs_target): New class.
10121         (the_procfs_target): New.
10122         (procfs_target): Delete function.
10123         (procfs_auxv_parse, procfs_attach, procfs_detach)
10124         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
10125         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
10126         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
10127         (procfs_create_inferior, procfs_update_thread_list)
10128         (procfs_thread_alive, procfs_pid_to_str)
10129         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
10130         (procfs_stopped_data_address, procfs_insert_watchpoint)
10131         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
10132         (proc_find_memory_regions, procfs_info_proc)
10133         (procfs_make_note_section): Refactor as methods of procfs_target.
10134         (_initialize_procfs): Adjust.
10135         * sol-thread.c (sol_thread_target): New class.
10136         (sol_thread_ops): Now a sol_thread_target.
10137         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
10138         (sol_thread_fetch_registers, sol_thread_store_registers)
10139         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
10140         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
10141         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
10142         (init_sol_thread_ops): Delete.
10143         (_initialize_sol_thread): Adjust.  Remove references to
10144         init_sol_thread_ops and complete_target_initialization.
10145
10146         * windows-nat.c (windows_nat_target): New class.
10147         (windows_fetch_inferior_registers)
10148         (windows_store_inferior_registers, windows_resume, windows_wait)
10149         (windows_attach, windows_detach, windows_pid_to_exec_file)
10150         (windows_files_info, windows_create_inferior)
10151         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
10152         (windows_close, windows_pid_to_str, windows_xfer_partial)
10153         (windows_get_tib_address, windows_get_ada_task_ptid)
10154         (windows_thread_name, windows_thread_alive): Refactor as
10155         windows_nat_target methods.
10156         (do_initial_windows_stuff): Adjust.
10157         (windows_target): Delete function.
10158         (_initialize_windows_nat): Adjust.
10159
10160         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
10161         (darwin_mourn_inferior, darwin_kill_inferior)
10162         (darwin_create_inferior, darwin_attach, darwin_detach)
10163         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
10164         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
10165         (darwin_supports_multi_process): Refactor as darwin_nat_target
10166         methods.
10167         (darwin_resume_to, darwin_files_info): Delete.
10168         (_initialize_darwin_inferior): Rename to ...
10169         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
10170         * darwin-nat.h: Include "inf-child.h".
10171         (darwin_nat_target): New class.
10172         (darwin_complete_target): Delete.
10173         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
10174         (darwin_target): New.
10175         (i386_darwin_fetch_inferior_registers)
10176         (i386_darwin_store_inferior_registers): Refactor as methods of
10177         darwin_nat_target.
10178         (darwin_complete_target): Delete, with ...
10179         (_initialize_i386_darwin_nat): ... bits factored out here.
10180
10181         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
10182         (the_alpha_linux_nat_target): New.
10183         (alpha_linux_register_u_offset): Refactor as
10184         alpha_linux_nat_target method.
10185         (_initialize_alpha_linux_nat): Adjust.
10186         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
10187         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
10188         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
10189         methods of linux_nat_trad_target.
10190         (linux_trad_target): Delete.
10191         * linux-nat-trad.h (linux_trad_target): Delete function.
10192         (linux_nat_trad_target): New class.
10193         * mips-linux-nat.c (mips_linux_nat_target): New class.
10194         (super_fetch_registers, super_store_registers, super_close):
10195         Delete.
10196         (the_mips_linux_nat_target): New.
10197         (mips64_linux_regsets_fetch_registers)
10198         (mips64_linux_regsets_store_registers)
10199         (mips64_linux_fetch_registers, mips64_linux_store_registers)
10200         (mips_linux_register_u_offset, mips_linux_read_description)
10201         (mips_linux_can_use_hw_breakpoint)
10202         (mips_linux_stopped_by_watchpoint)
10203         (mips_linux_stopped_data_address)
10204         (mips_linux_region_ok_for_hw_watchpoint)
10205         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
10206         (mips_linux_close): Refactor as methods of mips_linux_nat.
10207         (_initialize_mips_linux_nat): Adjust to C++ification.
10208
10209         * aix-thread.c (aix_thread_target): New class.
10210         (aix_thread_ops): Now an aix_thread_target.
10211         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
10212         (aix_thread_fetch_registers, aix_thread_store_registers)
10213         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
10214         (aix_thread_thread_alive, aix_thread_pid_to_str)
10215         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
10216         Refactor as methods of aix_thread_target.
10217         (init_aix_thread_ops): Delete.
10218         (_initialize_aix_thread): Remove references to init_aix_thread_ops
10219         and complete_target_initialization.
10220         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
10221         (rs6000_nat_target): New class.
10222         (the_rs6000_nat_target): New.
10223         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
10224         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
10225         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
10226         (super_create_inferior): Delete.
10227         (_initialize_rs6000_nat): Adjust to C++ification.
10228
10229         * arm-linux-nat.c (arm_linux_nat_target): New class.
10230         (the_arm_linux_nat_target): New.
10231         (arm_linux_fetch_inferior_registers)
10232         (arm_linux_store_inferior_registers, arm_linux_read_description)
10233         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
10234         (arm_linux_remove_hw_breakpoint)
10235         (arm_linux_region_ok_for_hw_watchpoint)
10236         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
10237         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
10238         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
10239         arm_linux_nat_target.
10240         (_initialize_arm_linux_nat): Adjust to C++ification.
10241
10242         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
10243         (the_aarch64_linux_nat_target): New.
10244         (aarch64_linux_fetch_inferior_registers)
10245         (aarch64_linux_store_inferior_registers)
10246         (aarch64_linux_child_post_startup_inferior)
10247         (aarch64_linux_read_description)
10248         (aarch64_linux_can_use_hw_breakpoint)
10249         (aarch64_linux_insert_hw_breakpoint)
10250         (aarch64_linux_remove_hw_breakpoint)
10251         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
10252         (aarch64_linux_region_ok_for_hw_watchpoint)
10253         (aarch64_linux_stopped_data_address)
10254         (aarch64_linux_stopped_by_watchpoint)
10255         (aarch64_linux_watchpoint_addr_within_range)
10256         (aarch64_linux_can_do_single_step): Refactor as methods of
10257         aarch64_linux_nat_target.
10258         (super_post_startup_inferior): Delete.
10259         (_initialize_aarch64_linux_nat): Adjust to C++ification.
10260
10261         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
10262         (the_hppa_linux_nat_target): New.
10263         (hppa_linux_fetch_inferior_registers)
10264         (hppa_linux_store_inferior_registers): Refactor as methods of
10265         hppa_linux_nat_target.
10266         (_initialize_hppa_linux_nat): Adjust to C++ification.
10267
10268         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
10269         (the_ia64_linux_nat_target): New.
10270         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
10271         (ia64_linux_stopped_data_address)
10272         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
10273         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
10274         ia64_linux_nat_target methods.
10275         (super_xfer_partial): Delete.
10276         (_initialize_ia64_linux_nat): Adjust to C++ification.
10277
10278         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
10279         (the_m32r_linux_nat_target): New.
10280         (m32r_linux_fetch_inferior_registers)
10281         (m32r_linux_store_inferior_registers): Refactor as
10282         m32r_linux_nat_target methods.
10283         (_initialize_m32r_linux_nat): Adjust to C++ification.
10284
10285         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
10286         (the_m68k_linux_nat_target): New.
10287         (m68k_linux_fetch_inferior_registers)
10288         (m68k_linux_store_inferior_registers): Refactor as
10289         m68k_linux_nat_target methods.
10290         (_initialize_m68k_linux_nat): Adjust to C++ification.
10291
10292         * s390-linux-nat.c (s390_linux_nat_target): New class.
10293         (the_s390_linux_nat_target): New.
10294         (s390_linux_fetch_inferior_registers)
10295         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
10296         (s390_insert_watchpoint, s390_remove_watchpoint)
10297         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
10298         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
10299         (s390_auxv_parse, s390_read_description): Refactor as methods of
10300         s390_linux_nat_target.
10301         (_initialize_s390_nat): Adjust to C++ification.
10302
10303         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
10304         (the_sparc_linux_nat_target): New.
10305         (_initialize_sparc_linux_nat): Adjust to C++ification.
10306         * sparc-nat.c (sparc_fetch_inferior_registers)
10307         (sparc_store_inferior_registers): Remove target_ops parameter.
10308         * sparc-nat.h (sparc_fetch_inferior_registers)
10309         (sparc_store_inferior_registers): Remove target_ops parameter.
10310         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
10311         (the_sparc64_linux_nat_target): New.
10312         (_initialize_sparc64_linux_nat): Adjust to C++ification.
10313
10314         * spu-linux-nat.c (spu_linux_nat_target): New class.
10315         (the_spu_linux_nat_target): New.
10316         (spu_child_post_startup_inferior, spu_child_post_attach)
10317         (spu_child_wait, spu_fetch_inferior_registers)
10318         (spu_store_inferior_registers, spu_xfer_partial)
10319         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
10320         methods.
10321         (_initialize_spu_nat): Adjust to C++ification.
10322
10323         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
10324         (the_tilegx_linux_nat_target): New.
10325         (fetch_inferior_registers, store_inferior_registers):
10326         Refactor as methods.
10327         (_initialize_tile_linux_nat): Adjust to C++ification.
10328
10329         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
10330         (the_xtensa_linux_nat_target): New.
10331         (xtensa_linux_fetch_inferior_registers)
10332         (xtensa_linux_store_inferior_registers): Refactor as
10333         xtensa_linux_nat_target methods.
10334         (_initialize_xtensa_linux_nat): Adjust to C++ification.
10335
10336         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
10337         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
10338         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
10339         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
10340         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
10341         (fbsd_stopped_by_sw_breakpoint)
10342         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
10343         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
10344         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
10345         (fbsd_post_startup_inferior, fbsd_post_attach)
10346         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
10347         (fbsd_set_syscall_catchpoint)
10348         (super_xfer_partial, super_resume, super_wait)
10349         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
10350         (fbsd_handle_debug_trap): Remove target_ops parameter.
10351         (fbsd_nat_add_target): Delete.
10352         * fbsd-nat.h: Include "inf-ptrace.h".
10353         (fbsd_nat_add_target): Delete.
10354         (USE_SIGTRAP_SIGINFO): Define.
10355         (fbsd_nat_target): New class.
10356
10357         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
10358         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
10359         (amd64bsd_target): Delete.
10360         * amd64-bsd-nat.h: New file.
10361         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
10362         "x86-bsd-nat.h".
10363         (amd64_fbsd_nat_target): New class.
10364         (the_amd64_fbsd_nat_target): New.
10365         (amd64fbsd_read_description): Refactor as method of
10366         amd64_fbsd_nat_target.
10367         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
10368         (_initialize_amd64fbsd_nat): Adjust to C++ification.
10369         * amd64-nat.h (amd64bsd_target): Delete function declaration.
10370         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
10371         (i386bsd_store_inferior_registers): Remove target_ops parameter.
10372         (i386bsd_target): Delete.
10373         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
10374         (i386bsd_fetch_inferior_registers)
10375         (i386bsd_store_inferior_registers): Declare.
10376         (i386_bsd_nat_target): New class.
10377         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
10378         (the_i386_fbsd_nat_target): New.
10379         (i386fbsd_resume, i386fbsd_read_description): Refactor as
10380         i386_fbsd_nat_target methods.
10381         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
10382         (_initialize_i386fbsd_nat): Adjust to C++ification.
10383         * x86-bsd-nat.c (super_mourn_inferior): Delete.
10384         (x86bsd_mourn_inferior, x86bsd_target): Delete.
10385         (_initialize_x86_bsd_nat): Adjust to C++ification.
10386         * x86-bsd-nat.h: Include "x86-nat.h".
10387         (x86bsd_target): Delete declaration.
10388         (x86bsd_nat_target): New class.
10389
10390         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
10391         (the_aarch64_fbsd_nat_target): New.
10392         (aarch64_fbsd_fetch_inferior_registers)
10393         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
10394         aarch64_fbsd_nat_target.
10395         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
10396         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
10397         (the_alpha_bsd_nat_target): New.
10398         (alphabsd_fetch_inferior_registers)
10399         (alphabsd_store_inferior_registers): Refactor as
10400         alpha_bsd_nat_target methods.
10401         (_initialize_alphabsd_nat): Refactor as methods of
10402         alpha_bsd_nat_target.
10403         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
10404         (the_amd64_nbsd_nat_target): New.
10405         (_initialize_amd64nbsd_nat): Adjust to C++ification.
10406         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
10407         (the_amd64_obsd_nat_target): New.
10408         (_initialize_amd64obsd_nat): Adjust to C++ification.
10409         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
10410         (the_arm_fbsd_nat_target): New.
10411         (arm_fbsd_fetch_inferior_registers)
10412         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
10413         (_initialize_arm_fbsd_nat): Refactor as methods of
10414         arm_fbsd_nat_target.
10415         (_initialize_arm_fbsd_nat): Adjust to C++ification.
10416         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
10417         (the_arm_netbsd_nat_target): New.
10418         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
10419         arm_netbsd_nat_target.
10420         (_initialize_arm_netbsd_nat): Adjust to C++ification.
10421         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
10422         (the_hppa_nbsd_nat_target): New.
10423         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
10424         hppa_nbsd_nat_target methods.
10425         (_initialize_hppanbsd_nat): Adjust to C++ification.
10426         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
10427         (the_hppa_obsd_nat_target): New.
10428         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
10429         methods of hppa_obsd_nat_target.
10430         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
10431         add_target.
10432         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
10433         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
10434         add_target.
10435         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
10436         (_initialize_i386obsd_nat): Use add_target.
10437         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
10438         (the_m68k_bsd_nat_target): New.
10439         (m68kbsd_fetch_inferior_registers)
10440         (m68kbsd_store_inferior_registers): Refactor as methods of
10441         m68k_bsd_nat_target.
10442         (_initialize_m68kbsd_nat): Adjust to C++ification.
10443         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
10444         (the_mips_fbsd_nat_target): New.
10445         (mips_fbsd_fetch_inferior_registers)
10446         (mips_fbsd_store_inferior_registers): Refactor as methods of
10447         mips_fbsd_nat_target.
10448         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
10449         add_target.
10450         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
10451         (the_mips_nbsd_nat_target): New.
10452         (mipsnbsd_fetch_inferior_registers)
10453         (mipsnbsd_store_inferior_registers): Refactor as methods of
10454         mips_nbsd_nat_target.
10455         (_initialize_mipsnbsd_nat): Adjust to C++ification.
10456         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
10457         (the_mips64_obsd_nat_target): New.
10458         (mips64obsd_fetch_inferior_registers)
10459         (mips64obsd_store_inferior_registers): Refactor as methods of
10460         mips64_obsd_nat_target.
10461         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
10462         add_target.
10463         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
10464         nbsd_nat_target.
10465         * nbsd-nat.h: Include "inf-ptrace.h".
10466         (nbsd_nat_target): New class.
10467         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
10468         (obsd_wait): Refactor as methods of obsd_nat_target.
10469         (obsd_add_target): Delete.
10470         * obsd-nat.h: Include "inf-ptrace.h".
10471         (obsd_nat_target): New class.
10472         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
10473         (the_ppc_fbsd_nat_target): New.
10474         (ppcfbsd_fetch_inferior_registers)
10475         (ppcfbsd_store_inferior_registers): Refactor as methods of
10476         ppc_fbsd_nat_target.
10477         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
10478         add_target.
10479         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
10480         (the_ppc_nbsd_nat_target): New.
10481         (ppcnbsd_fetch_inferior_registers)
10482         (ppcnbsd_store_inferior_registers): Refactor as methods of
10483         ppc_nbsd_nat_target.
10484         (_initialize_ppcnbsd_nat): Adjust to C++ification.
10485         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
10486         (the_ppc_obsd_nat_target): New.
10487         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
10488         methods of ppc_obsd_nat_target.
10489         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
10490         add_target.
10491         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
10492         (the_sh_nbsd_nat_target): New.
10493         (shnbsd_fetch_inferior_registers)
10494         (shnbsd_store_inferior_registers): Refactor as methods of
10495         sh_nbsd_nat_target.
10496         (_initialize_shnbsd_nat): Adjust to C++ification.
10497         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
10498         (inf_ptrace_xfer_partial): Delete.
10499         (sparc_xfer_partial, sparc_target): Delete.
10500         * sparc-nat.h (sparc_fetch_inferior_registers)
10501         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
10502         (sparc_target): Delete function declaration.
10503         (sparc_target): New template class.
10504         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
10505         (_initialize_sparcnbsd_nat): Adjust to C++ification.
10506         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
10507         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
10508         add_target.
10509         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
10510         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
10511         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
10512         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
10513         add_target.
10514         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
10515         (the_vax_bsd_nat_target): New.
10516         (vaxbsd_fetch_inferior_registers)
10517         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
10518         methods.
10519         (_initialize_vaxbsd_nat): Adjust to C++ification.
10520
10521         * bsd-kvm.c (bsd_kvm_target): New class.
10522         (bsd_kvm_ops): Now a bsd_kvm_target.
10523         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
10524         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
10525         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
10526         bsd_kvm_target.
10527         (bsd_kvm_return_one): Delete.
10528         (bsd_kvm_add_target): Adjust to C++ification.
10529
10530         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
10531         (nto_procfs_target_procfs): New classes.
10532         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
10533         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
10534         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
10535         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
10536         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
10537         (procfs_remove_hw_breakpoint, procfs_resume)
10538         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
10539         (procfs_kill_inferior, procfs_store_registers)
10540         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
10541         as methods of nto_procfs_target.
10542         (nto_procfs_ops): Now an nto_procfs_target_procfs.
10543         (nto_native_ops): Delete.
10544         (procfs_open, procfs_native_open): Delete.
10545         (nto_native_ops): Now an nto_procfs_target_native.
10546         (init_procfs_targets): Adjust to C++ification.
10547         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
10548         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
10549         Refactor as methods of nto_procfs_target.
10550
10551         * go32-nat.c (go32_nat_target): New class.
10552         (the_go32_nat_target): New.
10553         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
10554         (go32_store_registers, go32_xfer_partial, go32_files_info)
10555         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
10556         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
10557         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
10558         (go32_pid_to_str): Refactor as methods of go32_nat_target.
10559         (go32_target): Delete.
10560         (_initialize_go32_nat): Adjust to C++ification.
10561
10562         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
10563         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
10564         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
10565         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
10566         gnu_nat_target.
10567         (gnu_target): Delete.
10568         * gnu-nat.h (gnu_target): Delete.
10569         (gnu_nat_target): New class.
10570         * i386-gnu-nat.c (gnu_base_target): New.
10571         (i386_gnu_nat_target): New class.
10572         (the_i386_gnu_nat_target): New.
10573         (_initialize_i386gnu_nat): Adjust to C++ification.
10574
10575 2018-05-02  Pedro Alves  <palves@redhat.com>
10576
10577         * bfd-target.c (target_bfd_xclose): Rename to ...
10578         (target_bfd_close): ... this.
10579         (target_bfd_reopen): Adjust.
10580         * target.c (target_close): Remove references to to_xclose.
10581         * target.h (target_ops::to_xclose): Delete.
10582         (target_ops::to_close): Update comments.
10583
10584 2018-05-02  Pedro Alves  <palves@redhat.com>
10585
10586         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
10587         "linux-nat.h".
10588         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
10589         * inf-ptrace.c (inf_ptrace_register_u_offset)
10590         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
10591         (inf_ptrace_store_register, inf_ptrace_store_registers)
10592         (inf_ptrace_trad_target): Move to ...
10593         * linux-nat-trad.c: ... this new file.
10594         * linux-nat-trad.h: New file.
10595         * linux-nat.c (linux_target_install_ops): Make extern.
10596         (linux_trad_target): Delete.
10597         * linux-nat.h (linux_trad_target): Delete declaration.
10598         (linux_target_install_ops): Declare.
10599         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
10600         "linux-nat.h".
10601
10602 2018-05-02  Pedro Alves  <palves@redhat.com>
10603
10604         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10605         procfs_target/add_target here.
10606         * procfs.c (procfs_target): Make static.
10607         (_initialize_procfs): Call add_target here.
10608         * procfs.h (struct target_ops): Remove forward declaration.
10609         (procfs_target): Remove declaration.
10610         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
10611
10612 2018-05-02  Pedro Alves  <palves@redhat.com>
10613
10614         * procfs.c (procfs_stopped_by_watchpoint)
10615         (procfs_insert_watchpoint, procfs_remove_watchpoint)
10616         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
10617         Forward declare.
10618         (procfs_use_watchpoints): Delete, move contents...
10619         (procfs_target): ... here.
10620         * procfs.h (procfs_use_watchpoints): Delete declaration.
10621         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10622         procfs_use_watchpoints.
10623         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
10624         procfs_use_watchpoints.
10625
10626 2018-05-02  Tom Tromey  <tom@tromey.com>
10627
10628         PR python/20084:
10629         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
10630         and var_zuinteger_unlimited.
10631         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
10632         and PARAM_ZUINTEGER_UNLIMITED.
10633         (set_parameter_value): Handle var_zuinteger and
10634         var_zuinteger_unlimited.
10635         (add_setshow_generic): Likewise.
10636         (parmpy_init): Likewise.
10637
10638 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
10639
10640         PR rust/23124
10641         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
10642         pointer is not null before dereferencing it.
10643
10644 2018-04-30  Tom Tromey  <tom@tromey.com>
10645
10646         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
10647         is_mi_like_p.
10648
10649 2018-04-30  Tom Tromey  <tom@tromey.com>
10650
10651         * breakpoint.c (mention): Remove use of is_mi_like_p.
10652         (print_mention_ranged_breakpoint): Likewise.
10653         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
10654         of is_mi_like_p.
10655
10656 2018-04-30  Tom Tromey  <tom@tromey.com>
10657
10658         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
10659
10660 2018-04-30  Tom Tromey  <tom@tromey.com>
10661
10662         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
10663         (info_spu_event_command): Remove some uses of is_mi_like_p.
10664
10665 2018-04-30  Tom Tromey  <tom@tromey.com>
10666
10667         * python/py-framefilter.c (py_print_single_arg)
10668         (enumerate_locals, py_print_args, py_print_frame): Remove some
10669         uses of is_mi_like_p.
10670
10671 2018-04-30  Tom Tromey  <tom@tromey.com>
10672
10673         * ui-out.c: Update.
10674         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
10675         * ui-out.h (ui_out::is_mi_like_p): Now const.
10676         (ui_out::do_is_mi_like_p): Now const.
10677         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
10678
10679 2018-04-30  Tom Tromey  <tom@tromey.com>
10680
10681         * varobj.c (varobj_set_visualizer): Use new_reference.
10682         * python/python.c (gdbpy_decode_line): Use new_reference.
10683         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
10684         new_reference.
10685
10686 2018-04-30  Tom Tromey  <tom@tromey.com>
10687
10688         * varobj.c (install_new_value): Use new_reference.
10689         * value.h (value_incref): Return void.  Swap intro comment with
10690         value_decref.
10691         * value.c (set_value_parent): Use new_reference.
10692         (value_incref): Return void.  Update intro comment.
10693         (release_value): Use new_reference.
10694         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
10695
10696 2018-04-30  Tom Tromey  <tom@tromey.com>
10697
10698         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
10699         * gdb_bfd.h (new_bfd_ref): Remove.
10700         (gdb_bfd_open): Update comment.
10701         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
10702         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
10703         (gdb_bfd_fdopenr): Use new_reference.
10704         * exec.c (exec_file_attach): Use new_reference.
10705
10706 2018-04-30  Tom Tromey  <tom@tromey.com>
10707
10708         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
10709         method.
10710
10711 2018-04-30  Tom Tromey  <tom@tromey.com>
10712
10713         * jit.c (jit_read_code_entry): Use type_align.
10714         * i386-tdep.c (i386_gdbarch_init): Don't call
10715         set_gdbarch_long_long_align_bit.
10716         * gdbarch.sh: Remove long_long_align_bit.
10717         * gdbarch.c, gdbarch.h: Rebuild.
10718         * arc-tdep.c (arc_type_align): New function.
10719         (arc_gdbarch_init): Use arc_type_align.  Don't call
10720         set_gdbarch_long_long_align_bit.
10721
10722 2018-04-30  Tom Tromey  <tom@tromey.com>
10723
10724         * rust-lang.c (rust_type_alignment): Remove.
10725         (rust_composite_type): Use type_align.
10726
10727 2018-04-30  Tom Tromey  <tom@tromey.com>
10728
10729         * NEWS: Mention Type.align.
10730         * python/py-type.c (typy_get_alignof): New function.
10731         (type_object_getset): Add "alignof".
10732
10733 2018-04-30  Tom Tromey  <tom@tromey.com>
10734
10735         PR exp/17095:
10736         * NEWS: Update.
10737         * std-operator.def (UNOP_ALIGNOF): New operator.
10738         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
10739         New.
10740         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
10741         * c-lang.c (c_op_print_tab): Add alignof.
10742         * c-exp.y (ALIGNOF): New token.
10743         (exp): Add "ALIGNOF" production.
10744         (ident_tokens): Add _Alignof and alignof.
10745
10746 2018-04-30  Tom Tromey  <tom@tromey.com>
10747
10748         * i386-tdep.c (i386_type_align): New function.
10749         (i386_gdbarch_init): Update.
10750         * gdbarch.sh (type_align): New method.
10751         * gdbarch.c, gdbarch.h: Rebuild.
10752         * arch-utils.h (default_type_align): Declare.
10753         * arch-utils.c (default_type_align): New function.
10754         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
10755         (struct type) <align_log2>: New field.
10756         <instance_flags>: Now a bitfield.
10757         (TYPE_RAW_ALIGN): New macro.
10758         (type_align, type_raw_align, set_type_align): Declare.
10759         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
10760         functions.
10761         * dwarf2read.c (quirk_rust_enum): Set type alignment.
10762         (get_alignment, maybe_set_alignment): New functions.
10763         (read_structure_type, read_enumeration_type, read_array_type)
10764         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
10765         (read_subrange_type, read_base_type): Set type alignment.
10766
10767 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
10768
10769         * dwarf2read.c (read_index_from_section): Use bool.
10770
10771 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
10772
10773         PR gdb/22950
10774         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
10775         with #ifdef.
10776
10777 2018-04-29  John Reiser  <jreiser@BitWagon.com>
10778
10779         PR build/22873
10780         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
10781         last step, and do it atomically.
10782
10783 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
10784
10785         * compile/compile-c-types.c (convert_int, convert_float):
10786         Update for C FE v1.
10787
10788 2018-04-27  Tom Tromey  <tom@tromey.com>
10789
10790         PR rust/22545:
10791         * rust-lang.c (rust_inclusive_range_type_p): New function.
10792         (rust_range): Handle inclusive ranges.
10793         (rust_compute_range): Likewise.
10794         * rust-exp.y (struct rust_op) <inclusive>: New field.
10795         (DOTDOTEQ): New constant.
10796         (range_expr): Add "..=" productions.
10797         (operator_tokens): Add "..=" token.
10798         (ast_range): Add "inclusive" parameter.
10799         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
10800         ranges.
10801         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
10802         bounds values.
10803         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
10804         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
10805         Update comments.
10806         * expprint.c (print_subexp_standard): Handle new bounds values.
10807         (dump_subexp_body_standard): Likewise.
10808
10809 2018-04-27  Tom Tromey  <tom@tromey.com>
10810
10811         * configure: Rebuild.
10812         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
10813         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
10814         "OVERRIDE".
10815         (class symbol_needs_eval_context): Likewise.
10816         * dwarf2read.c (mock_mapped_index::symbol_name_count)
10817         (mock_mapped_index::symbol_name_at): Use "override".  Remove
10818         "virtual".
10819         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
10820         "override".
10821         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
10822         * aarch64-tdep.c (instruction_reader::read): Use "override".
10823         (instruction_reader_test::read): Likewise.
10824         * arm-tdep.c (instruction_reader::read): Use "override".
10825         (instruction_reader_thumb::read): Likewise.
10826
10827 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
10828
10829         PR remote/9665
10830         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
10831         instead of remote_send.
10832         (remote_send): Remove.
10833
10834 2018-04-26  Pedro Alves  <palves@redhat.com>
10835
10836         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
10837         find_function_start_sal instead of find_pc_line.
10838
10839 2018-04-26  Pedro Alves  <palves@redhat.com>
10840
10841         * breakpoint.c (set_breakpoint_location_function): Handle
10842         mst_data_gnu_ifunc.
10843         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
10844         * elfread.c (elf_symtab_read): Give data symbols with
10845         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
10846         (elf_rel_plt_read): Update comment.
10847         * linespec.c (convert_linespec_to_sals): Handle
10848         mst_data_gnu_ifunc.
10849         (minsym_found): Handle mst_data_gnu_ifunc.
10850         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
10851         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
10852         * parse.c (find_minsym_type_and_address): Handle
10853         mst_data_gnu_ifunc.
10854         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
10855         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
10856         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
10857         comment.
10858         <mst_data_gnu_ifunc>: New enumerator.
10859
10860 2018-04-26  Pedro Alves  <palves@redhat.com>
10861
10862         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
10863         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
10864         'want_trampoline' parameter by a lookup_msym_prefer parameter.
10865         Handle it.
10866         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
10867         (lookup_minimal_symbol_by_pc): Adjust.
10868         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
10869         (lookup_solib_trampoline_symbol_by_pc): Adjust.
10870         * minsyms.h (lookup_msym_prefer): New enum.
10871         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
10872         parameter by a lookup_msym_prefer parameter.
10873
10874 2018-04-26  Pedro Alves  <palves@redhat.com>
10875
10876         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
10877         ends in "@plt" instead of looking at the symbol's section.
10878
10879 2018-04-26  Pedro Alves  <palves@redhat.com>
10880
10881         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
10882         all references.
10883         (find_pc_partial_function_gnu_ifunc): Rename to ...
10884         (find_pc_partial_function): ... this, and remove references to
10885         'is_gnu_ifunc_p'.
10886         (find_pc_partial_function): Delete old implementation.
10887         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
10888
10889 2018-04-26  Pedro Alves  <palves@redhat.com>
10890
10891         * linespec.c (struct bound_minimal_symbol_search_key): New.
10892         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
10893         skip first line if we found a GNU ifunc minimal symbol by name.
10894         (compare_msymbols): Change parameters to work with a destructured
10895         lhs minsym.
10896         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
10897         functions.
10898
10899 2018-04-26  Pedro Alves  <palves@redhat.com>
10900
10901         * breakpoint.c (set_breakpoint_location_function): Don't resolve
10902         ifunc targets here.  Instead, if we have an ifunc minsym, use its
10903         address/name.
10904         (add_location_to_breakpoint): Store the minsym and the objfile in
10905         the breakpoint location.
10906         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
10907         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
10908         Record the minsym in the sal.
10909         * symtab.h (symtab_and_line) <msymbol>: New field.
10910
10911 2018-04-26  Pedro Alves  <palves@redhat.com>
10912
10913         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
10914         unless we actually resolved the ifunc.
10915
10916 2018-04-26  Pedro Alves  <palves@redhat.com>
10917
10918         * c-exp.y (variable production): Prefer ifunc minsyms over
10919         regular function symbols.
10920         * symtab.c (find_gnu_ifunc): New function.
10921         * minsyms.h (lookup_msym_prefer): New enum.
10922         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
10923         parameter by a lookup_msym_prefer parameter.
10924         * symtab.h (find_gnu_ifunc): New declaration.
10925
10926 2018-04-26  Pedro Alves  <palves@redhat.com>
10927
10928         * blockframe.c (find_gnu_ifunc_target_type): New function.
10929         (find_function_type): New.
10930         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
10931         return a value with a memory address.
10932         (eval_call): For calls to GNU ifunc functions, try to find the
10933         type of the target function from the type that the resolver
10934         returns.
10935         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
10936         symbols.
10937         * infcall.c (find_function_return_type): Delete.
10938         (find_function_addr): Add 'function_type' parameter.  For calls to
10939         GNU ifunc functions, try to find the type of the target function
10940         from the type that the resolver returns, and return it via
10941         FUNCTION_TYPE.
10942         (call_function_by_hand_dummy): Adjust to use the function type
10943         returned by find_function_addr.
10944         (find_function_addr): Add 'function_type' parameter and move
10945         description here.
10946         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
10947         declarations.
10948
10949 2018-04-26  Pedro Alves  <palves@redhat.com>
10950
10951         * c-exp.y (variable production): Skip finding an alias for ifunc
10952         symbols.
10953
10954 2018-04-26  Pedro Alves  <palves@redhat.com>
10955
10956         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
10957
10958 2018-04-25  Pedro Alves  <palves@redhat.com>
10959
10960         * infcmd.c (kill_command): Print the pid as string, not the whole
10961         thread's ptid.  Add comment.  s/has been killed/killed/ in output
10962         message.
10963         * remote.c (remote_detach_1): Print the pid as string, not the
10964         whole thread's ptid.
10965
10966 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
10967             Sergio Durigan Junior  <sergiodj@redhat.com>
10968             Pedro Alves  <palves@redhat.com>
10969
10970         * infcmd.c (kill_command): Print message when inferior has
10971         been killed.
10972         * inferior.c (print_inferior_events): Remove 'static'.  Set as
10973         '1'.
10974         (add_inferior): Improve message printed when
10975         'print_inferior_events' is on.
10976         (exit_inferior): Remove message printed when
10977         'print_inferior_events' is on.
10978         (detach_inferior): Improve message printed when
10979         'print_inferior_events' is on.
10980         (initialize_inferiors): Use 'add_inferior_silent' to set
10981         'current_inferior_'.
10982         * inferior.h (print_inferior_events): Declare here as
10983         'extern'.
10984         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
10985         '[Detaching...]' messages when 'print_inferior_events' is on.
10986         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
10987         as prefix/suffix for messages.  Remove periods.  Fix erroneous
10988         'Detaching after fork from child...', replace it by '... from
10989         parent...'.
10990         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
10991         prefix/suffix when printing 'Detaching...' messages.  Print
10992         them when 'print_inferior_events' is on.
10993         * remote.c (remote_detach_1): Print message when detaching
10994         from inferior and '!is_fork_parent'.
10995
10996 2018-04-24  Tom Tromey  <tom@tromey.com>
10997
10998         * cli-out.h: Reindent.
10999
11000 2018-04-24  Tom Tromey  <tom@tromey.com>
11001
11002         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
11003         (cli_ui_out::do_field_string): Use fputs_filtered.
11004         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
11005
11006 2018-04-23  Tom Tromey  <tom@tromey.com>
11007
11008         * guile/scm-frame.c (gdbscm_frame_read_var): Use
11009         gdb::unique_xmalloc_ptr.
11010
11011 2018-04-23  Tom Tromey  <tom@tromey.com>
11012
11013         * configure: Rebuild.
11014
11015 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
11016
11017         PR gdb/23095
11018         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
11019         prepare_for_testing.  Set normal_bp to r_debug_state if target
11020         is bsd.
11021
11022 2018-04-21  Pedro Alves  <palves@redhat.com>
11023             Rajendra SY  <rajendra.sy@gmail.com>
11024
11025         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
11026         * remote.c (extended_remote_attach): In all-stop mode, mark the
11027         thread as executing.
11028
11029 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
11030
11031         * thread.c (thread_apply_all_command): Fix comment.
11032         (thread_command): Fix comment.
11033
11034 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
11035
11036         * common/tdesc.h (tdesc_create_feature): Remove xml filename
11037         parameter.
11038         * features/aarch64-core.c (create_feature_aarch64_core):
11039         Regenerate.
11040         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
11041         Likewise.
11042         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
11043         Likewise.
11044         * features/i386/32bit-avx512.c
11045         (create_feature_i386_32bit_avx512): Likewise.
11046         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
11047         Likewise.
11048         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
11049         Likewise.
11050         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
11051         Likewise.
11052         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
11053         Likewise.
11054         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
11055         Likewise.
11056         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
11057         Likewise.
11058         * features/i386/64bit-avx512.c
11059         (create_feature_i386_64bit_avx512): Likewise.
11060         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
11061         Likewise.
11062         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
11063         Likewise.
11064         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
11065         Likewise.
11066         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
11067         Likewise.
11068         * features/i386/64bit-segments.c
11069         (create_feature_i386_64bit_segments): Likewise.
11070         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
11071         Likewise.
11072         * features/i386/x32-core.c
11073         (create_feature_i386_x32_core): Likewise.
11074         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
11075         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
11076         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
11077         * target-descriptions.c: In generated code, don't pass xml
11078         filename.
11079
11080 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11081
11082         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
11083         (print_xml_feature::visit_post): Likewise.
11084         (print_xml_feature::visit): Likewise.
11085         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
11086         (print_xml_feature): Add new class.
11087         * regformats/regdat.sh: Null xmltarget on feature targets.
11088         * target-descriptions.c (struct target_desc): Add xmltarget.
11089         (maintenance_check_tdesc_xml_convert): Add unittest function.
11090         (tdesc_get_features_xml): Add function to get xml.
11091         (maintenance_check_xml_descriptions): Test xml generation.
11092         * xml-tdesc.c (string_read_description_xml): Add function.
11093         * xml-tdesc.h (string_read_description_xml): Add declaration.
11094
11095 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11096
11097         * features/Makefile: Add feature marker to targets with new style
11098         target descriptions.
11099         * regformats/aarch64.dat: Regenerate.
11100         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
11101         * regformats/i386/amd64-avx-linux.dat: Likewise.
11102         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
11103         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
11104         * regformats/i386/amd64-linux.dat: Likewise.
11105         * regformats/i386/amd64-mpx-linux.dat: Likewise.
11106         * regformats/i386/amd64.dat: Likewise.
11107         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
11108         * regformats/i386/i386-avx-linux.dat: Likewise.
11109         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
11110         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
11111         * regformats/i386/i386-linux.dat: Likewise.
11112         * regformats/i386/i386-mmx-linux.dat: Likewise.
11113         * regformats/i386/i386-mpx-linux.dat: Likewise.
11114         * regformats/i386/i386.dat: Likewise.
11115         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
11116         * regformats/i386/x32-avx-linux.dat: Likewise.
11117         * regformats/i386/x32-linux.dat: Likewise.
11118         * regformats/tic6x-c62x-linux.dat: Likewise.
11119         * regformats/tic6x-c64x-linux.dat: Likewise.
11120         * regformats/tic6x-c64xp-linux.dat: Likewise.
11121         * regformats/regdat.sh: Parse feature marker.
11122
11123 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11124
11125         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
11126         (tdesc_osabi_name): Likewise.
11127         * target-descriptions.c (tdesc_architecture_name): Add new
11128         function.
11129         (tdesc_osabi_name): Likewise.
11130
11131 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11132
11133         * common/tdesc.c (tdesc_predefined_type): Move to here.
11134         (tdesc_named_type): Likewise.
11135         (tdesc_create_vector): Likewise.
11136         (tdesc_create_struct): Likewise.
11137         (tdesc_set_struct_size): Likewise.
11138         (tdesc_create_union): Likewise.
11139         (tdesc_create_flags): Likewise.
11140         (tdesc_create_enum): Likewise.
11141         (tdesc_add_field): Likewise.
11142         (tdesc_add_typed_bitfield): Likewise.
11143         (tdesc_add_bitfield): Likewise.
11144         (tdesc_add_flag): Likewise.
11145         (tdesc_add_enum_value): Likewise.
11146         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
11147         (struct tdesc_type_vector): Likewise.
11148         (struct tdesc_type_field): Likewise.
11149         (struct tdesc_type_with_fields): Likewise.
11150         (tdesc_create_enum): Add declaration.
11151         (tdesc_add_typed_bitfield): Likewise.
11152         (tdesc_add_enum_value): Likewise.
11153         * target-descriptions.c (tdesc_type_field): Move from here.
11154         (tdesc_type_builtin): Likewise.
11155         (tdesc_type_vector): Likewise.
11156         (tdesc_type_with_fields): Likewise.
11157         (tdesc_predefined_types): Likewise.
11158         (tdesc_named_type): Likewise.
11159         (tdesc_create_vector): Likewise.
11160         (tdesc_create_struct): Likewise.
11161         (tdesc_set_struct_size): Likewise.
11162         (tdesc_create_union): Likewise.
11163         (tdesc_create_flags): Likewise.
11164         (tdesc_create_enum): Likewise.
11165         (tdesc_add_field): Likewise.
11166         (tdesc_add_typed_bitfield): Likewise.
11167         (tdesc_add_bitfield): Likewise.
11168         (tdesc_add_flag): Likewise.
11169         (tdesc_add_enum_value): Likewise.
11170         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
11171         (tdesc_add_typed_bitfield): Likewise.
11172         (tdesc_add_enum_value): Likewise.
11173
11174 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11175
11176         * common/tdesc.c (tdesc_feature::accept): Move to here.
11177         (tdesc_feature::operator==): Likewise.
11178         (tdesc_create_reg): Likewise.
11179         * common/tdesc.h (tdesc_type_kind): Likewise.
11180         (struct tdesc_type): Likewise.
11181         (struct tdesc_feature): Likewise.
11182         * regformats/regdat.sh: Create a feature.
11183         * target-descriptions.c (tdesc_type_kind): Move from here.
11184         (tdesc_type): Likewise.
11185         (tdesc_type_up): Likewise.
11186         (tdesc_feature): Likewise.
11187         (tdesc_create_reg): Likewise.
11188
11189 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11190
11191         * Makefile.in: Add arch/tdesc.c
11192         * common/tdesc.c: New file.
11193         * common/tdesc.h (tdesc_element_visitor): Move to here.
11194         (tdesc_element): Likewise.
11195         (tdesc_reg): Likewise.
11196         (tdesc_reg_up): Likewise.
11197         * regformats/regdef.h (reg): Add offset to constructors.
11198         * target-descriptions.c (tdesc_element_visitor): Move from here.
11199         (tdesc_element): Likewise.
11200         (tdesc_reg): Likewise.
11201         (tdesc_reg_up): Likewise.
11202
11203 2018-04-17  Tom Tromey  <tom@tromey.com>
11204
11205         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
11206         discriminant field.
11207
11208 2018-04-17  Tom Tromey  <tom@tromey.com>
11209
11210         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
11211
11212 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11213
11214         * symtab.c (print_symbol_info): Skip printing filename and line
11215         number when `last' is NULL.
11216         (symtab_symbol_info): Use empty string instead of NULL for first
11217         invocation of print_symbol_info.
11218         (rbreak_command): Pass NULL to `last' parameter of
11219         print_symbol_info.
11220
11221 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
11222
11223         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
11224         instead of nullptr.
11225
11226 2018-04-16  Pedro Alves  <palves@redhat.com>
11227
11228         * MAINTAINERS (sh): Remove.
11229         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
11230         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
11231         (ALLDEPFILES): Remove sh64-tdep.c.
11232         * NEWS: Mentions that support for SH-5/SH64 is removed.
11233         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
11234         (sh*-*-openbsd*): Ditto.
11235         (sh64-*-elf*): Remove.
11236         (sh*): Remove.
11237         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
11238         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
11239         * sh-tdep.c: No longer include "sh64-tdep.h".
11240         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
11241         * sh64-tdep.c, sh64-tdep.h: Remove files.
11242
11243 2018-04-16  Pedro Alves  <palves@redhat.com>
11244
11245         * MAINTAINERS: Remove m88k.
11246         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
11247         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
11248         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
11249         * NEWS: Mention that support for m88k was removed.
11250         * configure.host (m88*-*-*): Remove support.
11251         * configure.nat (m88k-*-*): Remove support.
11252         * configure.tgt (m88*-*-openbsd*): Remove.
11253         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
11254
11255 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
11256
11257         * configure.tgt (x86_tobjs): New variable.
11258         (amd64_tobjs, i386_tobjs): Use it.
11259
11260 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11261
11262         * symtab.c (print_symbol_info): Precede the symbol definition by
11263         the line number when available.
11264         * NEWS: Advertise this enhancement.
11265
11266 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11267
11268         * NEWS (New options): announce set/show record btrace cpu.
11269         * btrace.c: Include record-btrace.h.
11270         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
11271         the vendor is unknown.
11272         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
11273         Maybe overwrite the btrace configuration's cpu.
11274         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
11275         (btrace_fetch): Add cpu parameter.  Update callers.
11276         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
11277         Maybe overwrite the btrace configuration's cpu.  Skip enabling
11278         errata workarounds if the vendor is unknown.
11279         * python/py-record-btrace.c: Include record-btrace.h.
11280         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
11281         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
11282         * record-btrace.c (record_btrace_cpu_state_kind): New.
11283         (record_btrace_cpu): New.
11284         (set_record_btrace_cpu_cmdlist): New.
11285         (record_btrace_get_cpu): New.
11286         (require_btrace_thread, record_btrace_info)
11287         (record_btrace_resume_thread): Call record_btrace_get_cpu.
11288         (cmd_set_record_btrace_cpu_none): New.
11289         (cmd_set_record_btrace_cpu_auto): New.
11290         (cmd_set_record_btrace_cpu): New.
11291         (cmd_show_record_btrace_cpu): New.
11292         (_initialize_record_btrace): Initialize set/show record btrace cpu
11293         commands.
11294         * record-btrace.h (record_btrace_get_cpu): New.
11295
11296 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11297
11298         * record.c (set_record_command): Fix typo in message.
11299
11300 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11301
11302         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
11303
11304 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11305
11306         * infrun.c (process_event_stop_test): Call
11307         gdbarch_in_indirect_branch_thunk.
11308         * gdbarch.sh (in_indirect_branch_thunk): New.
11309         * gdbarch.c: Regenerated.
11310         * gdbarch.h: Regenerated.
11311         * x86-tdep.h: New.
11312         * x86-tdep.c: New.
11313         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
11314         (HFILES_NO_SRCDIR): Add x86-tdep.h.
11315         (ALLDEPFILES): Add x86-tdep.c.
11316         * arch-utils.h (default_in_indirect_branch_thunk): New.
11317         * arch-utils.c (default_in_indirect_branch_thunk): New.
11318         * i386-tdep: Include x86-tdep.h.
11319         (i386_in_indirect_branch_thunk): New.
11320         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
11321         function.
11322         * amd64-tdep: Include x86-tdep.h.
11323         (amd64_in_indirect_branch_thunk): New.
11324         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
11325
11326 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
11327
11328         PR gdb/23053
11329         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
11330         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
11331         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
11332         regression.
11333
11334 2018-04-12  Tom Tromey  <tom@tromey.com>
11335
11336         * rust-lang.c (rust_print_struct_def): Remove univariant code.
11337         (rust_evaluate_subexp): Likewise.
11338
11339 2018-04-12  Pedro Alves  <palves@redhat.com>
11340
11341         * procfs.c (procfs_detach): Make forward declaration's prototype
11342         match definition's protototype.
11343         (proc_get_LDT_entry): Remove stale do_cleanups call.
11344
11345 2018-04-12  Pedro Alves  <palves@redhat.com>
11346
11347         * target.h (target_ops::to_has_exited): Delete.
11348         (target_has_exited): Delete.
11349         * target-delegates.c: Regenerate.
11350
11351 2018-04-11  Pedro Alves  <palves@redhat.com>
11352
11353         * target.c (fileio_fh_t::t): Add comment.
11354         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
11355         (target_fileio_close): Handle a NULL target.
11356         (invalidate_fileio_fh): New.
11357         (target_close): Call it.
11358         * remote.c (remote_hostio_send_command): No longer check whether
11359         remote_desc is open.
11360
11361 2018-04-11  Pedro Alves  <palves@redhat.com>
11362
11363         * target.c (fileio_fh_t): Make it a named struct instead of a
11364         typedef.
11365         (fileio_fh_t::is_closed): New method.
11366         (DEF_VEC_O (fileio_fh_t)): Remove.
11367         (fileio_fhandles): Now a std::vector.
11368         (is_closed_fileio_fh): Delete.
11369         (acquire_fileio_fd): Adjust.  Rename parameters.
11370         (release_fileio_fd): Adjust.
11371         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
11372         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
11373         (target_fileio_close): Adjust.
11374
11375 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
11376
11377         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
11378         index.
11379
11380 2018-04-10  Pedro Alves  <palves@redhat.com>
11381
11382         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
11383         (scoped_finish_thread_state): New class.
11384         * infcmd.c (run_command_1): Use it instead of finish_thread_state
11385         cleanup.
11386         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
11387         (fetch_inferior_event, normal_stop): Likewise.
11388         * thread.c (finish_thread_state_cleanup): Delete.
11389
11390 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11391             Pedro Alves  <palves@redhat.com>
11392
11393         * value.c: Include "selftest.h" and "common/array-view.h".
11394         (struct range) <operator ==>: New.
11395         (test_ranges_contain): New.
11396         (check_ranges_vector): New.
11397         (test_insert_into_bit_range_vector): New.
11398         (_initialize_values): Register selftests.
11399         * common/array-view.h (operator==, operator!=): New.
11400
11401 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11402
11403         * common/gdb_vecs.h (unordered_remove): Add overload that takes
11404         an iterator.
11405         * inline-frame.c: Include <algorithm>.
11406         (struct inline_state): Add constructor.
11407         (inline_state_s): Remove.
11408         (DEF_VEC_O(inline_state_s)): Remove.
11409         (inline_states): Change type to std::vector.
11410         (find_inline_frame_state): Adjust to std::vector.
11411         (allocate_inline_frame_state): Remove.
11412         (clear_inline_frame_state): Adjust to std::vector.
11413         (skip_inline_frames): Adjust to std::vector.
11414
11415 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11416
11417         * tracepoint.h (struct trace_state_variable): Add constructor.
11418         <name>: Change type to std::string.
11419         * tracepoint.c (tsv_s): Remove.
11420         (DEF_VEC_O(tsv_s)): Remove.
11421         (tvariables): Change to std::vector.
11422         (create_trace_state_variable): Adjust to std::vector.
11423         (find_trace_state_variable): Likewise.
11424         (find_trace_state_variable_by_number): Likewise.
11425         (delete_trace_state_variable): Likewise.
11426         (trace_variable_command): Adjust to std::string.
11427         (delete_trace_variable_command): Likewise.
11428         (tvariables_info_1): Adjust to std::vector.
11429         (save_trace_state_variables): Likewise.
11430         (start_tracing): Likewise.
11431         (merge_uploaded_trace_state_variables): Adjust to std::vector
11432         and std::string.
11433         * target.h (struct target_ops)
11434         <to_download_trace_state_variable>: Pass reference to
11435         trace_state_variable.
11436         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
11437         * target-delegates.c: Re-generate.
11438         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
11439         (mi_tsv_deleted): Likewise.
11440         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
11441         * remote.c (remote_download_trace_state_variable): Change
11442         pointer to reference and adjust.
11443         * make-target-delegates (parse_argtypes): Handle references.
11444         (write_function_header): Likewise.
11445         (munge_type): Likewise.
11446
11447 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11448
11449         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11450         string_view-selftests.c.
11451         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
11452         testsuite.
11453         * unittests/basic_string_view/cons/char/1.cc: Likewise.
11454         * unittests/basic_string_view/cons/char/2.cc: Likewise.
11455         * unittests/basic_string_view/cons/char/3.cc: Likewise.
11456         * unittests/basic_string_view/element_access/char/1.cc:
11457         Likewise.
11458         * unittests/basic_string_view/element_access/char/empty.cc:
11459         Likewise.
11460         * unittests/basic_string_view/element_access/char/front_back.cc:
11461         Likewise.
11462         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
11463         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
11464         Likewise.
11465         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
11466         Likewise.
11467         * unittests/basic_string_view/modifiers/swap/char/1.cc:
11468         Likewise.
11469         * unittests/basic_string_view/operations/compare/char/1.cc:
11470         Likewise.
11471         * unittests/basic_string_view/operations/compare/char/13650.cc:
11472         Likewise.
11473         * unittests/basic_string_view/operations/copy/char/1.cc:
11474         Likewise.
11475         * unittests/basic_string_view/operations/data/char/1.cc:
11476         Likewise.
11477         * unittests/basic_string_view/operations/find/char/1.cc:
11478         Likewise.
11479         * unittests/basic_string_view/operations/find/char/2.cc:
11480         Likewise.
11481         * unittests/basic_string_view/operations/find/char/3.cc:
11482         Likewise.
11483         * unittests/basic_string_view/operations/find/char/4.cc:
11484         Likewise.
11485         * unittests/basic_string_view/operations/rfind/char/1.cc:
11486         Likewise.
11487         * unittests/basic_string_view/operations/rfind/char/2.cc:
11488         Likewise.
11489         * unittests/basic_string_view/operations/rfind/char/3.cc:
11490         Likewise.
11491         * unittests/basic_string_view/operations/substr/char/1.cc:
11492         Likewise.
11493         * unittests/basic_string_view/operators/char/2.cc: Likewise.
11494         * unittests/string_view-selftests.c: New file.
11495
11496 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11497
11498         * unittests/basic_string_view/capacity/1.cc: New file.
11499         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
11500         * unittests/basic_string_view/cons/char/1.cc: New file.
11501         * unittests/basic_string_view/cons/char/2.cc: New file.
11502         * unittests/basic_string_view/cons/char/3.cc: New file.
11503         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
11504         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
11505         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
11506         * unittests/basic_string_view/element_access/char/1.cc: New file.
11507         * unittests/basic_string_view/element_access/char/2.cc: New file.
11508         * unittests/basic_string_view/element_access/char/empty.cc: New file.
11509         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
11510         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
11511         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
11512         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
11513         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
11514         * unittests/basic_string_view/include.cc: New file.
11515         * unittests/basic_string_view/inserters/char/1.cc: New file.
11516         * unittests/basic_string_view/inserters/char/2.cc: New file.
11517         * unittests/basic_string_view/inserters/char/3.cc: New file.
11518         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
11519         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
11520         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
11521         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
11522         * unittests/basic_string_view/literals/types.cc: New file.
11523         * unittests/basic_string_view/literals/values.cc: New file.
11524         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
11525         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
11526         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
11527         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
11528         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
11529         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
11530         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
11531         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
11532         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
11533         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
11534         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
11535         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
11536         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
11537         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
11538         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
11539         * unittests/basic_string_view/operations/data/char/1.cc: New file.
11540         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
11541         * unittests/basic_string_view/operations/find/char/1.cc: New file.
11542         * unittests/basic_string_view/operations/find/char/2.cc: New file.
11543         * unittests/basic_string_view/operations/find/char/3.cc: New file.
11544         * unittests/basic_string_view/operations/find/char/4.cc: New file.
11545         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
11546         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
11547         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
11548         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
11549         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
11550         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
11551         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
11552         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
11553         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
11554         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
11555         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
11556         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
11557         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
11558         * unittests/basic_string_view/operators/char/2.cc: New file.
11559         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
11560         * unittests/basic_string_view/range_access/char/1.cc: New file.
11561         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
11562         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
11563         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
11564         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
11565         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
11566         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
11567         * unittests/basic_string_view/requirements/typedefs.cc: New file.
11568         * unittests/basic_string_view/typedefs.cc: New file.
11569         * unittests/basic_string_view/types/1.cc: New file.
11570
11571 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11572
11573         * common/gdb_string_view.h: Remove libstdc++ implementation
11574         details, adjust to gdb reality.
11575         * common/gdb_string_view.tcc: Likewise.
11576         * cli/cli-script.c (struct string_view): Remove.
11577         (user_args) <m_args>: Change element type to gdb::string_view.
11578         (user_args::insert_args): Adjust.
11579
11580 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11581
11582         * common/gdb_string_view.h: New file.
11583         * common/gdb_string_view.tcc: New file.
11584
11585 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11586
11587         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
11588         * configure: Re-generate.
11589
11590 2018-04-09  Pedro Alves  <palves@redhat.com>
11591
11592         * gdbarch.sh: Include "observable.h" instead of "observer.h".
11593         (set_target_gdbarch): Call
11594         gdb::observers::architecture_changed.notify instead of
11595         observer_notify_architecture_changed.
11596
11597 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11598
11599         * tracepoint.c (struct current_traceframe_cleanup): Remove.
11600         (do_restore_current_traceframe_cleanup): Remove.
11601         (restore_current_traceframe_cleanup_dtor): Remove.
11602         (make_cleanup_restore_current_traceframe): Remove.
11603         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
11604         New.
11605         * tracepoint.h (struct scoped_restore_current_traceframe): New.
11606         * infrun.c (fetch_inferior_event): Use
11607         scoped_restore_current_traceframe.
11608
11609 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11610
11611         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
11612         Remove.
11613         <n_allocated_type_units>: Remove.
11614         <all_type_units>: Change to std::vector.
11615         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11616         to std::vector change.
11617         (dwarf2_per_objfile::get_cutu): Likewise.
11618         (dwarf2_per_objfile::get_tu): Likewise.
11619         (create_signatured_type_table_from_index): Likewise.
11620         (create_signatured_type_table_from_debug_names): Likewise.
11621         (dw2_symtab_iter_next): Likewise.
11622         (dw2_print_stats): Likewise.
11623         (dw2_expand_all_symtabs): Likewise.
11624         (dw2_expand_marked_cus): Likewise.
11625         (dw2_debug_names_iterator::next): Likewise.
11626         (dwarf2_initialize_objfile): Likewise.
11627         (add_signatured_type_cu_to_table): Likewise.
11628         (create_all_type_units): Likewise.
11629         (add_type_unit): Likewise.
11630         (struct tu_abbrev_offset): Add constructor.
11631         (build_type_psymtabs_1): Adjust to std::vector change.
11632         (print_tu_stats): Likewise.
11633         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
11634         (write_debug_names): Likewise.
11635
11636 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11637
11638         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
11639         Make an std::vector.
11640         <n_comp_units>: Remove.
11641         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11642         to std::vector change.
11643         (dwarf2_per_objfile::get_cutu): Likewise.
11644         (dwarf2_per_objfile::get_cu): Likewise.
11645         (create_cus_from_index): Likewise.
11646         (create_addrmap_from_index): Likewise.
11647         (create_addrmap_from_aranges): Likewise.
11648         (dwarf2_read_index): Likewise.
11649         (dw2_find_last_source_symtab): Likewise.
11650         (dw2_map_symtabs_matching_filename): Likewise.
11651         (dw2_symtab_iter_next): Likewise.
11652         (dw2_print_stats): Likewise.
11653         (dw2_expand_all_symtabs): Likewise.
11654         (dw2_expand_symtabs_with_fullname): Likewise.
11655         (dw2_expand_marked_cus): Likewise.
11656         (dw2_map_symbol_filenames): Likewise.
11657         (create_cus_from_debug_names): Likewise.
11658         (dwarf2_read_debug_names): Likewise.
11659         (dw2_debug_names_iterator::next): Likewise.
11660         (dwarf2_initialize_objfile): Likewise.
11661         (set_partial_user): Likewise.
11662         (dwarf2_build_psymtabs_hard): Likewise.
11663         (read_comp_units_from_section): Remove arguments, adjust to
11664         std::vector change.
11665         (create_all_comp_units): Adjust to std::vector and
11666         read_comp_units_from_section changes.
11667         (dwarf2_find_containing_comp_unit): Adjust to std::vector
11668         change.
11669         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
11670         (psyms_seen_size): Likewise.
11671         (write_gdbindex): Likewise.
11672         (write_debug_names): Likewise.
11673
11674 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11675
11676         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
11677         with dwarf2_per_objfile.
11678         (create_cus_from_index): Likewise.
11679         (create_signatured_type_table_from_index): Likewise.
11680         (dwarf2_read_index): Likewise.
11681         (dwarf2_initialize_objfile): Likewise.
11682         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
11683         per_cu rather than get_dwarf2_per_objfile.
11684
11685 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11686
11687         * dwarf2read.h (struct signatured_type): Forward declare.
11688         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
11689         New methods.
11690         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
11691         (dw2_get_cutu): ...this.
11692         (dwarf2_per_objfile::get_cu): Rename from...
11693         (dw2_get_cu): ...this.
11694         (dwarf2_per_objfile::get_tu): New.
11695         (create_addrmap_from_index): Adjust.
11696         (create_addrmap_from_aranges): Adjust.
11697         (dw2_find_last_source_symtab): Adjust.
11698         (dw2_map_symtabs_matching_filename): Adjust.
11699         (dw2_symtab_iter_next): Adjust.
11700         (dw2_print_stats): Adjust.
11701         (dw2_expand_all_symtabs): Adjust.
11702         (dw2_expand_symtabs_with_fullname): Adjust.
11703         (dw2_expand_marked_cus): Adjust.
11704         (dw_expand_symtabs_matching_file_matcher): Adjust.
11705         (dw2_map_symbol_filenames): Adjust.
11706         (dw2_debug_names_iterator::next): Adjust.
11707         (dwarf2_initialize_objfile): Adjust.
11708         (set_partial_user): Adjust.
11709         (dwarf2_build_psymtabs_hard): Adjust.
11710
11711 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11712
11713         * dwarf2read.c (create_signatured_type_table_from_debug_names):
11714         Remove unused variables.
11715         (dw2_map_symtabs_matching_filename): Likewise.
11716         (dwarf2_record_block_ranges): Likewise.
11717         (dwarf2_read_addr_index): Likewise.
11718         (follow_die_offset): Likewise.
11719
11720 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11721
11722         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
11723         to symbol_file_add_main.
11724
11725 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11726
11727         PR mi/22299
11728         * mi/mi-console.c (do_fputc_async_safe): New.
11729         (mi_console_file::write_async_safe): New.
11730         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
11731         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
11732         New.
11733         * ui-file.c (ui_file::putstrn): Adjust call to
11734         fputstrn_unfiltered.
11735         * utils.c (printchar): Replace do_fputs and do_fprintf
11736         parameters by do_fputc.
11737         (fputstr_filtered): Adjust call to printchar.
11738         (fputstr_unfiltered): Likewise.
11739         (fputstrn_filtered): Likewise.
11740         (fputstrn_unfiltered): Add do_fputc parameter, pass to
11741         printchar.
11742         * utils.h (do_fputc_ftype): New typedef.
11743         (fputstrn_unfiltered): Add do_fputc parameter.
11744
11745 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11746
11747         * regformats/i386/i386-avx.dat: Remove.
11748
11749 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11750
11751         PR gdb/22979
11752         * amd64-tdep.c (amd64_none_init_abi): New function.
11753         (amd64_x32_none_init_abi): New function.
11754         (_initialize_amd64_tdep): Register handlers for x86-64 and
11755         x64_32 with GDB_OSABI_NONE.
11756         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
11757         GDB_OSABI_NONE osabi.
11758
11759 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11760
11761         PR gdb/22980
11762         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
11763         GDB_OSABI_NONE.
11764         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
11765         * osabi.c (gdb_osabi_names): Add "unknown" entry.
11766
11767 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11768
11769         * common/byte-vector.h (char_vector): New type.
11770         * target.h (target_read_alloc): Return
11771         gdb::optional<byte_vector>.
11772         (target_read_stralloc): Return gdb::optional<char_vector>.
11773         (target_get_osdata): Return gdb::optional<char_vector>.
11774         * target.c (target_read_alloc_1): Templatize.  Replacement
11775         manual memory management with vector.
11776         (target_read_alloc): Change return type, adjust.
11777         (target_read_stralloc): Change return type, adjust.
11778         (target_get_osdata): Change return type, adjust.
11779         * auxv.c (struct auxv_info) <length>: Remove.
11780         <data>: Change type to gdb::optional<byte_vector>.
11781         (auxv_inferior_data_cleanup): Free auxv_info with delete.
11782         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
11783         (target_auxv_search): Adjust.
11784         (fprint_target_auxv): Adjust.
11785         * avr-tdep.c (avr_io_reg_read_command): Adjust.
11786         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
11787         (linux_make_corefile_notes): Adjust.
11788         * osdata.c (get_osdata): Adjust.
11789         * remote.c (remote_get_threads_with_qxfer): Adjust.
11790         (remote_memory_map): Adjust.
11791         (remote_traceframe_info): Adjust.
11792         (btrace_read_config): Adjust.
11793         (remote_read_btrace): Adjust.
11794         (remote_pid_to_exec_file): Adjust.
11795         * solib-aix.c (solib_aix_get_library_list): Adjust.
11796         * solib-dsbt.c (decode_loadmap): Don't free buf.
11797         (dsbt_get_initial_loadmaps): Adjust.
11798         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
11799         * solib-target.c (solib_target_current_sos): Adjust.
11800         * tracepoint.c (sdata_make_value): Adjust.
11801         * xml-support.c (xinclude_start_include): Adjust.
11802         (xml_fetch_content_from_file): Adjust.
11803         * xml-support.h (xml_fetch_another): Change return type.
11804         (xml_fetch_content_from_file): Change return type.
11805         * xml-syscall.c (xml_init_syscalls_info): Adjust.
11806         * xml-tdesc.c (file_read_description_xml): Adjust.
11807         (fetch_available_features_from_target): Change return type.
11808         (target_fetch_description_xml): Adjust.
11809         (target_read_description_xml): Adjust.
11810
11811 2018-04-06  Tom Tromey  <tom@tromey.com>
11812
11813         * value.c (~value): Update.
11814         (struct value) <contents>: Now unique_xmalloc_ptr.
11815         (value_contents_bits_eq, allocate_value_contents)
11816         (value_contents_raw, value_contents_all_raw)
11817         (value_contents_for_printing, value_contents_for_printing_const)
11818         (set_value_enclosing_type): Update.
11819
11820 2018-04-06  Tom Tromey  <tom@tromey.com>
11821
11822         * value.c (range_s): Remove typedef, VEC.
11823         (struct range): Add operator<.
11824         (range_lessthan): Remove.
11825         (ranges_contain): Change type.
11826         (~value): Update.
11827         (struct value) <unavailable, optimized_out>: Now std::vector.
11828         (value_entirely_available)
11829         (value_entirely_covered_by_range_vector)
11830         (value_entirely_unavailable, value_entirely_optimized_out):
11831         Update.
11832         (insert_into_bit_range_vector): Change argument type.
11833         (find_first_range_overlap): Likewise.
11834         (struct ranges_and_idx, value_contents_bits_eq)
11835         (require_not_optimized_out, require_available): Update.
11836         (ranges_copy_adjusted): Change argument types.
11837         (value_optimized_out, value_copy, value_fetch_lazy): Update.
11838
11839 2018-04-06  Tom Tromey  <tom@tromey.com>
11840
11841         * value.c (~value): Update.
11842         (struct value) <parent>: Now a value_ref_ptr.
11843         (value_parent, set_value_parent, value_address, value_copy):
11844         Update.
11845
11846 2018-04-06  Tom Tromey  <tom@tromey.com>
11847
11848         * value.c (struct value): Add constructor, destructor, and member
11849         initializers.
11850         (allocate_value_lazy, value_decref): Update.
11851
11852 2018-04-06  Tom Tromey  <tom@tromey.com>
11853
11854         * value.c (struct value) <released, next>: Remove.
11855         (all_values): Now a std::vector.
11856         (allocate_value_lazy): Update.
11857         (value_next): Remove.
11858         (value_mark, value_free_to_mark, release_value)
11859         (value_release_to_mark): Update.
11860
11861 2018-04-06  Tom Tromey  <tom@tromey.com>
11862
11863         * value.h (fetch_subexp_value, value_release_to_mark): Update.
11864         (free_value_chain): Remove.
11865         * value.c (free_value_chain): Remove.
11866         (value_release_to_mark): Return a std::vector.
11867         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
11868         std::vector.
11869         (check_condition): Update.
11870         * eval.c (fetch_subexp_value): Change "val_chain" to a
11871         std::vector.
11872         * breakpoint.c (update_watchpoint): Update.
11873         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
11874
11875 2018-04-06  Tom Tromey  <tom@tromey.com>
11876
11877         * value.h (free_all_values): Remove.
11878         * value.c (free_all_values): Remove.
11879
11880 2018-04-06  Tom Tromey  <tom@tromey.com>
11881
11882         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
11883         (value_history_chain, value_history_count): Remove.
11884         (value_history): New global.
11885         (record_latest_value, access_value_history, show_values)
11886         (preserve_values): Update.
11887
11888 2018-04-06  Tom Tromey  <tom@tromey.com>
11889
11890         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
11891         * varobj.c (varobj_set_display_format, varobj_set_value)
11892         (install_default_visualizer, construct_visualizer)
11893         (install_new_value, ~varobj, varobj_get_value_type)
11894         (my_value_of_variable, varobj_editable_p): Update.
11895         * c-varobj.c (c_describe_child, c_value_of_variable)
11896         (cplus_number_of_children, cplus_describe_child): Update.
11897         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
11898         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
11899         (ada_value_of_variable, ada_value_is_changeable_p): Update.
11900
11901 2018-04-06  Tom Tromey  <tom@tromey.com>
11902
11903         * printcmd.c (last_examine_address): Change type to
11904         value_ref_ptr.
11905         (do_examine, x_command): Update.
11906
11907 2018-04-06  Tom Tromey  <tom@tromey.com>
11908
11909         * value.c (release_value): Update.
11910         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
11911         (struct bpstats) <val>: Now a value_ref_ptr.
11912         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
11913         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
11914         (~watchpoint, print_it_watchpoint, watch_command_1)
11915         (invalidate_bp_value_on_memory_change): Update.
11916
11917 2018-04-06  Tom Tromey  <tom@tromey.com>
11918
11919         * varobj.c (varobj_clear_saved_item)
11920         (update_dynamic_varobj_children, install_new_value, ~varobj):
11921         Update.
11922         * value.h (value_incref): Move declaration earlier.
11923         (value_decref): Rename from value_free.
11924         (struct value_ref_policy): New.
11925         (value_ref_ptr): New typedef.
11926         (struct value_deleter): Remove.
11927         (gdb_value_up): Remove typedef.
11928         (release_value): Change return type.
11929         (release_value_or_incref): Remove.
11930         * value.c (set_value_parent): Update.
11931         (value_incref): Change return type.
11932         (value_decref): Rename from value_free.
11933         (value_free_to_mark, free_all_values, free_value_chain): Update.
11934         (release_value): Return value_ref_ptr.
11935         (release_value_or_incref): Remove.
11936         (record_latest_value, set_internalvar, clear_internalvar):
11937         Update.
11938         * stack.c (info_frame_command): Don't call value_free.
11939         * python/py-value.c (valpy_dealloc, valpy_new)
11940         (value_to_value_object): Update.
11941         * printcmd.c (do_examine): Update.
11942         * opencl-lang.c (lval_func_free_closure): Update.
11943         * mi/mi-main.c (register_changed_p): Don't call value_free.
11944         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
11945         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
11946         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
11947         value_free.
11948         * guile/scm-value.c (vlscm_free_value_smob)
11949         (vlscm_scm_from_value): Update.
11950         * frame.c (frame_register_unwind, frame_unwind_register_signed)
11951         (frame_unwind_register_unsigned, get_frame_register_bytes)
11952         (put_frame_register_bytes): Don't call value_free.
11953         * findvar.c (address_from_register): Don't call value_free.
11954         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
11955         * dwarf2loc.c (entry_data_value_free_closure)
11956         (value_of_dwarf_reg_entry, free_pieced_value_closure)
11957         (dwarf2_evaluate_loc_desc_full): Update.
11958         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
11959         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
11960         (~watchpoint, watch_command_1)
11961         (invalidate_bp_value_on_memory_change): Update.
11962         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
11963
11964 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
11965
11966         PR gdb/23022
11967         * warning.m4: Add -Wno-error=deprecated-register.
11968         * configure: Re-generate.
11969
11970 2018-04-05  Tom Tromey  <tom@tromey.com>
11971
11972         * linespec.h: Remove include of "vec.h".
11973
11974 2018-04-05  Tom Tromey  <tom@tromey.com>
11975
11976         * linespec.c (typep): Remove typedef.
11977         (find_methods, find_superclass_methods): Take a std::vector.
11978         (find_method): Use std::vector.
11979
11980 2018-04-05  Tom Tromey  <tom@tromey.com>
11981
11982         * utils.c (compare_strings): Remove.
11983         * utils.h (compare_strings): Remove.
11984         * objc-lang.h (find_imps): Update.
11985         * objc-lang.c (find_methods): Take a std::vector.
11986         (uniquify_strings, find_imps): Likewise.
11987         * linespec.c (find_methods): Take a std::vector.
11988         (decode_objc): Use std::vector.
11989         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
11990         a std::vector.
11991         (find_method, find_function_symbols): Use std::vector.
11992
11993 2018-04-05  Tom Tromey  <tom@tromey.com>
11994
11995         * completer.c (completion_tracker::completion_tracker): Remove
11996         cast.
11997         (completion_tracker::discard_completions): Likewise.
11998         * breakpoint.c (ambiguous_names_p): Remove cast.
11999         * ada-lang.c (_initialize_ada_language): Remove cast.
12000         * utils.h (streq): Update.
12001         (streq_hash): Add new declaration.
12002         * utils.c (streq): Return bool.
12003         (streq_hash): New function.
12004
12005 2018-04-05  Tom Tromey  <tom@tromey.com>
12006
12007         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
12008         Remove a string copy.
12009
12010 2018-04-05  Tom Tromey  <tom@tromey.com>
12011
12012         * linespec.c (filter_results): Use std::vector.
12013         (decode_line_2, decode_line_full): Update.
12014
12015 2018-04-05  Tom Tromey  <tom@tromey.com>
12016
12017         * linespec.c (canonical_to_fullform): Return std::string.
12018         (filter_results): Update.
12019         (struct decode_line_2_item): Add constructor.
12020         <fullform, displayform>: Now std::string.
12021         (decode_line_2_compare_items): Now a std::sort comparator.
12022         (decode_line_2): Update.
12023
12024 2018-04-05  Tom Tromey  <tom@tromey.com>
12025
12026         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
12027         (unexpected_linespec_error): Update.
12028         (linespec_parse_basic, parse_linespec): Update.
12029
12030 2018-04-05  Tom Tromey  <tom@tromey.com>
12031
12032         * linespec.c (linespec_parse_basic): Reindent.
12033
12034 2018-04-05  Tom Tromey  <tom@tromey.com>
12035
12036         * minsyms.h (iterate_over_minimal_symbols): Update.
12037         * minsyms.c (iterate_over_minimal_symbols): Take a
12038         gdb::function_view.
12039         * linespec.c (struct collect_minsyms): Remove.
12040         (compare_msyms): Now a std::sort comparator.
12041         (add_minsym): Add parameters.
12042         (search_minsyms_for_name): Update.  Use std::vector.
12043
12044 2018-04-03  Tom Tromey  <tom@tromey.com>
12045
12046         * mipsread.c (read_alphacoff_dynamic_symtab): Use
12047         gdb::byte_vector.
12048
12049 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
12050
12051         * MAINTAINERS (Write After Approval): Add Weimin Pan.
12052
12053 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
12054
12055         PR gdb/16959
12056         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
12057         printing static type.
12058
12059 2018-04-01  Tom Tromey  <tom@tromey.com>
12060
12061         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
12062         (rs6000_xfer_shared_libraries): Update.
12063
12064 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
12065
12066         * common/gdb_vecs.h (char_ptr): Remove.
12067         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
12068
12069 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
12070
12071         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
12072         with std::vector.
12073         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
12074
12075 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
12076
12077         * tracepoint.h (struct uploaded_tp): Initialize fields.
12078         <actions, step_actions, cmd_strings>: Change type to
12079         std::vector<char *>.
12080         * tracepoint.c (get_uploaded_tp): Allocate with new.
12081         (free_uploaded_tps): Free with delete.
12082         (parse_tracepoint_definition): Adjust to std::vector change.
12083         * breakpoint.c (read_uploaded_action): Likewise.
12084         (create_tracepoint_from_upload): Likewise.
12085         * ctf.c (ctf_write_uploaded_tp): Likewise.
12086         (SET_ARRAY_FIELD): Likewise.
12087         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
12088
12089 2018-03-30  Tom Tromey  <tom@tromey.com>
12090
12091         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
12092         std::unique_ptr.
12093         (svr4_keep_data_in_core): Update.
12094         (svr4_read_so_list): Update.
12095
12096 2018-03-30  Tom Tromey  <tom@tromey.com>
12097
12098         * windows-nat.c (handle_output_debug_string, handle_exception):
12099         Update.
12100         * target.h (target_read_string): Update.
12101         * target.c (target_read_string): Change "string" to
12102         unique_xmalloc_ptr.
12103         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
12104         Update.
12105         * solib-frv.c (frv_current_sos): Update.
12106         * solib-dsbt.c (dsbt_current_sos): Update.
12107         * solib-darwin.c (darwin_current_sos): Update.
12108         * linux-thread-db.c (inferior_has_bug): Update.
12109         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
12110         Update.  Remove alloca.
12111         * ada-lang.c (ada_main_name): Update.
12112
12113 2018-03-30  Tom Tromey  <tom@tromey.com>
12114
12115         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
12116         (struct dwo_file_deleter): New.
12117         (dwo_file_up): New typedef.
12118         (open_and_init_dwo_file): Use dwo_file_up.
12119         (free_dwo_file_cleanup): Remove.
12120
12121 2018-03-30  Tom Tromey  <tom@tromey.com>
12122
12123         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
12124         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
12125
12126 2018-03-30  Tom Tromey  <tom@tromey.com>
12127
12128         * dwarf2read.c (class free_cached_comp_units): New class.
12129         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
12130         (free_cached_comp_units): Remove function.
12131
12132 2018-03-30  Tom Tromey  <tom@tromey.com>
12133
12134         * utils.h (make_cleanup_unpush_target): Remove.
12135         * inf-ptrace.c (struct target_unpusher): New.
12136         (target_unpush_up) New typedef.
12137         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
12138         target_unpush_up.
12139         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
12140
12141 2018-03-27  Tom Tromey  <tom@tromey.com>
12142
12143         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
12144
12145 2018-03-27  Pedro Alves  <palves@redhat.com>
12146             Tom Tromey  <tom@tromey.com>
12147
12148         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
12149         destructor.  Now a class.
12150         (gdb_readline_wrapper_cleanup): Remove function.
12151         (gdb_readline_wrapper): Remove cleanups.
12152
12153 2018-03-27  Tom Tromey  <tom@tromey.com>
12154
12155         * typeprint.h (struct type_print_options) <local_typedefs,
12156         global_typedefs>: Remove "struct" keyword.
12157         (class typedef_hash_table): New class.
12158         (recursively_update_typedef_hash, add_template_parameters)
12159         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
12160         (find_typedef_in_hash): Don't declare.
12161         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
12162         (typedef_hash_table::recursively_update): Rename from
12163         recursively_update_typedef_hash.  Now a member.
12164         (typedef_hash_table::add_template_parameters): Rename from
12165         add_template_parameters.  Now a member.
12166         (typedef_hash_table::typedef_hash_table): Now a constructor;
12167         rename from create_typedef_hash.
12168         (typedef_hash_table::~typedef_hash_table): Now a destructor;
12169         rename from free_typedef_hash.
12170         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
12171         (do_free_global_table): Remove.
12172         (typedef_hash_table::typedef_hash_table): New constructor; renamed
12173         from copy_type_recursive.
12174         (create_global_typedef_table): Remove.
12175         (typedef_hash_table::find_global_typedef): Now a member of
12176         typedef_hash_table.
12177         (typedef_hash_table::find_typedef): Rename from
12178         find_typedef_in_hash; now a member.
12179         (whatis_exp): Update.
12180         * extension.h (struct ext_lang_type_printers): Add constructor and
12181         destructor.
12182         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
12183         declare.
12184         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
12185         Now a constructor; rename from start_ext_lang_type_printers.
12186         (ext_lang_type_printers): Now a destructor; rename from
12187         free_ext_lang_type_printers.
12188         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
12189         Update.
12190         (c_type_print_base_struct_union): Update.  Remove cleanups.
12191
12192 2018-03-27  Tom Tromey  <tom@tromey.com>
12193
12194         * dwarf-index-write.c: Include <cmath>.
12195
12196 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
12197
12198         * NEWS: Add entry describing new "set|show varsize-limit" command.
12199         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
12200         command.
12201         * printcmd.c (_initialize_printcmd): Add "set var" alias of
12202         "set variable".
12203
12204 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
12205
12206         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
12207         dwarf-index-write.c
12208         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
12209         * dwarf-index-common.c: New file.
12210         * dwarf-index-common.h: New file.
12211         * dwarf-index-write.c: New file.
12212         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
12213         (struct dwarf2_section_info): Move from here.
12214         (dwarf2_section_info_def): Likewise.
12215         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
12216         (offset_type): Likewise.
12217         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
12218         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
12219         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
12220         (byte_swap): Likewise.
12221         (MAYBE_SWAP): Likewise.
12222         (dwarf2_per_cu_ptr): Likewise.
12223         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
12224         (struct tu_stats): Likewise.
12225         (struct dwarf2_per_objfile): Likewise.
12226         (struct dwarf2_per_cu_data): Likewise.
12227         (struct signatured_type): Likewise.
12228         (sig_type_ptr): Likewise.
12229         (DEF_VEC_P (sig_type_ptr)): Likewise.
12230         (INDEX4_SUFFIX): Likewise.
12231         (INDEX5_SUFFIX): Likewise.
12232         (DEBUG_STR_SUFFIX): Likewise.
12233         (dwarf2_read_section): Make non-static.
12234         (mapped_index_string_hash): Move from here.
12235         (dwarf5_djb_hash): Likewise.
12236         (file_write): Likewise.
12237         (class data_buf): Likewise.
12238         (struct symtab_index_entry): Likewise.
12239         (struct mapped_symtab): Likewise.
12240         (find_slot): Likewise.
12241         (hash_expand): Likewise.
12242         (add_index_entry): Likewise.
12243         (uniquify_cu_indices): Likewise.
12244         (class c_str_view): Likewise.
12245         (class c_str_view_hasher): Likewise.
12246         (class vector_hasher): Likewise.
12247         (write_hash_table): Likewise.
12248         (psym_index_map): Likewise.
12249         (struct addrmap_index_data): Likewise.
12250         (add_address_entry): Likewise.
12251         (add_address_entry_worker): Likewise.
12252         (write_address_map): Likewise.
12253         (symbol_kind): Likewise.
12254         (write_psymbols): Likewise.
12255         (struct signatured_type_index_data): Likewise.
12256         (write_one_signatured_type): Likewise.
12257         (recursively_count_psymbols): Likewise.
12258         (recursively_write_psymbols): Likewise.
12259         (class debug_names): Likewise.
12260         (check_dwarf64_offsets): Likewise.
12261         (psyms_seen_size): Likewise.
12262         (write_gdbindex): Likewise.
12263         (write_debug_names): Likewise.
12264         (assert_file_size): Likewise.
12265         (write_psymtabs_to_index): Likewise.
12266         (save_gdb_index_command): Likewise.
12267         (_initialize_dwarf2_read): Don't register the "save gdb-index"
12268         command.
12269         * dwarf2read.h: New file.
12270
12271 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
12272
12273         PR gdb/22670
12274         * dwarf2read.c (dwarf2_physname): Do not return the demangled
12275         symbol name if the CU's language stores symbol names in linkage
12276         format.
12277         * language.h (struct language_defn)
12278         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
12279         all instances of this struct.
12280
12281 2018-03-26  Tom Tromey  <tom@tromey.com>
12282
12283         * stack.c (backtrace_command_1): Remove verbose code.
12284
12285 2018-03-26  Tom Tromey  <tom@tromey.com>
12286
12287         * python/py-framefilter.c (py_print_type): Don't catch
12288         exceptions.  Return void.
12289         (py_print_value): Likewise.
12290         (py_print_single_arg): Likewise.
12291         (enumerate_args): Don't catch exceptions.
12292         (py_print_args): Likewise.
12293         (py_print_frame): Likewise.
12294         (gdbpy_apply_frame_filter): Catch exceptions here.
12295
12296 2018-03-26  Tom Tromey  <tom@tromey.com>
12297
12298         * stack.c (_initialize_stack): Remove trailing newlines from help
12299         text.  Add "Usage" line to "backtrace" help.
12300
12301 2018-03-26  Tom Tromey  <tom@tromey.com>
12302
12303         PR python/16486:
12304         * python/py-framefilter.c (py_print_args): Call wrap_hint.
12305
12306 2018-03-26  Tom Tromey  <tom@tromey.com>
12307
12308         * python/py-framefilter.c (py_print_single_arg): Return
12309         EXT_LANG_BT_ERROR from catch.
12310
12311 2018-03-26  Tom Tromey  <tom@tromey.com>
12312
12313         PR backtrace/15584:
12314         * stack.c (backtrace_command_1): Move some code into no-filters
12315         "if".
12316
12317 2018-03-26  Tom Tromey  <tom@tromey.com>
12318
12319         * python/py-framefilter.c (throw_quit_or_print_exception): New
12320         function.
12321         (gdbpy_apply_frame_filter): Use it.
12322
12323 2018-03-26  Tom Tromey  <tom@tromey.com>
12324
12325         PR cli/17716:
12326         * python/py-framefilter.c (py_print_type, py_print_value)
12327         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
12328         RETURN_MASK_ERROR.
12329
12330 2018-03-26  Tom Tromey  <tom@tromey.com>
12331
12332         * python/py-framefilter.c (enumerate_args): Use
12333         gdb::unique_xmalloc_ptr.
12334
12335 2018-03-26  Tom Tromey  <tom@tromey.com>
12336
12337         * python/py-framefilter.c (py_print_frame): Return
12338         EXT_LANG_BT_OK.
12339         (gdbpy_apply_frame_filter): Update comment.
12340         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
12341         Remove.
12342         <EXT_LANG_BT_NO_FILTERS>: Change value.
12343
12344 2018-03-26  Tom Tromey  <tom@tromey.com>
12345
12346         PR backtrace/15582:
12347         * stack.c (backtrace_command): Parse "hide" argument.
12348         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
12349         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
12350         constant.
12351
12352 2018-03-26  Tom Tromey  <tom@tromey.com>
12353
12354         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
12355         add "flags".
12356         (backtrace_command): Remove "fulltrace", add "flags".
12357
12358 2018-03-26  Tom Tromey  <tom@tromey.com>
12359
12360         * stack.c (backtrace_command): Rewrite command line parsing.
12361
12362 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
12363
12364         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
12365
12366 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
12367
12368         * filename-seen-cache.h: Add include guard.
12369
12370 2018-03-26  Keith Seitz  <keiths@redhat.com>
12371
12372         * symfile.c (place_section): Remove "struct" from section_addr_info
12373         in comment.
12374         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
12375         "struct" keyword from section_addr_info.
12376
12377 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
12378
12379         * regformats/regdef.h (reg): Add constructors.
12380
12381 2018-03-25  Pedro Alves  <palves@redhat.com>
12382
12383         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
12384         if then/else bodies in var_func_name extraction.
12385
12386 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
12387
12388         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
12389         lookup_minimal_symbol() to find symbol entry.
12390         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
12391
12392 2018-03-23  Keith Seitz  <keiths@redhat.com>
12393
12394         PR c++/22968
12395         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
12396         nested type definitions for C++, too.
12397
12398 2018-03-23  Tom Tromey  <tom@tromey.com>
12399
12400         * machoread.c (struct oso_el): Add a constructor.  Don't define as
12401         a typedef.
12402         (macho_register_oso): Remove.
12403         (macho_symtab_read): Take a std::vector.
12404         (oso_el_compare_name): Now a std::sort comparator.
12405         (macho_symfile_read_all_oso): Take a std::vector.
12406         (macho_symfile_read): Use std::vector.  Remove cleanups.
12407
12408 2018-03-22  Tom Tromey  <tom@tromey.com>
12409
12410         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
12411         (record_full_goto_bookmark): Use std::string.
12412
12413 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12414
12415         PR tdep/18295
12416         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
12417         a single mask.
12418
12419 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12420
12421         * rs6000-tdep.c (store_insn_p): New function.
12422         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
12423         and cr_reg to their unshifted values. Use store_insn_p to
12424         match LR saves using either R1 or fdata->alloca_reg. Use
12425         store_insn_p to match CR saves. Set alloca_reg_offset
12426         when alloca_reg and framep are set. Remove lr_reg shift
12427         when assigning to fdata->lr_register.
12428
12429 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12430
12431         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
12432         command line args instead of emitting a warning.
12433
12434 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
12435
12436         * tracepoint.h (struct static_tracepoint_marker): Initialize
12437         fields, define default constructor, move constructor and move
12438         assignment, disable the rest.
12439         <str_id, extra>: Make std::string.
12440         (release_static_tracepoint_marker): Remove.
12441         (free_current_marker): Remove.
12442         * tracepoint.c (free_current_marker): Remove.
12443         (parse_static_tracepoint_marker_definition): Adjust to
12444         std::string, use new hex2str overload.
12445         (release_static_tracepoint_marker): Remove.
12446         (print_one_static_tracepoint_marker): Get marker by reference
12447         and adjust to std::string.
12448         (info_static_tracepoint_markers_command): Adjust to std::vector
12449         changes
12450         * target.h (static_tracepoint_marker_p): Remove typedef.
12451         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
12452         (struct target_ops) <to_static_tracepoint_marker_at>: Return
12453         bool.
12454         <to_static_tracepoint_markers_by_strid>: Return std::vector.
12455         * target-debug.h
12456         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
12457         (target_debug_print_std_vector_static_tracepoint_marker): New.
12458         (target_debug_print_struct_static_tracepoint_marker_p): Rename
12459         to...
12460         (target_debug_print_static_tracepoint_marker_p): ... this.
12461         * target-delegates.c: Re-generate.
12462         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
12463         Make std::string.
12464         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
12465         (decode_static_tracepoint_spec): Adjust to std::vector.
12466         (tracepoint_print_one_detail): Adjust to std::string.
12467         (strace_marker_decode_location): Adjust to std::string.
12468         (update_static_tracepoint): Adjust to std::string, remove call
12469         to release_static_tracepoint_marker.
12470         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
12471         Adjust to std::vector.
12472         * remote.c (remote_static_tracepoint_marker_at): Return bool.
12473         (remote_static_tracepoint_markers_by_strid): Adjust to
12474         std::vector.
12475         * common/rsp-low.h (hex2str): New overload with explicit count
12476         of bytes.
12477         * common/rsp-low.c (hex2str): New overload with explicit count
12478         of bytes.
12479         * unittests/rsp-low-selftests.c (test_hex2str): New function.
12480         (_initialize_rsp_low_selftests): Add test_hex2str test.
12481         * unittests/tracepoint-selftests.c
12482         (test_parse_static_tracepoint_marker_definition): Adjust to
12483         std::string.
12484
12485 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
12486
12487         * tracepoint.c (parse_static_tracepoint_marker_definition):
12488         Consider case where the definition is followed by more
12489         definitions.
12490         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12491         tracepoint-selftests.c.
12492         * unittests/tracepoint-selftests.c: New.
12493
12494 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12495
12496         * MAINTAINERS (Write After Approval): Add Pedro Franco de
12497         Carvalho.
12498
12499 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
12500
12501         * symtab.c (find_pc_sect_line): fixed indentation.
12502
12503 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
12504
12505         * symtab.c (find_pc_sect_line): now uses binary search.
12506
12507 2018-03-19  Tom Tromey  <tom@tromey.com>
12508
12509         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
12510         "IDENT" production.
12511
12512 2018-03-19  Pedro Alves  <palves@redhat.com>
12513             Tom Tromey  <tom@tromey.com>
12514
12515         * unittests/observable-selftests.c: New file.
12516         * common/observable.h: New file.
12517         * observable.h: New file.
12518         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
12519         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
12520         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
12521         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
12522         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
12523         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
12524         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
12525         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
12526         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
12527         python/py-breakpoint.c, python/py-finishbreakpoint.c,
12528         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
12529         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
12530         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
12531         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
12532         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
12533         tui/tui-interp.c, valops.c: Update all users.
12534         * tui/tui-hooks.c (tui_bp_created_observer)
12535         (tui_bp_deleted_observer, tui_bp_modified_observer)
12536         (tui_inferior_exit_observer, tui_before_prompt_observer)
12537         (tui_normal_stop_observer, tui_register_changed_observer):
12538         Remove.
12539         (tui_observers_token): New global.
12540         (attach_or_detach, tui_attach_detach_observers): New functions.
12541         (tui_install_hooks, tui_remove_hooks): Use
12542         tui_attach_detach_observers.
12543         * record-btrace.c (record_btrace_thread_observer): Remove.
12544         (record_btrace_thread_observer_token): New global.
12545         * observer.sh: Remove.
12546         * observer.c: Rename to observable.c.
12547         * observable.c (namespace gdb_observers): Define new objects.
12548         (observer_debug): Move into gdb_observers namespace.
12549         (struct observer, struct observer_list, xalloc_observer_list_node)
12550         (xfree_observer_list_node, generic_observer_attach)
12551         (generic_observer_detach, generic_observer_notify): Remove.
12552         (_initialize_observer): Update.
12553         Don't include observer.inc.
12554         * Makefile.in (generated_files): Remove observer.h, observer.inc.
12555         (clean mostlyclean): Likewise.
12556         (observer.h, observer.inc): Remove targets.
12557         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
12558         (COMMON_SFILES): Use observable.c, not observer.c.
12559         * .gitignore: Remove observer.h.
12560
12561 2018-03-18  Tom Tromey  <tom@tromey.com>
12562
12563         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
12564         gdb::def_vector.
12565         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
12566
12567 2018-03-17  Tom Tromey  <tom@tromey.com>
12568
12569         * auto-load.c (auto_load_objfile_script_1): Use std::string.
12570
12571 2018-03-17  Tom Tromey  <tom@tromey.com>
12572
12573         * target.c (class scoped_target_fd): New.
12574         (target_fileio_close_cleanup): Remove.
12575         (target_fileio_read_alloc_1): Use scoped_target_fd.
12576
12577 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
12578
12579         * silent-rules.mk: New.
12580         * Makefile.in: Include silent-rules.mk
12581         (srcdir, VPATH, top_srcdir): Move up.
12582         (COMPILE): Add ECHO_CXX.
12583         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
12584         (init.c): Add ECHO_INIT_C.
12585         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
12586         (version.c): Add ECHO_GEN.
12587         (printcmd.o): Add ECHO_CXX.
12588         (target-float.o): Add ECHO_CXX.
12589         (ada-exp.o): Add ECHO_CXX.
12590         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
12591         (insight$(EXEEXT)): Add ECHO_CXXLD.
12592         * gnulib/configure.ac: Add AM_SILENT_RULES.
12593         * gnulib/aclocal.m4: Re-generate.
12594         * gnulib/configure: Re-generate.
12595         * gnulib/import/Makefile.in: Re-generate.
12596
12597 2018-03-16  Tom Tromey  <tom@tromey.com>
12598
12599         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
12600         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
12601         * utils.c (do_free_section_addr_info)
12602         (make_cleanup_free_section_addr_info): Remove.
12603         * symfile.h (struct other_sections): Add constructor.
12604         (struct section_addr_info): Remove.
12605         (section_addr_info): New typedef.
12606         (struct sym_fns) <sym_offsets>: Change type of parameter.
12607         (build_section_addr_info_from_objfile)
12608         (relative_addr_info_to_section_offsets, addr_info_make_relative)
12609         (default_symfile_offsets, symbol_file_add)
12610         (symbol_file_add_from_bfd)
12611         (build_section_addr_info_from_section_table): Update.
12612         (alloc_section_addr_info, free_section_addr_info): Don't declare.
12613         * symfile.c (alloc_section_addr_info): Remove.
12614         (build_section_addr_info_from_section_table): Change return type.
12615         Update.
12616         (build_section_addr_info_from_bfd)
12617         (build_section_addr_info_from_objfile): Likewise.
12618         (free_section_addr_info): Remove.
12619         (relative_addr_info_to_section_offsets): Change type of "addrs".
12620         (addrs_section_compar): Now a std::sort comparator.
12621         (addrs_section_sort): Change return type.
12622         (addr_info_make_relative): Change type of "addrs".  Update.
12623         (default_symfile_offsets, syms_from_objfile_1)
12624         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
12625         (symbol_file_add_separate): Update.
12626         (symbol_file_add): Change type of "addrs".  Update.
12627         (add_symbol_file_command): Update.  Remove cleanups.
12628         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
12629         cleanups.
12630         * symfile-debug.c (debug_sym_offsets): Change type of "info".
12631         * solib.c (solib_read_symbols): Update.
12632         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
12633         * machoread.c (macho_symfile_offsets): Update.
12634         * jit.c (jit_bfd_try_read_symtab): Update.
12635
12636 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
12637
12638         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12639         unittests/utils-selftests.c.
12640         * unittests/utils-selftests.c: New file.
12641
12642 2018-03-14  Tom Tromey  <tom@tromey.com>
12643
12644         PR cli/14977:
12645         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
12646         for NULL.
12647
12648 2018-03-14  Tom Tromey  <tom@tromey.com>
12649
12650         PR cli/19918:
12651         * printcmd.c (printf_pointer): Allow "-" in format.
12652
12653 2018-03-14  Tom Tromey  <tom@tromey.com>
12654
12655         * printcmd.c (_initialize_printcmd): Add usage to printf.
12656
12657 2018-03-14  Yao Qi  <qiyao@sourceware.org>
12658
12659         * MAINTAINERS: Update my email address.
12660
12661 2018-03-13  Tom Tromey  <tom@tromey.com>
12662
12663         * machoread.c (macho_check_dsym): Change filenamep to a
12664         std::string*.
12665         (macho_symfile_read): Update.
12666         * symfile.c (load_command): Use std::string.
12667
12668 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
12669
12670         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
12671         to error message string.
12672         (riscv_register_name): Use xsnprintf instead of sprintf.
12673         (riscv_insn::fetch_instruction): Use gdb_assert instead of
12674         internal_error.
12675         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
12676         error.
12677         (riscv_push_dummy_call): Likewise.
12678
12679 2018-03-12  Tom Tromey  <tom@tromey.com>
12680
12681         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
12682         Use gdb::byte_vector.
12683         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
12684
12685 2018-03-12  Yao Qi  <yao.qi@linaro.org>
12686
12687         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
12688         parameter type to readable_regcache.
12689         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
12690         the declaration.
12691
12692 2018-03-11  Tom Tromey  <tom@tromey.com>
12693
12694         * dwarf2read.c (struct nextfield): Add initializers.
12695         (struct nextfnfield): Remove.
12696         (struct fnfieldlist): Add initializers.  Remove "length" and
12697         "head", use std::vector.
12698         (struct decl_field_list): Remove.
12699         (struct field_info): Add initializers.
12700         <fields, baseclasses>: Now std::vector.
12701         <nbaseclasses, nfnfields, typedef_field_list_count,
12702         nested_types_list_count>: Remove.
12703         (dwarf2_add_field, dwarf2_add_type_defn)
12704         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
12705         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
12706         (process_structure_scope): Update.
12707
12708 2018-03-11  Tom Tromey  <tom@tromey.com>
12709
12710         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
12711         for use by std::sort.
12712         (build_type_psymtabs_1): Use std::vector.
12713
12714 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
12715
12716         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
12717         and LIBMPFR in the printed configuration.
12718
12719 2018-03-08  Tom Tromey  <tom@tromey.com>
12720
12721         * source.c (get_filename_and_charpos): Use scoped_fd.
12722         * nto-procfs.c (procfs_open_1): Use scoped_fd.
12723         (procfs_pidlist): Likewise.
12724         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
12725         (iterate_over_mappings): Likewise.
12726
12727 2018-03-08  Tom Tromey  <tom@tromey.com>
12728
12729         * infcall.c (struct call_return_meta_info)
12730         <stack_temporaries_enabled>: Remove.
12731         (get_call_return_value, call_function_by_hand_dummy): Update.
12732         * thread.c (disable_thread_stack_temporaries): Remove.
12733         (enable_thread_stack_temporaries): Remove.
12734         (thread_stack_temporaries_enabled_p): Return bool.
12735         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
12736         (get_last_thread_stack_temporary): Update.
12737         * eval.c (evaluate_subexp): Update.
12738         * gdbthread.h (class enable_thread_stack_temporaries): Now a
12739         class, not a function.
12740         (value_ptr, value_vec): Remove typedefs.
12741         (class thread_info) <stack_temporaries_enabled>: Now bool.
12742         <stack_temporaries>: Now a std::vector.
12743         (thread_stack_temporaries_enabled_p)
12744         (value_in_thread_stack_temporaries): Return bool.
12745
12746 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
12747
12748         * remote.c (putpkt_binary): Fix omitted bytes reporting.
12749         (getpkt_or_notif_sane_1): Likewise.
12750
12751 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12752
12753         * build-id.c (build_id_to_debug_bfd): Use std::string.
12754
12755 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12756
12757         * build-id.c (find_separate_debug_file_by_buildid): Return
12758         std::string.
12759         * build-id.h (find_separate_debug_file_by_buildid): Return
12760         std::string.
12761         * coffread.c (coff_symfile_read): Adjust to std::string.
12762         * elfread.c (elf_symfile_read): Adjust to std::string.
12763         * symfile.c (separate_debug_file_exists): Change parameter to
12764         std::string.
12765         (find_separate_debug_file): Return std::string.
12766         (find_separate_debug_file_by_debuglink): Return std::string.
12767         * symfile.h (find_separate_debug_file_by_debuglink): Return
12768         std::string.
12769
12770 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12771
12772         * common/xml-utils.c (xml_escape_text): Move code to...
12773         (xml_escape_text_append): ... this new function.
12774         * common/xml-utils.h (xml_escape_text_append): New declaration.
12775         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
12776         New function.
12777         (_initialize_xml_utils): register test_xml_escape_text_append as
12778         a selftest.
12779
12780 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
12781
12782         * defs.h: Remove MAX_REGISTER_SIZE.
12783         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
12784         asserts.
12785         * python/py-unwind.c (pyuw_sniffer): Likewise.
12786
12787 2018-03-07  Tom Tromey  <tom@tromey.com>
12788
12789         * linux-tdep.c (linux_info_proc): Update.
12790         * target.h (struct target_ops) <to_fileio_readlink>: Return
12791         optional<string>.
12792         (target_fileio_readlink): Return optional<string>.
12793         * remote.c (remote_hostio_readlink): Return optional<string>.
12794         * inf-child.c (inf_child_fileio_readlink): Return
12795         optional<string>.
12796         * target.c (target_fileio_readlink): Return optional<string>.
12797
12798 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
12799
12800         * regcache.c (cooked_read_test): Add riscv to the list of
12801         architectures that have a save_reggroup.
12802
12803 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12804
12805         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
12806         value is not a dynamic class object.
12807
12808 2018-03-06  Tom Tromey  <tom@tromey.com>
12809
12810         * rust-exp.y: Formatting fixes.
12811
12812 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12813
12814         * riscv-tdep.c (riscv_register_name): Remove target description
12815         support.
12816         (riscv_gdbarch_init): Remove target description check.
12817
12818 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12819
12820         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
12821         comment.
12822         * riscv-tdep.h: Likewise.
12823
12824 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12825
12826         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
12827         (riscv_pseudo_register_write): Delete.
12828         (riscv_gdbarch_init): Remove all use of pseudo registers.
12829
12830 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12831
12832         * record-btrace.c (btrace_print_lines): Replace cleanup
12833         parameter with RAII equivalents.
12834         (btrace_insn_history): Replace cleanup with RAII equivalents.
12835         * ui-out.h (make_cleanup_ui_out_list_begin_end,
12836         make_cleanup_ui_out_tuple_begin_end): Remove.
12837         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
12838         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
12839         make_cleanup_ui_out_list_begin_end): Remove.
12840
12841 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12842
12843         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
12844         parameter types to std::vector.  Use bool.
12845         (record_btrace_wait): Replace VEC(tp_t) with
12846         std::vector<thread_info *>.
12847         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
12848
12849 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12850
12851         * record-btrace.c (record_btrace_disable_callback): Remove.
12852         (struct scoped_btrace_disable): New.
12853         (record_btrace_open): Use scoped_btrace_disable.
12854
12855 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12856
12857         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
12858         reading values from registers.
12859
12860 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12861
12862         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
12863         where appropriate.
12864
12865 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12866
12867         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
12868         change parameter type.  Use GDB's print functions, and use
12869         core_addr_to_string where appropriate.
12870         (riscv_push_dummy_call): Use core_addr_to_string where
12871         appropriate, update call to riscv_print_arg_location, and reindent
12872         a few lines.
12873         (riscv_return_value): Update call to riscv_print_arg_location.
12874
12875 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12876             Tim Newsome <tim@sifive.com>
12877             Albert Ou <a0u@eecs.berkeley.edu>
12878             Darius Rad <darius@bluespec.com>
12879
12880         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
12881         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
12882         (ALLDEPFILES): Add riscv-tdep.c
12883         * configure.tgt: Add riscv support.
12884         * riscv-tdep.c: New file.
12885         * riscv-tdep.h: New file.
12886         * NEWS: Mention new target.
12887         * MAINTAINERS: Add entry for riscv.
12888
12889 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12890
12891         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
12892         fields within aggregates.
12893
12894 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
12895
12896         * record-btrace.c (btrace_print_lines): Change type of flags to
12897         gdb_disassembly_flags.
12898
12899 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12900
12901         * fbsd-nat.c: Include "inf-ptrace.h".
12902         (USE_SIGTRAP_SIGINFO): Conditionally define.
12903         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
12904         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
12905         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
12906         function.
12907         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
12908         Likewise.
12909         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
12910         Likewise.
12911         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
12912         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
12913         "supports_stopped_by_hw_breakpoint" target methods.
12914
12915 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12916
12917         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
12918         * fbsd-nat.c (debug_fbsd_nat): New variable.
12919         (show_fbsd_nat_debug): New function.
12920         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
12921         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
12922
12923 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12924
12925         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
12926         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
12927         prototype.
12928         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
12929         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
12930         method.
12931
12932 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12933
12934         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
12935         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
12936
12937 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12938
12939         * charset.c (struct charset_vector): New.
12940         (charsets): Change type to charset_vector.
12941         (find_charset_names): Adjust.
12942         (add_one): Adjust.
12943         (_initialize_charset): Adjust.
12944
12945 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12946
12947         * progspace.h (struct program_space) <deleted_solibs>: Change
12948         type to std::vector<std::string>.
12949         * progspace.c (clear_program_space_solib_cache): Adjust.
12950         * breakpoint.c (print_solib_event): Adjust.
12951         (check_status_catch_solib): Adjust.
12952         * solib.c (update_solib_list): Adjust.
12953         * ui-out.h (class ui_out) <field_string>: New overload.
12954         * ui-out.c (ui_out::field_string): New overload.
12955
12956 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12957
12958         * progspace.h (struct program_space): Add constructor and
12959         destructor, initialize fields.
12960         (add_program_space): Remove.
12961         * progspace.c (add_program_space): Rename to...
12962         (program_space::program_space): ... this.
12963         (release_program_space): Rename to...
12964         (program_space::~program_space): ... this.
12965         (delete_program_space): Use delete to delete program_space.
12966         (initialize_progspace): Use new to allocate program_space.
12967         * inferior.c (add_inferior_with_spaces): Likewise.
12968         (clone_inferior_command): Likewise.
12969         * infrun.c (follow_fork_inferior): Likewise.
12970         (handle_vfork_child_exec_or_exit): Likewise.
12971
12972 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12973
12974         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
12975         (delim_string_to_char_ptr_vec): Return std::vector of
12976         gdb::unique_xmalloc_ptr.
12977         (dirnames_to_char_ptr_vec_append): Take std::vector of
12978         gdb::unique_xmalloc_ptr.
12979         (dirnames_to_char_ptr_vec): Return std::vector of
12980         gdb::unique_xmalloc_ptr.
12981         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
12982         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
12983         (delim_string_to_char_ptr_vec): Return an std::vector of
12984         gdb::unique_xmalloc_ptr, adjust the code.
12985         (dirnames_to_char_ptr_vec_append): Take an std::vector of
12986         gdb::unique_xmalloc_ptr, adjust the code.
12987         (dirnames_to_char_ptr_vec): Return an std::vector of
12988         gdb::unique_xmalloc_ptr, adjust the code.
12989         * auto-load.c (auto_load_safe_path_vec): Change type to
12990         std::vector of gdb::unique_xmalloc_ptr.
12991         (auto_load_expand_dir_vars): Return an std::vector of
12992         gdb::unique_xmalloc_ptr, adjust the code.
12993         (auto_load_safe_path_vec_update): Adjust.
12994         (filename_is_in_auto_load_safe_path_vec): Adjust.
12995         (auto_load_objfile_script_1): Adjust.
12996         * build-id.c (build_id_to_debug_bfd): Adjust.
12997         * linux-thread-db.c (thread_db_load_search): Adjust.
12998         * source.c (add_path): Adjust.
12999         (openp): Adjust.
13000         * symfile.c (find_separate_debug_file): Adjust.
13001         * utils.c (do_free_char_ptr_vec): Remove.
13002         (make_cleanup_free_char_ptr_vec): Remove.
13003
13004 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
13005
13006         PR gdb/22907
13007         * common/pathstuff.c: Conditionally include "<windows.h>".
13008
13009 2018-03-01  Georg Sauthoff  <mail@georg.so>
13010
13011         PR gdb/22888
13012         * gcore.in: Quote variables and switch interpreter to bash.
13013
13014 2018-03-01  Tom Tromey  <tom@tromey.com>
13015
13016         * dwarf2read.c (alloc_discriminant_info): Fix default_index
13017         assertion.  Add assertion for discriminant_index.
13018         (quirk_rust_enum): Use correct base type name in univariant case.
13019
13020 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
13021
13022         * record.c (get_call_history_modifiers): Return a
13023         record_print_flags.
13024         (cmd_record_call_history): Adjust.
13025         * record-btrace.c (record_btrace_call_history): Adjust.
13026         (record_btrace_call_history_range): Adjust.
13027         (record_btrace_call_history_from): Adjust.
13028         * target-debug.h (target_debug_print_record_print_flags): New.
13029         * target-delegates.c: Re-generate.
13030         * target.c (target_call_history): Change flags type.
13031         (target_call_history_from): Likewise.
13032         (target_call_history_range): Likewise.
13033         * target.h (struct target_ops) <target_call_history>: Likewise.
13034         (target_call_history_from): Likewise.
13035         (target_call_history_range): Likewise.
13036
13037 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
13038             Simon Marchi  <simon.marchi@polymtl.ca>
13039
13040         * common/common-utils.c: Include "sys/stat.h".
13041         (is_regular_file): Move here from "source.c"; change return
13042         type to "bool".
13043         * common/common-utils.h (is_regular_file): New prototype.
13044         * common/pathstuff.c (contains_dir_separator): New function.
13045         * common/pathstuff.h (contains_dir_separator): New prototype.
13046         * source.c: Don't include "sys/stat.h".
13047         (is_regular_file): Move to "common/common-utils.c".
13048
13049 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
13050
13051         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
13052         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
13053         * auto-load.c: Include "common/pathstuff.h".
13054         * common/common-def.h (current_directory): Move here.
13055         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
13056         function.
13057         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
13058         prototype.
13059         * common/pathstuff.c: New file.
13060         * common/pathstuff.h: New file.
13061         * compile/compile.c: Include "common/pathstuff.h".
13062         * defs.h (current_directory): Move to "common/common-defs.h".
13063         * dwarf2read.c: Include "common/pathstuff.h".
13064         * exec.c: Likewise.
13065         * guile/scm-safe-call.c: Likewise.
13066         * linux-thread-db.c: Likewise.
13067         * main.c: Likewise.
13068         * nto-tdep.c: Likewise.
13069         * objfiles.c: Likewise.
13070         * source.c: Likewise.
13071         * symtab.c: Likewise.
13072         * utils.c: Include "common/pathstuff.h".
13073         (gdb_realpath): Move to "common/pathstuff.c".
13074         (gdb_realpath_keepfile): Likewise.
13075         (gdb_abspath): Likewise.
13076         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
13077         (gdb_realpath_keepfile): Likewise.
13078         (gdb_abspath): Likewise.
13079
13080 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
13081
13082         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
13083         wildcard process pid for super_resume for kernels with a
13084         specific bug.
13085
13086 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
13087
13088         * compile/compile.c (get_args): Add additional comments
13089         explaining function.
13090
13091 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
13092             Tom Tromey  <tom@tromey.com>
13093
13094         * target.h (memory_write_request_s): Remove typedef.  Don't define
13095         VEC.
13096         (target_write_memory_blocks): Change argument to std::vector.
13097         (struct memory_write_request): Add constructor.
13098         * target-memory.c (compare_block_starting_address): Return bool.
13099         Change argument types.
13100         (claim_memory): Change arguments to use std::vector.
13101         (split_regular_and_flash_blocks, blocks_to_erase)
13102         (compute_garbled_blocks): Likewise.
13103         (cleanup_request_data, cleanup_write_requests_vector): Remove.
13104         (target_write_memory_blocks): Change argument to std::vector.
13105         * symfile.c (struct load_section_data): Add constructor and
13106         destructor.  Use std::vector for "requests".
13107         (struct load_progress_data): Add initializers.
13108         (load_section_callback): Update.  Use "new".
13109         (clear_memory_write_data): Remove.
13110         (generic_load): Update.
13111
13112 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
13113
13114         * arch/aarch64.h: Use common/tdesc.h.
13115
13116 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
13117
13118         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
13119         architecture with a 64-bit ABI.
13120
13121 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
13122
13123         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
13124         ahead of target description loading.
13125
13126 2018-02-26  Tom Tromey  <tom@tromey.com>
13127
13128         * stack.c (backtrace_command_1): Update.
13129         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
13130         of "flags".
13131         * python/py-framefilter.c (py_print_frame)
13132         (gdbpy_apply_frame_filter): Change type of "flags".
13133         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
13134         of "flags".
13135         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
13136         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
13137         * extension.h (enum frame_filter_flag): Rename from
13138         frame_filter_flags.
13139         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
13140         (apply_ext_lang_frame_filter): Change type of "flags".
13141         * extension.c (apply_ext_lang_frame_filter): Change type of
13142         "flags".
13143         * extension-priv.h (struct extension_language_ops)
13144         <apply_frame_filter>: Change type of "flags".
13145
13146 2018-02-26  Tom Tromey  <tom@tromey.com>
13147
13148         PR python/16497:
13149         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
13150         off-by-one in py_end computation.
13151         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
13152         PRINT_MORE_FRAMES.
13153         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
13154         constant.
13155
13156 2018-02-26  Tom Tromey  <tom@tromey.com>
13157
13158         * dwarf2read.c (struct variant_field): New.
13159         (struct nextfield) <variant>: New field.
13160         (dwarf2_add_field): Handle DW_TAG_variant_part.
13161         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
13162         discriminated union.
13163         (read_structure_type): Handle DW_TAG_variant_part.
13164         (handle_struct_member_die): New function, extracted from
13165         process_structure_scope.  Handle DW_TAG_variant.
13166         (process_structure_scope): Handle discriminated unions.  Call
13167         handle_struct_member_die.
13168
13169 2018-02-26  Tom Tromey  <tom@tromey.com>
13170
13171         * rust-lang.h (rust_last_path_segment): Declare.
13172         * rust-lang.c (rust_last_path_segment): Now public.  Change
13173         contract.
13174         (struct disr_info): Remove.
13175         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
13176         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
13177         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
13178         (rust_enum_p, rust_enum_variant): New function.
13179         (rust_underscore_fields): Remove "offset" parameter.
13180         (rust_print_enum): New function.
13181         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
13182         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
13183         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
13184         enums.
13185         (rust_internal_print_type): New function, from rust_print_type.
13186         Remove enum code.
13187         (rust_print_type): Call rust_internal_print_type.
13188         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
13189         Update enum handling.
13190         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
13191         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
13192         (rust_union_quirks): New functions.
13193         (process_full_comp_unit, process_full_type_unit): Call
13194         rust_union_quirks.
13195         (process_structure_scope): Update rust_unions if necessary.
13196
13197 2018-02-26  Tom Tromey  <tom@tromey.com>
13198
13199         * value.h (value_union_variant): Declare.
13200         * valops.c (value_union_variant): New function.
13201         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
13202         (struct discriminant_info): New.
13203         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
13204         enumerator.
13205         (struct main_type) <flag_discriminated_union>: New field.
13206
13207 2018-02-26  Tom Tromey  <tom@tromey.com>
13208
13209         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13210         unittests/unpack-selftests.c.
13211         * unittests/unpack-selftests.c: New file.
13212         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
13213
13214 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13215
13216         * dwarf2read.c (struct partial_die_info) <read>: New method.
13217         (read_partial_die): Remove the declaration.
13218         (load_partial_dies): Update.
13219         (partial_die_info::partial_die_info):
13220         (read_partial_die): Change it to partial_die_info::read.
13221
13222 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13223
13224         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
13225         (fixup_partial_die): Remove declaration.
13226         (scan_partial_symbols): Update.
13227         (partial_die_parent_scope): Likewise.
13228         (partial_die_full_name): Likewise.
13229         (fixup_partial_die): Change it to partial_die_info::fixup.
13230
13231 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13232
13233         * dwarf2read.c (read_partial_die): Update the declaration.
13234         (load_partial_dies): Caller update.
13235         (read_partial_die): Remove one argument abbrev_len.
13236
13237 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13238
13239         * dwarf2read.c (struct partial_die_info): Add ctor, delete
13240         assignment operator.
13241         (load_partial_dies): Use ctor and copy ctor.
13242         (read_partial_die): Update.
13243         (dwarf2_cu::find_partial_die): Use ctor.
13244
13245 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13246
13247         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
13248         (find_partial_die_in_comp_unit): Change it to
13249         dwarf2_cu::find_partial_die.
13250         (find_partial_die): Update.
13251
13252 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13253
13254         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
13255         is NULL.
13256
13257 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13258
13259         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
13260
13261 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
13262
13263         * arch/amd64.h: Use common/tdesc.h.
13264         * arch/i386.c: Likewise.
13265         * arch/i386.h: Likewise.
13266         * arch/tic6x.c: Likewise.
13267         * arch/tdesc.h: Move file from here...
13268         * common/tdesc.h: ...to here.
13269         * features/aarch64-core.c: Regenerate.
13270         * features/aarch64-fpu.c: Regenerate.
13271         * features/i386/32bit-avx.c: Regenerate.
13272         * features/i386/32bit-avx512.c: Regenerate.
13273         * features/i386/32bit-core.c: Regenerate.
13274         * features/i386/32bit-linux.c: Regenerate.
13275         * features/i386/32bit-mpx.c: Regenerate.
13276         * features/i386/32bit-pkeys.c: Regenerate.
13277         * features/i386/32bit-sse.c: Regenerate.
13278         * features/i386/64bit-avx.c: Regenerate.
13279         * features/i386/64bit-avx512.c: Regenerate.
13280         * features/i386/64bit-core.c: Regenerate.
13281         * features/i386/64bit-linux.c: Regenerate.
13282         * features/i386/64bit-mpx.c: Regenerate.
13283         * features/i386/64bit-pkeys.c: Regenerate.
13284         * features/i386/64bit-segments.c: Regenerate.
13285         * features/i386/64bit-sse.c: Regenerate.
13286         * features/i386/x32-core.c: Regenerate.
13287         * features/tic6x-c6xp.c: Regenerate.
13288         * features/tic6x-core.c: Regenerate.
13289         * features/tic6x-gp.c: Regenerate.
13290         * target-descriptions.c: Use common/tdesc.h.
13291         * target-descriptions.h: Likewise.
13292
13293 2018-02-24  Tom Tromey  <tom@tromey.com>
13294
13295         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
13296         (try_thread_db_load_from_dir, thread_db_load_search): Use
13297         std::string.
13298         (info_auto_load_libthread_db_compare): Return bool.  Change
13299         argument types.
13300         (info_auto_load_libthread_db): Use std::vector, std::string.
13301         Remove cleanups.
13302
13303 2018-02-24  Tom Tromey  <tom@tromey.com>
13304
13305         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
13306         std::string.
13307         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
13308         std::string*.
13309         * gdbarch.c: Rebuild.
13310         * gdbarch.h: Rebuild.
13311         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
13312         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
13313         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
13314         std::string*.
13315
13316 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
13317
13318         * gdbtypes.h (sect_offset): Change type to uint64_t.
13319         (sect_offset_str): New function.
13320         * dwarf2read.c (create_addrmap_from_aranges): Use
13321         sect_offset_str.
13322         (error_check_comp_unit_head): Likewise.
13323         (create_debug_type_hash_table): Likewise.
13324         (read_cutu_die_from_dwo): Likewise.
13325         (init_cutu_and_read_dies): Likewise.
13326         (init_cutu_and_read_dies_no_follow): Likewise.
13327         (process_psymtab_comp_unit_reader): Likewise.
13328         (partial_die_parent_scope): Likewise.
13329         (peek_die_abbrev): Likewise.
13330         (process_queue): Likewise.
13331         (dwarf2_physname): Likewise.
13332         (read_namespace_alias): Likewise.
13333         (read_import_statement): Likewise.
13334         (create_dwo_cu_reader): Likewise.
13335         (create_cus_hash_table): Likewise.
13336         (lookup_dwo_cutu): Likewise.
13337         (inherit_abstract_dies): Likewise.
13338         (read_func_scope): Likewise.
13339         (read_call_site_scope): Likewise.
13340         (dwarf2_add_member_fn): Likewise.
13341         (read_common_block): Likewise.
13342         (read_module_type): Likewise.
13343         (read_typedef): Likewise.
13344         (read_subrange_type): Likewise.
13345         (load_partial_dies): Likewise.
13346         (read_partial_die): Likewise.
13347         (find_partial_die): Likewise.
13348         (read_str_index): Likewise.
13349         (dwarf2_string_attr): Likewise.
13350         (build_error_marker_type): Likewise.
13351         (lookup_die_type): Likewise.
13352         (dump_die_shallow): Likewise.
13353         (follow_die_ref): Likewise.
13354         (dwarf2_fetch_die_loc_sect_off): Likewise.
13355         (dwarf2_fetch_constant_bytes): Likewise.
13356         (follow_die_sig): Likewise.
13357         (get_signatured_type): Likewise.
13358         (get_DW_AT_signature_type): Likewise.
13359         (dwarf2_find_containing_comp_unit): Likewise.
13360         (set_die_type): Likewise.
13361
13362 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
13363
13364         * arch/aarch64.c: Include "common-defs.h".
13365         * arch/amd64.c: Likewise.
13366         * arch/i386.c: Likewise.
13367
13368 2018-02-21  Tom Tromey  <tom@tromey.com>
13369
13370         * value.h: (extract_field_op): Update.
13371         * eval.c (extract_field_op): Return a const char *.
13372         * expression.h (parse_expression_for_completion): Update.
13373         * completer.c (complete_expression): Update.
13374         (add_struct_fields): Make fieldname const.
13375         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
13376         (mark_completion_tag, parse_exp_in_context_1): Update.
13377         (parse_expression_for_completion): Change "name" to
13378         unique_xmalloc_ptr*.
13379
13380 2018-02-21  Tom Tromey  <tom@tromey.com>
13381
13382         * infcall.c (call_function_by_hand_dummy): Use std::vector.
13383
13384 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13385
13386         * avr-tdep.c (avr_read_pc): Change parameter type to
13387         readable_regcache.
13388         * gdbarch.sh (read_pc): Likewise.
13389         * gdbarch.c: Re-generated.
13390         * gdbarch.h: Re-generated.
13391         * hppa-tdep.c (hppa_read_pc): Change parameter type to
13392         readable_regcache.
13393         * ia64-tdep.c (ia64_read_pc): Likewise.
13394         * mips-tdep.c (mips_read_pc): Likewise.
13395         * spu-tdep.c (spu_read_pc): Likewise.
13396
13397 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13398
13399         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
13400         * regcache-dump.c: New file.
13401         * regcache.c: Move register_dump to regcache-dump.c.
13402         (maintenance_print_registers): Likewise.
13403         (maintenance_print_raw_registers): Likewise.
13404         (maintenance_print_cooked_registers): Likewise.
13405         (maintenance_print_register_groups): Likewise.
13406         (maintenance_print_remote_registers): Likewise.
13407         (_initialize_regcache): Likewise.
13408         * regcache.h (register_dump): Moved from regcache.c.
13409
13410 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13411
13412         * regcache.c (regcache::regcache): Update.
13413         (regcache::invalidate): Move it to detached_regcache::invalidate.
13414         (get_thread_arch_aspace_regcache): Update.
13415         (regcache::raw_update): Update.
13416         (regcache::cooked_read): Remove some code.
13417         (regcache::cooked_read_value): Likewise.
13418         (regcache::raw_write): Remove assert on m_readonly_p.
13419         (regcache::raw_supply_integer): Move it to
13420         detached_regcache::raw_supply_integer.
13421         (regcache::raw_supply_zeroed): Likewise.
13422         * regcache.h (detached_regcache) <raw_supply_integer>: New
13423         declaration.
13424         <raw_supply_zeroed, invalidate>: Likewise.
13425         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
13426         <invalidate>: Likewise.
13427         <m_readonly_p>: Removed.
13428
13429 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13430
13431         * infcmd.c (get_return_value): Let stop_regs point to
13432         get_current_regcache.
13433         * regcache.c (regcache::regcache): Remove.
13434         (register_dump_reg_buffer): New class.
13435         (regcache_print): Adjust.
13436         * regcache.h (regcache): Remove constructors.
13437
13438 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13439
13440         * regcache.c (class register_dump): New class.
13441         (register_dump_regcache, register_dump_none): New class.
13442         (register_dump_remote, register_dump_groups): New class.
13443         (regcache_print): Update.
13444         * regcache.h (regcache_dump_what): Move it to regcache.c.
13445         (regcache) <dump>: Remove.
13446
13447 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13448
13449         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
13450          reg_buffer_rw *.
13451         (jit_unwind_reg_set_impl): Call raw_supply.
13452         (jit_frame_sniffer): Use reg_buffer_rw.
13453         * record-full.c (record_full_core_regbuf): Change its type.
13454         (record_full_core_open_1): Use reg_buffer_rw.
13455         (record_full_close): Likewise.
13456         (record_full_core_fetch_registers): Use regcache->raw_supply.
13457         (record_full_core_store_registers): Likewise.
13458         * regcache.c (regcache::get_register_status): Move it to
13459         reg_buffer.
13460         (regcache_raw_set_cached_value): Remove.
13461         (regcache::raw_set_cached_value): Remove.
13462         (regcache::raw_write): Call raw_supply.
13463         (regcache::raw_supply): Move it to reg_buffer_rw.
13464         * regcache.h (regcache_raw_set_cached_value): Remove.
13465         (reg_buffer_rw): New class.
13466
13467 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13468
13469         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
13470         readonly_detached_regcache.
13471         (dummy_frame_prev_register): Use regcache->cooked_read.
13472         * frame.c (frame_save_as_regcache): Change return type.
13473         (frame_pop): Update.
13474         * frame.h (frame_save_as_regcache): Update declaration.
13475         * inferior.h (get_infcall_suspend_state_regcache): Update
13476         declaration.
13477         * infrun.c (infcall_suspend_state) <registers>: use
13478         readonly_detached_regcache.
13479         (save_infcall_suspend_state): Don't use regcache_dup.
13480         (get_infcall_suspend_state_regcache): Change return type.
13481         * linux-fork.c (struct fork_info) <savedregs>: Change to
13482         readonly_detached_regcache.
13483         <pc>: New field.
13484         (fork_save_infrun_state): Don't use regcache_dup.
13485         (info_checkpoints_command): Adjust.
13486         * mi/mi-main.c (register_changed_p): Update declaration.
13487         (mi_cmd_data_list_changed_registers): Use
13488         readonly_detached_regcache.
13489         (register_changed_p): Change parameter type to
13490         readonly_detached_regcache.
13491         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
13492         readonly_detached_regcache.
13493         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
13494         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
13495         New.
13496         (regcache::save): Move it to reg_buffer.
13497         (regcache::restore): Change parameter type.
13498         (regcache_dup): Remove.
13499         * regcache.h (reg_buffer) <save>: New method.
13500         (readonly_detached_regcache): New class.
13501         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
13502         readonly_detached_regcache.
13503         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
13504
13505 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13506
13507         * frame.c (frame_save_as_regcache): Use regcache method save.
13508         (frame_pop): Use regcache method restore.
13509         * infrun.c (restore_infcall_suspend_state): Likewise.
13510         * linux-fork.c (fork_load_infrun_state): Likewise.
13511         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
13512         save.
13513         * regcache.c (regcache_save): Remove.
13514         (regcache::restore): More asserts.
13515         (regcache_cpy): Remove.
13516         * regcache.h (regcache_save): Remove the declaration.
13517         (regcache::restore): Move from private to public.
13518         Remove the friend declaration of regcache_cpy.
13519         (regcache_cpy): Remove declaration.
13520
13521 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13522
13523         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
13524         parameter type to 'readable_regcache *'.
13525         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
13526         * arm-tdep.c (arm_neon_quad_read): Likewise.
13527         (arm_pseudo_read): Likewise.
13528         * avr-tdep.c (avr_pseudo_register_read): Likewise.
13529         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
13530         * frv-tdep.c (frv_pseudo_register_read): Likewise.
13531         * gdbarch.c: Re-generated.
13532         * gdbarch.h: Re-generated.
13533         * gdbarch.sh (pseudo_register_read): Change parameter type to
13534         'readable_regcache *'.
13535         (pseudo_register_read_value): Likewise.
13536         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
13537         (h8300_pseudo_register_read): Likewise.
13538         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
13539         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
13540         (i386_pseudo_register_read_into_value): Likewise.
13541         (i386_pseudo_register_read_value): Likewise.
13542         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
13543         declaration.
13544         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
13545         * m32c-tdep.c (m32c_raw_read): Likewise.
13546         (m32c_read_flg): Likewise.
13547         (m32c_banked_register): Likewise.
13548         (m32c_banked_read): Likewise.
13549         (m32c_sb_read): Likewise.
13550         (m32c_part_read): Likewise.
13551         (m32c_cat_read): Likewise.
13552         (m32c_r3r2r1r0_read): Likewise.
13553         (m32c_pseudo_register_read): Likewise.
13554         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
13555         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
13556         (mep_pseudo_cr64_read): Likewise.
13557         (mep_pseudo_register_read): Likewise.
13558         * mips-tdep.c (mips_pseudo_register_read): Likewise.
13559         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
13560         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
13561         * regcache.c (regcache::raw_read): Move it to readable_regcache.
13562         (regcache::cooked_read): Likewise.
13563         (regcache::cooked_read_value): Likewise.
13564         (regcache_cooked_read_signed):
13565         (regcache::cooked_read): Likewise.
13566         * regcache.h (readable_regcache): New class.
13567         (regcache): Inherit readable_regcache.  Move some methods to
13568         readable_regcache.
13569         * rl78-tdep.c (rl78_pseudo_register_read): Change
13570         parameter type to 'readable_regcache *'.
13571         * rs6000-tdep.c (do_regcache_raw_read): Remove.
13572         (e500_pseudo_register_read): Change parameter type to
13573         'readable_regcache *'.
13574         (dfp_pseudo_register_read): Likewise.
13575         (vsx_pseudo_register_read): Likewise.
13576         (efpr_pseudo_register_read): Likewise.
13577         * s390-tdep.c (s390_pseudo_register_read): Likewise.
13578         * sh-tdep.c (sh_pseudo_register_read): Likewise.
13579         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
13580         (sh64_pseudo_register_read): Likewise.
13581         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
13582         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
13583         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
13584         (spu_pseudo_register_read): Likewise.
13585         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
13586         (xtensa_pseudo_register_read): Likewise.
13587
13588 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13589
13590         * regcache.c (regcache::regcache): Call reg_buffer ctor.
13591         (regcache::arch): Move it to reg_buffer::arch.
13592         (regcache::register_buffer): Likewise.
13593         (regcache::assert_regnum): Likewise.
13594         (regcache::num_raw_registers): Likewise.
13595         * regcache.h (reg_buffer): New class.
13596         (regcache): Inherit reg_buffer.
13597
13598 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
13599
13600         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
13601         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
13602
13603 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
13604
13605         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
13606
13607 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
13608
13609         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
13610         (SFILES): Remove common/*.c files.
13611         (COMMON_OBS): Remove some *.o files built from common/*.c files.
13612         * common/common.host: Add common reference.
13613         * configure.ac: Likewise.
13614         * configure: Regenerate.
13615
13616 2018-02-16  Yao Qi  <yao.qi@linaro.org>
13617
13618         * block.c (block_namespace_info): Inherit allocate_on_obstack.
13619         (block_initialize_namespace): Use new.
13620         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
13621         (dwarf2_free_objfile): Use delete.
13622         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
13623         (copy_type_recursive): Use new.
13624         * gdb_obstack.h (allocate_on_obstack): New.
13625
13626 2018-02-15  Yao Qi  <yao.qi@linaro.org>
13627
13628         PR gdb/22849
13629         * inferior.c (exit_inferior_1): Reset inf->control.
13630
13631 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
13632
13633         * ada-lang.c (ada_to_fixed_value_create): Delete advance
13634         declaration.
13635
13636 2018-02-14  Pedro Alves  <palves@redhat.com>
13637
13638         * frame-unwind.c (frame_unwind_try_unwinder): Always call
13639         frame_cleanup_after_sniffer on exception.
13640
13641 2018-02-14  Tom Tromey  <tom@tromey.com>
13642
13643         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
13644         const.
13645         (solib_bfd_open): Make pathname const.
13646         * solib.c (solib_bfd_open): Make pathname const.
13647         * solib-spu.c (spu_bfd_fopen): Make name const.
13648         (spu_bfd_open): Make pathname const.
13649         * solib-darwin.c (darwin_bfd_open): Make pathname const.
13650         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
13651
13652 2018-02-14  Tom Tromey  <tom@tromey.com>
13653
13654         * symfile.c (symfile_bfd_open): Update.
13655         * source.h (openp, source_full_path_of, find_and_open_source):
13656         Change argument type to unique_xmalloc_ptr.
13657         * source.c (openp): Take a unique_xmalloc_ptr.
13658         (source_full_path_of, find_and_open_source): Likewise.
13659         (open_source_file, symtab_to_fullname): Update.
13660         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
13661         unique_xmalloc_ptr.
13662         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
13663         (exec_file_find): Update.
13664         * psymtab.c (psymtab_to_fullname): Update.
13665         * nto-tdep.h (nto_find_and_open_solib): Update.
13666         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
13667         unique_xmalloc_ptr.
13668         * exec.c (exec_file_attach): Update.
13669         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
13670         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
13671
13672 2018-02-14  Tom Tromey  <tom@tromey.com>
13673
13674         * solib.c: Include source.h.
13675         * nto-tdep.c: Include source.h.
13676         * mi/mi-cmd-env.c: Include source.h.
13677         * infcmd.c: Include source.h.
13678         * exec.c: Include source.h.
13679         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
13680         (add_path, directory_switch, source_path, init_source_path): Move
13681         declarations...
13682         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
13683         (add_path, directory_switch, source_path, init_source_path):
13684         ...here.
13685
13686 2018-02-14  Tom Tromey  <tom@tromey.com>
13687
13688         * solist.h (exec_file_find, solib_find): Return
13689         unique_xmalloc_ptr.
13690         (solib_bfd_fopen): Take a const char *.
13691         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
13692         (exec_file_find, solib_find): Likewise.
13693         (solib_bfd_fopen): Do not take ownership of "pathname".
13694         (solib_bfd_open): Use unique_xmalloc_ptr.
13695         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
13696         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
13697         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
13698         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
13699
13700 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
13701
13702         * ada-lang.c (name_match_type_from_name): Remove reference to
13703         ada_name_for_lookup in function's documentation.
13704         * ada-lang.h (ada_name_for_lookup): Delete declaration.
13705
13706 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
13707
13708         * defs.h (enum openp_flags): New enum.
13709         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
13710         Move to enum openp_flags.
13711         (openp_flags): New enum flags.
13712         (openp): Change parameter type to openp_flags.
13713         * source.c (openp): Change parameter type to openp_flags.
13714         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
13715         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
13716
13717 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
13718
13719         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
13720         per-command.
13721
13722 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
13723
13724         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
13725         into...
13726         (class dwarf2_queue_guard): ...the destructor of this new class.
13727         (dw2_do_instantiate_symtab): Create instance of the new class
13728         dwarf2_queue_guard, remove cleanup.
13729
13730 2018-02-09  Tom Tromey  <tom@tromey.com>
13731
13732         * source.c (find_source_lines): Don't reference past the end of
13733         the vector.
13734
13735 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13736
13737         * remote.c (remote_btrace_maybe_reopen): Change error message.
13738         * btrace.c (btrace_enable): Likewise.
13739         (parse_xml_btrace): Likewise.
13740         (parse_xml_btrace_conf): Likewise.
13741
13742 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13743
13744         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
13745         (linux_enable_pt, linux_enable_bts): Call
13746         diagnose_perf_event_open_fail.
13747
13748 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13749
13750         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
13751         Remove parameter and change return type.  Update callers.  Move it.
13752         (linux_enable_bts, linux_enable_pt): Improve error message.
13753         (linux_enable_pt): Remove zero buffer size check.
13754         (linux_enable_btrace): Improve error messages.  Remove NULL return
13755         check.
13756
13757 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13758
13759         * btrace.c (btrace_enable): Remove target_supports_btrace call.
13760         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
13761         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
13762         (linux_supports_pt, linux_supports_btrace): Remove.
13763         (linux_enable_bts): Call cpu_supports_bts.
13764         * nat/linux-btrace.h (linux_supports_btrace): Remove.
13765         * remote.c (remote_supports_btrace): Remove.
13766         (init_remote_ops): Remove remote_supports_btrace.
13767         * target-delegates.c: Regenerated.
13768         * target.c (target_supports_btrace): Remove.
13769         * target.h (target_ops) <to_supports_btrace>: Remove
13770         (target_supports_btrace): Remove.
13771         * x86-linux-nat.c (x86_linux_create_target): Remove
13772         linux_supports_btrace.
13773
13774 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13775
13776         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
13777         btrace failed.
13778         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
13779         exception and use message in own exception.
13780
13781 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13782
13783         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
13784         (perf_event_pt_event_type): Use gdb_file_up.
13785         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
13786         scoped_fd, and scoped_mmap.
13787
13788 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13789
13790         * common/scoped_mmap.h: New.
13791         * unittests/scoped_mmap-selftest.c: New.
13792         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13793         unittests/scoped_mmap-selftest.c.
13794
13795 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13796
13797         * common/scoped_fd.h: New.
13798         * unittests/scoped_fd-selftest.c: New.
13799         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13800         unittests/scoped_fd-selftest.c.
13801
13802 2018-02-09  Tom Tromey  <tom@tromey.com>
13803
13804         * auto-load.c (auto_load_section_scripts): Use
13805         gdb::unique_xmalloc_ptr.
13806
13807 2018-02-09  Tom Tromey  <tom@tromey.com>
13808
13809         * auto-load.c (execute_script_contents): Use std::string.
13810
13811 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
13812
13813         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
13814         Python function, rather than a new command.
13815
13816 2018-02-08  Tom Tromey  <tom@tromey.com>
13817
13818         * solib.c (solib_find_1): Use std::string.
13819         (solib_bfd_fopen): Use unique_xmalloc_ptr.
13820
13821 2018-02-08  Tom Tromey  <tom@tromey.com>
13822
13823         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
13824
13825 2018-02-08  Tom Tromey  <tom@tromey.com>
13826
13827         * source.c (find_source_lines): Use gdb::def_vector.
13828
13829 2018-02-08  Tom Tromey  <tom@tromey.com>
13830
13831         * macrocmd.c (struct temporary_macro_definition): New.
13832         (macro_define_command): Use temporary_macro_definition.  Remove
13833         cleanups.
13834         (free_macro_definition_ptr): Remove.
13835
13836 2018-02-08  Tom Tromey  <tom@tromey.com>
13837
13838         * macroexp.c (maybe_expand): Use std::string.
13839
13840 2018-02-08  Tom Tromey  <tom@tromey.com>
13841
13842         * macroexp.c (struct macro_buffer): Add initializers for some
13843         members.
13844         (init_buffer, init_shared_buffer, free_buffer)
13845         (free_buffer_return_text): Remove.
13846         (macro_buffer): New constructors.
13847         (~macro_buffer): New destructor.
13848         (macro_buffer::set_shared): New method.
13849         (macro_buffer::resize_buffer, macro_buffer::appendc)
13850         (macro_buffer::appendmem): Now methods, not free functions.
13851         (set_token, append_tokens_without_splicing, stringify)
13852         (macro_stringify): Update.
13853         (gather_arguments): Change return type.  Remove argc_p argument,
13854         add args_ptr argument.  Use std::vector.
13855         (substitute_args): Remove argc argument.  Accept std::vector.
13856         (expand): Update.  Use std::vector.
13857         (scan, macro_expand, macro_expand_next): Update.
13858
13859 2018-02-08  Tom Tromey  <tom@tromey.com>
13860
13861         * symtab.c (default_collect_symbol_completion_matches_break_on):
13862         Use unique_xmalloc_ptr.
13863         * macroscope.h: (sal_macro_scope, user_macro_scope)
13864         (default_macro_scope): Return unique_xmalloc_ptr.
13865         * macroscope.c (sal_macro_scope, user_macro_scope)
13866         (default_macro_scope): Return unique_xmalloc_ptr.
13867         * macroexp.h (macro_expand, macro_expand_once): Return
13868         unique_xmalloc_ptr.
13869         * macroexp.c (macro_expand, macro_expand_once): Return
13870         unique_xmalloc_ptr.
13871         * macrocmd.c (macro_expand_command, macro_expand_once_command)
13872         (info_macro_command, info_macros_command): Use
13873         unique_xmalloc_ptr.
13874         * compile/compile-c-support.c (write_macro_definitions): Use
13875         unique_xmalloc_ptr.
13876         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
13877
13878 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
13879
13880         * value.c (value_static_field): Assign field type instead of
13881         containing type when returning an optimized out value.
13882
13883 2018-02-06  Yao Qi  <yao.qi@linaro.org>
13884
13885         * ft32-tdep.c (ft32_read_pc): Remove.
13886         (ft32_write_pc): Remove.
13887         (ft32_gdbarch_init): Update.
13888         * m32r-tdep.c (m32r_read_pc): Remove.
13889         (m32r_gdbarch_init): Update.
13890         * mep-tdep.c (mep_read_pc): Remove.
13891         (mep_gdbarch_init): Update.
13892         * microblaze-tdep.c (microblaze_write_pc): Remove.
13893         (microblaze_gdbarch_init): Update.
13894         * mn10300-tdep.c (mn10300_read_pc): Remove.
13895         (mn10300_write_pc): Remove.
13896         (mn10300_gdbarch_init): Update.
13897         * moxie-tdep.c (moxie_read_pc): Remove.
13898         (moxie_write_pc): Remove.
13899         (moxie_gdbarch_init): Update.
13900
13901 2018-02-06  Yao Qi  <yao.qi@linaro.org>
13902
13903         * expprint.c (print_subexp_standard): Handle
13904         OP_F77_UNDETERMINED_ARGLIST.
13905         (dump_subexp_body_standard): Likewise.
13906
13907 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
13908
13909         * target-descriptions.c (tdesc_element_visitor) Add empty
13910         implementations.
13911         (tdesc_type): Move make_gdb_type from here.
13912         (tdesc_type_builtin): Likewise.
13913         (tdesc_type_vector): Likewise.
13914         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
13915         (make_gdb_type_struct): Move from tdesc_type_with_fields.
13916         (make_gdb_type_union): Likewise.
13917         (make_gdb_type_flags): Likewise.
13918         (make_gdb_type_enum): Likewise.
13919         (make_gdb_type): New function.
13920         (tdesc_register_type): Use static make_gdb_type.
13921
13922 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
13923
13924         * infcmd.c (default_print_one_register_info): Align natural-format
13925         column values consistently one under another.
13926         (pad_to_column): New function.
13927
13928 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
13929
13930         * dwarf2read.c (dwarf2_physname): Move commment.
13931
13932 2018-02-01  Leszek Swirski  <leszeks@google.com>
13933
13934         * varobj.c (varobj_formatted_print_options): Allow recursive
13935         pretty printing if pretty printing is enabled.
13936
13937 2018-02-01  Leszek Swirski  <leszeks@google.com>
13938
13939         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
13940         names after a structop as a filename.
13941
13942 2018-02-01  Yao Qi  <yao.qi@linaro.org>
13943
13944         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
13945         (arm_record_coproc_data_proc): Likewise.
13946
13947 2018-02-01  Yao Qi  <yao.qi@linaro.org>
13948
13949         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
13950
13951 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
13952
13953         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
13954         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
13955
13956 2018-01-31  Pedro Alves  <palves@redhat.com>
13957
13958         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
13959         * inflow.c (child_terminal_save_inferior): Wrap reference to
13960         tcgetpgrp in HAVE_TERMIOS_H.
13961         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
13962         _WIN32.
13963         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
13964         always iterate over all inferiors.
13965         (gdbsim_cntrl_c): Adjust.
13966         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
13967
13968 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
13969
13970         * gdbtypes.c (lookup_array_range_type): Make sure the array's
13971         index type is objfile-owned if the element type is as well.
13972
13973 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
13974
13975         GDB 8.1 released.
13976
13977 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13978
13979         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
13980         "features/s390x-linux64.c".
13981         (_initialize_s390_linux_tdep): Remove initialization of tdescs
13982         s390_linux32 and s390x_linux64.
13983         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
13984         default tdesc.
13985         * s390-tdep.c: Include "features/s390-linux32.c" and
13986         "features/s390x-linux64.c".
13987         (s390_tdesc_valid): Add check for tdesc_has_registers.
13988         (s390_gdbarch_init): Make sure there is always a valid tdesc.
13989         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
13990         tdesc_s390x_linux64.
13991         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
13992         tdesc_s390x_linux64 to...
13993         * s390-tdep.h: ...here.
13994
13995 2018-01-30  Pedro Alves  <palves@redhat.com>
13996
13997         PR gdb/13211
13998         * config.in, configure: Regenerate.
13999         * configure.ac: Check for getpgid.
14000         * go32-nat.c (go32_pass_ctrlc): New.
14001         (go32_target): Install it.
14002         * inf-child.c (inf_child_target): Install
14003         child_terminal_save_inferior, child_pass_ctrlc and
14004         child_interrupt.
14005         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
14006         (inf_ptrace_target): No longer install it.
14007         * infcmd.c (interrupt_target_1): Adjust.
14008         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
14009         (child_interrupt): Declare.
14010         (inferior::terminal_state): New.
14011         * inflow.c (struct terminal_info): Update comments.
14012         (inferior_process_group): Delete.
14013         (terminal_is_ours): Delete.
14014         (gdb_tty_state): New.
14015         (child_terminal_init): Adjust.
14016         (is_gdb_terminal, sharing_input_terminal_1)
14017         (sharing_input_terminal): New functions.
14018         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
14019         Set the process's actual process group in the foreground if
14020         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
14021         mark terminal as the inferior's if not sharing GDB's terminal.
14022         Don't check attach_flag.
14023         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
14024         pass down a target_terminal_state.
14025         (child_terminal_save_inferior): New, factored out from ...
14026         (child_terminal_ours_1): ... this.  Handle
14027         target_terminal_state::is_ours_for_output.
14028         (child_interrupt, child_pass_ctrlc): New.
14029         (inflow_inferior_exit): Clear the inferior's terminal_state.
14030         (copy_terminal_info): Copy the inferior's terminal state.
14031         (_initialize_inflow): Remove reference to terminal_is_ours.
14032         * inflow.h (inferior_process_group): Delete.
14033         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
14034         * procfs.c (procfs_target): Don't install procfs_interrupt.
14035         (procfs_interrupt): Delete.
14036         * remote.c (remote_serial_quit_handler): Adjust.
14037         (remote_interrupt): Remove ptid parameter.  Adjust.
14038         * target-delegates.c: Regenerate.
14039         * target.c: Include "terminal.h".
14040         (target_terminal::terminal_state): Rename to ...
14041         (target_terminal::m_terminal_state): ... this.
14042         (target_terminal::init): Adjust.
14043         (target_terminal::inferior): Adjust to per-inferior
14044         terminal_state.
14045         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
14046         (target_terminal::ours, target_terminal::ours_for_output): Use
14047         target_terminal_is_ours_kind.
14048         (target_interrupt): Remove ptid parameter.  Adjust.
14049         (default_target_pass_ctrlc): Adjust.
14050         * target.h (target_ops::to_terminal_save_inferior): New field.
14051         (target_ops::to_interrupt): Remove ptid_t parameter.
14052         (target_interrupt): Remove ptid_t parameter.  Update comment.
14053         (target_pass_ctrlc): Update comment.
14054         * target/target.h (target_terminal_state): New scoped enum,
14055         factored out of ...
14056         (target_terminal::terminal_state): ... here.
14057         (target_terminal::inferior): Update comments.
14058         (target_terminal::restore_inferior): New.
14059         (target_terminal::is_inferior, target_terminal::is_ours)
14060         (target_terminal::is_ours_for_output): Adjust.
14061         (target_terminal::scoped_restore_terminal_state): Adjust to
14062         rename, and call restore_inferior() instead of inferior().
14063         (target_terminal::scoped_restore_terminal_state::m_state): Change
14064         type.
14065         (target_terminal::terminal_state): Rename to ...
14066         (target_terminal::m_terminal_state): ... this and change type.
14067
14068 2018-01-30  Pedro Alves  <palves@redhat.com>
14069
14070         * linux-nat.c (wait_for_signal): New function.
14071         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
14072         directly.
14073         (async_terminal_is_ours)
14074         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
14075         (linux_nat_add_target): Don't override
14076         to_terminal_inferior/to_terminal_ours.
14077
14078 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
14079
14080         * remote.c (remote_follow_fork): Don't call "detach_inferior".
14081
14082 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
14083
14084         * dwarf2read.c (free_dwo_files): Add forward-declaration.
14085         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
14086         dwarf2_per_objfile_free here.
14087         (dwarf2_per_objfile_free): Remove.
14088         (_initialize_dwarf2_read): Don't register
14089         dwarf2_per_objfile_free as a registry cleanup.
14090
14091 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
14092
14093         Avoid compilation errors in MinGW native builds
14094
14095         The error is triggered by including python-internal.h, and the
14096         error message is:
14097
14098              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
14099                       from build-gnulib/import/math.h:27,
14100                       from d:/usr/Python26/include/pyport.h:235,
14101                       from d:/usr/Python26/include/Python.h:58,
14102                       from python/python-internal.h:94,
14103                       from python/py-arch.c:24:
14104              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
14105         using ::hypot;
14106                 ^~~~~
14107
14108         This happens because Python headers define 'hypot' to expand t
14109         '_hypot' in the Windows builds.
14110         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
14111         'hypoth'.  This avoids a compilation error.
14112
14113 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
14114
14115         * MAINTAINERS (Write After Approval): Fix ordering.
14116
14117 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
14118
14119         * MAINTAINERS (Write After Approval): Add Alan Hayward.
14120
14121 2018-01-26  Alan Modra  <amodra@gmail.com>
14122
14123         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
14124         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
14125         Remove nop.  Make const.  Comment.
14126         (powerpc32_plt_stub_so_2): New.
14127         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
14128         Correct count.  Update uses.
14129         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
14130         Move common code reading PLT entry word.  Correct
14131         powerpc32_plt_stub PLT address calculation.
14132         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
14133         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
14134         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
14135         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
14136         (ppc64_standard_linkage8): Likewise.
14137         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
14138         Correct insns description.
14139         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
14140
14141 2018-01-24  Pedro Alves  <palves@redhat.com>
14142
14143         GCC PR libstdc++/83906
14144         * gdbtypes.c (operator==(const dynamic_prop &,
14145         const dynamic_prop &)): New.
14146         (operator==(const range_bounds &, const range_bounds &)): New.
14147         (check_types_equal): Use them instead of memcmp.
14148         * gdbtypes.h (operator==(const dynamic_prop &,
14149         const dynamic_prop &)): Declare.
14150         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
14151         (operator==(const range_bounds &, const range_bounds &)): Declare.
14152         (operator!=(const range_bounds &, const range_bounds &)): Declare.
14153
14154 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14155
14156         * s390-linux-tdep.c (s390_record_address_mask)
14157         (s390_record_calc_disp_common, s390_record_calc_disp)
14158         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
14159         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
14160         (s390_process_record): Move to s390-tdep.c.
14161         (s390_linux_init_abi_any): Adjust.
14162         * s390-tdep.c (s390_record_address_mask)
14163         (s390_record_calc_disp_common, s390_record_calc_disp)
14164         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
14165         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
14166         (s390_process_record): Moved from s390-linux-tdep.c
14167         (s390_gdbarch_init): Adjust.
14168
14169 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14170
14171         * s390-linux-nat.c (s390-tdep.h): New include.
14172         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
14173         (HFILES_NO_SRCDIR): Add s390-tdep.h.
14174         (ALLDEPFILES): Add s390-tdep.c.
14175         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
14176         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
14177         * s390-tdep.h: ...this.  New file.
14178         * s390-linux-tdep.c (s390-tdep.h): New include.
14179         (_initialize_s390_tdep): Rename to...
14180         (_initialize_s390_linux_tdep): ...this and adjust.
14181         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
14182         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
14183         s390-tdep.h.
14184         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
14185         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
14186         (s390_is_partial_instruction, s390_software_single_step)
14187         (is_non_branch_ril, s390_displaced_step_copy_insn)
14188         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
14189         (s390_prologue_data, s390_addr, s390_store, s390_load)
14190         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
14191         (s390_register_call_saved, s390_guess_tracepoint_registers)
14192         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
14193         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
14194         (s390_pseudo_register_name, s390_pseudo_register_type)
14195         (s390_pseudo_register_read, s390_pseudo_register_write)
14196         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
14197         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
14198         (s390_addr_bits_remove, s390_address_class_type_flags)
14199         (s390_address_class_type_flags_to_name)
14200         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
14201         (s390_function_arg_float, s390_function_arg_vector)
14202         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
14203         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
14204         (s390_frame_align, s390_register_return_value, s390_return_value)
14205         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
14206         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
14207         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
14208         (s390_trad_frame_prev_register, s390_unwind_cache)
14209         (s390_prologue_frame_unwind_cache)
14210         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
14211         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
14212         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
14213         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
14214         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
14215         (s390_frame_base_address, s390_local_base_address)
14216         (s390_frame_base, s390_gcc_target_options)
14217         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
14218         (s390_validate_reg_range, s390_tdesc_valid)
14219         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
14220         * s390-tdep.c: ...this.  New file.
14221
14222 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14223
14224         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
14225         (s390_process_record, s390_gdbarch_tdep_alloc)
14226         (s390_linux_init_abi_any): Use/set new hook.
14227
14228 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14229
14230         * s390-linux-tdep.c (osabi.h): New include.
14231         (s390_linux_init_abi_31, s390_linux_init_abi_64)
14232         (s390_linux_init_abi_any): New functions.
14233         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
14234
14235 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14236
14237         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
14238         tdesc_has_registers check
14239
14240 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14241
14242         * s390-linux-tdep.c (s390_tdesc_valid): New function.
14243         (s390_validate_reg_range): New macro.
14244         (s390_gdbarch_init): Adjust.
14245
14246 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14247
14248         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
14249         (s390_gdbarch_tdep_alloc): Adjust.
14250         (s390_gdbarch_init): Adjust.
14251
14252 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14253
14254         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
14255         <have_tdb>: Change type to bool.
14256         (s390_gdbarch_tdep_alloc): Adjust.
14257         (s390_gdbarch_init): Adjust.
14258
14259 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14260
14261         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
14262         (gdbarch_tdep) <have_upper, have_vx>: New fields.
14263         (s390_gdbarch_tdep_alloc): New function.
14264         (s390_gdbarch_init): Allocate tdep at start and use its fields
14265         instead of separate variables.
14266
14267 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14268
14269         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
14270         when looking for cached gdbarch and add comment for remaining.
14271
14272 2018-01-22  Pedro Alves  <palves@redhat.com>
14273             Sergio Durigan Junior  <sergiodj@redhat.com>
14274
14275         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
14276         case.
14277
14278 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
14279
14280         * MAINTAINERS: Update my company e-mail address.
14281
14282 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14283
14284         * regcache.c (cooked_write_test): New function.
14285         (_initialize_regcache): Register the test.
14286
14287 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14288
14289         * ia64-tdep.c (ia64_pseudo_register_read): Call
14290         regcache->cooked_read instead of regcache_cooked_read_unsigned.
14291         * m32c-tdep.c (m32c_cat_read): Likewise.
14292         (m32c_r3r2r1r0_read): Likewise.
14293         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
14294         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
14295
14296 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14297
14298         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
14299         method raw_read instead of regcache_raw_read.
14300         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
14301         * arm-tdep.c (arm_neon_quad_read): Likewise.
14302         * avr-tdep.c (avr_pseudo_register_read): Likewise.
14303         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
14304         * frv-tdep.c (frv_pseudo_register_read): Likewise.
14305         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
14306         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
14307         (i386_pseudo_register_read_into_value): Likewise.
14308         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
14309         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
14310         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
14311         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
14312         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
14313         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
14314         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
14315         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
14316         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
14317
14318 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14319
14320         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
14321         * configure.tgt: Remove target mt.
14322         * mt-tdep.c: Remove.
14323         * regcache.c (cooked_read_test): Remove the check for mt.
14324
14325 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14326
14327         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
14328         instead of gdbarch_pseudo_register_read_value.
14329
14330 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
14331
14332         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
14333         language is Ada.
14334
14335 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
14336
14337         * linespec.c (create_sals_line_offset): Remove code that preserved
14338         the symtab_and_line's line number.
14339
14340 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14341
14342         * varobj.c (varobj_create): Don't set valid_block when creating a
14343         floating varobj.
14344
14345 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14346
14347         * varobj.c (varobj_create): Remove out of date comment.
14348
14349 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14350
14351         PR mi/20395
14352         * ada-exp.y (write_var_from_sym): Pass extra parameter when
14353         updating innermost block.
14354         * parse.c (innermost_block_tracker::update): Take extra type
14355         parameter, and check types match before updating innermost block.
14356         (write_dollar_variable): Update innermost block for registers.
14357         * parser-defs.h (enum innermost_block_tracker_type): New enum.
14358         (innermost_block_tracker::innermost_block_tracker): Initialise
14359         m_types member.
14360         (innermost_block_tracker::reset): Take type parameter.
14361         (innermost_block_tracker::update): Take type parameter, and pass
14362         type through as needed.
14363         (innermost_block_tracker::m_types): New member.
14364         * varobj.c (varobj_create): Pass type when reseting innermost
14365         block.
14366
14367 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14368
14369         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
14370         * ada-lang.c (resolve_subexp): Likewise.
14371         * breakpoint.c (set_breakpoint_condition) Likewise.
14372         (watch_command_1) Likewise.
14373         * c-exp.y (variable): Likewise.
14374         * d-exp.y (PrimaryExpression): Likewise.
14375         * f-exp.y (variable): Likewise.
14376         * go-exp.y (variable): Likewise.
14377         * m2-exp.y (variable): Likewise.
14378         * objfiles.c (objfile::~objfile): Likewise.
14379         * p-exp.y (variable): Likewise.
14380         * parse.c (innermost_block): Change type.
14381         * parser-defs.h (class innermost_block_tracker): New.
14382         (innermost_block): Change to innermost_block_tracker.
14383         * printcmd.c (display_command): Switch to innermost_block API.
14384         (do_one_display): Likewise.
14385         * rust-exp.y (do_one_display): Likewise.
14386         * symfile.c (clear_symtab_users): Likewise.
14387         * varobj.c (varobj_create): Switch to innermost_block API, replace
14388         use of innermost_block with block stored on varobj object.
14389
14390 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14391
14392         * expression.h (innermost_block): Remove declaration.
14393         * varobj.c: Add 'parser-defs.h' include.
14394
14395 2018-01-19  Tom Tromey  <tom@tromey.com>
14396
14397         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
14398         symbols in the static and global blocks.
14399
14400 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
14401
14402         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
14403         gdb_ptrace.h, and move including gdb_wait.h ...
14404         * nat/linux-ptrace.h: ... to here.
14405
14406 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14407
14408         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
14409         inf_ptrace_detach_success.
14410         (inf_ptrace_detach_success): Add inferior parameter, use it
14411         instead of inferior_ptid, pass it to detach_inferior.
14412         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
14413         parameter.
14414         * inferior.c (detach_inferior): Add overload that takes an
14415         inferior object.
14416         * inferior.h (detach_inferior): Likewise.
14417         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
14418         use inferior_ptid, adjust call to inf_ptrace_detach_success.
14419         * linux-thread-db.c (thread_db_detach): Use inf parameter.
14420
14421 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14422
14423         * target.h (struct target_ops) <to_detach>: Add inferior
14424         parameter.
14425         (target_detach): Likewise.
14426         * target.c (dispose_inferior): Pass inferior down.
14427         (target_detach): Pass inferior down.  Assert that it is equal to
14428         the current inferior.
14429         * aix-thread.c (aix_thread_detach): Pass inferior down.
14430         * corefile.c (core_file_command): Pass current_inferior() down.
14431         * corelow.c (core_detach): Add inferior parameter.
14432         * darwin-nat.c (darwin_detach): Likewise.
14433         * gnu-nat.c (gnu_detach): Likewise.
14434         * inf-ptrace.c (inf_ptrace_detach): Likewise.
14435         * infcmd.c (detach_command): Pass current_inferior() down to
14436         target_detach.
14437         * infrun.c (follow_fork_inferior): Pass parent_inf to
14438         target_detach.
14439         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
14440         target_detach.
14441         * linux-nat.c (linux_nat_detach): Add inferior parameter.
14442         * linux-thread-db.c (thread_db_detach): Likewise.
14443         * nto-procfs.c (procfs_detach): Likewise.
14444         * procfs.c (procfs_detach): Likewise.
14445         * record.c (record_detach): Likewise.
14446         * record.h (struct inferior): Forward-declare.
14447         (record_detach): Add inferior parameter.
14448         * remote-sim.c (gdbsim_detach): Likewise.
14449         * remote.c (remote_detach_1): Likewise.
14450         (remote_detach): Likewise.
14451         (extended_remote_detach): Likewise.
14452         * sol-thread.c (sol_thread_detach): Likewise.
14453         * target-debug.h (target_debug_print_inferior_p): New macro.
14454         * target-delegates.c: Re-generate.
14455         * top.c (kill_or_detach): Pass inferior down to target_detach.
14456         * windows-nat.c (windows_detach): Add inferior parameter.
14457
14458 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14459
14460         * target.h (struct target_ops) <to_detach>: Remove args
14461         parameter.
14462         (target_detach): Likewise.
14463         * target.c (dispose_inferior): Adjust.
14464         (target_detach): Remove args parameter, adjust.
14465         * aix-thread.c (aix_thread_detach): Adjust.
14466         * corefile.c (core_file_command): Adjust.
14467         * corelow.c (core_detach): Adjust.
14468         * darwin-nat.c (darwin_detach): Adjust.
14469         * gnu-nat.c (gnu_detach): Adjust.
14470         * inf-ptrace.c (inf_ptrace_detach): Adjust.
14471         * infcmd.c (detach_command): Adjust
14472         * infrun.c (follow_fork_inferior): Adjust.
14473         (handle_vfork_child_exec_or_exit): Adjust.
14474         * linux-fork.c (linux_fork_detach): Remove args parameter.
14475         * linux-fork.h (linux_fork_detach): Likewise.
14476         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
14477         * linux-thread-db.c (thread_db_detach): Likewise.
14478         * nto-procfs.c (procfs_detach): Likewise.
14479         * procfs.c (procfs_detach): Likewise.
14480         (do_detach): Remove signo parameter.
14481         * record.c (record_detach): Remove args parameter.
14482         * record.h (record_detach): Likewise.
14483         * remote-sim.c (gdbsim_detach): Likewise.
14484         * remote.c (remote_detach_1): Likewise.
14485         (remote_detach): Likewise.
14486         (extended_remote_detach): Likewise.
14487         * sol-thread.c (sol_thread_detach): Likewise.
14488         * target-delegates.c: Re-generate.
14489         * top.c (struct qt_args) <args>: Remove field.
14490         (kill_or_detach): Don't pass args.
14491         (quit_force): Don't set args.
14492         * windows-nat.c (windows_detach): Remove args parameter.
14493
14494 2018-01-19  Yao Qi  <yao.qi@linaro.org>
14495
14496         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
14497         (arm_linux_init_abi): Install it.
14498
14499 2018-01-19  Yao Qi  <yao.qi@linaro.org>
14500
14501         * osabi.c (gdb_osabi_names): Extend the regexp for
14502         arm-linux-gnueabihf.
14503
14504 2018-01-18  Yao Qi  <yao.qi@linaro.org>
14505
14506         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
14507         m_abbrevs.
14508         (abbrev_table::add_abbrev): Update.
14509         (abbrev_table::lookup_abbrev): Update.
14510
14511 2018-01-18  Yao Qi  <yao.qi@linaro.org>
14512
14513         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
14514
14515 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
14516
14517         * compile/compile.c (compile_to_object): Convert "triplet_rx"
14518         to "std::string".
14519
14520 2018-01-17  Tom Tromey  <tom@tromey.com>
14521
14522         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
14523
14524 2018-01-17  Tom Tromey  <tom@tromey.com>
14525
14526         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
14527         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
14528         (create_array_type_with_stride): Update.
14529         * dwarf2read.c (set_die_type): Update.
14530
14531 2018-01-17  Tom Tromey  <tom@tromey.com>
14532
14533         * dwarf2read.c (delayed_method_info): Remove typedef.
14534         (dwarf2_cu::method_info): Now a std::vector.
14535         (add_to_method_list): Update.
14536         (free_delayed_list): Remove.
14537         (compute_delayed_physnames): Update.
14538         (process_full_comp_unit, process_full_type_unit): Clear the method
14539         list.  Remove cleanups.
14540         (psymtab_include_file_name): Add name_holder parameter.  Use
14541         unique_xmalloc_ptr.
14542         (dwarf_decode_lines): Update.
14543
14544 2018-01-17  Tom Tromey  <tom@tromey.com>
14545             Simon Marchi  <simon.marchi@ericsson.com>
14546
14547         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
14548         (dwarf2_per_objfile::free_cached_comp_units)
14549         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
14550         (init_cutu_and_read_dies_no_follow): Update.
14551         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
14552         (dwarf2_cu::~dwarf2_cu): New.
14553         (free_heap_comp_unit, free_stack_comp_unit): Remove.
14554         (age_cached_comp_units, free_one_cached_comp_unit): Update.
14555
14556 2018-01-17  Tom Tromey  <tom@tromey.com>
14557             Simon Marchi  <simon.marchi@ericsson.com>
14558
14559         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
14560         (struct die_reader_specs) <abbrev_table>: New member.
14561         (struct abbrev_table): Add constructor.
14562         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
14563         <abbrev_obstack>: Now an auto_obstack.
14564         (abbrev_table_up): New typedef.
14565         (init_cu_die_reader): Add abbrev_table parameter.
14566         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
14567         Add result_dwo_abbrev_table.
14568         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
14569         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
14570         Update.
14571         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
14572         parameter.
14573         (skip_children): Update.
14574         (abbrev_table::alloc_abbrev): Rename from
14575         abbrev_table_alloc_abbrev.
14576         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
14577         (abbrev_table::lookup_abbrev): Rename from
14578         abbrev_table_lookup_abbrev.
14579         (abbrev_table_read_table): Return abbrev_table_up.
14580         (abbrev_table_free, abbrev_table_free_cleanup)
14581         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
14582         (load_partial_dies): Update.
14583
14584 2018-01-17  Tom Tromey  <tom@tromey.com>
14585
14586         * dwarf2read.c (dwarf2_compute_name): Update comment.
14587         (read_func_scope, read_variable): Update.
14588         (new_symbol): Remove.
14589         (new_symbol_full): Rename to new_symbol.
14590
14591 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
14592
14593         PR gdb/16577
14594         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
14595         a warning instead of throwing an error, set section size to 0 and return
14596         NULL.
14597         * gdb_bfd.h (gdb_bfd_map_section): Update description.
14598
14599 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14600
14601         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
14602         std::string.
14603         (linux_ptrace_attach_fail_reason_string): Likewise.
14604         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
14605         Likewise.
14606         (linux_ptrace_attach_fail_reason_string): Likewise.
14607         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
14608
14609 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14610
14611         * linux-nat.c (linux_nat_attach): Remove xstrdup.
14612
14613 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
14614
14615         PR gdb/21559
14616         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
14617         checking for fs_base/gs_base fields in struct user_regs_struct.
14618         * configure: Regenerate.
14619
14620 2018-01-17  Yao Qi  <yao.qi@linaro.org>
14621
14622         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
14623         function.
14624         (aarch64_linux_init_abi): Install it to gdbarch hook
14625         gcc_target_options.
14626
14627 2018-01-15  Pedro Alves  <palves@redhat.com>
14628
14629         * common/signals-state-save-restore.c
14630         (save_original_signals_state): Fix typos.
14631
14632 2017-01-12  Tom Tromey  <tom@tromey.com>
14633             Sergio Durigan Junior  <sergiodj@redhat.com>
14634
14635         * Makefile.in (install-only): Install gdb-add-index.
14636
14637 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
14638
14639         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
14640
14641 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
14642
14643         * infrun.c (keep_going_pass_signal): Clear step-over info when
14644         insert_breakpoints fails.
14645
14646 2018-01-11  Pedro Alves  <palves@redhat.com>
14647
14648         PR gdb/22583
14649         * infrun.c (resume): Rename to ...
14650         (resume_1): ... this.
14651         (resume): Reimplement as wrapper around resume_1.
14652
14653 2018-01-11  Pedro Alves  <palves@redhat.com>
14654
14655         PR remote/22597
14656         * remote.c (remote_parse_stop_reply): Default to the last-set
14657         general thread instead of to 'magic_null_ptid'.
14658
14659 2018-01-10  Pedro Alves  <palves@redhat.com>
14660
14661         * language.h (language_get_symbol_name_matcher): Rename ...
14662         (get_symbol_name_matcher): ... this.
14663         * language.c (language_get_symbol_name_matcher): Ditto.
14664         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
14665         callers adjusted.
14666
14667 2018-01-10  Pedro Alves  <palves@redhat.com>
14668
14669         PR gdb/22670
14670         * dwarf2read.c
14671         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
14672         Adjust to use language_get_symbol_name_matcher instead of
14673         language_defn::la_get_symbol_name_matcher.
14674         * language.c (language_get_symbol_name_matcher): If in Ada mode
14675         and the lookup name is a verbatim match, return Ada's matcher.
14676         * language.h (language_get_symbol_name_matcher): Adjust comment.
14677         (ada_lookup_name_info::verbatim_p):: New method.
14678
14679 2018-01-10  Pedro Alves  <palves@redhat.com>
14680
14681         PR gdb/22670
14682         * ada-lang.c (ada_collect_symbol_completion_matches): If the
14683         minsym's language is language_auto or language_cplus, pass down
14684         language_ada instead.
14685         * symtab.c (compare_symbol_name): Don't frob symbol language here.
14686
14687 2018-01-10  Pedro Alves  <palves@redhat.com>
14688
14689         PR gdb/22670
14690         * minsyms.c (linkage_name_str): New function.
14691         (iterate_over_minimal_symbols): Use it.
14692
14693 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14694
14695         * NEWS: Document that 'info proc' now works on FreeBSD.
14696
14697 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14698
14699         * configure.ac: Check for kinfo_getfile in libutil.
14700         * configure: Regenerate.
14701         * config.in: Regenerate.
14702         * fbsd-nat.c: Include "fbsd-tdep.h".
14703         (fbsd_fetch_cmdline): New.
14704         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
14705         rather than calling error.
14706         (fbsd_info_proc): New.
14707         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
14708         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
14709         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
14710
14711 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14712
14713         * fbsd-nat.c (struct free_deleter): Remove.
14714         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
14715
14716 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14717
14718         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
14719         NULL for an empty pathname.
14720
14721 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14722
14723         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
14724         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
14725         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
14726         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
14727         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
14728         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
14729         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
14730         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
14731         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
14732         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
14733         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
14734         (fbsd_core_fetch_timeval, fbsd_print_sigset)
14735         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
14736         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
14737         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
14738
14739 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
14740
14741         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
14742         (gnu_xfer_auxv): New function.
14743         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
14744         TARGET_OBJECT_AUXV.
14745
14746 2018-01-08  Yao Qi  <yao.qi@linaro.org>
14747             Simon Marchi  <simon.marchi@ericsson.com>
14748
14749         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
14750         common/selftest.c.
14751         (COMMON_OBS): Remove selftest.o.
14752         * configure.ac: Append selftest-arch.c and common/selftest.c to
14753         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
14754         * configure: Re-generated.
14755         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
14756         GDB_SELF_TEST.
14757         (maintenance_info_selftests): Likewise.
14758
14759 2018-01-08  Xavier Roirand  <roirand@adacore.com>
14760
14761         * ada-valprint.c (val_print_packed_array_elements): Use
14762         proper number of elements when printing an array indexed
14763         by an enumeration type.
14764
14765 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14766
14767         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
14768         (dw2_get_file_names_reader): Adjust.
14769         (lookup_dwo_signatured_type): Adjust.
14770         (lookup_dwp_signatured_type): Adjust.
14771         (lookup_signatured_type): Adjust.
14772         (create_type_unit_group): Adjust.
14773         (get_type_unit_group): Adjust.
14774         (process_psymtab_comp_unit_reader): Adjust.
14775         (build_type_psymtabs_reader): Adjust.
14776         (scan_partial_symbols): Adjust.
14777         (add_partial_symbol): Adjust.
14778         (add_partial_subprogram): Adjust.
14779         (peek_die_abbrev): Adjust.
14780         (fixup_go_packaging): Adjust.
14781         (process_imported_unit_die): Adjust.
14782         (dwarf2_compute_name): Adjust.
14783         (dwarf2_physname): Adjust.
14784         (read_import_statement): Adjust.
14785         (handle_DW_AT_stmt_list): Adjust.
14786         (read_file_scope): Adjust.
14787         (read_func_scope): Adjust.
14788         (read_lexical_block_scope): Adjust.
14789         (read_call_site_scope): Adjust.
14790         (read_variable): Adjust.
14791         (dwarf2_rnglists_process): Adjust.
14792         (dwarf2_ranges_process): Adjust.
14793         (dwarf2_ranges_read): Adjust.
14794         (dwarf2_get_pc_bounds): Adjust.
14795         (dwarf2_record_block_ranges): Adjust.
14796         (dwarf2_add_field): Adjust.
14797         (dwarf2_add_member_fn): Adjust.
14798         (read_structure_type): Adjust.
14799         (process_structure_scope): Adjust.
14800         (read_enumeration_type): Adjust.
14801         (read_array_type): Adjust.
14802         (mark_common_block_symbol_computed): Adjust.
14803         (read_common_block): Adjust.
14804         (read_namespace_type): Adjust.
14805         (read_namespace): Adjust.
14806         (read_module_type): Adjust.
14807         (read_tag_pointer_type): Adjust.
14808         (read_tag_ptr_to_member_type): Adjust.
14809         (read_tag_string_type): Adjust.
14810         (read_subroutine_type): Adjust.
14811         (read_typedef): Adjust.
14812         (read_base_type): Adjust.
14813         (attr_to_dynamic_prop): Adjust.
14814         (read_subrange_type): Adjust.
14815         (read_unspecified_type): Adjust.
14816         (dwarf2_read_abbrevs): Adjust.
14817         (load_partial_dies): Adjust.
14818         (read_partial_die): Adjust.
14819         (find_partial_die): Adjust.
14820         (guess_partial_die_structure_name): Adjust.
14821         (fixup_partial_die): Adjust.
14822         (read_attribute_value): Adjust.
14823         (read_addr_index): Adjust.
14824         (read_addr_index_from_leb128): Adjust.
14825         (read_str_index): Adjust.
14826         (dwarf2_string_attr): Adjust.
14827         (get_debug_line_section): Adjust.
14828         (dwarf_decode_line_header): Adjust.
14829         (lnp_state_machine::check_line_address): Adjust.
14830         (dwarf_decode_lines_1): Adjust.
14831         (dwarf_decode_lines): Adjust.
14832         (dwarf2_start_symtab): Adjust.
14833         (var_decode_location): Adjust.
14834         (new_symbol_full): Adjust.
14835         (dwarf2_const_value_data): Adjust.
14836         (dwarf2_const_value_attr): Adjust.
14837         (dwarf2_const_value): Adjust.
14838         (die_type): Adjust.
14839         (die_containing_type): Adjust.
14840         (build_error_marker_type): Adjust.
14841         (lookup_die_type): Adjust.
14842         (guess_full_die_structure_name): Adjust.
14843         (anonymous_struct_prefix): Adjust.
14844         (determine_prefix): Adjust.
14845         (dwarf2_name): Adjust.
14846         (follow_die_ref_or_sig): Adjust.
14847         (follow_die_offset): Adjust.
14848         (follow_die_ref): Adjust.
14849         (follow_die_sig_1): Adjust.
14850         (follow_die_sig): Adjust.
14851         (get_signatured_type): Adjust.
14852         (get_DW_AT_signature_type): Adjust.
14853         (decode_locdesc): Adjust.
14854         (dwarf_decode_macros): Adjust.
14855         (cu_debug_loc_section): Adjust.
14856         (fill_in_loclist_baton): Adjust.
14857         (dwarf2_symbol_mark_computed): Adjust.
14858         (init_one_comp_unit): Don't assign
14859         dwarf2_cu::dwarf2_per_objfile.
14860         (set_die_type): Adjust.
14861
14862 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14863
14864         * dwarf2read.c (struct mapped_debug_names): Add constructor.
14865         <dwarf2_per_objfile>: New field.
14866         (dwarf2_per_objfile): Remove global.
14867         (get_dwarf2_per_objfile): New function.
14868         (set_dwarf2_per_objfile): New function.
14869         (dwarf2_build_psymtabs_hard): Change objfile parameter to
14870         dwarf2_per_objfile.
14871         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
14872         (read_abbrev_offset): Likewise.
14873         (read_indirect_string): Likewise.
14874         (read_indirect_line_string): Likewise.
14875         (read_indirect_string_at_offset): Likewise.
14876         (read_indirect_string_from_dwz): Likewise.
14877         (dwarf2_find_containing_comp_unit): Change objfile parameter to
14878         dwarf2_per_objfile.
14879         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
14880         (create_all_comp_units): Change objfile parameter to
14881         dwarf2_per_objfile.
14882         (create_all_type_units): Likewise.
14883         (process_queue): Add dwarf2_per_objfile parameter.
14884         (read_and_check_comp_unit_head): Likewise.
14885         (lookup_dwo_unit_in_dwp): Likewise.
14886         (get_dwp_file): Likewise.
14887         (process_cu_includes): Likewise.
14888         (struct free_dwo_file_cleanup_data): New struct.
14889         (dwarf2_has_info): Use get_dwarf2_per_objfile and
14890         set_dwarf2_per_objfile.
14891         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
14892         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
14893         context, adjust calls.
14894         (dw2_instantiate_symtab): Likewise.
14895         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
14896         (dw2_get_cu): Likewise.
14897         (create_cu_from_index_list): Change objfile parameter to
14898         dwarf2_per_objfile.
14899         (create_cus_from_index_list): Get dwarf2_per_objfile from
14900         context, adjust calls.
14901         (create_cus_from_index): Likewise.
14902         (create_signatured_type_table_from_index): Change objfile
14903         parameter to dwarf2_per_objfile.
14904         (create_signatured_type_table_from_debug_names): Change objfile
14905         parameter to dwarf2_per_objfile.
14906         (create_addrmap_from_index): Likewise.
14907         (create_addrmap_from_aranges): Likewise.
14908         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
14909         (dw2_setup): Remove.
14910         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
14911         context.
14912         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
14913         get_dwarf2_per_objfile.
14914         (dw2_forget_cached_source_info): Likewise.
14915         (dw2_map_symtabs_matching_filename): Likewise.
14916         (struct dw2_symtab_iterator) <index>: Remove.
14917         <dwarf2_per_objfile>: New field.
14918         (dw2_symtab_iter_init): Replace index parameter with
14919         dwarf2_per_objfile.
14920         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
14921         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
14922         (dw2_print_stats): Likewise.
14923         (dw2_dump): Likewise.
14924         (dw2_expand_symtabs_for_function): Likewise.
14925         (dw2_expand_all_symtabs): Likewise.
14926         (dw2_expand_symtabs_with_fullname): Likewise.
14927         (dw2_expand_marked_cus): Replace index and objfile parameters
14928         with dwarf2_per_objfile.
14929         (dw_expand_symtabs_matching_file_matcher): Add
14930         dwarf2_per_objfile parameter and adjust calls.
14931         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
14932         adjust calls.
14933         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
14934         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
14935         adjust calls.
14936         (create_cus_from_debug_names_list): Replace objfile parameter
14937         with dwarf2_per_objfile and adjust calls.
14938         (create_cus_from_debug_names): Likewise.
14939         (dwarf2_read_debug_names): Likewise.
14940         (mapped_debug_names::namei_to_name): Adjust call.
14941         (dw2_debug_names_iterator::next): Likewise.
14942         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
14943         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
14944         (dw2_debug_names_dump): Likewise.
14945         (dw2_debug_names_expand_symtabs_for_function): Likewise.
14946         (dw2_debug_names_expand_symtabs_matching): Likewise.
14947         (dwarf2_initialize_objfile): Likewise.
14948         (dwarf2_build_psymtabs): Likewise.
14949         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
14950         this_cu.
14951         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
14952         (read_and_check_comp_unit_head): Likewise.
14953         (read_abbrev_offset): Likewise.
14954         (create_debug_type_hash_table): Likewise.
14955         (create_debug_types_hash_table): Likewise.
14956         (create_all_type_units): Replace objfile parameter with
14957         dwarf2_per_objfile.
14958         (add_type_unit): Add dwarf2_per_objfile parameter.
14959         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
14960         with dwarf2_per_objfile.
14961         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
14962         (lookup_dwp_signatured_type): Likewise.
14963         (lookup_signatured_type): Likewise.
14964         (read_cutu_die_from_dwo): Likewise.
14965         (init_tu_and_read_dwo_dies): Likewise.
14966         (init_cutu_and_read_dies): Likewise.
14967         (init_cutu_and_read_dies_no_follow): Likewise.
14968         (allocate_type_unit_groups_table): Add objfile parameter.
14969         (create_type_unit_group): Use dwarf2_per_objfile from cu.
14970         (get_type_unit_group): Likewise.
14971         (process_psymtab_comp_unit): Update call.
14972         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
14973         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
14974         (print_tu_stats): Likewise.
14975         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
14976         in void* parameter.
14977         (build_type_psymtabs): Change objfile parameter to
14978         dwarf2_per_objfile.
14979         (process_skeletonless_type_unit): Use dwarf2_per_objfile
14980         passed in void* parameter.
14981         (process_skeletonless_type_units): Change objfile parameter to
14982         dwarf2_per_objfile.
14983         (set_partial_user): Likewise.
14984         (dwarf2_build_psymtabs_hard): Likewise.
14985         (read_comp_units_from_section): Likewise.
14986         (create_all_comp_units): Likewise.
14987         (scan_partial_symbols): Update calls.
14988         (add_partial_symbol): Likewise.
14989         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
14990         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
14991         (process_queue): Add dwarf2_per_objfile parameter.
14992         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
14993         (compute_compunit_symtab_includes): Likewise.
14994         (process_cu_includes): Add dwarf2_per_objfile parameter.
14995         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
14996         (process_full_type_unit): Likewise.
14997         (process_imported_unit_die): Update call.
14998         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
14999         (read_file_scope): Likewise.
15000         (allocate_dwo_file_hash_table): Add objfile parameter.
15001         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
15002         (create_cus_hash_table): Likewise.
15003         (create_dwp_hash_table): Likewise.
15004         (create_dwo_unit_in_dwp_v1): Likewise.
15005         (create_dwp_v2_section): Likewise.
15006         (create_dwo_unit_in_dwp_v2): Likewise.
15007         (lookup_dwo_unit_in_dwp): Likewise.
15008         (try_open_dwop_file): Likewise.
15009         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
15010         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
15011         cleanup to include a reference to dwarf2_per_objfile.
15012         (open_dwp_file): Add dwarf2_per_objfile parameter.
15013         (open_and_init_dwp_file): Likewise.
15014         (get_dwp_file): Likewise.
15015         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
15016         (queue_and_load_all_dwo_tus): Update call.
15017         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
15018         data.
15019         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
15020         (dwarf2_ranges_process): Likewise.
15021         (dwarf2_get_pc_bounds): Likewise.
15022         (mark_common_block_symbol_computed): Likewise.
15023         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
15024         (dwarf2_read_abbrevs): Update call.
15025         (read_partial_die): Use dwarf2_per_objfile from cu.
15026         (find_partial_die): Likewise.
15027         (fixup_partial_die): Likewise.
15028         (read_attribute_value): Likewise.
15029         (read_indirect_string_at_offset_from): Add objfile parameter.
15030         (read_indirect_string_at_offset): Add dwarf2_per_objfile
15031         parameter.
15032         (read_indirect_string_from_dwz): Add objfile parameter.
15033         (read_indirect_string): Add objfile parameter.
15034         (read_addr_index_1): Add dwarf2_per_objfile parameter.
15035         (read_addr_index): Use dwarf2_per_objfile from cu.
15036         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
15037         call dw2_setup.
15038         (read_str_index): Use dwarf2_per_objfile from cu.
15039         (get_debug_line_section): Likewise.
15040         (read_formatted_entries): Add dwarf2_per_objfile parameter.
15041         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
15042         (new_symbol_full): Use dwarf2_per_objfile from cu.
15043         (build_error_marker_type): Likewise.
15044         (lookup_die_type): Likewise.
15045         (determine_prefix): Likewise.
15046         (follow_die_offset): Likewise.
15047         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
15048         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
15049         (dwarf2_fetch_die_type_sect_off): Likewise.
15050         (dwarf2_get_die_type): Likewise.
15051         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
15052         (get_signatured_type): Likewise.
15053         (get_DW_AT_signature_type): Likewise.
15054         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
15055         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
15056         (cu_debug_loc_section): Likewise.
15057         (fill_in_loclist_baton): Likewise.
15058         (dwarf2_symbol_mark_computed): Likewise.
15059         (dwarf2_find_containing_comp_unit): Change objfile parameter to
15060         dwarf2_per_objfile.
15061         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
15062         parameter.
15063         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
15064         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
15065         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
15066         (set_die_type): Use dwarf2_free_objfile from cu.
15067         (get_die_type_at_offset): Likewise.
15068         (dwarf2_per_objfile_free): Don't assign global variable.
15069         (debug_names) <constructor>: Add dwarf2_per_objfile
15070         parameter, update m_debugstrlookup construction.
15071         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
15072         parameter.
15073         <m_dwarf2_per_objfile>: New field.
15074         <lookup>: Use m_dwarf2_per_objfile.
15075         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
15076         (psyms_seen_size): Likewise.
15077         (write_gdbindex): Replace objfile parameter with
15078         dwarf2_per_objfile.
15079         (write_debug_names): Likewise.
15080         (write_psymtabs_to_index): Likewise.
15081         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
15082         calls.
15083
15084 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15085
15086         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
15087         <dwarf2_per_objfile>: New field.
15088         (struct dwarf2_per_cu_data) <objfile>: Remove.
15089         <dwarf2_per_objfile>: New field.
15090         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
15091         of objfile.
15092         (create_signatured_type_table_from_index): Likewise.
15093         (create_debug_type_hash_table): Likewise.
15094         (fill_in_sig_entry_from_dwo_entry): Likewise.
15095         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
15096         (create_type_unit_group): Assign dwarf2_per_objfile instead of
15097         objfile.
15098         (create_partial_symtab): Access objfile through
15099         dwarf2_per_objfile.
15100         (process_psymtab_comp_unit_reader): Likewise.
15101         (read_comp_units_from_section): Likewise.
15102         (scan_partial_symbols): Likewise.
15103         (add_partial_symbol): Likewise.
15104         (add_partial_subprogram): Likewise.
15105         (peek_die_abbrev): Likewise.
15106         (fixup_go_packaging): Likewise.
15107         (process_full_comp_unit): Likewise.
15108         (process_full_type_unit): Likewise.
15109         (process_imported_unit_die): Likewise.
15110         (dwarf2_compute_name): Likewise.
15111         (dwarf2_physname): Likewise.
15112         (read_import_statement): Likewise.
15113         (create_cus_hash_table): Assign dwarf2_physname instead of
15114         objfile.
15115         (read_func_scope): Access objfile through dwarf2_per_objfile.
15116         (read_lexical_block_scope): Likewise.
15117         (read_call_site_scope): Likewise.
15118         (read_variable): Likewise.
15119         (dwarf2_rnglists_process): Likewise.
15120         (dwarf2_ranges_process): Likewise.
15121         (dwarf2_ranges_read): Likewise.
15122         (dwarf2_record_block_ranges): Likewise.
15123         (dwarf2_add_field): Likewise.
15124         (dwarf2_add_member_fn): Likewise.
15125         (read_structure_type): Likewise.
15126         (process_structure_scope): Likewise.
15127         (read_enumeration_type): Likewise.
15128         (read_array_type): Likewise.
15129         (read_common_block): Likewise.
15130         (read_namespace_type): Likewise.
15131         (read_namespace): Likewise.
15132         (read_module_type): Likewise.
15133         (read_tag_pointer_type): Likewise.
15134         (read_tag_ptr_to_member_type): Likewise.
15135         (read_tag_string_type): Likewise.
15136         (read_subroutine_type): Likewise.
15137         (read_typedef): Likewise.
15138         (read_base_type): Likewise.
15139         (attr_to_dynamic_prop): Likewise.
15140         (read_subrange_type): Likewise.
15141         (read_unspecified_type): Likewise.
15142         (load_partial_dies): Likewise.
15143         (read_partial_die): Likewise.
15144         (find_partial_die): Likewise.
15145         (guess_partial_die_structure_name): Likewise.
15146         (fixup_partial_die): Likewise.
15147         (read_attribute_value): Likewise.
15148         (read_addr_index_from_leb128): Likewise.
15149         (dwarf2_read_addr_index): Likewise.
15150         (dwarf2_string_attr): Likewise.
15151         (lnp_state_machine::check_line_address): Likewise.
15152         (dwarf_decode_lines_1): Likewise.
15153         (dwarf_decode_lines): Likewise.
15154         (dwarf2_start_symtab): Likewise.
15155         (var_decode_location): Likewise.
15156         (new_symbol_full): Likewise.
15157         (dwarf2_const_value_data): Likewise.
15158         (dwarf2_const_value_attr): Likewise.
15159         (dwarf2_const_value): Likewise.
15160         (die_type): Likewise.
15161         (die_containing_type): Likewise.
15162         (lookup_die_type): Likewise.
15163         (guess_full_die_structure_name): Likewise.
15164         (anonymous_struct_prefix): Likewise.
15165         (dwarf2_name): Likewise.
15166         (follow_die_ref_or_sig): Likewise.
15167         (follow_die_offset): Likewise.
15168         (follow_die_ref): Likewise.
15169         (dwarf2_fetch_die_loc_sect_off): Likewise.
15170         (dwarf2_fetch_constant_bytes): Likewise.
15171         (dwarf2_fetch_die_type_sect_off): Likewise.
15172         (dwarf2_get_die_type): Likewise.
15173         (follow_die_sig): Likewise.
15174         (decode_locdesc): Likewise.
15175         (dwarf2_per_cu_objfile): Likewise.
15176         (dwarf2_per_cu_text_offset): Likewise.
15177         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
15178         objfile.
15179         (set_die_type): Access objfile through
15180         dwarf2_per_objfile.
15181
15182 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15183
15184         * valprint.c (converted_character_d): Remove typedef.
15185         (DEF_VEC_O (converted_character_d)): Remove.
15186         (count_next_character): Use std::vector.
15187         (print_converted_chars_to_obstack): Likewise.
15188         (generic_printstr): Likewise.
15189
15190 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15191
15192         * xml-support.h (struct gdb_xml_value): Add constructor.
15193         <value>: Change type to unique_xmalloc_ptr.
15194         (gdb_xml_value_s): Remove typedef.
15195         (DEF_VEC_O (gdb_xml_value_s)): Remove.
15196         (gdb_xml_element_start_handler): Change parameter type to
15197         std::vector.
15198         (xml_find_attribute): Likewise.
15199         * xml-support.c (xml_find_attribute): Change parameter type to
15200         std::vector and adjust.
15201         (gdb_xml_values_cleanup): Remove.
15202         (gdb_xml_parser::start_element): Adjust to std::vector.
15203         (xinclude_start_include): Change paraeter type to std::vector
15204         and adjust.
15205         * btrace.c (check_xml_btrace_version): Likewise.
15206         (parse_xml_btrace_block): Likewise.
15207         (parse_xml_btrace_pt_config_cpu): Likewise.
15208         (parse_xml_btrace_pt): Likewise.
15209         (parse_xml_btrace_conf_bts): Likewise.
15210         (parse_xml_btrace_conf_pt): Likewise.
15211         * memory-map.c (memory_map_start_memory): Likewise.
15212         (memory_map_start_property): Likewise.
15213         * osdata.c (osdata_start_osdata): Likewise.
15214         (osdata_start_item): Likewise.
15215         (osdata_start_column): Likewise.
15216         * remote.c (start_thread): Likewise.
15217         * solib-aix.c (library_list_start_library): Likewise.
15218         (library_list_start_list): Likewise.
15219         * solib-svr4.c (library_list_start_library): Likewise.
15220         (svr4_library_list_start_list): Likewise.
15221         * solib-target.c (library_list_start_segment): Likewise.
15222         (library_list_start_section): Likewise.
15223         (library_list_start_library): Likewise.
15224         (library_list_start_list): Likewise.
15225         * tracepoint.c (traceframe_info_start_memory): Likewise.
15226         (traceframe_info_start_tvar): Likewise.
15227         * xml-syscall.c (syscall_start_syscall): Likewise.
15228         * xml-tdesc.c (tdesc_start_target): Likewise.
15229         (tdesc_start_feature): Likewise.
15230         (tdesc_start_reg): Likewise.
15231         (tdesc_start_union): Likewise.
15232         (tdesc_start_struct): Likewise.
15233         (tdesc_start_flags): Likewise.
15234         (tdesc_start_enum): Likewise.
15235         (tdesc_start_field): Likewise.
15236         (tdesc_start_enum_value): Likewise.
15237         (tdesc_start_vector): Likewise.
15238
15239 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15240
15241         * extension.h (struct xmethod_worker) <clone>: Remove.
15242         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
15243         Remove.
15244         (python_xmethod_worker::clone): Remove.
15245         * valops.c (find_overload_match): Use std::move instead of
15246         clone.
15247
15248 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15249
15250         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
15251         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
15252         <free_xmethod_worker_data>: Remove.
15253         <get_matching_xmethod_workers>: Chance VEC to std::vector.
15254         <get_xmethod_arg_types>: Remove.
15255         <get_xmethod_result_type>: Remove.
15256         <invoke_xmethod>: Remove.
15257         * extension.c (new_xmethod_worker): Remove.
15258         (clone_xmethod_worker): Remove.
15259         (get_matching_xmethod_workers): Return void, pass std::vector by
15260         pointer.
15261         (get_xmethod_arg_types): Rename to...
15262         (xmethod_worker::get_arg_types): ... this, and adjust.
15263         (get_xmethod_result_type): Rename to...
15264         (xmethod_worker::get_result_type): ... this, and adjust.
15265         (invoke_xmethod): Remove.
15266         (free_xmethod_worker): Remove.
15267         (free_xmethod_worker_vec): Remove.
15268         * extension.h (enum ext_lang_rc): Move here from
15269         extension-priv.h.
15270         (struct xmethod_worker): Add constructor and destructor.
15271         <data>: Remove.
15272         <value>: Remove.
15273         <invoke, clone, do_get_result_type, do_get_arg_types>: New
15274         virtual pure methods.
15275         <get_arg_types, get_result_type>: New methods.
15276         (xmethod_worker_ptr): Remove typedef.
15277         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
15278         (xmethod_worker_vec): Remove typedef.
15279         (xmethod_worker_up): New typedef.
15280         (invoke_xmethod): Remove.
15281         (clone_xmethod_worker): Remove.
15282         (free_xmethod_worker): Remove.
15283         (free_xmethod_worker_vec): Remove.
15284         (get_xmethod_arg_types): Remove.
15285         (get_xmethod_result_type): Remove.
15286         * valops.c (find_method_list): Use std::vector, don't use
15287         intermediate vector.
15288         (value_find_oload_method_list): Use std::vector.
15289         (find_overload_match): Use std::vector.
15290         (find_oload_champ): Use std::vector.
15291         * value.c (value_free): Use operator delete.
15292         (value_of_xmethod): Rename to...
15293         (value_from_xmethod): ... this.  Don't assign
15294         xmethod_worker::value, take rvalue-reference.
15295         (result_type_of_xmethod): Adjust.
15296         (call_xmethod): Adjust.
15297         * value.h: Include extension.h.
15298         (struct xmethod_worker): Don't forward-declare.
15299         (value_of_xmethod): Rename to...
15300         (value_from_xmethod): ... this, take rvalue-reference.
15301         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
15302         (struct python_xmethod_worker): ... this, add constructor and
15303         destructor.
15304         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
15305         (gdbpy_free_xmethod_worker_data): Rename to...
15306         (python_xmethod_worker::~python_xmethod_worker): ... this and
15307         adjust.
15308         (gdbpy_clone_xmethod_worker_data): Rename to...
15309         (python_xmethod_worker::clone): ... this and adjust.
15310         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
15311         temporary vector.
15312         (gdbpy_get_xmethod_arg_types): Rename to...
15313         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
15314         (gdbpy_get_xmethod_result_type): Rename to...
15315         (python_xmethod_worker::do_get_result_type): ... this and
15316         adjust.
15317         (gdbpy_invoke_xmethod): Rename to...
15318         (python_xmethod_worker::invoke): ... this and adjust.
15319         (new_python_xmethod_worker): Rename to...
15320         (python_xmethod_worker::python_xmethod_worker): ... this and
15321         adjust.
15322         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
15323         Remove.
15324         (gdbpy_free_xmethod_worker_data): Remove.
15325         (gdbpy_get_matching_xmethod_workers): Use std::vector.
15326         (gdbpy_get_xmethod_arg_types): Remove.
15327         (gdbpy_get_xmethod_result_type): Remove.
15328         (gdbpy_invoke_xmethod): Remove.
15329         * python/python.c (python_extension_ops): Remove obsolete
15330         callbacks.
15331
15332 2018-01-05  Pedro Alves  <palves@redhat.com>
15333
15334         PR gdb/18653
15335         * common/signals-state-save-restore.c
15336         (save_original_signals_state): New parameter 'quiet'.  Warn if we
15337         find a custom handler preinstalled, instead of internal erroring.
15338         But only warn if !quiet.
15339         * common/signals-state-save-restore.h
15340         (save_original_signals_state): New parameter 'quiet'.
15341         * main.c (captured_main_1): Move save_original_signals_state call
15342         after option handling, and pass QUIET.
15343
15344 2018-01-05  Pedro Alves  <palves@redhat.com>
15345
15346         * spu-tdep.c (spu_catch_start): Pass
15347         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
15348
15349 2018-01-05  Pedro Alves  <palves@redhat.com>
15350
15351         PR gdb/22670
15352         * ada-lang.c (literal_symbol_name_matcher): New function.
15353         (ada_get_symbol_name_matcher): Use it for
15354         symbol_name_match_type::SEARCH_NAME.
15355         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
15356         it down instead of assuming symbol_name_match_type::FULL.
15357         * block.h (block_lookup_symbol): New parameter 'match_type'.
15358         * c-valprint.c (print_unpacked_pointer): Use
15359         lookup_symbol_search_name instead of lookup_symbol.
15360         * compile/compile-object-load.c (get_out_value_type): Pass down
15361         symbol_name_match_type::SEARCH_NAME.
15362         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
15363         symbol_name_match_type::FULL.
15364         * cp-support.c (cp_get_symbol_name_matcher): Handle
15365         symbol_name_match_type::SEARCH_NAME.
15366         * infrun.c (insert_exception_resume_breakpoint): Use
15367         lookup_symbol_search_name.
15368         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
15369         * psymtab.c (maintenance_check_psymtabs): Use
15370         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
15371         * stack.c (print_frame_args): Use lookup_symbol_search_name and
15372         SYMBOL_SEARCH_NAME.
15373         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
15374         if symbol_name_match_type::SEARCH_NAME.
15375         (lookup_symbol_in_language): Pass down
15376         symbol_name_match_type::FULL.
15377         (lookup_symbol_search_name): New.
15378         (lookup_language_this): Pass down
15379         symbol_name_match_type::SEARCH_NAME.
15380         (lookup_symbol_aux, lookup_local_symbol): New parameter
15381         'match_type'.  Pass it down.
15382         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
15383         (lookup_symbol_search_name): New declaration.
15384         (lookup_symbol_in_block): New 'match_type' parameter.
15385
15386 2018-01-05  Pedro Alves  <palves@redhat.com>
15387
15388         PR gdb/22670
15389         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
15390         ada_lookup_symbol.
15391         (ada_lookup_symbol): Reimplement in terms of
15392         ada_lookup_symbol_list, bits factored out from
15393         ada_lookup_encoded_symbol.
15394
15395 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15396
15397         * ada-exp.y (write_object_renaming): When subscripting an array
15398         using a symbol as the index, pass the block in call to
15399         ada_lookup_encoded_symbol when looking that symbol up.
15400
15401 2018-01-05  Jerome Guitton  <guitton@adacore.com>
15402
15403         * ada-lang.c (ada_array_length): Use ada_index_type instead of
15404         TYPE_INDEX_TYPE.
15405
15406 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15407
15408         * ada-lang.c (ada_to_fixed_value_create): Add handling of
15409         the case where VALUE_LVAL (val0) is not lval_memory.
15410
15411 2018-01-05  Xavier Roirand  <roirand@adacore.com>
15412
15413         * ada-valprint.c (print_optional_low_bound): Handle
15414         character-indexed array printing like boolean-indexed array
15415         printing.
15416
15417 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15418
15419         * NEWS: Create a new section for the next release branch.
15420         Rename the section of the current branch, now that it has
15421         been cut.
15422
15423 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15424
15425         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
15426         * version.in: Bump version to 8.1.50.DATE-git.
15427
15428 2018-01-03  Xavier Roirand  <roirand@adacore.com>
15429
15430         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
15431         Add field.
15432         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
15433         Add field.
15434         (default_exception_support_info) <catch_handlers_sym>: Add field.
15435         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
15436         (ada_exception_name_addr_1): Add "catch handlers" handling.
15437         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
15438         Update all callers.
15439         (create_excep_cond_exprs) <ex>: Add parameter.
15440         (re_set_exception): Update create_excep_cond_exprs call.
15441         (print_it_exception, print_one_exception, print_mention_exception)
15442         (print_recreate_exception): Add "catch handler" handling.
15443         (allocate_location_catch_handlers, re_set_catch_handlers)
15444         (check_status_catch_handlers, print_it_catch_handlers)
15445         (print_one_catch_handlers, print_mention_catch_handlers)
15446         (print_recreate_catch_handlers): New function.
15447         (catch_handlers_breakpoint_ops): New variable.
15448         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
15449         Add parameter.  Add "catch handler" handling.
15450         (ada_exception_sym_name, ada_exception_breakpoint_ops):
15451         Add "catch handler" handling.
15452         (ada_exception_catchpoint_cond_string): Add "catch handler"
15453         handling.
15454         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
15455         call.
15456         (catch_ada_handlers_command): New function.
15457         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
15458         operations structure.
15459         (_initialize_ada_language): Add "catch handlers" command entry.
15460         * NEWS: Document "catch handlers" feature.
15461
15462 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15463
15464         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
15465         account when creating the array type of the slice.
15466         (ada_value_slice): Likewise.
15467
15468 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15469
15470         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
15471         New enum value.
15472         (create_array_type_with_stride): Add byte_stride_prop parameter.
15473         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
15474         New parameter.  Update all callers in this file.
15475         (array_type_has_dynamic_stride): New function.
15476         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
15477         of arrays with dynamic byte strides.
15478         * dwarf2read.c (read_array_type): Add support for dynamic
15479         DW_AT_byte_stride attributes.
15480
15481 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15482
15483         * dwarf2read.c (read_unspecified_type): Treat
15484         DW_TAG_enumeration_type DIEs from Ada units as stubs.
15485
15486 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15487
15488         Update copyright year range in all GDB files.
15489
15490 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
15491
15492         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
15493         and gdb/testsuite/gdb.base/step-line.c.
15494
15495 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15496
15497         * copyright.py (main): Dump the contents of
15498         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
15499         even if BY_HAND is empty.
15500
15501 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15502
15503         * top.c (print_gdb_version): Update Copyright year in version
15504         message.
15505
15506 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15507
15508         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
15509
15510 For older changes see ChangeLog-2017.
15511 \f
15512 Local Variables:
15513 mode: change-log
15514 left-margin: 8
15515 fill-column: 74
15516 version-control: never
15517 coding: utf-8
15518 End: