OBVIOUS fix the month of the last gdb/ChangeLog entry to be 11 instead of 12.
[external/binutils.git] / gdb / ChangeLog
1 2018-11-02  Joel Brobecker  <brobecker@adacore.com>
2
3         * aarch64-ravenscar-thread.h, aarch64-ravenscar-thread.c: New files.
4         * aarch64-tdep.c: #include "aarch64-ravenscar-thread.h".
5         (aarch64_gdbarch_init): Add call to register_aarch64_ravenscar_ops.
6         * Makefile.in (ALL_64_TARGET_OBS): Add aarch64-ravenscar-thread.o.
7         (HFILES_NO_SRCDIR): Add aarch64-ravenscar-thread.h.
8         (ALLDEPFILES): Add aarch64-ravenscar-thread.c.
9         * configure.tgt (cpu_obs) [aarch64*-*-*]: Add ravenscar-thread.o
10         and aarch64-ravenscar-thread.o.
11         * NEWS: Add entry documenting Ravenscar tasking support
12         on AArch64 ELF.
13
14 2018-11-02  Matthew Malcomson  <matthew.malcomson@arm.com>
15
16         * symtab.c (info_functions_command): Initialize quiet flag.
17         * stack.c (info_args_command): Likewise.
18
19 2018-11-01  Jim Wilson  <jimw@sifive.com>
20
21         * riscv-tdep.c (riscv_breakpoint_kind_from_pc): New local unaligned_p.
22         Set if pcptr if unaligned.  Return 2 if unaligned_p true.  Update
23         debugging messages.
24
25 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
26
27         * ada-lang.c (ada_watch_location_expression): New function.
28         (ada_language_defn): Set la_watch_location_expression to
29         ada_watch_location_expression.
30
31 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
32
33         * print-utils.c (int_string): Remove unnecessary trailing spaces.
34
35 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
36
37         * rs6000-tdep.c (skip_prologue): Fix potential negative left
38         shifting.
39
40 2018-11-01  Jerome Guitton  <guitton@adacore.com>
41             Joel Brobecker  <brobecker@adacore.com>
42
43         * defs.h (enum gdb_osabi): Add GDB_OSABI_PIKEOS.
44         * osabi.c (gdb_osabi_names): Add name for GDB_OSABI_PIKEOS.
45         * arm-pikeos-tdep.c: New file.
46         * configure.tgt: Add arm-pikeos-tdep.o to the case of ARM
47         embedded system.
48         * Makefile.in (ALL_TARGET_OBS): Add arm-pikeos-tdep.o.
49
50 2018-11-01  Simon Marchi  <simon.marchi@ericsson.com>
51
52         * common/pathstuff.c (get_standard_temp_dir): New.
53         * common/pathstuff.h (get_standard_temp_dir): New.
54         * config.in: Re-generate.
55         * configure: Re-generate.
56         * configure.ac: Don't check for mkdtemp.
57         * gnulib/aclocal-m4-deps.mk: Re-generate.
58         * gnulib/aclocal.m4: Re-generate.
59         * gnulib/config.in: Re-generate.
60         * gnulib/configure: Re-generate.
61         * gnulib/import/Makefile.am: Re-generate.
62         * gnulib/import/Makefile.in: Re-generate.
63         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
64         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
65         * gnulib/import/m4/mkdtemp.m4: New file.
66         * gnulib/import/mkdtemp.c: New file.
67         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES):
68         Add mkdtemp module.
69         * unittests/mkdir-recursive-selftests.c (test): Use
70         get_standard_temp_dir.
71         (_initialize_mkdir_recursive_selftests): Remove HAVE_MKDTEMP
72         ifdef.
73         * compile/compile.c (get_compile_file_tempdir): Likewise.
74
75 2018-11-01  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
76
77         * rs6000-aix-tdep.c: Include "trad-frame.h" and "frame-unwind.h".
78         (SIG_FRAME_LR_OFFSET64): New define.
79         (SIG_FRAME_FP_OFFSET64): New define.
80         (aix_sighandle_frame_cache): New Function.
81         (aix_sighandle_frame_this_id): New Function.
82         (aix_sighandle_frame_prev_register): New Function.
83         (aix_sighandle_frame_sniffer): New Function.
84         (aix_sighandle_frame_unwind): New global variable.
85         (rs6000_aix_init_osabi): Install new frame unwinder.
86
87 2018-10-31  Sergio Durigan Junior  <sergiodj@redhat.com>
88
89         PR gdb/23835
90         * common/common-defs.h: Don't redefine _FORTIFY_SOURCE if it's
91         already defined.
92
93 2018-10-31  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
94
95         * ppc-linux-nat.c: Include nat/linux-ptrace.h.
96
97 2018-10-31  Andrew Burgess  <andrew.burgess@embecosm.com>
98
99         * dwarf2read.c (struct dwarf2_cu): Add producer_is_icc field.
100         (producer_is_icc): New function.
101         (check_producer): Set producer_is_icc field on dwarf2_cu.
102         (dwarf2_init_integer_type): New function.
103         (read_base_type): Call dwarf2_init_integer_type instead of
104         init_integer_type in all cases.
105         (dwarf2_cu::dwarf2_cu): Initialise producer_is_icc field.
106         * valprint.c (maybe_negate_by_bytes): Add an assertion that the
107         LEN is greater than 0.
108
109 2018-10-30  Tom Tromey  <tom@tromey.com>
110
111         * main.c (captured_main_1): Check return value of bfd_init.
112
113 2018-10-29  Sergio Durigan Junior  <sergiodj@redhat.com>
114
115         * common/offset-type.h (DEFINE_OFFSET_REL_OP): Delete.
116         Adjust comments.
117
118 2018-10-29  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
119
120         * procfs.c: Include common/pathstuff.h.
121
122 2018-10-28  Andrew Burgess  <andrew.burgess@embecosm.com>
123
124         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
125         Add missing braces.  No functional change.
126
127 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
128
129         * macrocmd.c (info_macro_command): Use report_unrecognized_option_error
130         to report a bad option and fix indentation.
131         * demangle.c (demangle_command): Use report_unrecognized_option_error
132         to report a bad option and correctly report the bad option.
133
134 2018-10-27  Tom Tromey  <tom@tromey.com>
135
136         PR cli/23364:
137         * darwin-nat.c (copied_shell): New global.
138         (may_have_sip): Rename from should_disable_startup_with_shell.
139         (copy_shell_to_cache, maybe_cache_shell): New functions.
140         (darwin_nat_target::create_inferior): Update.  Use
141         copied_shell.
142
143 2018-10-27  Tom Tromey  <tom@tromey.com>
144
145         * unittests/scoped_fd-selftests.c (test_to_file): New function.
146         (run_tests): Call test_to_file.
147         * dwarf-index-write.c (write_psymtabs_to_index): Do not reopen
148         temporary files.
149         * common/scoped_fd.h (scoped_fd::to_file): New method.
150
151 2018-10-27  Tom Tromey  <tom@tromey.com>
152
153         * unittests/scoped_mmap-selftests.c (test_normal): Use
154         gdb_mkostemp_cloexec.
155         * unittests/scoped_fd-selftests.c (test_destroy, test_release):
156         Use gdb_mkostemp_cloexec.
157         * gnulib/aclocal-m4-deps.mk, gnulib/aclocal.m4,
158         gnulib/config.in, gnulib/configure,
159         gnulib/import/Makefile.am, gnulib/import/Makefile.in,
160         gnulib/import/m4/gnulib-cache.m4,
161         gnulib/import/m4/gnulib-comp.m4: Update.
162         * gnulib/import/m4/mkostemp.m4: New file.
163         * gnulib/import/m4/mkstemp.m4: Remove.
164         * gnulib/import/mkostemp.c: New file.
165         * gnulib/import/mkstemp.m4: Remove.
166         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Remove
167         mkstemp, add mkostemp.  Apply new patch.
168         * gnulib/import/stdlib.in.h: Apply patch.
169         * gnulib/patches/0002-mkostemp-mkostemps-Fix-compilation-error-in-C-mode-o.patch:
170         New file.
171         * dwarf-index-write.c (write_psymtabs_to_index): Use
172         gdb_mkostemp_cloexec.
173         * common/filestuff.h (gdb_mkostemp_cloexec): New function.
174
175 2018-10-27  Tom Tromey  <tom@tromey.com>
176
177         * unittests/mkdir-recursive-selftests.c: New file.
178         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
179         unittests/mkdir-recursive-selftests.c.
180         * dwarf-index-cache.c (mkdir_recursive): Move to
181         common/filestuff.c.
182         (index_cache::store): Check return value of mkdir_recursive.
183         (create_dir_and_check, test_mkdir_recursive): Move to new file.
184         (_initialize_index_cache): Don't register test.
185         * common/filestuff.h (mkdir_recursive): Declare.
186         * common/filestuff.c (mkdir_recursive): Move from
187         dwarf-index-cache.c.  Return bool.
188
189 2018-10-27  Tom Tromey  <tom@tromey.com>
190
191         * dwarf-index-write.c (write_psymtabs_to_index): Move
192         make_temp_filename to common/pathstuff.c.
193         * common/pathstuff.h (make_temp_filename): Declare.
194         * common/pathstuff.c (make_temp_filename): New function, moved
195         from dwarf-index-write.c.
196
197 2018-10-27  Tom Tromey  <tom@tromey.com>
198
199         * procfs.c (procfs_target::create_inferior): Use get_shell.
200         * cli/cli-cmds.c (shell_escape): Use get_shell.
201         * windows-nat.c (windows_nat_target::create_inferior): Use
202         get_shell.
203         * common/pathstuff.c (get_shell): New function.
204         * nat/fork-inferior.c (SHELL_FILE, get_startup_shell): Remove.
205         (fork_inferior): Use get_shell.
206         * common/pathstuff.h (get_shell): Declare.
207
208 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
209
210         * NEWS: Mention changes to 'info [args|functions|locals|variables]'
211
212 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
213
214         * stack.c (print_variable_and_value_data): Add preg and treg.
215         (print_frame_local_vars): Add quiet, regexp and t_regexp arguments,
216         and update callers.
217         (print_frame_arg_vars): Likewise.
218         (prepare_reg): New function.
219         (info_locals_command): Extract info print args and use them.
220         (info_args_command): Likewise.
221         (_initialize_stack): Modify on-line help.
222         * symtab.c (treg_matches_sym_type_name): New function.
223         (search_symbols): New arg t_regexp.
224         (symtab_symbol_info): New args quiet, regexp, t_regexp.
225         (info_variables_command): Extract info print args and use them.
226         (info_functions_command): Likewise.
227         (info_types_command): Update call to symtab_symbol_info.
228         (_initialize_symtab): Modify on-line help.
229         * symtab.h (treg_matches_sym_type_name): New function.
230         (search_symbols): New t_regexp arg.
231
232 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
233
234         * cli-utils.c (extract_arg_maybe_quoted): New function.
235         (extract_info_print_args): New function.
236         (info_print_args_help): New function.
237         (report_unrecognized_option_error): New function.
238         * cli-utils.h (extract_arg_maybe_quoted): New function.
239         (extract_info_print_args): New function.
240         (info_print_args_help): New function.
241         (report_unrecognized_option_error): New function.
242
243 2018-10-26  Tom Tromey  <tom@tromey.com>
244
245         * dwarf2read.c (recursively_compute_inclusions): Use std::vector.
246         (compute_compunit_symtab_includes): Update.
247         * symtab.h: (symtab_ptr): Remove typedef.  Don't define a VEC.
248         (compunit_symtab_ptr): Likewise.
249
250 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
251
252         * fbsd-tdep.c (fbsd_print_auxv_entry): Only use
253         default_print_auxv_entry for specific tag values.
254
255 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
256
257         * fbsd-tdep.c (fbsd_print_auxv_entry): Handle AT_FREEBSD_HWCAP2.
258
259 2018-10-26  Jim Wilson  <jimw@sifive.com>
260
261         * riscv-linux-tdep.c: Include tramp-frame.h and trad-frame.h.
262         (riscv_linux_sigframe_init): Declare.
263         (RISCV_INST_LI_A7_SIGRETURN, RISCV_INT_ECALL): New.
264         (riscv_linux_sigframe): New.
265         (SIGFRAME_SIGINFO_SIZE, UCONTEXT_MCONTEXT_OFFSET): New.
266         (riscv_linux_sigframe_init): Define.
267         (riscv_linux_init_abi): Call tramp_frame_prepend_unwinder.
268
269         * riscv-tdep.c (riscv_isa_xlen): Refer to riscv-tdep.h comment.
270         (riscv_isa_flen): Likewise.  Drop static.
271         * riscv-tdep.h (riscv_isa_xlen): Move riscv-tdep.c comment to here.
272         (riscv_isa_flen): Likewise.  Declare.
273
274 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
275             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
276
277         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_htm_vsx32l)
278         (tdesc_powerpc_isa207_htm_vsx64l): Declare.
279         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TM_SPRREGSET)
280         (PPC32_LINUX_SIZEOF_CGPRREGSET, PPC64_LINUX_SIZEOF_CGPRREGSET)
281         (PPC_LINUX_SIZEOF_CFPRREGSET, PPC_LINUX_SIZEOF_CVMXREGSET)
282         (PPC_LINUX_SIZEOF_CVSXREGSET, PPC_LINUX_SIZEOF_CPPRREGSET)
283         (PPC_LINUX_SIZEOF_CDSCRREGSET, PPC_LINUX_SIZEOF_CTARREGSET):
284         Define.
285         (struct ppc_linux_features) <htm>: New field.
286         (ppc_linux_no_features): Add initializer for htm field.
287         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
288         new tdescs.
289         * nat/ppc-linux.h (PPC_FEATURE2_HTM, NT_PPC_TM_CGPR)
290         (NT_PPC_TM_CFPR, NT_PPC_TM_CVMX, NT_PPC_TM_CVSX)
291         (NT_PPC_TM_SPR, NT_PPC_TM_CTAR, NT_PPC_TM_CPPR, NT_PPC_TM_CDSCR):
292         Define if not already defined.
293         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-htm-vsx32l
294         and rs6000/powerpc-isa207-htm-vsx64l.
295         (XMLTOC): Add rs6000/powerpc-isa207-htm-vsx32l.xml and
296         rs6000/powerpc-isa207-htm-vsx64l.xml.
297         * features/rs6000/power-htm-spr.xml: New file.
298         * features/rs6000/power-htm-core.xml: New file.
299         * features/rs6000/power64-htm-core.xml: New file.
300         * features/rs6000/power-htm-fpu.xml: New file.
301         * features/rs6000/power-htm-altivec.xml: New file.
302         * features/rs6000/power-htm-vsx.xml: New file.
303         * features/rs6000/power-htm-ppr.xml: New file.
304         * features/rs6000/power-htm-dscr.xml: New file.
305         * features/rs6000/power-htm-tar.xml: New file.
306         * features/rs6000/powerpc-isa207-htm-vsx32l.xml: New file.
307         * features/rs6000/powerpc-isa207-htm-vsx64l.xml: New file.
308         * features/rs6000/powerpc-isa207-htm-vsx32l.c: Generate.
309         * features/rs6000/powerpc-isa207-htm-vsx64l.c: Generate.
310         * regformats/rs6000/powerpc-isa207-htm-vsx32l.dat: Generate.
311         * regformats/rs6000/powerpc-isa207-htm-vsx64l.dat: Generate.
312         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
313         fetch_regset with HTM regsets.
314         (store_register, store_ppc_registers): Call store_regset with HTM
315         regsets.
316         (ppc_linux_nat_target::read_description): Set htm field in the
317         features struct if needed.
318         * ppc-linux-tdep.c: Include
319         features/rs6000/powerpc-isa207-htm-vsx32l.c and
320         features/rs6000/powerpc-isa207-htm-vsx64l.c.
321         (ppc32_regmap_tm_spr, ppc32_regmap_cgpr, ppc64_le_regmap_cgpr)
322         (ppc64_be_regmap_cgpr, ppc32_regmap_cfpr, ppc32_le_regmap_cvmx)
323         (ppc32_be_regmap_cvmx, ppc32_regmap_cvsx, ppc32_regmap_cppr)
324         (ppc32_regmap_cdscr, ppc32_regmap_ctar): New globals.
325         (ppc32_linux_tm_sprregset, ppc32_linux_cgprregset)
326         (ppc64_be_linux_cgprregset, ppc64_le_linux_cgprregset)
327         (ppc32_linux_cfprregset, ppc32_le_linux_cvmxregset)
328         (ppc32_be_linux_cvmxregset, ppc32_linux_cvsxregset)
329         (ppc32_linux_cpprregset, ppc32_linux_cdscrregset)
330         (ppc32_linux_ctarregset): New globals.
331         (ppc_linux_cgprregset, ppc_linux_cvmxregset): New functions.
332         (ppc_linux_collect_core_cpgrregset): New function.
333         (ppc_linux_iterate_over_regset_sections): Call back with the htm
334         regsets.
335         (ppc_linux_core_read_description): Check if the tm spr section is
336         present and set htm in the features struct.
337         (_initialize_ppc_linux_tdep): Call
338         initialize_tdesc_powerpc_isa207_htm_vsx32l and
339         initialize_tdesc_powerpc_isa207_htm_vsx64l.
340         * ppc-linux-tdep.h (ppc_linux_cgprregset, ppc_linux_cvmxregset):
341         Declare.
342         (ppc32_linux_tm_sprregset, ppc32_linux_cfprregset)
343         (ppc32_linux_cvsxregset, ppc32_linux_cpprregset)
344         (ppc32_linux_cdscrregset, ppc32_linux_ctarregset): Declare.
345         * ppc-tdep.h (struct gdbarch_tdep) <have_htm_spr, have_htm_core>:
346         New fields.
347         <have_htm_fpu, have_htm_altivec, have_htm_vsx>:
348         Likewise.
349         <ppc_cppr_regnum, ppc_cdscr_regnum, ppc_ctar_regnum>: Likewise.
350         <ppc_cdl0_regnum, ppc_cvsr0_regnum, ppc_cefpr0_regnum>: Likewise.
351         (enum) <PPC_TFHAR_REGNUM, PPC_TEXASR_REGNUM, PPC_TFIAR_REGNUM>:
352         New enum fields.
353         <PPC_CR0_REGNUM, PPC_CCR_REGNUM, PPC_CXER_REGNUM>: Likewise.
354         <PPC_CLR_REGNUM, PPC_CCTR_REGNUM, PPC_CF0_REGNUM>: Likewise.
355         <PPC_CFPSCR_REGNUM, PPC_CVR0_REGNUM, PPC_CVSCR_REGNUM>: Likewise.
356         <PPC_CVRSAVE_REGNUM, PPC_CVSR0_UPPER_REGNUM>: Likewise.
357         <PPC_CPPR_REGNUM, PPC_CDSCR_REGNUM>: Likewise.
358         <PPC_CTAR_REGNUM>: Likewise.
359         (PPC_IS_TMSPR_REGNUM, PPC_IS_CKPTGP_REGNUM, PPC_IS_CKPTFP_REGNUM)
360         (PPC_IS_CKPTVMX_REGNUM, PPC_IS_CKPTVSX_REGNUM): Define.
361         * rs6000-tdep.c (IS_CDFP_PSEUDOREG, IS_CVSX_PSEUDOREG)
362         (IS_CEFP_PSEUDOREG): Define.
363         (rs6000_register_name): Hide the upper halves of checkpointed VSX
364         registers.  Return names for the checkpointed DFP, VSX, and EFP
365         pseudo registers.
366         (rs6000_pseudo_register_type): Remove initial assert and raise an
367         internal error in the else clause instead.  Return types for the
368         checkpointed DFP, VSX, and EFP pseudo registers.
369         (dfp_pseudo_register_read, dfp_pseudo_register_write): Handle
370         checkpointed DFP pseudo registers.
371         (vsx_pseudo_register_read, vsx_pseudo_register_write): Handle
372         checkpointed VSX pseudo registers.
373         (efp_pseudo_register_read, efp_pseudo_register_write): Rename
374         from efpr_pseudo_register_read and
375         efpr_pseudo_register_write.  Handle checkpointed EFP pseudo
376         registers.
377         (rs6000_pseudo_register_read, rs6000_pseudo_register_write):
378         Handle checkpointed DFP, VSX, and EFP registers.
379         (dfp_ax_pseudo_register_collect, vsx_ax_pseudo_register_collect)
380         (efp_ax_pseudo_register_collect): New functions.
381         (rs6000_ax_pseudo_register_collect): Move DFP, VSX and EFP pseudo
382         register logic to new functions.  Handle checkpointed DFP, VSX,
383         and EFP pseudo registers.
384         (rs6000_gdbarch_init): Look for and validate the htm features.
385         Include checkpointed DFP, VSX and EFP pseudo-registers.
386         * NEWS: Mention access to PPR, DSCR, TAR, EBB/PMU registers and
387         HTM registers.
388
389 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
390
391         * rs6000-tdep.c (rs6000_gdbarch_init): Reject tdescs with vsx but
392         without altivec or fpu.
393
394 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
395             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
396
397         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_EBBREGSET)
398         (PPC_LINUX_SIZEOF_PMUREGSET): Declare.
399         * nat/ppc-linux.h (PPC_FEATURE2_EBB, NT_PPC_EBB, NT_PPC_PMU):
400         Define if not already defined.
401         * features/rs6000/power-ebb.xml: New file.
402         * features/rs6000/power-linux-pmu.xml: New file.
403         * features/rs6000/powerpc-isa207-vsx32l.xml: Include ebb and pmu
404         features.
405         * features/rs6000/powerpc-isa207-vsx64l.xml: Likewise.
406         * features/rs6000/powerpc-isa207-vsx32l.c: Re-generate.
407         * features/rs6000/powerpc-isa207-vsx64l.c: Re-generate.
408         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Re-generate.
409         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Re-generate.
410         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
411         fetch_regset with ebb and pmu regsets.
412         (store_register, store_ppc_registers): Call store_regset with ebb
413         and pmu regsets.
414         (ppc_linux_nat_target::read_description): Set isa207 field in the
415         features struct if ebb and pmu are avaiable.
416         * ppc-linux-tdep.c (ppc32_regmap_ebb, ppc32_regmap_pmu)
417         (ppc32_linux_ebbregset, ppc32_linux_pmuregset): New globals.
418         (ppc_linux_iterate_over_regset_sections): Call back with the ebb
419         and pmu regsets.
420         (ppc_linux_core_read_description): Check if the pmu section is
421         present and set isa207 in the features struct.
422         * ppc-linux-tdep.h (ppc32_linux_ebbregset)
423         (ppc32_linux_pmuregset): Declare.
424         * ppc-tdep.h (struct gdbarch_tdep) <ppc_mmcr0_regnum>: New field.
425         <ppc_mmcr2_regnum, ppc_siar_regnum, ppc_sdar_regnum>: New fields.
426         <ppc_sier_regnum>: New field.
427         (enum): <PPC_BESCR_REGNUM, PPC_EBBHR_REGNUM, PPC_EBBRR_REGNUM>:
428         New enum values.
429         <PPC_MMCR0_REGNUM, PPC_MMCR2_REGNUM, PPC_SIAR_REGNUM>: New enum
430         values.
431         <PPC_SDAR_REGNUM, PPC_SIER_REGNUM>: New enum values.
432         (PPC_IS_EBB_REGNUM, PPC_IS_PMU_REGNUM): Define.
433         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate the
434         ebb and pmu features.
435
436 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
437             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
438
439         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_vsx32l)
440         (tdesc_powerpc_isa207_vsx64l): Declare.
441         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TARREGSET): Define.
442         (struct ppc_linux_features) <isa207>: New field.
443         (ppc_linux_no_features): Add initializer for isa207 field.
444         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
445         new tdescs.
446         * nat/ppc-linux.h (PPC_FEATURE2_ARCH_2_07, PPC_FEATURE2_TAR)
447         (NT_PPC_TAR): Define if not already defined.
448         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-vsx32l and
449         rs6000/powerpc-isa207-vsx64l.
450         (XMLTOC): Add rs6000/powerpc-isa207-vsx32l.xml and
451         rs6000/powerpc-isa207-vsx64l.xml.
452         * features/rs6000/power-tar.xml: New file.
453         * features/rs6000/powerpc-isa207-vsx32l.xml: New file.
454         * features/rs6000/powerpc-isa207-vsx64l.xml: New file.
455         * features/rs6000/powerpc-isa207-vsx32l.c: Generate.
456         * features/rs6000/powerpc-isa207-vsx64l.c: Generate.
457         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Generate.
458         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Generate.
459         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
460         fetch_regset with the TAR regset.
461         (store_register, store_ppc_registers): Call store_regset with the
462         TAR regset.
463         (ppc_linux_nat_target::read_description): Set isa207 field in the
464         features struct if needed.
465         * ppc-linux-tdep.c: Include
466         features/rs6000/powerpc-isa207-vsx32l.c and
467         features/rs6000/powerpc-isa207-vsx64l.c.
468         (ppc32_regmap_tar, ppc32_linux_tarregset): New globals.
469         (ppc_linux_iterate_over_regset_sections): Call back with the tar
470         regset.
471         (ppc_linux_core_read_description): Check if the tar section is
472         present and set isa207 in the features struct.
473         (_initialize_ppc_linux_tdep): Call
474         initialize_tdesc_powerpc_isa207_vsx32l and
475         initialize_tdesc_powerpc_isa207_vsx64l.
476         * ppc-linux-tdep.h (ppc32_linux_tarregset): Declare.
477         * ppc-tdep.h (gdbarch_tdep) <ppc_tar_regnum>: New field.
478         (enum) <PPC_TAR_REGNUM>: New enum value.
479         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate tar
480         feature.
481         (ppc_process_record_op31): Record changes to TAR.
482
483 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
484             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
485
486         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa205_ppr_dscr_vsx32l)
487         (tdesc_powerpc_isa205_ppr_dscr_vsx64l): Declare.
488         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_PPRREGSET)
489         (PPC_LINUX_SIZEOF_DSCRREGSET): Define.
490         (struct ppc_linux_features) <ppr_dscr>: New field.
491         (ppc_linux_no_features): Add initializer for ppr_dscr field.
492         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
493         new tdescs.
494         * nat/ppc-linux.h (PPC_FEATURE2_DSCR, NT_PPC_PPR, NT_PPC_DSCR):
495         Define if not already defined.
496         * features/Makefile (WHICH): Add
497         rs6000/powerpc-isa205-ppr-dscr-vsx32l and
498         rs6000/powerpc-isa205-ppr-dscr-vsx64l.
499         (XMLTOC): Add rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml and
500         rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml.
501         * features/rs6000/power-dscr.xml: New file.
502         * features/rs6000/power-ppr.xml: New file.
503         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml: New file.
504         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml: New file.
505         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c: Generate.
506         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c: Generate.
507         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx32l.dat: Generate.
508         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx64l.dat: Generate.
509         * ppc-linux-nat.c: Include <sys/uio.h>.
510         (fetch_regset, store_regset, check_regset): New functions.
511         (fetch_register, fetch_ppc_registers): Call fetch_regset with
512         DSCR and PPR regsets.
513         (store_register, store_ppc_registers): Call store_regset with
514         DSCR and PPR regsets.
515         (ppc_linux_get_hwcap2): New function.
516         (ppc_linux_nat_target::read_description): Call
517         ppc_linux_get_hwcap2 and check_regset, set ppr_dscr field in the
518         features struct if needed.
519         * ppc-linux-tdep.c: Include
520         features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c and
521         features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c.
522         (ppc32_regmap_ppr, ppc32_regmap_dscr, ppc32_linux_pprregset)
523         (ppc32_linux_dscrregset): New globals.
524         (ppc_linux_iterate_over_regset_sections): Call back with the ppr
525         and dscr regsets.
526         (ppc_linux_core_read_description): Check if the ppr and dscr
527         sections are present and set ppr_dscr in the features struct.
528         (_initialize_ppc_linux_tdep): Call
529         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx32l and
530         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx64l.
531         * ppc-linux-tdep.h (ppc32_linux_pprregset)
532         (ppc32_linux_dscrregset): Declare.
533         * ppc-tdep.h (struct gdbarch_tdep) <ppc_ppr_regnum>: New field.
534         <ppc_dscr_regnum>: New field.
535         (enum) <PPC_PPR_REGNUM, PPC_DSCR_REGNUM>: New enum values.
536         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate ppr
537         and dscr features.
538         (ppc_process_record_op31): Record changes to PPR and DSCR.
539
540 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
541
542         * rs6000-tdep.c (rs6000_gdbarch_init): Replace line wrapping by a
543         second initializer line for the have_* variables.  Initialize
544         have_fpu to 0 instead of 1.
545
546 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
547
548         * arch/ppc-linux-common.c (ppc_linux_match_description):
549         Parenthesize tdesc assignements and indent them properly.
550
551 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
552
553         * ppc-linux-nat.c (fetch_register): Change if statement to else
554         if.
555         (store_register): Likewise.
556
557 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
558
559         * rs6000-tdep.c: Remove reggroups.h include.
560         (rs6000_pseudo_register_reggroup_p): Remove.
561         (rs6000_gdbarch_init): Remove call to
562         set_tdesc_pseudo_register_reggroup_p.
563
564 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
565
566         * reggroups.c (default_register_reggroup_p): Return true for
567         decfloat registers and float_reggroup.
568
569 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
570
571         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): Remove.
572         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): Replace
573         ppc_linux_collect_vrregset by regcache_collect_regset.
574
575 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
576
577         * linux-tdep.c (linux_collect_regset_section_cb): Use
578         std::vector<gdb_byte> instead of char * and malloc for buf.
579         Remove xfree.
580
581 2018-10-26  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
582
583         * xcoffread.c (read_xcoff_symtab): Pass deduced language to
584         symtab_start instead of always using language_unknown.
585
586 2018-10-26  Andrew Burgess  <andrew.burgess@embecosm.com>
587
588         * riscv-tdep.c (riscv_read_misa_reg): Update comment, remove
589         READ_P parameter, catch and ignore register access errors from
590         either the old or new MISA location.
591         (riscv_has_feature): Update call to riscv_read_misa_reg.
592
593 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
594
595         * python/py-function.c (convert_values_to_python): Return
596         gdbpy_ref<>.  Add header comment.
597         (fnpy_call): Adjust.
598
599 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
600
601         * python/py-cmd.c (cmdpy_completer_helper): Return gdbpy_ref<>.
602         (cmdpy_completer_handle_brkchars): Adjust.
603         (cmdpy_completer): Adjust.
604
605 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
606
607         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
608         Pass correct regnum to raw_supply_zeroed.
609
610 2018-10-23  Hafiz Abid Qadeer  <abidh@codesourcery.com>
611
612         * regcache.c (cooked_read_test): Add CSKY to the list of
613         architectures with a save_reggroup
614
615 2018-10-23  Simon Marchi  <simon.marchi@polymtl.ca>
616
617         PR gdb/23368
618         * infrun.c (follow_exec): In the follow_exec_mode_new case,
619         transfer terminal state from old new new inferior.
620         * terminal.h (swap_terminal_info): New function.
621         * inflow.c (swap_terminal_info): New function.
622
623 2018-10-23  Tom Tromey  <tom@tromey.com>
624
625         * record-btrace.c (get_thread_current_frame_id): Rename from
626         get_thread_current_frame.  Return a frame_id.
627         (record_btrace_start_replaying): Update.
628
629 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
630
631         * riscv-tdep.c (riscv_register_name): Use the user-friendly names
632         for CSRs.
633
634 2018-10-23  Joel Brobecker  <brobecker@adacore.com>
635
636         * riscv-tdep.c (riscv_gdbarch_init): Set the gdbarch's
637         have_nonsteppable_watchpoint attribute to 1.
638
639 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
640
641         * riscv-tdep.c (riscv_gdb_reg_names): Update comment, and all
642         register names.
643         (struct register_alias): Rename to...
644         (struct riscv_register_alias): ...this, and update comment.
645         (riscv_register_aliases): Update type, and alias names.  Remove
646         CSR names from this list.
647         (riscv_register_name): Use riscv_gdb_reg_names for int and float
648         register names.  Add an extra assertion.
649         (riscv_is_regnum_a_named_csr): New function.
650         (riscv_register_reggroup_p): Use riscv_is_regnum_a_named_csr.
651
652 2018-10-22  Jim Wilson  <jimw@sifive.com>
653
654         * riscv-tdep.c (riscv_push_dummy_call) <in_reg>: Check for value in
655         FP reg smaller than FP reg size, and fill with -1 instead of 0.
656
657         * riscv-tdep.c (riscv_fpreg_d_type, riscv_fpreg_q_type): New.
658         (riscv_register_type): Use them.
659         (riscv_print_one_register_info): Handle union of floats same as float.
660         * riscv-tdep.h (struct gdbarch_tdep): Add riscv_fpreg_d_type and
661         riscv_fpreg_q_type fields.
662
663 2018-10-21  Simon Marchi  <simon.marchi@ericsson.com>
664
665         * gdbarch.sh (gdbarch_num_cooked_regs): New.
666         * gdbarch.h: Re-generate.
667         * ax-gdb.c (gen_expr): Use gdbarch_num_cooked_regs.
668         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
669         * eval.c (evaluate_subexp_standard): Likewise.
670         * findvar.c (value_of_register): Likewise.
671         (value_of_register_lazy): Likewise.
672         (address_from_register): Likewise.
673         * frame.c (get_frame_register_bytes): Likewise.
674         * gdbarch-selftests.c (register_to_value_test): Likewise.
675         * h8300-tdep.c (h8300_register_type): Likewise.
676         * i386-tdep.c (i386_dbx_reg_to_regnum): Likewise.
677         (i386_svr4_reg_to_regnum): Likewise.
678         * infcmd.c (default_print_registers_info): Likewise.
679         (registers_info): Likewise.
680         (print_vector_info): Likewise.
681         (default_print_float_info): Likewise.
682         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
683         * mdebugread.c (mdebug_reg_to_regnum): Likewise.
684         * mi/mi-main.c (mi_cmd_data_list_register_names): Likewise.
685         (mi_cmd_data_list_changed_registers): Likewise.
686         (mi_cmd_data_list_register_values): Likewise.
687         (mi_cmd_data_write_register_values): Likewise.
688         (mi_cmd_trace_frame_collected): Likewise.
689         * mips-tdep.c (print_gp_register_row): Likewise.
690         (mips_print_registers_info): Likewise.
691         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
692         * regcache.c (init_regcache_descr): Likewise.
693         (register_size): Likewise.
694         (register_dump::dump): Likewise.
695         (cooked_read_test): Likewise.
696         (cooked_write_test): Likewise.
697         * rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
698         (rs6000_gdbarch_init): Likewise.
699         * stabsread.c (stab_reg_to_regnum): Likewise.
700         * stack.c (info_frame_command): Likewise.
701         * target-descriptions.c (tdesc_register_name): Likewise.
702         * trad-frame.c (trad_frame_alloc_saved_regs): Likewise.
703         * tui/tui-regs.c (tui_show_register_group): Likewise.
704         * user-regs.c (user_reg_map_name_to_regnum): Likewise.
705         (user_reg_map_regnum_to_name): Likewise.
706         (value_of_user_reg): Likewise.
707         (maintenance_print_user_registers): Likewise.
708         * xtensa-tdep.c (xtensa_find_register_by_name): Likewise.
709         (xtensa_register_name): Likewise.
710         (xtensa_register_type): Likewise.
711         (xtensa_reg_to_regnum): Likewise.
712         (xtensa_pseudo_register_read): Likewise.
713         (xtensa_pseudo_register_write): Likewise.
714
715 2018-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
716
717         * amd64-tdep.c (amd64_pseudo_register_read_value): Use
718         correctly-sized buffer with raw_read.
719         (amd64_pseudo_register_write): Use correctly-sized buffer for
720         raw_read/raw_write.
721
722 2018-10-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
723
724         * typeprint.c (_initialize_typeprint): Fix wrong prefixname arg
725         in add_prefix_cmd of set print type.
726
727 2018-10-19  Tom Tromey  <tom@tromey.com>
728
729         PR tui/18388:
730         * NEWS: Mention tabset deprecation.
731         * tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
732         (update_tab_width): New function.
733         (tui_set_tab_width, tui_show_tab_width): New functions.
734         (tui_set_tab_width_command): Use update_tab_width.
735         (_initialize_tui_win): Move to end of file.  Deprecate "tabset".
736         Add new "set tui tab-width" command.
737         * tui/tui-source.c (tui_set_source_content): Update.
738         * tui/tui-disasm.c (tui_set_disassem_content): Update.
739         * tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
740         Don't declare.
741         (tui_tab_width): Declare.
742         * tui/tui-data.c (default_tab_len, tui_default_tab_len)
743         (tui_set_default_tab_len): Remove.
744
745 2018-10-19  Tom Tromey  <tom@tromey.com>
746
747         * tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
748         (key_is_backspace, tui_getc): Don't declare.
749         * tui/tui-io.c (key_is_start_sequence): Now static.
750         (key_is_end_sequence, key_is_backspace): Remove.
751         (tui_getc): Now static.
752
753 2018-10-19  Tom Tromey  <tom@tromey.com>
754
755         * symfile.c (reread_symbols): Clear "static_links".
756
757 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
758
759         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
760         define.
761         (aarch64_linux_sigframe_init): Extra boundary checks.
762
763 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
764
765         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
766         the possibly non-existent tdesc type 'vec128', but the type of raw
767         register v16 instead.
768
769 2018-10-19  Gary Benson <gbenson@redhat.com>
770
771         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
772
773 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
774
775         PR cli/23785
776         * cli/cli-dump.c (restore_binary_file): Check if "file" is
777         NULL.
778
779 2018-10-17  Paul Koning  <paul_koning@dell.com>
780
781         * charset.c (convert_between_encodings): Fix unsigned overflow.
782
783 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
784
785         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
786         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
787         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
788         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
789         New functions.
790         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
791         and fbsd_info_proc_mappings_header.
792         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
793         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
794         New.
795
796 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
797
798         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
799         Solaris Maintainer.
800
801 2018-10-15  Tom Tromey  <tom@tromey.com>
802
803         * tui/tui.c (strcat_to_buf): Remove casts.
804         * tui/tui-winsource.c (tui_show_source_line)
805         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
806         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
807         * tui/tui-windata.c (tui_first_data_item_displayed)
808         (tui_delete_data_content_windows, tui_erase_data_content)
809         (tui_display_all_data, tui_display_data_from)
810         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
811         * tui/tui-win.c (tui_set_win_height)
812         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
813         casts.
814         * tui/tui-win.c (tui_resize_all): Remove casts.
815         (tui_scroll_backward_command, tui_set_focus)
816         (tui_set_tab_width_command): Likewise.
817         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
818         * tui/tui-regs.c (tui_show_register_group): Remove cast.
819         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
820         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
821         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
822         Remove casts.
823
824 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
825
826         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
827         AArch64/ARM maintainer.
828
829 2018-10-11  Gary Benson <gbenson@redhat.com>
830
831         * interps.h (interp::m_name): Make private and mutable.
832         * interps.c (interp::~interp): Free m_name.
833
834 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
835             Simon Marchi <simark@simark.ca>
836
837         * README (`configure' options): Add documentation for new
838         "--enable-unit-tests" option.
839         * acinclude.m4: Include "selftest.m4".
840         * configure: Regenerate.
841         * configure.ac: Use "GDB_AC_SELFTEST".
842         * maint.c (maintenance_selftest): Update message informing
843         that selftests have been disabled.
844         (maintenance_info_selftests): Likewise.
845         * selftest.m4: New file.
846
847 2018-10-10  Gary Benson <gbenson@redhat.com>
848
849         * remote.c (remote_target::remote_send_printf): Add
850         missing va_end found by Coverity.
851
852 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
853
854         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
855
856 2018-10-09  Tom Tromey  <tom@tromey.com>
857
858         * configure: Rebuild.
859         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
860         * NEWS: Update --enable-ubsan documentation.
861
862 2018-10-09  Gary Benson <gbenson@redhat.com>
863
864         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
865         found by Coverity.
866
867 2018-10-08  Tom Tromey  <tom@tromey.com>
868
869         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
870         variable.
871         (riscv_fbsd_init_abi): Likewise.
872
873 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
874         * valops.c (value_struct_elt_for_reference): Rename local variable
875         to work around the shadowing a previous local warning.
876
877 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
878
879         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
880         * NEWS: Mention new FreeBSD/riscv native configuration.
881         * configure.host: Add riscv*-*-freebsd*.
882         * configure.nat: Likewise.
883         * riscv-fbsd-nat.c: New file.
884
885 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
886
887         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
888         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
889         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
890         * NEWS: Mention new FreeBSD/riscv target.
891         * configure.tgt: Add riscv*-*-freebsd*.
892         * riscv-fbsd-tdep.c: New file.
893         * riscv-fbsd-tdep.h: New file.
894
895 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
896
897         * regcache.h (struct regcache_map_entry): Note that this type can
898         be used with traditional frame caches.
899         * trad-frame.c (trad_frame_set_reg_regmap): New.
900         * trad-frame.h (trad_frame_set_reg_regmap): New.
901
902 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
903
904         PR c++/16841
905         * valops.c (get_virtual_base_offset): New function.
906         (value_struct_elt_for_reference): Use it to get virtual base offset
907         and add it in calculating class member address.
908
909 2018-10-08   John Darrington <john@darrington.wattle.id.au>
910
911     * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
912       (check_producer): Check if the producer is codewarrior.
913       (producer_is_codewarrior): New function.
914       (lnp_state_machine::record_line): Ignore is_stmt flag for records
915        produced by codewarrior.
916       (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
917
918 2018-10-06  Tom Tromey  <tom@tromey.com>
919
920         PR python/19399:
921         * python/py-inferior.c: Add "architecture" entry.
922         (infpy_architecture): New function.
923
924 2018-10-06  Tom Tromey  <tom@tromey.com>
925
926         PR python/21765:
927         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
928         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
929         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
930         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
931
932 2018-10-06  Tom Tromey  <tom@tromey.com>
933
934         PR build/17077:
935         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
936         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
937         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
938         #include.
939
940 2018-10-06  Tom Tromey  <tom@tromey.com>
941
942         * python/py-breakpoint.c (bppy_get_location): Handle a
943         bp_breakpoint without a location.
944
945 2018-10-06  Tom Tromey  <tom@tromey.com>
946
947         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
948         (_RegEx): Reformat help text.
949         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
950         (AnyCallerIs, AnyCallerMatches): Reformat help text.
951         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
952         text.
953         * python/lib/gdb/command/xmethods.py (InfoXMethod)
954         (EnableXMethod, DisableXMethod): Remove help indentation.
955         Capitalize meta-syntactic variables.
956         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
957         (EnableUnwinder, DisableUnwinder): Remove help indentation.
958         Capitalize meta-syntactic variables.
959         * python/lib/gdb/command/explore.py (ExploreCommand)
960         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
961         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
962         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
963         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
964         Remove help indentation.
965         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
966         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
967         (DisableFrameFilter, SetFrameFilterPriority)
968         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
969
970 2018-10-06  Tom Tromey  <tom@tromey.com>
971
972         PR tui/28819:
973         * tui/tui-io.c (gdb_wgetch): New function.
974         (tui_mld_getc, tui_getc): Use it.
975
976 2018-10-05  Tom Tromey  <tom@tromey.com>
977
978         * sol-thread.c (sol_thread_target::wait): Rename inner
979         "save_ptid".
980
981 2018-10-04  Tom Tromey  <tom@tromey.com>
982
983         * configure: Rebuild.
984         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
985
986 2018-10-04  Tom Tromey  <tom@tromey.com>
987
988         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
989         declaration of "block".
990
991 2018-10-04  Tom Tromey  <tom@tromey.com>
992
993         * common/filestuff.c (fdwalk): Remove inner declaration of
994         "result".
995
996 2018-10-04  Tom Tromey  <tom@tromey.com>
997
998         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
999         "structs_addr" and hoist declaration.
1000
1001 2018-10-04  Tom Tromey  <tom@tromey.com>
1002
1003         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
1004         variable "size".
1005
1006 2018-10-04  Tom Tromey  <tom@tromey.com>
1007
1008         * mdebugread.c (parse_partial_symbols): Use std::string.
1009
1010 2018-10-04  Tom Tromey  <tom@tromey.com>
1011
1012         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
1013         * p-valprint.c (pascal_val_print): Split inner "i" variable.
1014         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
1015         header.
1016         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
1017         more inner scope.
1018         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
1019         * varobj.c (varobj_update): Rename inner "newobj",
1020         "type_changed".
1021         * valprint.c (generic_emit_char): Rename inner "buf".
1022         * valops.c (find_overload_match): Rename inner "temp".
1023         (value_struct_elt_for_reference): Declare "v" in more inner
1024         scope.
1025         * v850-tdep.c (v850_push_dummy_call): Rename "len".
1026         * unittests/array-view-selftests.c (run_tests): Rename inner
1027         "vec".
1028         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
1029         header.
1030         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
1031         "tsv" in more inner scope.
1032         (print_one_static_tracepoint_marker): Rename inner
1033         "tuple_emitter".
1034         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
1035         (tic6x_push_dummy_call): Don't redeclare "addr".
1036         * target-float.c: Declare "dto" lower.
1037         * symtab.c (lookup_local_symbol): Rename inner "sym".
1038         (find_pc_sect_line): Rename inner "pc".
1039         * stack.c (print_frame): Don't redeclare "gdbarch".
1040         (return_command): Rename inner "gdbarch".
1041         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
1042         "sp".
1043         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
1044         header.
1045         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
1046         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
1047         scope.
1048         * remote.c (remote_target::update_thread_list): Don't redeclare
1049         "tp".
1050         (remote_target::process_initial_stop_replies): Rename inner
1051         "thread".
1052         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
1053         (remote_target::wait_as): Don't redeclare "stop_reply".
1054         (remote_target::get_thread_local_address): Rename inner
1055         "result".
1056         (remote_target::get_tib_address): Likewise.
1057
1058         * regcache.c (cooked_read_test): Rename "regnum".
1059         * record-btrace.c (cmd_record_btrace_start): Rename inner
1060         "exception".
1061         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
1062         loop header.
1063         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
1064         header.
1065         (ppu2spu_sniffer): Rename inner "buf".
1066         * parse.c (operator_check_standard): Rename inner "type",
1067         "objfile".
1068         * p-valprint.c (pascal_val_print): Introduce new scope for
1069         "low_bound", "high_bound".
1070         * p-exp.y (yylex): Declare "i" in loop header.
1071         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
1072         Lower declaration of "s".
1073         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
1074         header.
1075         (nios2_push_dummy_call): Rename "len".
1076         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
1077         "buf".
1078         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
1079         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
1080         (linux_xfer_osdata_modules): Likewise.
1081         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
1082         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
1083         (mips_o64_push_dummy_call): Likewise.
1084         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
1085         "op".
1086         * mi/mi-main.c (list_available_thread_groups): Rename inner
1087         "tuple_emitter".
1088         (mi_cmd_data_read_memory): Rename inner "opts".
1089         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
1090         "tuple_emitter".
1091         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
1092         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
1093         more inner scope.
1094         (parse_partial_symbols): Rename inner "pst", "p", "name"
1095         * main.c (captured_main_1): Rename inner "i"s.
1096         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
1097         "oso2".
1098         * linux-tdep.c (linux_info_proc): Rename inner "filename".
1099         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
1100         * infrun.c (handle_no_resumed): Don't redeclare "thread".
1101         (handle_signal_stop): Rename inner "gdbarch".
1102         (handle_command): Declare "signum" in loop header.
1103         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
1104         "status".
1105         (examine_prologue): Rename inner "sol" and "sof".
1106         (ia64_extract_return_value): Rename inner "val".  Declare another
1107         "val" in a more inner scope.
1108         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
1109         inner scope.
1110         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
1111         "except".
1112         * findvar.c (default_read_var_value): Don't redeclare "addr".
1113         * f-exp.y (yylex): Declare "i" in loop header.
1114         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
1115         Rename inner "type", "expect_type".
1116         (evaluate_subexp_for_sizeof): Rename inner "pc".
1117         * elfread.c (elf_symfile_read): Rename inner "abfd".
1118         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
1119         "bytes_read".
1120         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
1121         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
1122         (dwarf_decode_line_header): Rename inner "lh".
1123         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
1124         "offset".  Declare "i" in loop header.
1125         (disassemble_dwarf_expression): Rename inner "addr_size".
1126         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
1127         inner "result".
1128         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
1129         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
1130         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
1131         "inner_list_emitter".
1132         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
1133         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
1134         declaration in a block.
1135         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
1136         * cp-valprint.c (cp_print_value_fields): Don't redeclare
1137         "obstack_final_size".
1138         * cp-support.c (inspect_type): Declare "i" in loop header.
1139         * compile/compile.c (compile_instance::insert_symbol_error):
1140         Rename inner "e".
1141         * common/agent.c (agent_run_command): Remove inner "ret"
1142         declaration.
1143         * coffread.c (coff_symfile_read): Rename inner "name".
1144         (coff_symfile_read): Rename inner "abfd".
1145         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
1146         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
1147         "high".
1148         * c-exp.y (lex_one_token): Move "len" declaration lower.
1149         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
1150         "gdbarch".
1151         (create_exception_master_breakpoint): Likewise.  Don't redeclare
1152         "b".
1153         (watch_command_1): Declare "mark" later.
1154         (clear_command): Don't shadow "a" or "b".
1155         (delete_command): Rename inner "b".
1156         (delete_trace_command): Likewise.
1157         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
1158         "op".
1159         (arm_gdbarch_init): Remove inner "e_flags".
1160         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
1161         "offset" in inner blocks.
1162
1163 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
1164
1165         * dwarf-index-write.c (file_write): Don't write if the vector is
1166         empty.
1167
1168 2018-10-05  Tom de Vries  <tdevries@suse.de>
1169
1170         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
1171         PyArg_ParseTuple call.
1172
1173 2018-10-05  Tom de Vries  <tdevries@suse.de>
1174
1175         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
1176         PyArg_ParseTuple call.
1177
1178 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
1179
1180         * psymtab.c (recursively_search_psymtabs): Reformat parameters
1181         to avoid exceeding 80 characters per line limit.
1182
1183 2018-10-04  Tom Tromey  <tom@tromey.com>
1184
1185         * symfile.c (syms_from_objfile_1, finish_new_objfile)
1186         (reread_symbols): Update.
1187         * complaints.h (clear_complaints): Remove argument.
1188         * complaints.c (enum complaint_series): Remove.
1189         (series): Remove global.
1190         (complaint_internal): Update.
1191         (clear_complaints): Remove argument.
1192
1193 2018-10-04  Tom Tromey  <tom@tromey.com>
1194
1195         * symfile.c (symbol_file_add_with_addrs): Do not print "no
1196         debugging symbols" message if there is a separate debug objfile.
1197
1198 2018-10-04  Tom Tromey  <tom@tromey.com>
1199
1200         PR cli/19551:
1201         * symfile.c (symbol_file_add_with_addrs): Update output.
1202         * psymtab.c (require_partial_symbols): Update output.
1203
1204 2018-10-04  Tom Tromey  <tom@tromey.com>
1205
1206         PR cli/22234:
1207         * complaints.c: Emit \n.
1208
1209 2018-10-04  Tom Tromey  <tom@tromey.com>
1210
1211         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
1212         (separate_debug_file_exists, find_separate_debug_file)
1213         (add_symbol_file_command, reread_symbols, allocate_symtab)
1214         (allocate_compunit_symtab): Use filtered printing, not
1215         unfiltered.
1216         * psymtab.c (require_partial_symbols, dump_psymtab)
1217         (allocate_psymtab): Use filtered printing, not unfiltered.
1218
1219 2018-10-04  Tom Tromey  <tom@tromey.com>
1220
1221         * complaints.c (complaint_internal): Correctly check complaint
1222         count.
1223
1224 2018-10-04  Tom Tromey  <tom@tromey.com>
1225
1226         * complaints.h (struct complaints): Remove declaration.
1227         * complaints.c (clear_complaints): Remove an unused variable.
1228
1229 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1230
1231         * MAINTAINERS (Write After Approval): Add self.
1232
1233 2018-10-03  Tom Tromey  <tom@tromey.com>
1234
1235         * guile/scm-value.c (gdbscm_value_to_string): Initialize
1236         "buffer_contents".
1237         * coffread.c (coff_symtab_read): Initialize "newobj".
1238
1239 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
1240
1241         * dwarf2read.c (read_func_scope): Remove struct keyword in
1242         range-based for.
1243
1244 2018-10-03  Tom Tromey  <tom@tromey.com>
1245
1246         * README: Mention --enable-ubsan.
1247         * NEWS: Mention --enable-ubsan.
1248         * acinclude.m4: Include sanitize.m4.
1249         * configure: Rebuild.
1250         * configure.ac: Call AM_GDB_UBSAN.
1251         * sanitize.m4: New file.
1252
1253 2018-10-03  Tom Tromey  <tom@tromey.com>
1254
1255         * expression.h (enum exp_opcode): Use uint8_t as base type.
1256         * expprint.c (op_name): Handle invalid opcodes.
1257
1258 2018-10-03  Tom Tromey  <tom@tromey.com>
1259
1260         * parse.c (prefixify_expression): Add assert.
1261         (parse_exp_in_context_1): Throw exception if the expression is
1262         empty.
1263
1264 2018-10-03  Tom Tromey  <tom@tromey.com>
1265
1266         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
1267
1268 2018-10-03  Tom Tromey  <tom@tromey.com>
1269
1270         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
1271
1272 2018-10-03  Tom Tromey  <tom@tromey.com>
1273
1274         * dwarf2read.c (read_subrange_type): Make "negative_mask"
1275         unsigned.
1276
1277 2018-10-03  Tom Tromey  <tom@tromey.com>
1278
1279         * findvar.c (extract_integer): Do work in an unsigned type.
1280
1281 2018-10-03  Tom Tromey  <tom@tromey.com>
1282
1283         * common/enum-flags.h (enum_flags::operator~): Add static assert.
1284         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
1285         base type.
1286         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
1287         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
1288         type.
1289         * c-lang.h (enum c_string_type_values): Use unsigned as base
1290         type.
1291         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
1292
1293 2018-10-03  Tom Tromey  <tom@tromey.com>
1294
1295         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
1296         <~dwarf2_frame_state_reg_info>: Update.
1297         <dwarf2_frame_state_reg_info>: Update.
1298         <alloc_regs>: Add assertion.  Update.
1299         <reg>: Now a std::vector.
1300         <num_regs>: Remove.
1301         <swap>: Update.
1302         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
1303         (execute_cfa_program_test, dwarf2_frame_cache): Update.
1304
1305 2018-10-03  Tom Tromey  <tom@tromey.com>
1306
1307         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
1308
1309 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1310
1311         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
1312
1313 2018-10-02  Tom Tromey  <tom@tromey.com>
1314
1315         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
1316
1317 2018-10-02  John Darrington <john@darrington.wattle.id.au>
1318
1319         * NEWS: Mention changed commands.
1320         * ser-uds.c: New file.
1321         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
1322         * configure: Regenerate.
1323         * Makefile.in: Add new file.
1324         * serial.c (serial_open): Check if filename is a socket
1325           and lookup the appropriate interface accordingly.
1326
1327 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
1328
1329         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
1330         define.
1331         (AARCH64_EXTRA_MAGIC): Likewise.
1332         (AARCH64_FPSIMD_MAGIC): Likewise.
1333         (AARCH64_SVE_MAGIC): Likewise.
1334         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
1335         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
1336         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
1337         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
1338         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
1339         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
1340         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
1341         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
1342         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
1343         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
1344         (read_aarch64_ctx): Add function.
1345         (aarch64_linux_sigframe_init): Detect FP registers.
1346
1347 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
1348
1349         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
1350         (AARCH64_D0_REGNUM): Likewise.
1351         (AARCH64_S0_REGNUM): Likewise.
1352         (AARCH64_H0_REGNUM): Likewise.
1353         (AARCH64_B0_REGNUM): Likewise.
1354         (AARCH64_SVE_V0_REGNUM): Likewise.
1355         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
1356         (AARCH64_D0_REGNUM): Likewise.
1357         (AARCH64_S0_REGNUM): Likewise.
1358         (AARCH64_H0_REGNUM): Likewise.
1359         (AARCH64_B0_REGNUM): Likewise.
1360         (AARCH64_SVE_V0_REGNUM): Likewise.
1361
1362 2018-10-01  Gary Benson <gbenson@redhat.com>
1363
1364         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
1365         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
1366         prfpregset_t instead of gdb_prfpregset_t.
1367         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
1368         * configure, config.in: Rebuild.
1369
1370 2018-10-01  Gary Benson <gbenson@redhat.com>
1371
1372         * common/gdb_proc_service.h: New file, factored out from...
1373         * gdb_proc_service.h: Moved common code to the above file.
1374         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
1375
1376 2018-10-01  Gary Benson <gbenson@redhat.com>
1377
1378         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
1379         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
1380
1381 2018-10-01  Gary Benson <gbenson@redhat.com>
1382
1383         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
1384         (AC_CHECK_HEADERS): Check for linux/elf.h.
1385         * configure, config.in: Rebuild.
1386         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
1387         doesn't define elf_fpregset_t.
1388
1389 2018-10-01  Gary Benson <gbenson@redhat.com>
1390
1391         * gdb_proc_service.h: Whitespace change.
1392
1393 2018-10-01  Tom Tromey  <tom@tromey.com>
1394
1395         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
1396         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
1397         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
1398
1399 2018-10-01  Tom Tromey  <tom@tromey.com>
1400
1401         * README: Minor change.
1402
1403 2018-09-30  Pedro Alves  <palves@redhat.com>
1404
1405         * darwin-nat-info.c (darwin_debug_regions_recurse)
1406         (info_mach_exceptions_command): Remove unused local variables.
1407         * darwin-nat.c (darwin_decode_notify_message)
1408         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
1409         (darwin_stop_inferior, darwin_setup_exceptions)
1410         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
1411         (darwin_nat_target::attach, darwin_nat_target::detach)
1412         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
1413         local variables.
1414         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
1415         variables.
1416
1417 2018-09-29  Tom Tromey  <tom@tromey.com>
1418
1419         * README: Remove some leftover text.
1420
1421 2018-09-29  Tom Tromey  <tom@tromey.com>
1422
1423         * PROBLEMS: Rewrite.
1424         * README: Update.
1425
1426 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
1427
1428         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
1429         case with explicit breakpoint kind.
1430         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
1431         'additional_info' and related logic.
1432         (riscv_debug_breakpoints): New variable.
1433         (riscv_breakpoint_kind_from_pc): Use the length of the existing
1434         instruction to determine the breakpoint kind.
1435         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
1436         flag.  Update description of 'set/show riscv
1437         use-compressed-breakpoints' flag.
1438
1439 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
1440
1441         (NEWS): Mention changes to frame related commands.
1442         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
1443         (add_prefix_cmd_suppress_notification): New function.
1444         (add_com_suppress_notification): Call
1445         add_cmd_suppress_notification.
1446         * command.h (add_cmd_suppress_notification): Declare.
1447         (add_prefix_cmd_suppress_notification): Declare.
1448         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
1449         (parse_frame_specification): Moved from stack.c, with
1450         simplification to handle a single argument.
1451         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
1452         switch to the selected frame.  Add a header comment.
1453         * stack.c: Remove 'safe-ctype.h' include.
1454         (find_frame_for_function): Add declaration.
1455         (find_frame_for_address): New function.
1456         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
1457         (frame_selection_by_function_completer): New function.
1458         (info_frame_command): Rename to...
1459         (info_frame_command_core): ...this, and update parameter types.
1460         (select_frame_command): Rename to...
1461         (select_frame_command_core): ...this, and update parameter types.
1462         (frame_command): Rename to...
1463         (frame_command_core): ...this, and update parameter types.
1464         (class frame_command_helper): New class to wrap implementations of
1465         frame related sub-commands.
1466         (frame_apply_cmd_list): New static global.
1467         (frame_cmd_list): Make static.
1468         (select_frame_cmd_list): New global for sub-commands.
1469         (info_frame_cmd_list): New global for sub-commands.
1470         (_initialize_stack): Register sub-commands for 'frame',
1471         'select-frame', and 'info frame'.  Update 'frame apply' commands
1472         to use frame_apply_cmd_list.  Move function local static
1473         frame_apply_list to file static frame_apply_cmd_list for
1474         consistency.
1475         * stack.h (select_frame_command): Delete declarationn.
1476         (select_frame_for_mi): Declare new function.
1477
1478 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
1479
1480         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
1481         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
1482         and NOP.
1483
1484 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
1485
1486         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
1487
1488 2018-09-26  Tom Tromey  <tom@tromey.com>
1489
1490         * valops.c (auto_abandon): Remove dead code.
1491
1492 2018-09-26  Tom Tromey  <tom@tromey.com>
1493
1494         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
1495
1496 2018-09-24  Tom Tromey  <tom@tromey.com>
1497
1498         * common/pathstuff.c (get_standard_cache_dir): Make
1499         "xdg_cache_home" and "home" const.
1500         * top.c (init_history): Make "tmpenv" const.
1501         * main.c (get_init_files): Make "homedir" const.
1502
1503 2018-09-23  Tom Tromey  <tom@tromey.com>
1504
1505         PR python/18852:
1506         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
1507
1508 2018-09-23  Tom Tromey  <tom@tromey.com>
1509
1510         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
1511         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
1512         * python/python-internal.h (gdbpy_handle_exception): Declare.
1513         * python/py-utils.c (gdbpy_handle_exception): New function.
1514
1515 2018-09-23  Tom Tromey  <tom@tromey.com>
1516
1517         PR python/17284:
1518         * python/py-type.c (typy_template_argument): Check for negative
1519         argument number.
1520
1521 2018-09-23  Tom Tromey  <tom@tromey.com>
1522
1523         PR python/14062:
1524         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
1525
1526 2018-09-23  Tom Tromey  <tom@tromey.com>
1527
1528         PR python/18170:
1529         * python/py-value.c (valpy_int): Allow conversion from pointer
1530         type.
1531
1532 2018-09-23  Tom Tromey  <tom@tromey.com>
1533
1534         PR python/20126:
1535         * python/py-value.c (valpy_int): Respect type sign.
1536
1537 2018-09-23  Tom Tromey  <tom@tromey.com>
1538
1539         PR python/18352;
1540         * python/py-value.c (valpy_float): Allow conversions from int or
1541         char.
1542         (valpy_int, valpy_long): Allow conversions from float.
1543
1544 2018-09-23  Tom Tromey  <tom@tromey.com>
1545
1546         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
1547         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
1548
1549 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1550
1551         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
1552         __sighndlr.
1553         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
1554
1555 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
1556
1557         * windows-nat.c (windows_nat_target::wait): Remove a spurious
1558         target_terminal::ours().
1559
1560 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
1561
1562         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
1563         of vl to ULONGEST.
1564
1565 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
1566
1567         * breakpoint.c (update_inserted_breakpoint_locations): Remove
1568         redundant condition.
1569
1570 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1571
1572         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
1573
1574         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
1575         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
1576         * sol-thread.c (ps_pdmodel): Don't guard definition.
1577
1578         * procfs.c: Fix formatting.
1579
1580         * procfs.c (sysset_t_alloc): Remove.
1581         (create_procinfo): Use XNEW instead of sysset_t_alloc.
1582         (procfs_debug_inferior): Likewise.
1583         (procfs_set_exec_trap): Likewise.
1584         (proc_set_traced_sysentry): Don't allocate argp dynamically.
1585         (proc_set_traced_sysexit): Likewise.
1586
1587         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
1588         (dead_procinfo): Likewise.
1589         (proc_warn): Likewise.
1590         (proc_error): Likewise.
1591         (proc_get_LDT_entry): Likewise.
1592         (do_attach): Likewise.
1593         (procfs_target::pid_to_str): Likewise.
1594         (iterate_over_mappings): Likewise.
1595
1596         * procfs.c (create_procinfo): Fix ARI warning.
1597         (proc_get_status): Likewise.
1598         (proc_stop_process): Likewise.
1599         (proc_run_process): Likewise.
1600         (proc_kill): Likewise.
1601         (proc_get_LDT_entry): Likewise.
1602         (procfs_find_LDT_entry): Likewise.
1603         (proc_update_threads): Likewise.
1604         (proc_iterate_over_threads): Likewise.
1605         (do_attach): Likewise.
1606         (procfs_xfer_memory): Likewise.
1607         (invalidate_cache): Likewise.
1608         (procfs_target::resume): Likewise.
1609         (procfs_init_inferior): Likewise.
1610         (procfs_set_exec_trap): Likewise.
1611         (procfs_target::thread_alive): Likewise.
1612         (procfs_target::pid_to_exec_file): Likewise.
1613         (iterate_over_mappings): Likewise.
1614         (procfs_target::make_corefile_notes): Likewise.
1615         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
1616
1617         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
1618         (procfs_find_LDT_entry): Likewise.
1619         * sol-thread.c (ps_lgetLDT): Likewise.
1620
1621 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1622
1623         PR tdep/17903
1624         * procfs.c (procfs_target): Declare pid_to_exec_file.
1625         (procfs_target::pid_to_exec_file): New.
1626
1627 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1628
1629         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
1630         renaming.
1631         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
1632         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
1633
1634 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1635
1636         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
1637         (supply_fpregset, fill_fpregset): Move ...
1638         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
1639         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
1640         Remove references to ioctl-based procfs.
1641         Include <sys/reg.h>.
1642         Remove PR_MODEL_NATIVE guards.
1643         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
1644         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
1645
1646 2018-09-19  Xavier Roirand  <roirand@adacore.com>
1647
1648         PR gdb/20981:
1649         * solib-darwin.c (darwin_get_dyld_bfd): New function.
1650         (darwin_solib_get_all_image_info_addr_at_init): Update call.
1651         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
1652
1653 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
1654
1655         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
1656         (fbsd_print_sockaddr_in6): Likewise.
1657
1658 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
1659             Chris January  <chris.january@arm.com>
1660
1661         * eval.c (skip_undetermined_arglist): Skip argument list helper.
1662         (evaluate_subexp_standard): Return a dummy type when
1663         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
1664         OP_F77_UNDETERMINED_ARGLIST case.
1665         * expression.h (enum noside): Update comment.
1666
1667 2018-09-19  George Vasick <george.vasick@oracle.com>
1668
1669         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
1670
1671 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
1672             April Chin <april.chin@oracle.com>
1673             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1674
1675         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
1676         uint_t lwpid_t.
1677         (create_procinfo): Print pids in /proc without leading zeros.
1678
1679 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
1680
1681         * nios2-tdep.c (nios2_gcc_target_options): New.
1682         (nios2_gdb_arch_init): Install new hook.
1683
1684 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
1685
1686         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
1687         New file.
1688         * update-gnulib.sh: Apply patch.
1689         * configure: Re-generate.
1690
1691 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1692
1693         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
1694         description.  Make "info proc" command descriptions more
1695         consistent.
1696
1697 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1698
1699         * NEWS: Mention 'info proc files' command.
1700
1701 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1702
1703         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
1704         descriptors for IP_FILES and IP_ALL.
1705
1706 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1707
1708         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
1709         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
1710         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
1711         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
1712         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
1713         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
1714         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
1715         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
1716         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
1717         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
1718         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
1719         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
1720         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
1721         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
1722         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
1723         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
1724         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
1725         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
1726         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
1727         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
1728         (struct fbsd_sockaddr_un): New types.
1729         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
1730         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
1731         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
1732         (fbsd_core_info_proc_files): New functions.
1733         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
1734         IP_ALL.
1735         * fbsd-tdep.h (fbsd_info_proc_files_header)
1736         (fbsd_info_proc_files_entry): New.
1737
1738 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1739
1740         * defs.h (enum info_proc_what) [IP_FILES]: New value.
1741         * infcmd.c (info_proc_cmd_files): New function.
1742         (_initialize_infcmd): Register 'info proc files' command.
1743
1744 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1745
1746         * gnulib/aclocal-m4-deps.mk: Re-generate.
1747         * gnulib/aclocal.m4: Re-generate.
1748         * gnulib/config.in: Re-generate.
1749         * gnulib/configure: Re-generate.
1750         * gnulib/import/Makefile.am: Re-generate.
1751         * gnulib/import/Makefile.in: Re-generate.
1752         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
1753         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
1754         * gnulib/import/arpa_inet.in.h: New file.
1755         * gnulib/import/inet_ntop.c: New file.
1756         * gnulib/import/m4/arpa_inet_h.m4: New file.
1757         * gnulib/import/m4/inet_ntop.m4: New file.
1758         * gnulib/import/m4/netinet_in_h.m4: New file.
1759         * gnulib/import/m4/socklen.m4: New file.
1760         * gnulib/import/m4/sockpfaf.m4: New file.
1761         * gnulib/import/m4/stdalign.m4: New file.
1762         * gnulib/import/m4/sys_uio_h.m4: New file.
1763         * gnulib/import/netinet_in.in.h: New file.
1764         * gnulib/import/stdalign.in.h: New file.
1765         * gnulib/import/sys_socket.c: New file.
1766         * gnulib/import/sys_socket.in.h: New file.
1767         * gnulib/import/sys_uio.in.h: New file.
1768         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
1769         module.
1770
1771 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1772
1773         * gnulib/aclocal-m4-deps.mk: New file.
1774         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
1775         deterministically.
1776
1777 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1778
1779         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
1780         KVE_PATH.
1781
1782 2018-09-18  Tom Tromey  <tom@tromey.com>
1783
1784         * compile/compile-object-load.c (struct
1785         link_hash_table_cleanup_data): Add constructor and destructor.
1786         Use DISABLE_COPY_AND_ASSIGN.
1787         (~link_hash_table_cleanup_data): Rename from
1788         link_hash_table_free.  Now a destructor.
1789         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
1790
1791 2018-09-18  Tom Tromey  <tom@tromey.com>
1792
1793         * compile/compile-object-run.c (do_module_cleanup): Use delete.
1794         * compile/compile-object-load.c (struct munmap_list): Move to
1795         header file.
1796         (munmap_list::add): Rename from munmap_list_add; rewrite.
1797         (munmap_list::~munmap_list): Rename from munmap_list_free.
1798         (munmap_listp_free_cleanup): Remove.
1799         (compile_object_load): Update.
1800         * compile/compile-object-load.h (struct munmap_list): Move from
1801         compile-object-load.c.  Rewrite.
1802
1803 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
1804
1805         * aarch64-tdep.c (pass_in_v): Use register size.
1806         (aarch64_extract_return_value): Likewise.
1807         (aarch64_store_return_value): Likewise.
1808
1809 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1810
1811         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
1812         rlim_t.
1813
1814 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1815
1816         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
1817         Fix short help line.
1818
1819 2018-09-17  Tom Tromey  <tom@tromey.com>
1820
1821         PR python/20445:
1822         * configure: Rebuild.
1823         * configure.ac: Conditionally use -DNDEBUG for Python.
1824
1825 2018-09-17  Tom Tromey  <tom@tromey.com>
1826
1827         * configure: Rebuild.
1828         * configure.ac: Use gmp as a library dependency when checking for
1829         mpfr.
1830
1831 2018-09-17  Pedro Alves  <palves@redhat.com>
1832
1833         * python/py-inferior.c (find_inferior_object): Delete.
1834
1835 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
1836
1837         * compile/compile-cplus-types.c
1838         (compile_cplus_instance::enter_scope): Don't use new_scope after
1839         std::move.
1840
1841 2018-09-17  Tom Tromey  <tom@tromey.com>
1842
1843         * common/pathstuff.c (get_standard_cache_dir): Use
1844         ~/Library/Caches on macOS.
1845         * common/pathstuff.h (get_standard_cache_dir): Update comment.
1846
1847 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
1848
1849         PR python/23669
1850         * breakpoint.c (commands_cmd_element): New.
1851         (_initialize_breakpoint): Assign commands_cmd_element.
1852         * breakpoint.h (commands_cmd_element): New.
1853         * cli/cli-script.c (while_cmd_element, if_command,
1854         define_cmd_element): New.
1855         (command_name_equals): Remove.
1856         (process_next_line): Compare commands by pointer, not by name.
1857         (_initialize_cli_script): Assign the various cmd_list_element
1858         variables.
1859         * compile/compile.c (compile_cmd_element): New.
1860         (_initialize_compile): Assign compile_cmd_element.
1861         * compile/compile.h (compile_cmd_element): New.
1862         * guile/guile.c (guile_cmd_element): New.
1863         (install_gdb_commands): Assign guile_cmd_element.
1864         * guile/guile.h (guile_cmd_element): New.
1865         * python/python.c (python_cmd_element): New.
1866         (_initialize_python): Assign python_cmd_element.
1867         * python/python.h (python_cmd_element): New.
1868         * tracepoint.c (while_stepping_cmd_element): New.
1869         (_initialize_tracepoint): Assign while_stepping_cmd_element.
1870         * tracepoint.h (while_stepping_cmd_element): New.
1871
1872 2018-09-17  Tom Tromey  <tom@tromey.com>
1873
1874         * infrun.c (save_infcall_suspend_state): Return
1875         infcall_suspend_state_up.
1876         (save_infcall_control_state): Return infcall_control_state_up.
1877         * inferior.h (save_infcall_suspend_state)
1878         (save_infcall_control_state): Declare later.  Return unique
1879         pointers.
1880
1881 2018-09-17  Tom Tromey  <tom@tromey.com>
1882
1883         * infrun.c (struct stop_context): Declare constructor,
1884         destructor, "changed" method.
1885         (stop_context::stop_context): Rename from save_stop_context.
1886         (stop_context::~stop_context): Rename from
1887         release_stop_context_cleanup.
1888         (normal_stop): Update.
1889         (stop_context::changed): Rename from stop_context_changed.  Return
1890         bool.
1891
1892 2018-09-17  Tom Tromey  <tom@tromey.com>
1893
1894         * inferior.h (struct infcall_suspend_state_deleter): New.
1895         (infcall_suspend_state_up): New typedef.
1896         (struct infcall_control_state_deleter): New.
1897         (infcall_control_state_up): New typedef.
1898         (make_cleanup_restore_infcall_suspend_state)
1899         (make_cleanup_restore_infcall_control_state): Don't declare.
1900         * infcall.c (call_function_by_hand_dummy): Update.
1901         * infrun.c (do_restore_infcall_suspend_state_cleanup)
1902         (make_cleanup_restore_infcall_suspend_state): Remove.
1903         (do_restore_infcall_control_state_cleanup)
1904         (make_cleanup_restore_infcall_control_state): Remove.
1905
1906 2018-09-17  Tom Tromey  <tom@tromey.com>
1907
1908         * gdbthread.h (struct thread_control_state): Add initializer.
1909         (class thread_info) <control>: Remove initializer.
1910         * inferior.h (struct inferior_control_state): Add initializer.
1911         (class inferior) <control>: Remove initializer.
1912         (exit_inferior_1): Update.
1913         * infrun.c (struct infcall_control_state): Add constructors.
1914         (save_infcall_control_state): Use new.
1915         (restore_infcall_control_state, discard_infcall_control_state):
1916         Use delete.
1917
1918 2018-09-17  Tom Tromey  <tom@tromey.com>
1919
1920         * infrun.c (struct infcall_suspend_state) <registers>: Now a
1921         unique_ptr.
1922         <siginfo_data>: Now a unique_xmalloc_ptr.
1923         (save_infcall_suspend_state, restore_infcall_suspend_state)
1924         (discard_infcall_suspend_state)
1925         (get_infcall_suspend_state_regcache): Update.
1926
1927 2018-09-17  Tom Tromey  <tom@tromey.com>
1928
1929         * gdbthread.h (struct thread_suspend_state): Add initializers.
1930         (class thread_info) <suspend>: Remove initializer.
1931         * infrun.c (struct infcall_suspend_state): Add initializers.
1932         (save_infcall_suspend_state): Use new.
1933         (discard_infcall_suspend_state): Use delete.
1934
1935 2018-09-16  Tom Tromey  <tom@tromey.com>
1936
1937         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
1938         Remove.
1939         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
1940         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
1941         (py_varobj_iter_new): Likewise.
1942         (py_varobj_get_iterator): Use gdbpy_ref.
1943
1944 2018-09-16  Tom Tromey  <tom@tromey.com>
1945
1946         * python/py-threadevent.c (py_get_event_thread): Simplify.
1947         * python/py-inferior.c (infpy_thread_from_thread_handle):
1948         Return immediately after calling thread_to_thread_object.  Use
1949         Py_RETURN_NONE.
1950         (thread_to_thread_object): Set the exception on a NULL return.
1951
1952 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
1953
1954         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
1955
1956 2018-09-16  Tom Tromey  <tom@tromey.com>
1957
1958         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
1959         Remove.
1960
1961 2018-09-16  Tom Tromey  <tom@tromey.com>
1962
1963         * python/python-internal.h (thread_to_thread_object): Change
1964         return type.
1965         * python/py-inferior.c (thread_to_thread_object): Return a new
1966         reference.
1967         (infpy_thread_from_thread_handle): Update.
1968         * python/py-infthread.c (gdbpy_selected_thread): Update.
1969         * python/py-stopevent.c (create_stop_event_object): Update.
1970         * python/py-threadevent.c (py_get_event_thread): Return a new
1971         reference.
1972         (py_get_event_thread): Update.
1973         * python/py-event.h (py_get_event_thread): Change return type.
1974         * python/py-continueevent.c (create_continue_event_object):
1975         Update.
1976
1977 2018-09-16  Tom Tromey  <tom@tromey.com>
1978
1979         * python/py-progspace.c (pspy_get_objfiles): Update.
1980         * python/python-internal.h (objfile_to_objfile_object): Change
1981         return type.
1982         * python/py-newobjfileevent.c (create_new_objfile_event_object):
1983         Update.
1984         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
1985         Update.
1986         * python/python.c (gdbpy_get_current_objfile): Update.
1987         (gdbpy_objfiles): Update.
1988         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
1989         Update.
1990         (objfile_to_objfile_object): Return a new reference.
1991         * python/py-symtab.c (stpy_get_objfile): Update.
1992         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
1993         Update.
1994
1995 2018-09-16  Tom Tromey  <tom@tromey.com>
1996
1997         * python/py-inferior.c (infpy_get_progspace): Update.
1998         * python/python-internal.h (pspace_to_pspace_object): Change
1999         return type.
2000         * python/py-newobjfileevent.c
2001         (create_clear_objfiles_event_object): Update.
2002         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
2003         Update.
2004         * python/python.c (gdbpy_get_current_progspace): Update.
2005         (gdbpy_progspaces): Update.
2006         * python/py-progspace.c (pspace_to_pspace_object): Return a new
2007         reference.
2008         * python/py-objfile.c (objfpy_get_progspace): Update.
2009         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
2010         Update.
2011
2012 2018-09-16  Tom Tromey  <tom@tromey.com>
2013
2014         * python/lib/gdb/__init__.py (current_progspace, objfiles)
2015         (solib_name, block_for_pc, find_pc_line): New functions.
2016         (execute_unwinders): Update.
2017         * python/py-block.c (gdbpy_block_for_pc): Remove.
2018         * python/py-inferior.c (infpy_get_progspace): New function.
2019         (inferior_object_getset) <progspace>: Add.
2020         * python/py-progspace.c (pspy_objfiles): Rewrite.
2021         (pspy_solib_name, pspy_block_for_pc)
2022         (pspy_find_pc_line, pspy_is_valid): New functions.
2023         (progspace_object_methods): Add entries for solib_name,
2024         block_for_pc, find_pc_line, is_valid.
2025         * python/python-internal.h (gdbpy_block_for_pc)
2026         (build_objfiles_list): Don't declare.
2027         * python/python.c: Don't include solib.h.
2028         (gdbpy_solib_name, gdbpy_find_pc_line)
2029         (gdbpy_get_current_progspace, build_objfiles_list)
2030         (gdbpy_objfiles): Remove.
2031         (GdbMethods) <current_progspace, objfiles, block_for_pc,
2032         solib_name, find_pc_line>: Remove entries.
2033
2034 2018-09-16  Tom Tromey  <tom@tromey.com>
2035
2036         * top.c (new_ui_command): Use GNU style for metasyntactic
2037         variables.
2038         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
2039         variables.
2040         * maint.c (maintenance_translate_address): Remove "<>" around
2041         text.
2042         * interps.c (interpreter_exec_cmd): Use GNU style for
2043         metasyntactic variables.
2044         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
2045         metasyntactic variables.
2046         * tracepoint.c (tfind_range_command): Use GNU style for
2047         metasyntactic variables.
2048         (tfind_outside_command): Likewise.
2049         (_initialize_tracepoint): Likewise.
2050         * remote.c (extended_remote_target::create_inferior): Use GNU
2051         style for metasyntactic variables.
2052         * sparc64-tdep.c (adi_examine_command): Use GNU style for
2053         metasyntactic variables.
2054         (adi_assign_command): Likewise.
2055
2056 2018-09-16  Tom Tromey  <tom@tromey.com>
2057
2058         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
2059         metasyntactic variables.  Print message if no disassembler options
2060         are available.
2061
2062 2018-09-15  Tom Tromey  <tom@tromey.com>
2063
2064         * infcmd.c (get_inferior_args): Return const char *.
2065         * inferior.h (get_inferior_args): Return type now const.
2066         * linux-tdep.c (linux_fill_prpsinfo): Update.
2067         * procfs.c (procfs_target::make_corefile_notes): Update.
2068
2069 2018-09-07  Tom Tromey  <tom@tromey.com>
2070
2071         * python/python.c (execute_gdb_command): Call bpstat_do_actions
2072         inside the TRY.
2073
2074 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
2075
2076         * nios2-tdep.c (nios2_type_align): New.
2077         (nios2_gdb_arch_init): Install type_align hook.
2078
2079 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
2080
2081         * eval.c (fake_method::fake_method): Call xzalloc directly for a
2082         type that is neither object file owned, nor gdbarch owned.
2083         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
2084         gdbarch is non-NULL.
2085         (alloc_type_instance): Allocate non-objfile owned types on the
2086         gdbarch obstack.
2087         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
2088         using TYPE_ALLOC to ensure memory is allocated on the correct
2089         obstack.
2090         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
2091         obstack, or the gdbarch obstack.
2092         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
2093
2094 2018-09-14  Tom Tromey  <tom@tromey.com>
2095
2096         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
2097         block.
2098
2099 2018-09-14  Tom Tromey  <tom@tromey.com>
2100
2101         * nat/fork-inferior.c (get_startup_shell): Remove "static".
2102
2103 2018-09-13  Tom Tromey  <tom@tromey.com>
2104
2105         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
2106         static.
2107
2108 2018-09-13  Tom Tromey  <tom@tromey.com>
2109
2110         * exec.c (try_open_exec_file): Use std::string.
2111
2112 2018-09-13  Tom Tromey  <tom@tromey.com>
2113
2114         * utils.h (gdb_bfd_errmsg): Return std::string.
2115         * exec.c (exec_file_attach): Update.
2116         * compile/compile-object-load.c (compile_object_load): Update.
2117         * utils.c (gdb_bfd_errmsg): Return std::string.
2118
2119 2018-09-13  Tom Tromey  <tom@tromey.com>
2120
2121         * procfs.c (struct procinfo_deleter): New.
2122         (procinfo_up): New typedef.
2123         (do_destroy_procinfo_cleanup): Remove.
2124         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
2125
2126 2018-09-13  Tom Tromey  <tom@tromey.com>
2127
2128         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
2129
2130 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2131 2018-09-13  Tom Tromey  <tom@tromey.com>
2132
2133         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
2134         (pspy_get_objfiles): New function.
2135         (progspace_object_methods): New.
2136         (pspace_object_type): Add tp_methods callback.
2137         * python/python-internal.h (build_objfiles_list): New
2138         declaration.
2139         * python/python.c (build_objfiles_list): New function.
2140         (gdbpy_objfiles): Implement using build_objfiles_list.
2141         * NEWS: Mention the Progspace.objfiles method.
2142
2143 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2144
2145         * python/py-inferior.c (infpy_get_progspace): New function.
2146         (inferior_object_getset): Add progspace property.
2147         * NEWS: Mention the new property.
2148
2149 2018-09-13  Tom Tromey  <tom@tromey.com>
2150
2151         PR rust/23650:
2152         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
2153
2154 2018-09-13  Tom Tromey  <tom@tromey.com>
2155
2156         PR rust/23626:
2157         * rust-lang.c (rust_enum_variant): Now static.
2158         (rust_empty_enum_p): New function.
2159         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
2160         Handle empty enum.
2161
2162 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2163
2164         * python/py-inferior.c (infpy_repr): New.
2165         (inferior_object_type): Register infpy_repr.
2166         * python/py-objfile.c (objfpy_repr): New.
2167         (objfile_object_type): Register objfpy_repr.
2168
2169 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
2170
2171         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
2172
2173 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
2174
2175         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
2176         typo.
2177
2178 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
2179
2180         * common/common-utils.c: Don't include '<sys/stat.h>'.
2181         (is_regular_file): Move to...
2182         * common/filestuff.c (is_regular_file): ... here.
2183         * common/common-utils.h (is_regular_file): Move to...
2184         * common/filestuff.h (is_regular_file): ... here.
2185
2186 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
2187
2188         * skip.c (debug_skip): New variable.
2189         (skiplist_entry::do_skip_file_p): Add debug output.
2190         (skiplist_entry::do_skip_gfile_p): Likewise.
2191         (skiplist_entry::skip_function_p): Likewise.
2192         (_initialize_step_skip): Create debug command.
2193         * NEWS: Mention set/show debug skip.
2194
2195 2018-09-11  Xavier Roirand  <roirand@adacore.com>
2196
2197         * darwin-nat.c (should_disable_startup_with_shell):
2198         New function.
2199         (darwin_nat_target::create_inferior): Add call.
2200
2201 2018-09-11  Xavier Roirand  <roirand@adacore.com>
2202
2203         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
2204         inf_port, msg_state>: Initialize.
2205         (struct darwin_thread_info) <signaled, single_step>: Change
2206         type and initialize.
2207         (struct darwin_thread_info) <event>: Initialize.
2208
2209 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2210
2211         PR gdb/23555
2212         PR gdb/23558
2213         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
2214         guesses.
2215
2216 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2217
2218         Revert:
2219         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
2220
2221         PR gdb/23555
2222         PR gdb/23558
2223         * gnulib/aclocal.m4: Regenerate.
2224         * gnulib/config.in: Regenerate.
2225         * gnulib/configure: Regenerate.
2226         * gnulib/import/Makefile.am: Update.
2227         * gnulib/import/Makefile.in: Update.
2228         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
2229         * gnulib/import/_Noreturn.h: ... this.
2230         * gnulib/import/alloca.in.h: Update.
2231         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
2232         * gnulib/import/arg-nonnull.h: ... this.
2233         * gnulib/import/assure.h: Update.
2234         * gnulib/import/at-func.c: Update.
2235         * gnulib/import/basename-lgpl.c: Update.
2236         * gnulib/import/extra/snippet/c++defs.h: Rename to...
2237         * gnulib/import/c++defs.h: ... this.
2238         * gnulib/import/canonicalize-lgpl.c: Update.
2239         * gnulib/import/cdefs.h: Update.
2240         * gnulib/import/chdir-long.c: Update.
2241         * gnulib/import/chdir-long.h: Update.
2242         * gnulib/import/cloexec.c: Update.
2243         * gnulib/import/cloexec.h: Update.
2244         * gnulib/import/close.c: Update.
2245         * gnulib/import/closedir.c: Update.
2246         * gnulib/import/config.charset: Update.
2247         * gnulib/import/dirent-private.h: Update.
2248         * gnulib/import/dirent.in.h: Update.
2249         * gnulib/import/dirfd.c: Update.
2250         * gnulib/import/dirname-lgpl.c: Update.
2251         * gnulib/import/dirname.h: Update.
2252         * gnulib/import/dosname.h: Update.
2253         * gnulib/import/dup-safer-flag.c: Update.
2254         * gnulib/import/dup-safer.c: Update.
2255         * gnulib/import/dup.c: Update.
2256         * gnulib/import/dup2.c: Update.
2257         * gnulib/import/errno.in.h: Update.
2258         * gnulib/import/error.c: Update.
2259         * gnulib/import/error.h: Update.
2260         * gnulib/import/exitfail.c: Update.
2261         * gnulib/import/exitfail.h: Update.
2262         * gnulib/import/extra/update-copyright: Update.
2263         * gnulib/import/fchdir.c: Update.
2264         * gnulib/import/fcntl.c: Update.
2265         * gnulib/import/fcntl.in.h: Update.
2266         * gnulib/import/fd-hook.c: Update.
2267         * gnulib/import/fd-hook.h: Update.
2268         * gnulib/import/fd-safer-flag.c: Update.
2269         * gnulib/import/fd-safer.c: Update.
2270         * gnulib/import/fdopendir.c: Update.
2271         * gnulib/import/filename.h: Update.
2272         * gnulib/import/filenamecat-lgpl.c: Update.
2273         * gnulib/import/filenamecat.h: Update.
2274         * gnulib/import/flexmember.h: Update.
2275         * gnulib/import/float+.h: Update.
2276         * gnulib/import/float.c: Update.
2277         * gnulib/import/float.in.h: Update.
2278         * gnulib/import/fnmatch.c: Update.
2279         * gnulib/import/fnmatch.in.h: Update.
2280         * gnulib/import/fnmatch_loop.c: Update.
2281         * gnulib/import/fpucw.h: Update.
2282         * gnulib/import/frexp.c: Update.
2283         * gnulib/import/frexpl.c: Update.
2284         * gnulib/import/fstat.c: Update.
2285         * gnulib/import/fstatat.c: Update.
2286         * gnulib/import/getcwd-lgpl.c: Update.
2287         * gnulib/import/getcwd.c: Update.
2288         * gnulib/import/getdtablesize.c: Update.
2289         * gnulib/import/getlogin_r.c: Update.
2290         * gnulib/import/getprogname.c: Update.
2291         * gnulib/import/getprogname.h: Update.
2292         * gnulib/import/gettext.h: Update.
2293         * gnulib/import/gettimeofday.c: Update.
2294         * gnulib/import/glob-libc.h: Update.
2295         * gnulib/import/glob.c: Update.
2296         * gnulib/import/glob.in.h: Update.
2297         * gnulib/import/glob_internal.h: Update.
2298         * gnulib/import/glob_pattern_p.c: Update.
2299         * gnulib/import/globfree.c: Update.
2300         * gnulib/import/hard-locale.c: Update.
2301         * gnulib/import/hard-locale.h: Update.
2302         * gnulib/import/intprops.h: Update.
2303         * gnulib/import/inttypes.in.h: Update.
2304         * gnulib/import/isnan.c: Update.
2305         * gnulib/import/isnand-nolibm.h: Update.
2306         * gnulib/import/isnand.c: Update.
2307         * gnulib/import/isnanl-nolibm.h: Update.
2308         * gnulib/import/isnanl.c: Update.
2309         * gnulib/import/itold.c: Update.
2310         * gnulib/import/libc-config.h: Update.
2311         * gnulib/import/limits.in.h: Update.
2312         * gnulib/import/localcharset.c: Update.
2313         * gnulib/import/localcharset.h: Update.
2314         * gnulib/import/localtime-buffer.c: Update.
2315         * gnulib/import/localtime-buffer.h: Update.
2316         * gnulib/import/lstat.c: Update.
2317         * gnulib/import/m4/00gnulib.m4: Update.
2318         * gnulib/import/m4/__inline.m4: Update.
2319         * gnulib/import/m4/absolute-header.m4: Update.
2320         * gnulib/import/m4/alloca.m4: Update.
2321         * gnulib/import/m4/builtin-expect.m4: Update.
2322         * gnulib/import/m4/canonicalize.m4: Update.
2323         * gnulib/import/m4/chdir-long.m4: Update.
2324         * gnulib/import/m4/close.m4: Update.
2325         * gnulib/import/m4/closedir.m4: Update.
2326         * gnulib/import/m4/configmake.m4: Update.
2327         * gnulib/import/m4/d-ino.m4: Update.
2328         * gnulib/import/m4/d-type.m4: Update.
2329         * gnulib/import/m4/dirent_h.m4: Update.
2330         * gnulib/import/m4/dirfd.m4: Update.
2331         * gnulib/import/m4/dirname.m4: Update.
2332         * gnulib/import/m4/double-slash-root.m4: Update.
2333         * gnulib/import/m4/dup.m4: Update.
2334         * gnulib/import/m4/dup2.m4: Update.
2335         * gnulib/import/m4/eealloc.m4: Update.
2336         * gnulib/import/m4/environ.m4: Update.
2337         * gnulib/import/m4/errno_h.m4: Update.
2338         * gnulib/import/m4/error.m4: Update.
2339         * gnulib/import/m4/exponentd.m4: Update.
2340         * gnulib/import/m4/exponentl.m4: Update.
2341         * gnulib/import/m4/extensions.m4: Update.
2342         * gnulib/import/m4/extern-inline.m4: Update.
2343         * gnulib/import/m4/fchdir.m4: Update.
2344         * gnulib/import/m4/fcntl-o.m4: Update.
2345         * gnulib/import/m4/fcntl.m4: Update.
2346         * gnulib/import/m4/fcntl_h.m4: Update.
2347         * gnulib/import/m4/fdopendir.m4: Update.
2348         * gnulib/import/m4/filenamecat.m4: Update.
2349         * gnulib/import/m4/flexmember.m4: Update.
2350         * gnulib/import/m4/float_h.m4: Update.
2351         * gnulib/import/m4/fnmatch.m4: Update.
2352         * gnulib/import/m4/fnmatch_h.m4: Update.
2353         * gnulib/import/m4/fpieee.m4: Update.
2354         * gnulib/import/m4/frexp.m4: Update.
2355         * gnulib/import/m4/frexpl.m4: Update.
2356         * gnulib/import/m4/fstat.m4: Update.
2357         * gnulib/import/m4/fstatat.m4: Update.
2358         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
2359         * gnulib/import/m4/getcwd-path-max.m4: Update.
2360         * gnulib/import/m4/getcwd.m4: Update.
2361         * gnulib/import/m4/getdtablesize.m4: Update.
2362         * gnulib/import/m4/getlogin.m4: Update.
2363         * gnulib/import/m4/getlogin_r.m4: Update.
2364         * gnulib/import/m4/getpagesize.m4: Update.
2365         * gnulib/import/m4/getprogname.m4: Update.
2366         * gnulib/import/m4/gettimeofday.m4: Update.
2367         * gnulib/import/m4/glibc21.m4: Update.
2368         * gnulib/import/m4/glob.m4: Update.
2369         * gnulib/import/m4/glob_h.m4: Update.
2370         * gnulib/import/m4/gnulib-cache.m4: Update.
2371         * gnulib/import/m4/gnulib-common.m4: Update.
2372         * gnulib/import/m4/gnulib-comp.m4: Update.
2373         * gnulib/import/m4/gnulib-tool.m4: Update.
2374         * gnulib/import/m4/hard-locale.m4: Update.
2375         * gnulib/import/m4/include_next.m4: Update.
2376         * gnulib/import/m4/inttypes-pri.m4: Update.
2377         * gnulib/import/m4/inttypes.m4: Update.
2378         * gnulib/import/m4/isnand.m4: Update.
2379         * gnulib/import/m4/isnanl.m4: Update.
2380         * gnulib/import/m4/largefile.m4: Update.
2381         * gnulib/import/m4/limits-h.m4: Update.
2382         * gnulib/import/m4/localcharset.m4: Update.
2383         * gnulib/import/m4/locale-fr.m4: Update.
2384         * gnulib/import/m4/locale-ja.m4: Update.
2385         * gnulib/import/m4/locale-zh.m4: Update.
2386         * gnulib/import/m4/localtime-buffer.m4: Update.
2387         * gnulib/import/m4/longlong.m4: Update.
2388         * gnulib/import/m4/lstat.m4: Update.
2389         * gnulib/import/m4/malloc.m4: Update.
2390         * gnulib/import/m4/malloca.m4: Update.
2391         * gnulib/import/m4/math_h.m4: Update.
2392         * gnulib/import/m4/mbrtowc.m4: Update.
2393         * gnulib/import/m4/mbsinit.m4: Update.
2394         * gnulib/import/m4/mbsrtowcs.m4: Update.
2395         * gnulib/import/m4/mbstate_t.m4: Update.
2396         * gnulib/import/m4/memchr.m4: Update.
2397         * gnulib/import/m4/memmem.m4: Update.
2398         * gnulib/import/m4/mempcpy.m4: Update.
2399         * gnulib/import/m4/memrchr.m4: Update.
2400         * gnulib/import/m4/mkdir.m4: Update.
2401         * gnulib/import/m4/mkstemp.m4: Update.
2402         * gnulib/import/m4/mmap-anon.m4: Update.
2403         * gnulib/import/m4/mode_t.m4: Update.
2404         * gnulib/import/m4/msvc-inval.m4: Update.
2405         * gnulib/import/m4/msvc-nothrow.m4: Update.
2406         * gnulib/import/m4/multiarch.m4: Update.
2407         * gnulib/import/m4/nocrash.m4: Update.
2408         * gnulib/import/m4/off_t.m4: Update.
2409         * gnulib/import/m4/onceonly.m4: Update.
2410         * gnulib/import/m4/open-cloexec.m4: Update.
2411         * gnulib/import/m4/open.m4: Update.
2412         * gnulib/import/m4/openat.m4: Update.
2413         * gnulib/import/m4/opendir.m4: Update.
2414         * gnulib/import/m4/pathmax.m4: Update.
2415         * gnulib/import/m4/rawmemchr.m4: Update.
2416         * gnulib/import/m4/readdir.m4: Update.
2417         * gnulib/import/m4/readlink.m4: Update.
2418         * gnulib/import/m4/realloc.m4: Update.
2419         * gnulib/import/m4/rename.m4: Update.
2420         * gnulib/import/m4/rewinddir.m4: Update.
2421         * gnulib/import/m4/rmdir.m4: Update.
2422         * gnulib/import/m4/save-cwd.m4: Update.
2423         * gnulib/import/m4/secure_getenv.m4: Update.
2424         * gnulib/import/m4/setenv.m4: Update.
2425         * gnulib/import/m4/signal_h.m4: Update.
2426         * gnulib/import/m4/ssize_t.m4: Update.
2427         * gnulib/import/m4/stat-time.m4: Update.
2428         * gnulib/import/m4/stat.m4: Update.
2429         * gnulib/import/m4/std-gnu11.m4: Update.
2430         * gnulib/import/m4/stdbool.m4: Update.
2431         * gnulib/import/m4/stddef_h.m4: Update.
2432         * gnulib/import/m4/stdint.m4: Update.
2433         * gnulib/import/m4/stdio_h.m4: Update.
2434         * gnulib/import/m4/stdlib_h.m4: Update.
2435         * gnulib/import/m4/strchrnul.m4: Update.
2436         * gnulib/import/m4/strdup.m4: Update.
2437         * gnulib/import/m4/strerror.m4: Update.
2438         * gnulib/import/m4/string_h.m4: Update.
2439         * gnulib/import/m4/strstr.m4: Update.
2440         * gnulib/import/m4/strtok_r.m4: Update.
2441         * gnulib/import/m4/sys_socket_h.m4: Update.
2442         * gnulib/import/m4/sys_stat_h.m4: Update.
2443         * gnulib/import/m4/sys_time_h.m4: Update.
2444         * gnulib/import/m4/sys_types_h.m4: Update.
2445         * gnulib/import/m4/tempname.m4: Update.
2446         * gnulib/import/m4/time_h.m4: Update.
2447         * gnulib/import/m4/unistd-safer.m4: Update.
2448         * gnulib/import/m4/unistd_h.m4: Update.
2449         * gnulib/import/m4/warn-on-use.m4: Update.
2450         * gnulib/import/m4/wchar_h.m4: Update.
2451         * gnulib/import/m4/wchar_t.m4: Update.
2452         * gnulib/import/m4/wctype_h.m4: Update.
2453         * gnulib/import/m4/wint_t.m4: Update.
2454         * gnulib/import/malloc.c: Update.
2455         * gnulib/import/malloc/scratch_buffer.h: Update.
2456         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
2457         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
2458         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
2459         * gnulib/import/malloca.c: Update.
2460         * gnulib/import/malloca.h: Update.
2461         * gnulib/import/malloca.valgrind: Update.
2462         * gnulib/import/math.in.h: Update.
2463         * gnulib/import/mbrtowc.c: Update.
2464         * gnulib/import/mbsinit.c: Update.
2465         * gnulib/import/mbsrtowcs-impl.h: Update.
2466         * gnulib/import/mbsrtowcs-state.c: Update.
2467         * gnulib/import/mbsrtowcs.c: Update.
2468         * gnulib/import/memchr.c: Update.
2469         * gnulib/import/memmem.c: Update.
2470         * gnulib/import/mempcpy.c: Update.
2471         * gnulib/import/memrchr.c: Update.
2472         * gnulib/import/mkdir.c: Update.
2473         * gnulib/import/mkstemp.c: Update.
2474         * gnulib/import/msvc-inval.c: Update.
2475         * gnulib/import/msvc-inval.h: Update.
2476         * gnulib/import/msvc-nothrow.c: Update.
2477         * gnulib/import/msvc-nothrow.h: Update.
2478         * gnulib/import/open.c: Update.
2479         * gnulib/import/openat-die.c: Update.
2480         * gnulib/import/openat-priv.h: Update.
2481         * gnulib/import/openat-proc.c: Update.
2482         * gnulib/import/openat.c: Update.
2483         * gnulib/import/openat.h: Update.
2484         * gnulib/import/opendir.c: Update.
2485         * gnulib/import/pathmax.h: Update.
2486         * gnulib/import/pipe-safer.c: Update.
2487         * gnulib/import/rawmemchr.c: Update.
2488         * gnulib/import/readdir.c: Update.
2489         * gnulib/import/readlink.c: Update.
2490         * gnulib/import/realloc.c: Update.
2491         * gnulib/import/ref-add.sin: Update.
2492         * gnulib/import/ref-del.sin: Update.
2493         * gnulib/import/rename.c: Update.
2494         * gnulib/import/rewinddir.c: Update.
2495         * gnulib/import/rmdir.c: Update.
2496         * gnulib/import/same-inode.h: Update.
2497         * gnulib/import/save-cwd.c: Update.
2498         * gnulib/import/save-cwd.h: Update.
2499         * gnulib/import/scratch_buffer.h: Update.
2500         * gnulib/import/secure_getenv.c: Update.
2501         * gnulib/import/setenv.c: Update.
2502         * gnulib/import/signal.in.h: Update.
2503         * gnulib/import/stat-time.c: Update.
2504         * gnulib/import/stat-time.h: Update.
2505         * gnulib/import/stat-w32.c: Update.
2506         * gnulib/import/stat-w32.h: Update.
2507         * gnulib/import/stat.c: Update.
2508         * gnulib/import/stdbool.in.h: Update.
2509         * gnulib/import/stddef.in.h: Update.
2510         * gnulib/import/stdint.in.h: Update.
2511         * gnulib/import/stdio.in.h: Update.
2512         * gnulib/import/stdlib.in.h: Update.
2513         * gnulib/import/str-two-way.h: Update.
2514         * gnulib/import/strchrnul.c: Update.
2515         * gnulib/import/strdup.c: Update.
2516         * gnulib/import/streq.h: Update.
2517         * gnulib/import/strerror-override.c: Update.
2518         * gnulib/import/strerror-override.h: Update.
2519         * gnulib/import/strerror.c: Update.
2520         * gnulib/import/string.in.h: Update.
2521         * gnulib/import/stripslash.c: Update.
2522         * gnulib/import/strnlen1.c: Update.
2523         * gnulib/import/strnlen1.h: Update.
2524         * gnulib/import/strstr.c: Update.
2525         * gnulib/import/strtok_r.c: Update.
2526         * gnulib/import/sys_stat.in.h: Update.
2527         * gnulib/import/sys_time.in.h: Update.
2528         * gnulib/import/sys_types.in.h: Update.
2529         * gnulib/import/tempname.c: Update.
2530         * gnulib/import/tempname.h: Update.
2531         * gnulib/import/time.in.h: Update.
2532         * gnulib/import/unistd--.h: Update.
2533         * gnulib/import/unistd-safer.h: Update.
2534         * gnulib/import/unistd.in.h: Update.
2535         * gnulib/import/unsetenv.c: Update.
2536         * gnulib/import/verify.h: Update.
2537         * gnulib/import/extra/snippet/warn-on-use.h: Update.
2538         * gnulib/import/wchar.in.h: Update.
2539         * gnulib/import/wctype.in.h: Update.
2540         * gnulib/import/xalloc-oversized.h: Update.
2541         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
2542         "53e2c179f26a890fa6685af4b6c1397ee370433b".
2543
2544 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
2545
2546         * record-btrace.c (get_thread_current_frame): Remove
2547         old_inferior_ptid.
2548
2549 2018-09-10  Jerome Guitton  <guitton@adacore.com>
2550
2551         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
2552         with check_tag to 1 if and only if the type is tagged and the
2553         component being searched cannot been found in the current
2554         view. Otherwise, always call ada_to_fixed_type with
2555         check_tag to 0.
2556
2557 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2558
2559         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
2560         declaration.
2561         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
2562         * ada-varobj.c (ada_varobj_get_number_of_children,
2563         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
2564
2565 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2566
2567         * ada-valprint.c (ada_value_print): Use type instead of
2568         enclosing type.
2569
2570 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2571
2572         * ada-lang.c (ada_value_subscript): Handle case when parameter is
2573         an array of access to unconstrained array.
2574
2575 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2576
2577         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
2578         (ada_check_typedef): Use it.
2579
2580 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2581
2582         * ada-varobj.c (ada_varobj_describe_struct_child)
2583         (ada_varobj_describe_child): Handle union case like struct one.
2584
2585 2018-09-10  Tom Tromey  <tom@tromey.com>
2586
2587         PR python/18380:
2588         * python/python.c (_initialize_python): Make example in "python"
2589         help work in Python 3.
2590
2591 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
2592
2593         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
2594         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
2595         $(EXEEXT) to the script, as it is not a program.
2596
2597 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
2598
2599         * python/py-prettyprint.c (pretty_print_one_value): Return
2600         gdbpy_ref<>.
2601         (print_string_repr): Adjust.
2602         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
2603         * python/python-internal.h (apply_varobj_pretty_printer): Return
2604         gdbpy_ref<>.
2605         * varobj.c (varobj_value_get_print_value): Adjust.
2606
2607 2018-09-08  Tom Tromey  <tom@tromey.com>
2608
2609         PR python/16047:
2610         * python/py-prettyprint.c (pretty_print_one_value): Check for
2611         to_string method.
2612
2613 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2614
2615         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
2616         replace_operator_with_call.
2617
2618 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2619
2620         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
2621
2622 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2623
2624         * ada-typeprint.c (print_range): Print the bounds using TYPE
2625         rather than its TYPE_TARGET_TYPE.
2626
2627 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2628
2629         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
2630         call to ada_to_fixed_value_create.
2631
2632 2018-09-08  Jerome Guitton  <guitton@adacore.com>
2633
2634         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
2635
2636 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2637
2638         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
2639         by calls to error.
2640
2641 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2642
2643         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
2644         Move update of loop variable "fi".
2645
2646 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2647
2648         * ada-lang.c (value_assign_to_component): In the case of
2649         big-endian targets, extract the bits of the given VAL
2650         using an src_offset of zero if container is not a scalar.
2651
2652 2018-09-06  Simon Ser  <contact@emersion.fr>
2653
2654         PR gdb/23105
2655         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
2656         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
2657         * fbsd-tdep.c (fbsd_make_note_desc): New.
2658         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
2659         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
2660         * target.h (enum target_object) Add FreeBSD-specific
2661         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
2662
2663 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2664
2665         * compile/compile-c.h (generate_c_for_variable_locations):
2666         Change reference to pointer.
2667         * compile/compile-c-support.c (compile_program) <compute>:
2668         Likewise.
2669         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
2670         (generate_c_for_for_one_variable): Likewise
2671         (generate_c_for_variable_locations): Likewise
2672         * compile/compile-c-types.c (compile_c_instance::convert_type):
2673         Likewise
2674         * compile/compile-cplus-symbols.c (convert_one_symbol):
2675         std::move the scope passed to enter_scope.
2676         * compile/compile-cplus-types.c
2677         (compile_cplus_instance::enter_scope): Make parameter
2678         rvalue-reference.
2679         (compile_cplus_instance::new_scope): Change reference to
2680         pointer.
2681         (compile_cplus_instance::convert_type): Likewise
2682         (compile_cplus_convert_typedef): std::move the scope passed to
2683         enter_scope.
2684         (compile_cplus_convert_struct_or_union): Likewise.
2685         (compile_cplus_convert_enum): Likewise.
2686         (compile_cplus_convert_namespace): Likewise.
2687         * compile/compile-cplus.h (compile_cplus_instance)
2688         <enter_scope>: Make parameter rvalue-reference.
2689         * compile/compile-internal.h (compile_instance)
2690         <get_cached_type>: Likewise
2691         * compile/compile-loc2c.c (push): Likewise
2692         (pushf): Likewise
2693         (unary): Likewise
2694         (binary): Likewise
2695         (print_label): Likewise
2696         (pushf_register_address): Likewise
2697         (pushf_register): Likewise
2698         (do_compile_dwarf_expr_to_c): Likewise
2699         (compile_dwarf_expr_to_c): Likewise
2700         (compile_dwarf_bounds_to_c): Likewise
2701         * compile/compile.c (compile_instance::get_cached_type):
2702         Likewise
2703         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
2704         (compile_dwarf_bounds_to_c): Likewise
2705         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
2706         (dwarf2_compile_property_to_c): Likewise
2707         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
2708         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
2709         Likewise
2710
2711 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2712
2713         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
2714         * tui/tui-data.c (init_content_element): Don't initialize it.
2715
2716 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2717
2718         * tui/tui-data.h (struct tui_win_info)
2719         <detail::opaque>: Remove.
2720         * tui/tui-data.c (init_win_info): Remove assignment.
2721
2722 2018-09-05  Tom Tromey  <tom@tromey.com>
2723
2724         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
2725         -Wformat-nonliteral.
2726         * target-float.c (host_float_ops<T>::to_string)
2727         (host_float_ops<T>::from_string): Use
2728         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
2729         * configure: Rebuild.
2730
2731 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
2732
2733         * printcmd.c (printf_c_string): Use
2734         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
2735         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
2736
2737 2018-09-05  Tom Tromey  <tom@tromey.com>
2738
2739         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
2740
2741 2018-09-05  Tom de Vries  <tdevries@suse.de>
2742
2743         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
2744         with resolve_abstract_p == true.
2745         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
2746         defaulting to false. Propagate resolve_abstract_p to
2747         dwarf2_fetch_die_loc_sect_off.
2748         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
2749         parameter, defaulting to false.
2750         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
2751         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
2752         parameter.
2753         * dwarf2read.h (struct die_info): Forward-declare.
2754         (die_info_ptr): New typedef.
2755         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
2756
2757 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
2758
2759         GDB 8.2 released.
2760
2761 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
2762             Pedro Alves  <palves@redhat.com>
2763
2764         * gnulib/Makefile.in (aclocal_m4_deps): Move to
2765         "aclocal-m4-deps.mk".  Include file here.
2766         $(srcdir)/aclocal.m4: Add "configure.ac".
2767         * gnulib/aclocal-m4-deps.mk: New file.
2768         * gnulib/update-gnulib.sh: Automatically update
2769         "aclocal-m4-deps.mk".
2770
2771 2018-09-04  Tom Tromey  <tom@tromey.com>
2772
2773         * configure: Rebuild.
2774         * configure.ac: Remove multi-ice code.
2775
2776 2018-09-04  Tom Tromey  <tom@tromey.com>
2777
2778         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
2779         (ada-exp.o): Update.
2780
2781 2018-09-04  Tom Tromey  <tom@tromey.com>
2782
2783         * Makefile.in (printcmd.o, target-float.o): Remove.
2784         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
2785
2786 2018-09-04  Tom Tromey  <tom@tromey.com>
2787
2788         * gnulib/Makefile.in: Remove obsolete comment.
2789         * Makefile.in: Remove obsolete comment.
2790
2791 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
2792
2793         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
2794         line with '+'.
2795
2796 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2797
2798         * riscv-tdep.c: Add 'prologue-value.h' include.
2799         (struct riscv_unwind_cache): New struct.
2800         (riscv_debug_unwinder): New global.
2801         (riscv_scan_prologue): Update arguments, capture register details
2802         from prologue scan.
2803         (riscv_skip_prologue): Reformat arguments line, move end of
2804         prologue calculation into riscv_scan_prologue.
2805         (riscv_frame_cache): Update return type, create
2806         riscv_unwind_cache, scan the prologue, and fill in remaining cache
2807         details.
2808         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
2809         (riscv_frame_prev_register): Use the trad_frame within the
2810         riscv_unwind_cache.
2811         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
2812         flag.
2813
2814 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2815
2816         * trad-frame.h (trad_frame_set_realreg): Declare.
2817         (trad_frame_set_addr): Declare.
2818         * trad-frame.c (trad_frame_set_realreg): Define new function.
2819         (trad_frame_set_addr): Define new function.
2820         (trad_frame_set_reg_realreg): Use new function.
2821         (trad_frame_set_reg_addr): Use new function.
2822
2823 2018-09-01  Keith Seitz  <keiths@redhat.com>
2824
2825         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
2826         pulongest instead of "%lld".
2827         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
2828         ATTRIBUTE_UNUSED.
2829
2830 2018-08-31  Tom Tromey  <tom@tromey.com>
2831
2832         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
2833         variant part type.
2834
2835 2018-08-31  Pedro Alves  <palves@redhat.com>
2836
2837         * gdbarch.h: Regenerate.
2838
2839 2018-08-31  Pedro Alves  <palves@redhat.com>
2840
2841         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
2842         * target.h (Hardware watchpoint interfaces): Describe
2843         continuable/steppable/non-steppable watchpoints.
2844         * gdbarch.h, gdbarch.c: Regenerate.
2845
2846 2018-08-31  Pedro Alves  <palves@redhat.com>
2847
2848         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
2849         Delete.
2850         * s390-linux-nat.c
2851         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
2852         * target.h (target_ops::have_continuable_watchpoint): Delete.
2853         (target_have_continuable_watchpoint): Delete.
2854         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
2855         * target-delegates.c: Regenerate.
2856
2857 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
2858
2859         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
2860         the files present in "gnulib/import/m4/".
2861
2862 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2863
2864         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
2865         c.sw, c.swsp, and c.sdsp.
2866
2867 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2868
2869         * riscv-tdep.c (struct riscv_inferior_data): Delete.
2870         (riscv_read_misa_reg): Don't cache value read into inferior data.
2871         (riscv_new_inferior_data): Delete.
2872         (riscv_inferior_data_cleanup): Delete.
2873         (riscv_inferior_data): Delete.
2874         (riscv_invalidate_inferior_data): Delete.
2875         (_initialize_riscv_tdep): Remove initialisation of inferior data.
2876
2877 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
2878
2879         * compile/compile-cplus-types.c
2880         (compile_cplus_instance::leave_scope): Take the address of scope
2881         object.
2882         (compile_cplus_instance::convert_qualified_base): Compare quals
2883         to 0.
2884
2885 2018-08-30  Keith Seitz  <keiths@redhat.com>
2886
2887         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
2888         Use "%s" and host_address_to_string instead of "%p" in printf.
2889
2890 2018-08-29  Keith Seitz  <keiths@redhat.com>
2891
2892         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
2893         and compile-cplus-types.c.
2894         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
2895         * c-lang.c (cplus_language_defn): Set C++ compile functions.
2896         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
2897         Declare.
2898         * compile/compile-c-support.c: Include compile-cplus.h.
2899         (load_libcompile): Templatize.
2900         (get_compile_context): "New" function.
2901         (c_get_compile_context): Use get_compile_context.
2902         (cplus_get_compile_context): New function.
2903         (cplus_push_user_expression, cplus_pop_user_expression)
2904         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
2905         (cplus_compute_program): Define new structs/functions.
2906         * compile/compile-cplus-symmbols.c: New file.
2907         * compile/compile-cplus-types.c: New file.
2908         * compile/compile-cplus.h: New file.
2909         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
2910         Declare.
2911         * compile/compile-object-load.c (get_out_value_type): Use
2912         strncmp_iw when comparing symbol names.
2913         (compile_object_load): Add mst_bss and mst_data.
2914         * compile/compile.c (_initialize_compile): Remove
2915         -Wno-implicit-function-declaration from `compile_args'.
2916         * compile/gcc-cp-plugin.h: New file.
2917         * NEWS: Mention C++ compile support and new debug options.
2918
2919 2018-08-29  Keith Seitz  <keiths@redhat.com>
2920
2921         * linespec.c (collect_info::add_symbol): Make virtual.
2922         (struct symbol_searcher_collect_info): New struct.
2923         (symbol_searcher::find_all_symbols): New method.
2924         * symtab.h (class symbol_searcher): New class.
2925
2926 2018-08-29  Keith Seitz  <keiths@redhat.com>
2927
2928         * linespec.c (struct linespec) <function_symbols, label_symbols>:
2929         Change to vector of block_symbol.  Update all users.
2930         (struct collect_info) <symbols>: Likewise.
2931         (collect_info::add_symbol): Take block_symbol as argument.
2932         Update all callers.
2933         (decode_compound_collector) <m_symbols>: Change type to vector
2934         of block_symbol.  Update all users.
2935         (decode_compound_collector::operator ()): Change parameter type
2936         to block_symbol.
2937         (find_method, find_function_symbols, find_linespec_symbols)
2938         (find_label_symbols_in_block, find_label_symbols): Change symbol
2939         vectors to block_symbol vectors.
2940         * symtab.h (symbol_found_callback_ftype): Change parameter type to
2941         block_symbol.
2942
2943 2018-08-29  Keith Seitz  <keiths@redhat.com>
2944
2945         * linespec.c (symbolp): Remove typedef and VEC definitions.
2946         (bound_minimal_symbol_d): Likewise.
2947
2948 2018-08-29  Keith Seitz  <keiths@redhat.com>
2949
2950         * linespec.c (decode_compound_collector::decode_compound_collector):
2951         Remove initialization for `m_symtabs'.
2952         (decode_compound_collector::release_symbols): Change return type
2953         to std::vector.  Update all callers.
2954         (class decode_compound_collector) <m_symbols>: Change type to
2955         std::vector.
2956         (lookup_prefix_sym): Change return type to std::vector.  Update all
2957         callers.
2958         (compare_symbols): Remove.
2959         (std_compare_symbols): Rename to `compare_symbols'.
2960         (find_method): Change `sym_classes' parameter to std::vector.
2961         Update all callers.  Use std::sort to sort sym_classes.
2962         (find_linespec_symbols): Remove cleanup.
2963
2964 2018-08-29  Keith Seitz  <keiths@redhat.com>
2965
2966         * linespec.c (struct linespec) <minimal_symbols>: Change type to
2967         std::vector.  Update all users.
2968         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
2969         (struct collect_info) <minimal_symbols>: Likewise.
2970         (compare_msymbols): Return bool.  Change parameters to const
2971         bound_minimal_symbol references.
2972         (find_method, find_function_symbols, find_linespec_symbols): Change
2973         `minsyms' parameter to std::vector.  Update all callers.
2974
2975 2018-08-29  Keith Seitz  <keiths@redhat.com>
2976
2977         * linespec.c (struct linespec) <label_symbols>: Change type to
2978         std::vector.  Update all users.
2979         (find_label_symbols_in_block): Change `result' parameter to
2980         std::vector.  Update all callers.
2981         (find_label_symbols): Return std::vector.  Update all callers.
2982
2983 2018-08-29  Keith Seitz  <keiths@redhat.com>
2984
2985         * linespec.c (struct linespec) <function_symbols>: Change type to
2986         std::vector.  Update all users.
2987         (struct collect_info) <function_symbols>: Likewise.
2988         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
2989         (std_compare_symbols): New function.
2990         (find_method, find_function_symbols, find_linespec_symbols)
2991         (find_label_symbols_in_block): Change `symbols' parameter to
2992         std::vector.  Update all callers.
2993         (find_label_symbols): Likewise for `function_symbols' and
2994         `label_funcs_ret'.
2995
2996 2018-08-29  Keith Seitz  <keiths@redhat.com>
2997
2998         * linespec.c (symtab_vector_up): Define.
2999         (struct linespec) <file_symtabs>: Change type to std::vector *.
3000         Update all uses.
3001         (struct collect_info) <file_symtabs>: Likewise.
3002         (collect_symtabs_from_filename): Return symtab_vector_up.
3003         Update all callers.
3004         (decode_objc): Remove cleanup.
3005         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
3006         (symtab_collector::release_symtabs): Return symtab_vector_up.
3007         Update all callers.
3008         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
3009         Update all users.
3010         (collect_symtabs_from_filename, symtabs_from_filename): Return
3011         symtab_vector_up.  Update all callers.
3012
3013 2018-08-29  Tom Tromey  <tom@tromey.com>
3014
3015         * csky-tdep.c (csky_analyze_prologue): Use
3016         core_addr_to_string_nz.
3017
3018 2018-08-29  Tom Tromey  <tom@tromey.com>
3019
3020         * windows-nat.c (struct xlate_exception) <them>: Change type to
3021         DWORD.
3022         (xlate): Fix formatting.  Remove last entry.
3023         (struct xlate_exception, xlate): Comment out.
3024         (windows_nat_target::resume): Use ranged for.
3025
3026 2018-08-29  Jim Wilson  <jimw@sifive.com>
3027
3028         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
3029         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
3030         of NT_PRFPREG.
3031         (riscv_linux_nat_target::store_registers): Likewise.
3032
3033 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
3034
3035         PR gdb/23555
3036         PR gdb/23558
3037         * gnulib/aclocal.m4: Regenerate.
3038         * gnulib/config.in: Regenerate.
3039         * gnulib/configure: Regenerate.
3040         * gnulib/import/Makefile.am: Update.
3041         * gnulib/import/Makefile.in: Update.
3042         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
3043         * gnulib/import/_Noreturn.h: ... this.
3044         * gnulib/import/alloca.in.h: Update.
3045         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
3046         * gnulib/import/arg-nonnull.h: ... this.
3047         * gnulib/import/assure.h: Update.
3048         * gnulib/import/at-func.c: Update.
3049         * gnulib/import/basename-lgpl.c: Update.
3050         * gnulib/import/extra/snippet/c++defs.h: Rename to...
3051         * gnulib/import/c++defs.h: ... this.
3052         * gnulib/import/canonicalize-lgpl.c: Update.
3053         * gnulib/import/cdefs.h: Update.
3054         * gnulib/import/chdir-long.c: Update.
3055         * gnulib/import/chdir-long.h: Update.
3056         * gnulib/import/cloexec.c: Update.
3057         * gnulib/import/cloexec.h: Update.
3058         * gnulib/import/close.c: Update.
3059         * gnulib/import/closedir.c: Update.
3060         * gnulib/import/config.charset: Update.
3061         * gnulib/import/dirent-private.h: Update.
3062         * gnulib/import/dirent.in.h: Update.
3063         * gnulib/import/dirfd.c: Update.
3064         * gnulib/import/dirname-lgpl.c: Update.
3065         * gnulib/import/dirname.h: Update.
3066         * gnulib/import/dosname.h: Update.
3067         * gnulib/import/dup-safer-flag.c: Update.
3068         * gnulib/import/dup-safer.c: Update.
3069         * gnulib/import/dup.c: Update.
3070         * gnulib/import/dup2.c: Update.
3071         * gnulib/import/errno.in.h: Update.
3072         * gnulib/import/error.c: Update.
3073         * gnulib/import/error.h: Update.
3074         * gnulib/import/exitfail.c: Update.
3075         * gnulib/import/exitfail.h: Update.
3076         * gnulib/import/extra/update-copyright: Update.
3077         * gnulib/import/fchdir.c: Update.
3078         * gnulib/import/fcntl.c: Update.
3079         * gnulib/import/fcntl.in.h: Update.
3080         * gnulib/import/fd-hook.c: Update.
3081         * gnulib/import/fd-hook.h: Update.
3082         * gnulib/import/fd-safer-flag.c: Update.
3083         * gnulib/import/fd-safer.c: Update.
3084         * gnulib/import/fdopendir.c: Update.
3085         * gnulib/import/filename.h: Update.
3086         * gnulib/import/filenamecat-lgpl.c: Update.
3087         * gnulib/import/filenamecat.h: Update.
3088         * gnulib/import/flexmember.h: Update.
3089         * gnulib/import/float+.h: Update.
3090         * gnulib/import/float.c: Update.
3091         * gnulib/import/float.in.h: Update.
3092         * gnulib/import/fnmatch.c: Update.
3093         * gnulib/import/fnmatch.in.h: Update.
3094         * gnulib/import/fnmatch_loop.c: Update.
3095         * gnulib/import/fpucw.h: Update.
3096         * gnulib/import/frexp.c: Update.
3097         * gnulib/import/frexpl.c: Update.
3098         * gnulib/import/fstat.c: Update.
3099         * gnulib/import/fstatat.c: Update.
3100         * gnulib/import/getcwd-lgpl.c: Update.
3101         * gnulib/import/getcwd.c: Update.
3102         * gnulib/import/getdtablesize.c: Update.
3103         * gnulib/import/getlogin_r.c: Update.
3104         * gnulib/import/getprogname.c: Update.
3105         * gnulib/import/getprogname.h: Update.
3106         * gnulib/import/gettext.h: Update.
3107         * gnulib/import/gettimeofday.c: Update.
3108         * gnulib/import/glob-libc.h: Update.
3109         * gnulib/import/glob.c: Update.
3110         * gnulib/import/glob.in.h: Update.
3111         * gnulib/import/glob_internal.h: Update.
3112         * gnulib/import/glob_pattern_p.c: Update.
3113         * gnulib/import/globfree.c: Update.
3114         * gnulib/import/hard-locale.c: Update.
3115         * gnulib/import/hard-locale.h: Update.
3116         * gnulib/import/intprops.h: Update.
3117         * gnulib/import/inttypes.in.h: Update.
3118         * gnulib/import/isnan.c: Update.
3119         * gnulib/import/isnand-nolibm.h: Update.
3120         * gnulib/import/isnand.c: Update.
3121         * gnulib/import/isnanl-nolibm.h: Update.
3122         * gnulib/import/isnanl.c: Update.
3123         * gnulib/import/itold.c: Update.
3124         * gnulib/import/libc-config.h: Update.
3125         * gnulib/import/limits.in.h: Update.
3126         * gnulib/import/localcharset.c: Update.
3127         * gnulib/import/localcharset.h: Update.
3128         * gnulib/import/localtime-buffer.c: Update.
3129         * gnulib/import/localtime-buffer.h: Update.
3130         * gnulib/import/lstat.c: Update.
3131         * gnulib/import/m4/00gnulib.m4: Update.
3132         * gnulib/import/m4/__inline.m4: Update.
3133         * gnulib/import/m4/absolute-header.m4: Update.
3134         * gnulib/import/m4/alloca.m4: Update.
3135         * gnulib/import/m4/builtin-expect.m4: Update.
3136         * gnulib/import/m4/canonicalize.m4: Update.
3137         * gnulib/import/m4/chdir-long.m4: Update.
3138         * gnulib/import/m4/close.m4: Update.
3139         * gnulib/import/m4/closedir.m4: Update.
3140         * gnulib/import/m4/configmake.m4: Update.
3141         * gnulib/import/m4/d-ino.m4: Update.
3142         * gnulib/import/m4/d-type.m4: Update.
3143         * gnulib/import/m4/dirent_h.m4: Update.
3144         * gnulib/import/m4/dirfd.m4: Update.
3145         * gnulib/import/m4/dirname.m4: Update.
3146         * gnulib/import/m4/double-slash-root.m4: Update.
3147         * gnulib/import/m4/dup.m4: Update.
3148         * gnulib/import/m4/dup2.m4: Update.
3149         * gnulib/import/m4/eealloc.m4: Update.
3150         * gnulib/import/m4/environ.m4: Update.
3151         * gnulib/import/m4/errno_h.m4: Update.
3152         * gnulib/import/m4/error.m4: Update.
3153         * gnulib/import/m4/exponentd.m4: Update.
3154         * gnulib/import/m4/exponentl.m4: Update.
3155         * gnulib/import/m4/extensions.m4: Update.
3156         * gnulib/import/m4/extern-inline.m4: Update.
3157         * gnulib/import/m4/fchdir.m4: Update.
3158         * gnulib/import/m4/fcntl-o.m4: Update.
3159         * gnulib/import/m4/fcntl.m4: Update.
3160         * gnulib/import/m4/fcntl_h.m4: Update.
3161         * gnulib/import/m4/fdopendir.m4: Update.
3162         * gnulib/import/m4/filenamecat.m4: Update.
3163         * gnulib/import/m4/flexmember.m4: Update.
3164         * gnulib/import/m4/float_h.m4: Update.
3165         * gnulib/import/m4/fnmatch.m4: Update.
3166         * gnulib/import/m4/fnmatch_h.m4: Update.
3167         * gnulib/import/m4/fpieee.m4: Update.
3168         * gnulib/import/m4/frexp.m4: Update.
3169         * gnulib/import/m4/frexpl.m4: Update.
3170         * gnulib/import/m4/fstat.m4: Update.
3171         * gnulib/import/m4/fstatat.m4: Update.
3172         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
3173         * gnulib/import/m4/getcwd-path-max.m4: Update.
3174         * gnulib/import/m4/getcwd.m4: Update.
3175         * gnulib/import/m4/getdtablesize.m4: Update.
3176         * gnulib/import/m4/getlogin.m4: Update.
3177         * gnulib/import/m4/getlogin_r.m4: Update.
3178         * gnulib/import/m4/getpagesize.m4: Update.
3179         * gnulib/import/m4/getprogname.m4: Update.
3180         * gnulib/import/m4/gettimeofday.m4: Update.
3181         * gnulib/import/m4/glibc21.m4: Update.
3182         * gnulib/import/m4/glob.m4: Update.
3183         * gnulib/import/m4/glob_h.m4: Update.
3184         * gnulib/import/m4/gnulib-cache.m4: Update.
3185         * gnulib/import/m4/gnulib-common.m4: Update.
3186         * gnulib/import/m4/gnulib-comp.m4: Update.
3187         * gnulib/import/m4/gnulib-tool.m4: Update.
3188         * gnulib/import/m4/hard-locale.m4: Update.
3189         * gnulib/import/m4/include_next.m4: Update.
3190         * gnulib/import/m4/inttypes-pri.m4: Update.
3191         * gnulib/import/m4/inttypes.m4: Update.
3192         * gnulib/import/m4/isnand.m4: Update.
3193         * gnulib/import/m4/isnanl.m4: Update.
3194         * gnulib/import/m4/largefile.m4: Update.
3195         * gnulib/import/m4/limits-h.m4: Update.
3196         * gnulib/import/m4/localcharset.m4: Update.
3197         * gnulib/import/m4/locale-fr.m4: Update.
3198         * gnulib/import/m4/locale-ja.m4: Update.
3199         * gnulib/import/m4/locale-zh.m4: Update.
3200         * gnulib/import/m4/localtime-buffer.m4: Update.
3201         * gnulib/import/m4/longlong.m4: Update.
3202         * gnulib/import/m4/lstat.m4: Update.
3203         * gnulib/import/m4/malloc.m4: Update.
3204         * gnulib/import/m4/malloca.m4: Update.
3205         * gnulib/import/m4/math_h.m4: Update.
3206         * gnulib/import/m4/mbrtowc.m4: Update.
3207         * gnulib/import/m4/mbsinit.m4: Update.
3208         * gnulib/import/m4/mbsrtowcs.m4: Update.
3209         * gnulib/import/m4/mbstate_t.m4: Update.
3210         * gnulib/import/m4/memchr.m4: Update.
3211         * gnulib/import/m4/memmem.m4: Update.
3212         * gnulib/import/m4/mempcpy.m4: Update.
3213         * gnulib/import/m4/memrchr.m4: Update.
3214         * gnulib/import/m4/mkdir.m4: Update.
3215         * gnulib/import/m4/mkstemp.m4: Update.
3216         * gnulib/import/m4/mmap-anon.m4: Update.
3217         * gnulib/import/m4/mode_t.m4: Update.
3218         * gnulib/import/m4/msvc-inval.m4: Update.
3219         * gnulib/import/m4/msvc-nothrow.m4: Update.
3220         * gnulib/import/m4/multiarch.m4: Update.
3221         * gnulib/import/m4/nocrash.m4: Update.
3222         * gnulib/import/m4/off_t.m4: Update.
3223         * gnulib/import/m4/onceonly.m4: Update.
3224         * gnulib/import/m4/open-cloexec.m4: Update.
3225         * gnulib/import/m4/open.m4: Update.
3226         * gnulib/import/m4/openat.m4: Update.
3227         * gnulib/import/m4/opendir.m4: Update.
3228         * gnulib/import/m4/pathmax.m4: Update.
3229         * gnulib/import/m4/rawmemchr.m4: Update.
3230         * gnulib/import/m4/readdir.m4: Update.
3231         * gnulib/import/m4/readlink.m4: Update.
3232         * gnulib/import/m4/realloc.m4: Update.
3233         * gnulib/import/m4/rename.m4: Update.
3234         * gnulib/import/m4/rewinddir.m4: Update.
3235         * gnulib/import/m4/rmdir.m4: Update.
3236         * gnulib/import/m4/save-cwd.m4: Update.
3237         * gnulib/import/m4/secure_getenv.m4: Update.
3238         * gnulib/import/m4/setenv.m4: Update.
3239         * gnulib/import/m4/signal_h.m4: Update.
3240         * gnulib/import/m4/ssize_t.m4: Update.
3241         * gnulib/import/m4/stat-time.m4: Update.
3242         * gnulib/import/m4/stat.m4: Update.
3243         * gnulib/import/m4/std-gnu11.m4: Update.
3244         * gnulib/import/m4/stdbool.m4: Update.
3245         * gnulib/import/m4/stddef_h.m4: Update.
3246         * gnulib/import/m4/stdint.m4: Update.
3247         * gnulib/import/m4/stdio_h.m4: Update.
3248         * gnulib/import/m4/stdlib_h.m4: Update.
3249         * gnulib/import/m4/strchrnul.m4: Update.
3250         * gnulib/import/m4/strdup.m4: Update.
3251         * gnulib/import/m4/strerror.m4: Update.
3252         * gnulib/import/m4/string_h.m4: Update.
3253         * gnulib/import/m4/strstr.m4: Update.
3254         * gnulib/import/m4/strtok_r.m4: Update.
3255         * gnulib/import/m4/sys_socket_h.m4: Update.
3256         * gnulib/import/m4/sys_stat_h.m4: Update.
3257         * gnulib/import/m4/sys_time_h.m4: Update.
3258         * gnulib/import/m4/sys_types_h.m4: Update.
3259         * gnulib/import/m4/tempname.m4: Update.
3260         * gnulib/import/m4/time_h.m4: Update.
3261         * gnulib/import/m4/unistd-safer.m4: Update.
3262         * gnulib/import/m4/unistd_h.m4: Update.
3263         * gnulib/import/m4/warn-on-use.m4: Update.
3264         * gnulib/import/m4/wchar_h.m4: Update.
3265         * gnulib/import/m4/wchar_t.m4: Update.
3266         * gnulib/import/m4/wctype_h.m4: Update.
3267         * gnulib/import/m4/wint_t.m4: Update.
3268         * gnulib/import/malloc.c: Update.
3269         * gnulib/import/malloc/scratch_buffer.h: Update.
3270         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
3271         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
3272         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
3273         * gnulib/import/malloca.c: Update.
3274         * gnulib/import/malloca.h: Update.
3275         * gnulib/import/malloca.valgrind: Update.
3276         * gnulib/import/math.in.h: Update.
3277         * gnulib/import/mbrtowc.c: Update.
3278         * gnulib/import/mbsinit.c: Update.
3279         * gnulib/import/mbsrtowcs-impl.h: Update.
3280         * gnulib/import/mbsrtowcs-state.c: Update.
3281         * gnulib/import/mbsrtowcs.c: Update.
3282         * gnulib/import/memchr.c: Update.
3283         * gnulib/import/memmem.c: Update.
3284         * gnulib/import/mempcpy.c: Update.
3285         * gnulib/import/memrchr.c: Update.
3286         * gnulib/import/mkdir.c: Update.
3287         * gnulib/import/mkstemp.c: Update.
3288         * gnulib/import/msvc-inval.c: Update.
3289         * gnulib/import/msvc-inval.h: Update.
3290         * gnulib/import/msvc-nothrow.c: Update.
3291         * gnulib/import/msvc-nothrow.h: Update.
3292         * gnulib/import/open.c: Update.
3293         * gnulib/import/openat-die.c: Update.
3294         * gnulib/import/openat-priv.h: Update.
3295         * gnulib/import/openat-proc.c: Update.
3296         * gnulib/import/openat.c: Update.
3297         * gnulib/import/openat.h: Update.
3298         * gnulib/import/opendir.c: Update.
3299         * gnulib/import/pathmax.h: Update.
3300         * gnulib/import/pipe-safer.c: Update.
3301         * gnulib/import/rawmemchr.c: Update.
3302         * gnulib/import/readdir.c: Update.
3303         * gnulib/import/readlink.c: Update.
3304         * gnulib/import/realloc.c: Update.
3305         * gnulib/import/ref-add.sin: Update.
3306         * gnulib/import/ref-del.sin: Update.
3307         * gnulib/import/rename.c: Update.
3308         * gnulib/import/rewinddir.c: Update.
3309         * gnulib/import/rmdir.c: Update.
3310         * gnulib/import/same-inode.h: Update.
3311         * gnulib/import/save-cwd.c: Update.
3312         * gnulib/import/save-cwd.h: Update.
3313         * gnulib/import/scratch_buffer.h: Update.
3314         * gnulib/import/secure_getenv.c: Update.
3315         * gnulib/import/setenv.c: Update.
3316         * gnulib/import/signal.in.h: Update.
3317         * gnulib/import/stat-time.c: Update.
3318         * gnulib/import/stat-time.h: Update.
3319         * gnulib/import/stat-w32.c: Update.
3320         * gnulib/import/stat-w32.h: Update.
3321         * gnulib/import/stat.c: Update.
3322         * gnulib/import/stdbool.in.h: Update.
3323         * gnulib/import/stddef.in.h: Update.
3324         * gnulib/import/stdint.in.h: Update.
3325         * gnulib/import/stdio.in.h: Update.
3326         * gnulib/import/stdlib.in.h: Update.
3327         * gnulib/import/str-two-way.h: Update.
3328         * gnulib/import/strchrnul.c: Update.
3329         * gnulib/import/strdup.c: Update.
3330         * gnulib/import/streq.h: Update.
3331         * gnulib/import/strerror-override.c: Update.
3332         * gnulib/import/strerror-override.h: Update.
3333         * gnulib/import/strerror.c: Update.
3334         * gnulib/import/string.in.h: Update.
3335         * gnulib/import/stripslash.c: Update.
3336         * gnulib/import/strnlen1.c: Update.
3337         * gnulib/import/strnlen1.h: Update.
3338         * gnulib/import/strstr.c: Update.
3339         * gnulib/import/strtok_r.c: Update.
3340         * gnulib/import/sys_stat.in.h: Update.
3341         * gnulib/import/sys_time.in.h: Update.
3342         * gnulib/import/sys_types.in.h: Update.
3343         * gnulib/import/tempname.c: Update.
3344         * gnulib/import/tempname.h: Update.
3345         * gnulib/import/time.in.h: Update.
3346         * gnulib/import/unistd--.h: Update.
3347         * gnulib/import/unistd-safer.h: Update.
3348         * gnulib/import/unistd.in.h: Update.
3349         * gnulib/import/unsetenv.c: Update.
3350         * gnulib/import/verify.h: Update.
3351         * gnulib/import/extra/snippet/warn-on-use.h: Update.
3352         * gnulib/import/wchar.in.h: Update.
3353         * gnulib/import/wctype.in.h: Update.
3354         * gnulib/import/xalloc-oversized.h: Update.
3355         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
3356         "53e2c179f26a890fa6685af4b6c1397ee370433b".
3357
3358 2018-08-16  Gary Benson <gbenson@redhat.com>
3359
3360         PR gdb/13000:
3361         * gdb/main.c (captured_main_1): Exit with nonzero status
3362         in batch mode if the last command to be executed failed.
3363         * NEWS: Mention the above.
3364
3365 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
3366
3367         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
3368         end of warning message.
3369
3370 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3371
3372         PR gdb/22943:
3373         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
3374         (aarch64_extract_return_value): Use
3375         aapcs_is_vfp_call_or_return_candidate.
3376         (aarch64_return_in_memory): Likewise.
3377         (aarch64_store_return_value): Likewise.
3378
3379 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3380
3381         * aarch64-tdep.c
3382         (aapcs_is_vfp_call_or_return_candidate): Make static
3383         (pass_in_v_or_stack): Remove function.
3384         (pass_in_v_vfp_candidate): New function.
3385         (aarch64_push_dummy_call): Check for float register candidates.
3386
3387 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3388
3389         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
3390         (aapcs_is_vfp_call_or_return_candidate_1): New function.
3391         (aapcs_is_vfp_call_or_return_candidate): Likewise.
3392
3393 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
3394
3395         PR build/23399
3396         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
3397         (struct ipa_sym_addresses): Rename to...
3398         (struct ipa_sym_addresses_common): ... this.
3399         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
3400
3401 2018-08-28  Tom Tromey  <tom@tromey.com>
3402
3403         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3404         (token_fifo): Now a std::vector.
3405         (yylex, c_parse): Update.
3406         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3407         (token_fifo): Now a std::vector.
3408         (yylex, d_parse): Update.
3409         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3410         (token_fifo): Now a std::vector.
3411         (yylex, go_parse): Update.
3412
3413 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
3414
3415         * parser-defs.h (struct type_stack) <elements>: Change type to
3416         std::vector<union type_stack_elt>.
3417         <depth, size>: Remove.
3418         * parse.c (parse_exp_in_context_1): Adjust.
3419         (type_stack_reserve): Remove.
3420         (check_type_stack_depth): Remove.
3421         (insert_into_type_stack): Adjust to std::vector.
3422         (insert_type): Likewise.
3423         (push_type): Likewise.
3424         (push_type_int): Likewise.
3425         (insert_type_address_space): Likewise.
3426         (pop_type): Likewise.
3427         (pop_type_int): Likewise.
3428         (pop_typelist): Likewise.
3429         (pop_type_stack): Likewise.
3430         (append_type_stack): Likewise.
3431         (push_type_stack): Likewise.
3432         (get_type_stack): Likewise.
3433         (type_stack_cleanup): Likewise.
3434         (push_typelist): Likewise.
3435         (follow_types): Likewise.
3436         (_initialize_parse): Likewise.
3437
3438 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
3439
3440         * NEWS: Mention csky target.
3441
3442 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
3443             Hafiz Abid Qadeer  <abidh@codesourcery.com>
3444             Don Breazeal  <donb@codesourcery.com>
3445
3446         * csky-linux-tdep.c: New file.
3447         * csky-tdep.c: Likewise.
3448         * csky-tdep.h: Likewise.
3449         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
3450         csky-tdep.o.
3451         (HFILES_NO_SRCDIR): Add csky-tdep.h.
3452         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
3453         * configure.tgt: Add csky support.
3454
3455 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
3456
3457         * python/py-framefilter.c (py_print_frame): Print frame architecture
3458         when printing on an MI output.
3459
3460 2018-08-27  Tom Tromey  <tom@tromey.com>
3461
3462         PR build/23087:
3463         * configure: Rebuild.
3464         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
3465
3466 2018-08-27  Tom Tromey  <tom@tromey.com>
3467
3468         * aarch64-linux-tdep.c
3469         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
3470         casts to int.
3471
3472 2018-08-27  Tom Tromey  <tom@tromey.com>
3473
3474         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
3475         unsigned.
3476         (ppc64_standard_linkage1, ppc64_standard_linkage2)
3477         (ppc64_standard_linkage3, ppc64_standard_linkage4)
3478         (ppc64_standard_linkage5, ppc64_standard_linkage6)
3479         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
3480         unsigned.
3481
3482 2018-08-27  Tom Tromey  <tom@tromey.com>
3483
3484         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
3485         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
3486
3487 2018-08-27  Tom Tromey  <tom@tromey.com>
3488
3489         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
3490         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
3491         ULONGEST_MAX.
3492         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
3493         ULONGEST_MAX.
3494         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
3495         ULONGEST_MAX.
3496         * sparc-linux-tdep.c (sparc32_linux_sigframe)
3497         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
3498         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
3499         ULONGEST_MAX.
3500         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
3501         (ppc64_linux_sigaction_tramp_frame)
3502         (ppc32_linux_sighandler_tramp_frame)
3503         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
3504         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
3505         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
3506         * mn10300-linux-tdep.c (am33_linux_sigframe)
3507         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
3508         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
3509         * mips-linux-tdep.c (mips_linux_o32_sigframe)
3510         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
3511         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
3512         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
3513         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
3514         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
3515         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
3516         * microblaze-linux-tdep.c
3517         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
3518         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
3519         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
3520         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
3521         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
3522         * common/common-types.h (ULONGEST_MAX): New define.
3523         (CORE_ADDR_MAX): Fix formatting.
3524         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
3525         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
3526         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
3527         (arm_linux_rt_sigreturn_tramp_frame)
3528         (arm_eabi_linux_sigreturn_tramp_frame)
3529         (arm_eabi_linux_rt_sigreturn_tramp_frame)
3530         (thumb2_eabi_linux_sigreturn_tramp_frame)
3531         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
3532         (arm_linux_restart_syscall_tramp_frame)
3533         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
3534         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
3535         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
3536         ULONGEST_MAX.
3537         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
3538
3539 2018-08-27  Tom Tromey  <tom@tromey.com>
3540
3541         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
3542         CORE_ADDR_MAX.
3543         * mips-tdep.c (mips_deal_with_atomic_sequence)
3544         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
3545         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
3546         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
3547         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
3548         CORE_ADDR_MAX.
3549         * aarch64-tdep.c (aarch64_software_single_step): Use
3550         CORE_ADDR_MAX.
3551
3552 2018-08-27  Tom Tromey  <tom@tromey.com>
3553
3554         * linespec.c (complete_linespec_component): Add cast to "char".
3555         * completer.c (completion_tracker::build_completion_result): Add
3556         cast to "char".
3557
3558 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3559
3560         * solist.h (struct solist, struct target_so_ops): Fix
3561         indentation.
3562
3563 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3564
3565         * ada-tasks.c (ada_task_info_s): Remove typedef.
3566         (DEF_VEC_O(ada_task_info_s)): Remove.
3567         (struct ada_tasks_inferior_data): Initialize fields.
3568         <task_list>: Make an std::vector.
3569         (get_ada_tasks_inferior_data): Allocate with new.
3570         (ada_get_task_number): Adjust.
3571         (get_task_number_from_id): Likewise.
3572         (valid_task_id): Likewise.
3573         (ada_get_task_info_from_ptid): Likewise.
3574         (iterate_over_live_ada_tasks): Likewise.
3575         (add_ada_task): Likewise.
3576         (read_known_tasks): Likewise.
3577         (ada_build_task_list): Likewise.
3578         (print_ada_task_info): Likewise.
3579         (info_task): Likewise.
3580         (task_command_1): Likewise.
3581
3582 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3583
3584         * ada-lang.c (add_angle_brackets): Return std::string.
3585
3586 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
3587
3588         * python/py-threadevent.c (py_get_event_thread): Initialize
3589         pythread.
3590
3591 2018-08-24  Pedro Alves  <palves@redhat.com>
3592
3593         * python/py-bpevent.c (create_breakpoint_event_object): Use
3594         copy-initialization.
3595         * python/py-continueevent.c (emit_continue_event): Use
3596         copy-initialization.
3597         * python/py-exitedevent.c (create_exited_event_object): Return a
3598         gdbpy_ref<>.
3599         (emit_exited_event): Use copy-initialization.
3600         * python/py-inferior.c (python_new_inferior)
3601         (python_inferior_deleted, add_thread_object): Use
3602         copy-initialization.
3603         * python/py-infevents.c (create_inferior_call_event_object)
3604         (create_register_changed_event_object)
3605         (create_memory_changed_event_object): Return a gdbpy_ref<>.
3606         (emit_inferior_call_event, emit_memory_changed_event)
3607         (emit_register_changed_event): Use copy-initialization.
3608         * python/py-newobjfileevent.c (create_new_objfile_event_object):
3609         Return a gdbpy_ref<>.
3610         (emit_new_objfile_event): Use copy-initialization.
3611         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
3612         (emit_clear_objfiles_event): Use copy-initialization.
3613         * python/py-signalevent.c (create_signal_event_object): Use
3614         copy-initialization.
3615         * python/py-threadevent.c (create_thread_event_object): Use
3616         copy-initialization.
3617
3618 2018-08-24  Pedro Alves  <palves@redhat.com>
3619             Simon Marchi  <simon.marchi@ericsson.com>
3620
3621         PR gdb/23379
3622         * python/py-continueevent.c: Include "gdbthread.h".
3623         (create_continue_event_object): Add intro comment.  Add 'ptid'
3624         parameter.  Use it to find thread to pass to
3625         create_thread_event_object.
3626         (emit_continue_event): Pass PTID down to
3627         create_continue_event_object.
3628         * python/py-event.h (py_get_event_thread): Declare.
3629         (create_thread_event_object): Remove default from 'thread'
3630         parameter.
3631         * python/py-stopevent.c (create_stop_event_object): Use
3632         py_get_event_thread.
3633         * python/py-threadevent.c (get_event_thread): Rename to ...
3634         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
3635         and use it to find the thread.
3636         (create_thread_event_object): Assert that THREAD isn't null.
3637         Don't find the event thread here.
3638
3639 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
3640
3641         * block.h (blockrange, blockranges): New struct declarations.
3642         (struct block): Add new field named `ranges'.
3643         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
3644         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
3645         macros for accessing ranges in struct block.
3646         (make_blockranges): New declaration.
3647         block.c (make_blockranges): New function.
3648         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
3649         for block.
3650         * symtab.h (find_pc_partial_function): Add new parameter `block'.
3651         * blockframe.c (cache_pc_function_block): New static global.
3652         (clear_pc_function_cache): Clear cache_pc_function_block.
3653         (find_pc_partial_function): Move comment to symtab.h.  Add
3654         support for non-contiguous blocks.
3655         * cli/cli-cmds.c (block.h): Include.
3656         (print_disassembly): Handle printing of non-contiguous blocks.
3657         (disassemble_current_function): Likewise.
3658         (disassemble_command): Likewise.
3659
3660         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
3661         BLOCK_START.
3662         * blockframe.c (get_pc_function_start): Likewise.
3663         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
3664         (gcc_symbol_address): Likewise.
3665         * compile/compile-object-run.c (compile_object_run): Likewise.
3666         * compile/compile.c (get_expr_block_and_pc): Likewise.
3667         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
3668         (func_addr_to_tail_call_list): Likewise.
3669         * findvar.c (default_read_var_value): Likewise.
3670         * inline-frame.c (inline_frame_this_id): Likewise.
3671         (skip-inline_frames): Likewise.
3672         * infcmd.c (until_next_command): Likewise.
3673         * linespec.c (convert_linespec_to_sals): Likewise.
3674         * parse.c (parse_exp_in_context_1): Likewise.
3675         * printcmd.c (build_address_symbolic): likewise.
3676         (info_address_command): Likewise.
3677         symtab.c (find_function_start_sal): Likewise.
3678         (skip_prologue_sal): Likewise.
3679         (find_function_alias_target): Likewise.
3680         (find_gnu_ifunc): Likewise.
3681         * stack.c (find_frame_funname): Likewise.
3682         * symtab.c (fixup_symbol_section): Likewise.
3683         (find_function_start_sal): Likewise.
3684         (skip_prologue_sal): Likewsie.
3685         (find_function_alias_target): Likewise.
3686         (find_gnu_ifunc): Likewise.
3687         * tracepoint.c (info_scope_command): Likewise.
3688         * value.c (value_fn_field): Likewise.
3689
3690         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
3691         in place of find_pc_partial_function.
3692         * blockframe.c (find_function_entry_range_from_pc): New function.
3693         * symtab.h (find_function_entry_range_from_pc): Declare and document.
3694         * objfiles.c (objfile_relocate1): Relocate start and end addresses
3695         for each range in a block.
3696
3697
3698 2018-08-23  Xavier Roirand  <roirand@adacore.com>
3699
3700         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
3701         incrementation.
3702
3703 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3704
3705         * solib-svr4.c (read_program_headers_from_bfd): Return
3706         gdb::optional<gdb::byte_vector>.
3707         (svr4_exec_displacement): Adjust.
3708
3709 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3710
3711         * solib-svr4.c (read_program_header): Return
3712         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
3713         (find_program_interpreter): Return
3714         gdb::optional<gdb::byte_vector>.
3715         (scan_dyntag_auxv): Adjust.
3716         (enable_break): Adjust.
3717         (svr4_exec_displacement): Adjust.
3718
3719 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3720
3721         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
3722         * inf-child.c (inf_child_target::terminal_save_inferior): New.
3723
3724 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3725
3726         * guile/scm-string.c (gdbscm_scm_from_printf): Use
3727         string_vprintf.
3728         * guile/scm-utils.c (gdbscm_printf): Likewise.
3729         * serial.c (serial_printf): Likewise.
3730         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
3731
3732 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
3733
3734         * stack.c (print_frame): Print frame architecture when printing on
3735         an MI output.
3736         * NEWS: Mention new "arch" attribute in frame output.
3737
3738 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
3739
3740         * arch/aarch64.h (aarch64_regnum): Update comment.
3741
3742 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
3743
3744         * NEWS: Add SVE to 8.2 section.
3745
3746 2018-08-21  Pedro Alves  <palves@redhat.com>
3747
3748         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
3749         out from gdbscm_parse_function_args.
3750         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
3751         gdbscm_parse_function_args_1.
3752
3753 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
3754
3755         PR gdb/17816
3756         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
3757         operator.
3758
3759 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
3760
3761         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
3762
3763 2018-08-19  Michael Spang  <spang@google.com>
3764
3765         PR gdb/11786
3766         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
3767         for PT_TLS segments.
3768
3769 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
3770
3771         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
3772         dwarf_variable_value.
3773         * dwarf2-frame.c (class dwarf_expr_executor):
3774         Add override for dwarf_variable_value.
3775         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
3776         (class symbol_needs_eval_context): Likewise.
3777         (indirect_synthetic_pointer): Add forward declaration.
3778         (sect_variable_value): New function.
3779         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
3780         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
3781         for DW_OP_GNU_variable_value.
3782
3783 2018-08-16  Tom Tromey  <tom@tromey.com>
3784
3785         * top.c (read_command_file): Update.
3786         (command_line_input): Remove "repeat" argument.
3787         * ada-lang.c (get_selections): Update.
3788         * linespec.c (decode_line_2): Update.
3789         * defs.h (command_line_input): Remove argument.
3790         * cli/cli-script.c (read_next_line): Update.
3791         * python/py-gdb-readline.c: Update.
3792
3793 2018-08-17  Tom Tromey  <tom@tromey.com>
3794
3795         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
3796         command_line_input.
3797
3798 2018-08-15  Tom Tromey  <tom@tromey.com>
3799
3800         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
3801
3802 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
3803
3804         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
3805         If used, use find_pc_partial_function to find address range
3806         to disassemble.
3807         * mi/mi-main.c (mi_cmd_list_features): Report
3808         "data-disassemble-a-option" feature.
3809         * NEWS: Mention new -data-disassemble option -a.
3810
3811 2018-08-13  Tom Tromey  <tom@tromey.com>
3812
3813         * common/common-defs.h (_FORTIFY_SOURCE): Define.
3814
3815 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3816
3817         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
3818         (aarch64_linux_collect_sve_regset): Likewise.
3819         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
3820         * regcache.h (regcache_map_entry_size): New function.
3821
3822 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3823
3824         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
3825         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
3826         (SVE_HEADER_VL_LENGTH): Likewise.
3827         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
3828         (SVE_HEADER_FLAGS_LENGTH): Likewise.
3829         (SVE_HEADER_RESERVED_LENGTH): Likewise.
3830         (SVE_HEADER_SIZE_OFFSET): Likewise.
3831         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
3832         (SVE_HEADER_VL_OFFSET): Likewise.
3833         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
3834         (SVE_HEADER_FLAGS_OFFSET): Likewise.
3835         (SVE_HEADER_RESERVED_OFFSET): Likewise.
3836         (SVE_HEADER_SIZE): Likewise.
3837         (aarch64_linux_core_read_vq): Add function.
3838         (aarch64_linux_core_read_description): Check for SVE section.
3839
3840 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3841
3842         * aarch64-fbsd-tdep.c
3843         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
3844         collect_size.
3845         * aarch64-linux-tdep.c
3846         (aarch64_linux_iterate_over_regset_sections): Likewise.
3847         * alpha-linux-tdep.c
3848         (alpha_linux_iterate_over_regset_sections):
3849         * alpha-nbsd-tdep.c
3850         (alphanbsd_iterate_over_regset_sections): Likewise.
3851         * amd64-fbsd-tdep.c
3852         (amd64fbsd_iterate_over_regset_sections): Likewise.
3853         * amd64-linux-tdep.c
3854         (amd64_linux_iterate_over_regset_sections): Likewise.
3855         * arm-bsd-tdep.c
3856         (armbsd_iterate_over_regset_sections): Likewise.
3857         * arm-fbsd-tdep.c
3858         (arm_fbsd_iterate_over_regset_sections): Likewise.
3859         * arm-linux-tdep.c
3860         (arm_linux_iterate_over_regset_sections): Likewise.
3861         * corelow.c (get_core_registers_cb): Likewise.
3862         (core_target::fetch_registers): Likewise.
3863         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
3864         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
3865         * gdbarch.h (void): Regenerate.
3866         * gdbarch.sh: Add supply_size and collect_size.
3867         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
3868         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
3869         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
3870         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
3871         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
3872         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
3873         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
3874         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
3875         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
3876         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
3877         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
3878         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
3879         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
3880         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
3881         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections): Likewise.
3882         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
3883         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
3884         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
3885         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
3886         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
3887         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
3888         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections): Likewise.
3889         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
3890         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
3891         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
3892         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
3893         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
3894         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
3895         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
3896         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
3897
3898 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
3899
3900         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
3901         with string_printf.
3902
3903 2018-08-10  Keith Seitz  <keiths@redhat.com>
3904
3905         * compile/compile-c-support.c (add_code_header, add_code_footer):
3906         Move into policy class.
3907         (c_push_user_expression, pop_user_expression_nop)
3908         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
3909         (compile_program): New host class.
3910         (c_compile_program): New typedef.
3911         (c_compute_porgram): Use c_compile_program.
3912
3913 2018-08-10  Keith Seitz  <keiths@redhat.com>
3914
3915         * compile/compile-internal.h (compile_instance::~compile_instance):
3916         Remove calls to htab_delete.
3917         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
3918         * compile.c (compile_instance::compile_instance): Initialize
3919         htab unique pointers.
3920         (compile_instance::get_cached_type, compile_instance::insert_type)
3921         (compile_instance::error_symbol_once): Update for unique_ptr.
3922
3923 2018-08-10  Keith Seitz  <keiths@redhat.com>
3924
3925         * compile/compile-c-symbols.c (struct symbol_error)
3926         (hash_symbol_error, eq_symbol_error, del_symbol_error)
3927         (compile_instance::insert_symbol_error)
3928         (compile_instance::error_symbol_once): Move to ...
3929         * compile/compile.c: ... here.
3930
3931 2018-08-10  Keith Seitz  <keiths@redhat.com>
3932
3933         * compile/compile-c-support.c (c_get_compile_context): Use `new'
3934         instead of `new_compile_instance'.
3935         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
3936         Update description.
3937         If the symbol error map is not initialized, create it.
3938         (generate_c_for_for_one_symbol): Do not check/initialize
3939         the symbol error map.
3940         * compile/compile-c-types.c (compile_c_instance): Make a class.
3941         Update all callers.
3942         (compile_instance::compile_instance): Initialize the type cache.
3943         (get_cached_type): New function.
3944         (insert_type): Update description.
3945         (compile_c_instance::m_default_cflags): Define.
3946         (convert_type): Update description.  Use get_cached_type.
3947         (delete_instance): Moved to destructor.
3948         (new_compile_instance): Moved to constructor.
3949         * compile/compile-c.h (compile_c_instance): Make class inheriting
3950         from compile_instance.
3951         <base>: Remove field.
3952         <type_map, symbol_err_map>: Move to base class.
3953         <c_plugin>: Rename to `m_plugin' and remove pointer type.
3954         * compile/compile-internal.h (compile_instance): Make class.
3955         <type_map_t, symbol_err_map_t>: Define.
3956         <fe>: Rename to `m_gcc_fe'.
3957         <scope, block, gcc_target_options>: Add `m_' prefix.
3958         <m_type_map, m_symbol_err_map>: New fields, moved from
3959         compile_c_instance.
3960         <destroy>: Remove.
3961         (convert_type, new_compile_instance): Remove.
3962         * compile/compile.c (cleanup_compile_instance): Remove.
3963         (compile_to_object): Use unique_ptr to eliminate cleanups.
3964         (compile_instance::set_print_callback, compile_instance::version)
3965         (compile_instance::set_verbose)
3966         (compile_instance::set_driver_filename)
3967         (compile_instance::set_triplet_regexp)
3968         (compile_instance::set_arguments)
3969         (compile_instance::set_source_file)
3970         (compile_instance::compile): Define.
3971
3972 2018-08-10  Keith Seitz  <keiths@redhat.com>
3973
3974         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
3975         * compile/compile-c-types.c: Define GCC_METHODN macros and include
3976         gcc-c-fe.def to define C plugin.
3977         (delete_instance): Delete `c_plugin'.
3978         (new_compile_instance): Initialize `c_plugin'.
3979         * compile/compile-c.h: Include gcc_c_plugin.h.
3980         (struct compile_c_instance) <c_plugin>: New member.
3981         * gcc-c-plugin.h: New file.
3982         Update all callers with API change.
3983
3984 2018-08-10  Keith Seitz  <keiths@redhat.com>
3985
3986         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
3987         (HFILES_NO_SRCDIR): ... to here.
3988         Add compile-internal.h and compile-c.h.
3989         * compile/compile-c-support.c: Include compile-c.h.
3990         * compile/compile-c-symbols.c: Include compile-c.h.
3991         (generate_c_for_variable_locations): Update comment.
3992         * compile/compile-c-types.c: Include compile-c.h.
3993         * compile/compile-c.h: New file -- moved C language declarations
3994         from other files here.
3995         * compile/compile-internal.h: Do not include hashtab.h or
3996         common/enum-flags.h.
3997         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
3998         (gcc_convert_symbol, gcc_symbol_address)
3999         (generate_c_for_variable_locations, c_get_mode_for_size)
4000         (c_get_range_decl_name): Definitions moved to compile-c.h.
4001         * compile/compile-loc2c.c: Include compile-c.h.
4002
4003 2018-08-10  Keith Seitz  <keiths@redhat.com>
4004
4005         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
4006         (c_symbol_substitution_name): ... this.
4007         Update all callers.
4008
4009 2018-08-10  Keith Seitz  <keiths@redhat.com>
4010
4011         * compile/compile-c-support.c (c_compute_program): Use
4012         unique_xmalloc_ptr to eliminate cleanup.
4013         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
4014         Return a unique_xmalloc_ptr and eliminate cleanup.
4015         * compile/compile-internal.h (generate_c_for_variable_locations):
4016         Return unique_xmalloc_ptr and update description.
4017
4018 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
4019
4020         * corelow.c (core_target::get_core_register_section): Rename
4021         min_size to section_min_size.
4022
4023 2018-08-09  Jim Wilson  <jimw@sifive.com>
4024
4025         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
4026         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
4027         * NEWS: Mention new GNU/Linux RISC-V target.
4028         * configure.host: Add riscv*-*-linux*.
4029         * configure.nat: Add riscv*.
4030         * configure.tgt: Add riscv*-*-linux*.
4031         * riscv-linux-nat.c: New file.
4032         * riscv-linux-tdep.c: New file.
4033
4034 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4035
4036         * infrun.c (resume): Make static, add forward declaration.
4037         (proceed): Update header comment.
4038         * infrun.h (resume): Delete declaration.
4039
4040 2018-08-09  Tom Tromey  <tom@tromey.com>
4041
4042         * riscv-tdep.h: Minor formatting fixes.
4043
4044 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
4045
4046         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
4047         * dwarf-index-cache.c (create_dir_and_check): Likewise.
4048         (test_mkdir_recursive): Likewise.
4049         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
4050
4051 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4052
4053         * valarith.c (value_subscripted_rvalue): If an array is not in
4054         memory, and we don't know the upper bound, then we can't know that
4055         the requested element exists or not.
4056
4057 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
4058
4059         * target.c (str_comma_list_concat_elem): Fix typo in comment.
4060         (target_options_to_string): Add comment.
4061
4062 2018-08-08  Tom Tromey  <tom@tromey.com>
4063
4064         * unittests/scoped_mmap-selftests.c: Check result of "write".
4065
4066 2018-08-08  Jim Wilson  <jimw@sifive.com>
4067
4068         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
4069         (decode_register_index_short): New.
4070         (decode_j_type_insn, decode_cj_type_insn): New.
4071         (decode_b_type_insn, decode_cb_type_insn): New.
4072         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
4073         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
4074         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
4075         is_c_sw_insn instead of is_sw_insn.
4076         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
4077         (riscv_software_single_step): New.
4078         * riscv-tdep.h (riscv_software_single_step): Declare.
4079
4080         * riscv-tdep.c (riscv_isa_xlen): Drop static.
4081         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
4082
4083 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
4084
4085         PR gdb/18050:
4086         * target.c (dispose_inferior): Don't dispose of inferiors that are
4087         already killed.
4088
4089 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
4090
4091         * remote.c (remote_target::download_tracepoint): Change char* to
4092         const char*.
4093
4094 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
4095
4096         * target.h (target_options_to_string): Return an std::string.
4097         * target.c (str_comma_list_concat_elem): Return void, use
4098         std::string.
4099         (do_option): Likewise.
4100         (target_options_to_string): Return an std::string.
4101         * linux-nat.c (linux_nat_target::wait): Adjust.
4102         * target-debug.h (target_debug_print_options): Adjust.
4103
4104 2018-08-07  Tom Tromey  <tom@tromey.com>
4105
4106         * Makefile.in (CPPFLAGS): New variable.
4107         (INTERNAL_CPPFLAGS): Use it.
4108
4109 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4110
4111         * NEWS: Mention the index cache.
4112
4113 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4114
4115         * common/pathstuff.h (get_standard_cache_dir): New.
4116         * common/pathstuff.c (get_standard_cache_dir): New.
4117         * build-id.h (build_id_to_string): New.
4118         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
4119         DEBUG_STR_SUFFIX): Move to here.
4120         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
4121         DEBUG_STR_SUFFIX): Move from there.
4122         (write_psymtabs_to_index): Make non-static, add basename
4123         parameter.  Write to temporary files, rename when done.
4124         (save_gdb_index_command): Adjust call to
4125         write_psymtabs_to_index.
4126         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
4127         field.
4128         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
4129         (get_gdb_index_contents_from_cache): New.
4130         (get_gdb_index_contents_from_cache_dwz): New.
4131         (dwarf2_initialize_objfile): Read index from cache.
4132         (dwarf2_build_psymtabs): Save to index.
4133         * dwarf-index-cache.h: New file.
4134         * dwarf-index-cache.c: New file.
4135         * dwarf-index-write.h: New file.
4136
4137 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4138
4139         * gnulib/aclocal.m4: Re-generate.
4140         * gnulib/config.in: Re-generate.
4141         * gnulib/configure: Re-generate.
4142         * gnulib/import/Makefile.am: Re-generate.
4143         * gnulib/import/Makefile.in: Re-generate.
4144         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
4145         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
4146         * gnulib/import/m4/mkdir.m4: New file.
4147         * gnulib/import/mkdir.c: New file.
4148         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
4149         module.
4150
4151 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4152
4153         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
4154         * common/scoped_mmap.c: New file.
4155         * common/scoped_mmap.h (destroy): New method.
4156         (~scoped_mmap, reset): Use destroy.
4157         (scoped_mmap): New move constructor.
4158         (mmap_file): New declaration.
4159         * unittests/scoped_mmap-selftests.c (test_normal,
4160         test_invalid_filename, run_tests): New functions.
4161         (_initialize_scoped_mmap_selftests): Register selftest.
4162
4163 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4164
4165         * dwarf2read.c (read_gdb_index_from_section): Rename to...
4166         (read_gdb_index_from_buffer): ... this.  Remove section
4167         parameter, add buffer parameter.
4168         (get_gdb_index_contents_ftype,
4169         get_gdb_index_contents_dwz_ftype): New typedefs.
4170         (dwarf2_read_gdb_index): Add callback parameters to get the
4171         index contents.
4172         (get_gdb_index_contents_from_section): New.
4173         (dwarf2_initialize_objfile): Update call to
4174         dwarf2_read_gdb_index.
4175
4176 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4177
4178         * common/filestuff.h (gdb_fopen_cloexec): New overload.
4179         (gdb_open_cloexec): Likewise.
4180         * nat/linux-osdata.c (command_from_pid): Use string_printf.
4181         (commandline_from_pid): Likewise.
4182         (linux_xfer_osdata_threads): Likewise.
4183         (linux_xfer_osdata_fds): Likewise.
4184         * ada-lang.c (is_package_name): Likewise.
4185         * auxv.c (procfs_xfer_auxv): Likewise.
4186         * breakpoint.c (print_one_breakpoint_location): Use
4187         uiout::field_fmt.
4188         (print_one_catch_solib): Use string_printf.
4189         * coff-pe-read.c (add_pe_exported_sym): Likewise.
4190         (add_pe_forwarded_sym): Likewise.
4191         * dwarf2read.c (create_type_unit_group): Likewise.
4192         (build_error_marker_type): Likewise.
4193         * infcall.c (get_function_name): Likewise.
4194         * valprint.c (print_converted_chars_to_obstack): Likewise.
4195         * xtensa-tdep.c (xtensa_register_type): Likewise.
4196
4197 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
4198
4199         * remote.c (remote_target::download_tracepoint): Fix format
4200         string errors.
4201
4202 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4203
4204         * tracefile.c: Include common/byte-vector.h.
4205         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
4206         with trace_regblock_size if needed.  Update uses of buf.
4207
4208 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4209
4210         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
4211         std::vector<unsigned char>.
4212         * tracepoint.c (collection_list::collection_list): Remove
4213         m_regs_mask initializer from initializer list.  Resize
4214         m_regs_mask using the largest remote register number.
4215         (collection_list::add_remote_register): Remove size check on
4216         m_regs_mask.  Use at to access element.
4217         (collection_list::stringify): Change type of temp_buf to
4218         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
4219         stringify the register mask.  Use pack_hex_byte for the register
4220         mask.
4221
4222 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4223
4224         * tracepoint.h (class collection_list) <add_register>: Remove.
4225         <add_remote_register, add_ax_registers, add_local_register>:
4226         Declare.
4227         <add_memrange>: Add scope parameter.
4228         * tracepoint.c (encode_actions_1): Likewise.
4229         (collection_list::add_register): Rename to ...
4230         (collection_list::add_remote_register): ... this.  Update
4231         comment.
4232         (collection_list::add_ax_registers, add_local_register): New
4233         methods.
4234         (collection_list::add_memrange): Add scope parameter.  Call
4235         add_local_register instead of add_register.
4236         (finalize_tracepoint_aexpr): New function.
4237         (collection_list::collect_symbol): Update calls to add_memrange.
4238         Call add_local_register instead of add_register.  Call
4239         add_ax_registers.  Call finalize_tracepoint_aexpr.
4240         (encode_actions_1): Get remote regnos for $reg action.  Call
4241         add_remote_register, add_ax_registers, and add_local_register.
4242         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
4243         (validate_actionline): Call finalize_tracepoint_aexpr.
4244
4245 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4246
4247         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
4248         Replace array buf with gdb::char_vector buf, of size
4249         get_remote_packet_size ().  Replace references to buf and
4250         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
4251         and xsnprintf with snprintf.  Raise errors if the buffer is too
4252         small.
4253
4254 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4255
4256         * remote.c (remote_target::download_tracepoint): Fix the has_more
4257         predicate in the QTDP action list iteration.
4258
4259 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4260
4261         * remote.c (remote_target::download_tracepoint): Fix indentation
4262         in for block.
4263
4264 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4265
4266         * proc-api.c (_initialize_proc_api): Remove c, unused.
4267         * procfs.c (procfs_init_inferior): Remove signals, unused.
4268         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
4269         unused.
4270
4271 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
4272             Andrew Burgess  <andrew.burgess@embecosm.com>
4273
4274         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
4275         'W_STOPCODE (0)' as this could be ambiguous.
4276
4277 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
4278
4279         * ser-tcp.c (net_open): Fix thinko when deciding whether to
4280         disable TCP's Nagle algorithm (use "ai_protocol" instead of
4281         "ai_socktype").
4282
4283 2018-08-02  Tom Tromey  <tom@tromey.com>
4284
4285         PR symtab/16842.
4286         * dwarf2read.c (read_func_scope): Set symtab on template parameter
4287         symbols.
4288         (process_structure_scope): Likewise.
4289
4290 2018-08-02  Xavier Roirand  <roirand@adacore.com>
4291
4292         PR gdb/22629:
4293         * darwin-nat.c (darwin_kill_inferior): Fix handling of
4294         kill inferior.
4295
4296 2018-08-02  Tom Tromey  <tom@tromey.com>
4297
4298         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
4299         (darwin_suspend_inferior, darwin_resume_inferior)
4300         (darwin_decode_notify_message, darwin_resume_inferior_threads)
4301         (darwin_check_new_threads): Check result of get_darwin_inferior.
4302
4303 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
4304
4305         GDB 8.1.1 released.
4306
4307 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
4308
4309         * varobj.c (varobj_get_path_expr_parent): Report an error if
4310         parent is a dynamic varobj.
4311
4312 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
4313
4314         * gnulib/aclocal.m4: Re-generate.
4315         * gnulib/config.in: Re-generate.
4316         * gnulib/configure: Re-generate.
4317         * gnulib/import/Makefile.in: Re-generate.
4318         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
4319         * gnulib/import/m4/onceonly.m4: Re-generate.
4320
4321 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
4322
4323         * target-descriptions.c (struct xml_test_tdesc): New.
4324         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
4325         (record_xml_tdesc): Update.
4326         (maintenance_check_xml_descriptions): Update.
4327         * target-descriptions.h (record_xml_tdesc): Update comment.
4328
4329 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
4330
4331         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
4332         checking array bounds are defined.
4333
4334 2018-07-30  Tom Tromey  <tom@tromey.com>
4335
4336         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
4337         irreflexivity violation.
4338
4339 2018-07-30  Tom Tromey  <tom@tromey.com>
4340
4341         * cli/cli-decode.c (lookup_cmd): Remove lint code.
4342         * value.c (unpack_long): Remove lint code.
4343         * valops.c (value_ind): Remove lint code.
4344         * valarith.c (value_x_binop, value_x_unop, value_equal)
4345         (value_pos): Remove lint code.
4346
4347 2018-07-28  Tom de Vries  <tdevries@suse.de>
4348
4349         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
4350         with undefined upper bound as <optimized out>.
4351
4352 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
4353
4354         * gcore.in: Rename variable "name" to "prefix".  Expand
4355         "usage" text.
4356
4357 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
4358
4359         * windows-nat.c (windows_nat_target::create_inferior): Update to
4360         call close() in global namespace.
4361
4362 2018-07-26  Tom Tromey  <tom@tromey.com>
4363
4364         * dwarf-index-write.c (add_address_entry): Don't add objfile
4365         offsets.
4366         * dbxread.c (find_stab_function): Rename from
4367         find_stab_function_addr.  Return a bound_minimal_symbol.
4368         (read_dbx_symtab): Use raw_text_low, raw_text_high.
4369         Don't add objfile offsets.
4370         (end_psymtab): Use raw_text_low, raw_text_high,
4371         MSYMBOL_VALUE_RAW_ADDRESS.
4372         (read_ofile_symtab): Update.
4373         (process_one_symbol): Update.
4374         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
4375         offsets.
4376         (dw2_relocate): Remove.
4377         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
4378         searching addrmap.
4379         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
4380         Update.
4381         (process_psymtab_comp_unit_reader, add_partial_symbol)
4382         (add_partial_subprogram, dwarf2_ranges_read): Update.
4383         (load_partial_dies): Update.
4384         (add_address_entry): Don't add objfile offsets.
4385         (dwarf2_build_include_psymtabs): Update.
4386         (create_addrmap_from_aranges): Don't add objfile offsets.
4387         (dw2_find_pc_sect_compunit_symtab): Update.
4388         * mdebugread.c (parse_symbol): Don't add objfile offsets.
4389         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
4390         Update.
4391         (parse_partial_symbols): Don't add objfile offsets.  Use
4392         raw_text_low, raw_text_high.  Update.
4393         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
4394         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
4395         or call 'relocate' quick function.  Clear psymbol_map.
4396         * psympriv.h (struct partial_symbol) <address>: Add section
4397         offset.
4398         <set_unrelocated_address>: Rename from set_address.
4399         <raw_text_low, raw_text_high>: New methods.
4400         <text_low, text_high>: Add objfile parameter.
4401         (add_psymbol_to_bcache): Add 'section' parameter.  Call
4402         set_unrelocated_address.
4403         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4404         (find_pc_psymbol): Update.
4405         (fixup_psymbol_section, relocate_psymtabs): Remove.
4406         (dump_psymtab, psym_functions): Update.
4407         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
4408         parameter.
4409         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
4410         (start_psymtab_common): Update.
4411         * symfile-debug.c (debug_qf_relocate): Remove.
4412         (debug_sym_quick_functions): Update.
4413         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
4414         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
4415         Update.
4416
4417 2018-07-26  Tom Tromey  <tromey@redhat.com>
4418
4419         * dbxread.c (end_psymtab): Use text_high_valid and
4420         text_low_valid.
4421         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
4422         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
4423         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
4424         Update comment.
4425         <text_low_valid, text_high_valid>: New fields.
4426         <set_text_low, set_text_high>: Update.
4427         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
4428
4429 2018-07-26  Tom Tromey  <tom@tromey.com>
4430
4431         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
4432         Update.
4433         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
4434         textlow and texthigh fields.
4435         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
4436         Update.
4437         * mdebugread.c (parse_lines, parse_partial_symbols)
4438         (psymtab_to_symtab_1): Update.
4439         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
4440         Rename fields.  Update comment.  Now private.
4441         <text_low, text_high, set_text_low, set_text_high>: New methods.
4442         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4443         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
4444         (start_psymtab_common, maintenance_info_psymtabs)
4445         (maintenance_check_psymtabs): Update.
4446         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
4447         texthigh fields.
4448         (scan_xcoff_symtab): Update.
4449
4450 2018-07-26  Tom Tromey  <tromey@redhat.com>
4451
4452         * psympriv.h (struct partial_symbol) <unrelocated_address,
4453         address, set_address>: New methods.
4454         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
4455         (fixup_psymbol_section, relocate_psymtabs): Update.
4456         (print_partial_symbols): Add 'objfile' parameter.  Update.
4457         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
4458         Update.
4459
4460 2018-07-26  Tom Tromey  <tom@tromey.com>
4461
4462         * dwarf-index-write.c (write_psymbols, debug_names::insert)
4463         (debug_names::write_psymbols): Update.
4464         * psympriv.h (struct partial_symbol): Derive from
4465         general_symbol_info.
4466         <obj_section>: New method.
4467         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
4468         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4469         (find_pc_sect_psymbol, fixup_psymbol_section)
4470         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
4471         (print_partial_symbols, recursively_search_psymtabs)
4472         (compare_psymbols, psymbol_hash, psymbol_compare)
4473         (add_psymbol_to_bcache, maintenance_check_psymtabs)
4474         (psymbol_name_matches, psym_fill_psymbol_map): Update.
4475
4476 2018-07-26  Tom Tromey  <tromey@redhat.com>
4477
4478         * dbxread.c (end_psymtab): Remove dead code.
4479
4480 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
4481
4482         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
4483         DWARF unwinders are disabled.
4484         * dwarf2-frame.c: Add dwarf2read.h include.
4485         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
4486         disabled.
4487         (dwarf2_frame_unwinders_enabled_p): Define.
4488         (show_dwarf_unwinders_enabled_p): New function.
4489         (_initialize_dwarf2_frame): Register switch to control DWARF
4490         unwinder use.
4491         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
4492         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
4493         (show_dwarf_cmdlist): Remove static keyword.
4494         * dwarf2read.h (set_dwarf_cmdlist): Declare.
4495         (show_dwarf_cmdlist): Declare.
4496         * NEWS: Document new feature.
4497
4498 2018-07-26  Tom de Vries  <tdevries@suse.de>
4499
4500         PR breakpoints/23366
4501         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
4502
4503 2018-07-26  Tom de Vries  <tdevries@suse.de>
4504
4505         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
4506         DW_AT_count can't be translated to a dynamic prop.
4507
4508 2018-07-25  Tom de Vries  <tdevries@suse.de>
4509
4510         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
4511         try/catch.
4512
4513 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
4514
4515         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
4516
4517 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
4518
4519         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
4520
4521 2018-07-24  Keith Seitz  <keiths@redhat.comt
4522
4523         PR symtab/23010
4524         * dwarf2read.c (dw2_add_symbol_to_list): New function.
4525         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
4526         instead of add_symbol_to_list.
4527         (read_file_scope): Call prepare_one_comp_unit before reading
4528         any other DIEs.
4529
4530 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
4531
4532         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
4533
4534 2018-07-24  Tom Tromey  <tom@tromey.com>
4535
4536         * utils.c (malloc, realloc, free): Don't declare.
4537         * configure, config.in: Rebuild.
4538         * configure.ac: Don't check for declarations of free, malloc, or
4539         realloc.
4540
4541 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
4542
4543         * aarch64-linux-nat.c
4544         (aarch64_linux_nat_target::stopped_data_address): Remove unused
4545         variable.
4546         * arm-linux-nat.c (fetch_regs): Likewise.
4547         (store_regs): Likewise.
4548         (fetch_vfp_regs): Likewise.
4549         (store_vfp_regs): Likewise.
4550         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
4551         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
4552         (arm_linux_nat_target::insert_watchpoint): Likewise.
4553         (arm_linux_nat_target::remove_watchpoint): Likewise.
4554         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
4555         Likewise.
4556         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
4557         Likewise.
4558         * ppc-linux-nat.c (fetch_register): Likewise.
4559         (fetch_all_gp_regs): Likewise.
4560         (fetch_ppc_registers): Likewise.
4561         (store_all_gp_regs): Likewise.
4562         (store_ppc_registers): Likewise.
4563         (hwdebug_insert_point): Likewise.
4564         (can_use_watchpoint_cond_accel): Likewise.
4565         * remote-sim.c (gdb_os_write_stdout): Likewise.
4566
4567 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
4568             Tom Tromey  <tom@tromey.com>
4569
4570         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
4571         test for it.
4572         * configure: Rebuild.
4573
4574 2018-07-22  Tom Tromey  <tom@tromey.com>
4575
4576         * regformats/regdat.sh: Define xmltarget_${name} inside
4577         #ifndef IN_PROCESS_AGENT.
4578
4579 2018-07-22  Tom Tromey  <tom@tromey.com>
4580
4581         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
4582
4583 2018-07-22  Tom Tromey  <tom@tromey.com>
4584
4585         * symfile.c (reread_symbols): Notify iter, not objfile.
4586
4587 2018-07-22  Tom Tromey  <tom@tromey.com>
4588
4589         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
4590         Use arch_ops.
4591         (ravenscar_thread_target::prepare_to_store): Likewise.
4592
4593 2018-07-22  Tom Tromey  <tom@tromey.com>
4594
4595         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
4596         unused variable.  Call value_fetch_lazy when needed.
4597         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
4598         Remove unused variable.  Call value_fetch_lazy when needed.
4599
4600 2018-07-22  Tom Tromey  <tom@tromey.com>
4601
4602         * m32c-tdep.c (mark_dma): Return void.
4603         (make_regs): Remove unused declarations.
4604
4605 2018-07-22  Tom Tromey  <tom@tromey.com>
4606
4607         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
4608         cmdscm_get_valid_command_smob_arg_unsafe for effect.
4609         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
4610         bkscm_get_valid_block_smob_arg_unsafe for effect.
4611
4612 2018-07-22  Tom Tromey  <tom@tromey.com>
4613
4614         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
4615         value_type.
4616
4617 2018-07-22  Tom Tromey  <tom@tromey.com>
4618
4619         * windows-nat.c (saved_context): Conditionally define.
4620         * remote.c (remote_target::remote_btrace_maybe_reopen):
4621         Conditionally declare "warned".
4622         * inflow.c (sigquit_ours): Conditionally define.
4623         (new_tty): Move "tty" declaration inside #if.
4624         * guile/guile.c (guile_datadir): Conditionally define.
4625         * charset.c (set_be_le_names): Move some declarations inside #if.
4626         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
4627         #if.
4628         (parse_xml_btrace_conf): Likewise.
4629
4630 2018-07-22  Tom Tromey  <tom@tromey.com>
4631
4632         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
4633
4634 2018-07-22  Tom Tromey  <tom@tromey.com>
4635
4636         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
4637         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
4638         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
4639         * buildsym-legacy.c (get_macro_table): Remove unused variable.
4640         * stack.c (frame_apply_level_command): Remove unused variable.
4641         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
4642         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
4643         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
4644         unused variable.
4645         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
4646         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
4647         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
4648         variable.
4649         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
4650         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
4651         variable.
4652         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
4653         Remove unused variable.
4654         * cli/cli-script.c (recurse_read_control_structure): Remove unused
4655         variable.
4656         * common/tdesc.c (print_xml_feature::visit): Remove unused
4657         variable.
4658         * compile/compile-object-load.c (store_regs): Remove unused
4659         variables.
4660         * complaints.c (clear_complaints): Remove unused variable.
4661         * corelow.c (core_target_open): Remove unused variable.
4662         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
4663         variable.
4664         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
4665         variable.
4666         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
4667         variable.
4668         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
4669         variable.
4670         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
4671         variable.
4672         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
4673         variable.
4674         * ia64-tdep.c (examine_prologue): Remove unused variable.
4675         * infcall.c (run_inferior_call): Remove unused variable.
4676         * inferior.c (exit_inferior): Remove unused variable.
4677         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
4678         * linespec.c (decode_line_2): Remove unused variable.
4679         * linux-nat.c (super_close): Remove.
4680         * linux-tdep.c (linux_info_proc): Remove unused variable.
4681         * mi/mi-main.c (mi_execute_command): Remove unused variable.
4682         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
4683         Remove unused variable.
4684         * parse.c (find_minsym_type_and_address): Remove unused variable.
4685         * printcmd.c (info_symbol_command, printf_floating): Remove unused
4686         variable.
4687         * python/py-breakpoint.c (bppy_set_commands): Remove unused
4688         variable.
4689         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
4690         variables.
4691         * record-btrace.c (record_btrace_target::store_registers): Remove
4692         unused variable.
4693         (cmd_show_record_btrace_cpu): Remove unused variable.
4694         * riscv-tdep.c (riscv_register_reggroup_p)
4695         (riscv_push_dummy_call, riscv_return_value): Remove unused
4696         variable.
4697         * rust-exp.y (literal): Remove unused variable.
4698         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
4699         unused variable.
4700         <STRUCTOP_ANONYMOUS>: Likewise.
4701         * s390-linux-tdep.c (s390_linux_init_abi_31)
4702         (s390_linux_init_abi_64): Remove unused variable.
4703         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
4704         (file_select_thread, net_windows_open, _initialize_ser_windows):
4705         Remove unused variables.
4706         * symtab.c (find_pc_sect_line): Remove unused variable.
4707         * target-memory.c (compute_garbled_blocks): Remove unused
4708         variable.
4709         (target_write_memory_blocks): Remove unused variable.
4710         * target.c (target_stack::unpush): Remove unused variables.
4711         * tracepoint.c (start_tracing, all_tracepoint_actions)
4712         (merge_uploaded_trace_state_variables)
4713         (print_one_static_tracepoint_marker): Remove unused variable.
4714         * unittests/basic_string_view/element_access/char/1.cc (test01):
4715         Remove unused variable.
4716         * windows-nat.c (windows_continue, windows_add_all_dlls)
4717         (do_initial_windows_stuff, windows_nat_target::create_inferior):
4718         Remove unused variables.
4719
4720 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
4721
4722         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
4723         attr_profile in HAVE_ELF.
4724         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
4725         HAVE_ELF.
4726
4727 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
4728
4729         * frame.c (frame_register_unwind): Change parameter name.
4730         (frame_unwind_register): Likewise.
4731         (frame_unwind_register_value): Likewise.
4732         (frame_unwind_register_signed): Likewise.
4733         (frame_unwind_register_unsigned): Likewise.
4734         * frame.h (frame_register_unwind): Likewise.
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_unwind_arch): Likewise.
4740
4741 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
4742
4743         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
4744         ISA maintenance.
4745
4746 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
4747
4748         * mips-linux-nat.c (mips_linux_nat_target::read_description):
4749         Call `get_ptrace_pid' rather than extracting the ptrace PID by
4750         hand.
4751
4752 2018-07-20  Keith Seitz  <keiths@redhat.com>
4753
4754         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
4755         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
4756         m_compunit_symtab, m_language>: Add "m_" prefix.
4757         Update all uses.
4758         * buildsym.c: Update all uses.
4759
4760 2018-07-20  Tom Tromey  <tom@tromey.com>
4761
4762         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
4763         * buildsym.h (record_line_ftype): Remove typedef.
4764
4765 2018-07-20  Tom Tromey  <tom@tromey.com>
4766
4767         * buildsym-legacy.h (augment_type_symtab): Don't declare.
4768         (end_expandable_symtab): Likewise.
4769         (end_symtab_get_static_block): Likewise.
4770         (end_symtab_from_static_block): Likewise.
4771         * buildsym-legacy.c (augment_type_symtab): Remove.
4772         (end_expandable_symtab): Remove.
4773         (end_symtab_get_static_block): Remove.
4774         (end_symtab_from_static_block): Remove.
4775
4776 2018-07-20  Tom Tromey  <tom@tromey.com>
4777
4778         * dwarf2read.c: Include buildsym.h.
4779         (struct dwarf2_cu) <builder>: New method.
4780         (fixup_go_packaging): Update.
4781         (process_full_comp_unit, process_full_type_unit): Update.  Don't
4782         use scoped_free_pendings.
4783         (using_directives): Add "cu" parameter, remove "language".
4784         (read_import_statement, setup_type_unit_groups, )
4785         (read_func_scope, read_lexical_block_scope)
4786         (dwarf2_record_block_ranges, read_namespace): Update.
4787         (lnp_state_machine::lnp_state_machine): Add cu parameter.
4788         (lnp_state_machine::handle_end_sequence): Update.
4789         (class lnp_state_machine) <m_cu>: New member.
4790         <m_record_line_callback>: Remove.
4791         <m_currently_recording_lines>: New member.
4792         (lnp_state_machine::handle_set_file): Update.
4793         (noop_record_line): Remove.
4794         (dwarf_record_line_p): Add cu parameter.
4795         (dwarf_record_line_1, dwarf_finish_line): Likewise.
4796         (lnp_state_machine::record_line)
4797         (lnp_state_machine::lnp_state_machine)
4798         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
4799         (dwarf_decode_lines): Update.
4800         (dwarf2_start_subfile): Add cu parameter.
4801         (dwarf2_start_symtab, new_symbol): Update.
4802         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
4803         Remove dwarf2_per_objfile parameter.
4804         (dwarf_decode_macros): Update.
4805
4806 2018-07-20  Tom Tromey  <tom@tromey.com>
4807
4808         * stabsread.c (define_symbol): Update.
4809         * buildsym-legacy.h (get_buildsym_compunit): Declare.
4810         * dwarf2read.c (new_symbol): Update.
4811         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
4812         * cp-namespace.c: Include buildsym.h.
4813         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
4814         * buildsym-legacy.c (get_buildsym_compunit): New function.
4815
4816 2018-07-20  Tom Tromey  <tom@tromey.com>
4817
4818         * xcoffread.c: Include buildsym-legacy.h.
4819         * windows-nat.c: Include buildsym-legacy.h.
4820         * stabsread.c: Include buildsym-legacy.h.
4821         * mdebugread.c: Include buildsym-legacy.h.
4822         * buildsym-legacy.h: New file.
4823         * buildsym-legacy.c: New file, from buildsym.c.
4824         * go32-nat.c: Include buildsym-legacy.h.
4825         * dwarf2read.c: Include buildsym-legacy.h.
4826         * dbxread.c: Include buildsym-legacy.h.
4827         * cp-namespace.c: Include buildsym-legacy.h.
4828         * coffread.c: Include buildsym-legacy.h.
4829         * buildsym.h: Move some contents to buildsym-legacy.h.
4830         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
4831         buildsym-legacy.c.
4832         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
4833
4834 2018-07-20  Tom Tromey  <tom@tromey.com>
4835
4836         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
4837         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
4838         (buildsym_compunit::buildsym_compunit)
4839         (buildsym_compunit::~buildsym_compunit)
4840         (buildsym_compunit::get_macro_table): Define.
4841
4842 2018-07-20  Tom Tromey  <tom@tromey.com>
4843
4844         * buildsym.c (reset_symtab_globals): Remove.
4845         (buildsym_compunit::end_symtab_from_static_block): Update.
4846         (buildsym_compunit::augment_type_symtab): Update.
4847         (end_symtab_from_static_block): Call free_buildsym_compunit.
4848         (augment_type_symtab, end_symtab, end_expandable_symtab):
4849         Likewise.
4850
4851 2018-07-20  Tom Tromey  <tom@tromey.com>
4852
4853         * arch-utils.c: Do not include buildsym.h.
4854         * mipsread.c: Do not include buildsym.h.
4855         * machoread.c: Do not include buildsym.h.
4856         * elfread.c: Do not include buildsym.h.
4857
4858 2018-07-20  Tom Tromey  <tom@tromey.com>
4859
4860         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
4861         initialization.
4862         (buildsym_compunit): Add new constructor.
4863         (struct buildsym_compunit) <get_last_source_file, finish_block,
4864         record_block_range, start_subfile, patch_subfile_names,
4865         push_subfile, pop_subfile, record_line, get_compunit_symtab,
4866         set_last_source_start_addr, get_last_source_start_addr,
4867         get_local_using_directives, set_local_using_directives,
4868         get_global_using_directives, outermost_context_p,
4869         get_current_context_stack, get_context_stack_depth,
4870         get_current_subfile, get_local_symbols, get_file_symbols,
4871         get_global_symbols, record_debugformat, record_producer,
4872         push_context, pop_context, end_symtab_get_static_block,
4873         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
4874         New public methods.
4875         <record_pending_block, finish_block_internal, make_blockvector,
4876         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
4877         private methods.
4878         Update all users.
4879
4880 2018-05-22  Tom Tromey  <tom@tromey.com>
4881
4882         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
4883         parameter.
4884         (finish_block_internal): Update.
4885
4886 2018-07-20  Tom Tromey  <tom@tromey.com>
4887
4888         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
4889         parameter.
4890         (finish_block_internal): Update.
4891
4892 2018-07-20  Tom Tromey  <tom@tromey.com>
4893
4894         * buildsym.h (EXTERN): Don't define or undef.
4895         * buildsym.c (EXTERN): Don't define.
4896
4897 2018-07-20  Tom Tromey  <tom@tromey.com>
4898
4899         * buildsym.c: Remove TODO comment.
4900
4901 2018-07-20  Tom Tromey  <tom@tromey.com>
4902
4903         * coffread.c (coff_symtab_read): Update.
4904         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
4905         (xcoff_new_init): Update.
4906         * mipsread.c (mipscoff_new_init): Update.
4907         * mdebugread.c (mdebug_build_psymtabs): Update.
4908         * elfread.c (elf_new_init): Update.
4909         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
4910         Update.
4911         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
4912         (coffstab_build_psymtabs, elfstab_build_psymtabs)
4913         (stabsect_build_psymtabs): Update.
4914         * buildsym.h (buildsym_init): Don't declare.
4915         * buildsym.c: Update comment.
4916         (prepare_for_building): Remove.
4917         (start_symtab, restart_symtab): Update.
4918         (reset_symtab_globals): Update comment.
4919         (buildsym_init): Remove.
4920
4921 2018-07-20  Tom Tromey  <tom@tromey.com>
4922
4923         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
4924         * stabsread.c (patch_block_stabs, define_symbol, read_type)
4925         (read_enum_type, common_block_start, common_block_end)
4926         (cleanup_undefined_types_1, finish_global_stabs): Update.
4927         * mdebugread.c (psymtab_to_symtab_1): Update.
4928         * dwarf2read.c (fixup_go_packaging, read_func_scope)
4929         (read_lexical_block_scope, new_symbol): Update.
4930         * dbxread.c (process_one_symbol): Update.
4931         * coffread.c (coff_symtab_read, process_coff_symbol)
4932         (coff_read_enum_type): Update.
4933         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
4934         declare.
4935         (get_local_symbols, get_file_symbols, get_global_symbols): New
4936         functions.
4937         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
4938         m_global_symbols.
4939         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
4940         (~scoped_free_pendings): Update.
4941         (finish_block, prepare_for_building, reset_symtab_globals)
4942         (end_symtab_get_static_block, end_symtab_with_blockvector)
4943         (augment_type_symtab, push_context): Update.
4944         (get_local_symbols, get_file_symbols, get_global_symbols): New
4945         functions.
4946         (buildsym_init): Update.
4947
4948 2018-07-20  Tom Tromey  <tom@tromey.com>
4949
4950         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
4951         (process_full_type_unit): Likewise.
4952         (dwarf2_start_symtab): Set list_in_scope.
4953
4954 2018-07-20  Tom Tromey  <tom@tromey.com>
4955
4956         * dwarf2read.c (process_psymtab_comp_unit_reader)
4957         (build_type_psymtabs_reader): Do not set list_in_scope.
4958
4959 2018-07-20  Tom Tromey  <tom@tromey.com>
4960
4961         * buildsym.c (free_pendings): Remove.
4962         (add_symbol_to_list, scoped_free_pendings)
4963         (finish_block_internal, buildsym_init): Update.
4964
4965 2018-07-20  Tom Tromey  <tom@tromey.com>
4966
4967         * xcoffread.c (read_xcoff_symtab): Update.
4968         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
4969         Update.
4970         * dbxread.c (process_one_symbol): Update.
4971         * coffread.c (coff_symtab_read): Update.
4972         * buildsym.h (finish_block): Update.
4973         * buildsym.c (finish_block): Remove "listhead" argument.
4974         (end_symtab_get_static_block): Update.
4975
4976 2018-07-20  Tom Tromey  <tom@tromey.com>
4977
4978         * buildsym.h (class scoped_free_pendings): Remove constructor.
4979         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
4980         method.
4981         <m_pending_block_obstack, m_pending_blocks>: New members.
4982         (pending_block_obstack, pending_blocks): Remove.
4983         (scoped_free_pendings::scoped_free_pendings): Default.
4984         (~scoped_free_pendings): Update.
4985         (free_pending_blocks): Remove.
4986         (finish_block_internal, record_pending_block, make_blockvector)
4987         (end_symtab_get_static_block, augment_type_symtab, push_context)
4988         (buildsym_init): Update.
4989
4990 2018-07-20  Tom Tromey  <tom@tromey.com>
4991
4992         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
4993         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
4994         members.
4995         (pending_addrmap, pending_addrmap_obstack)
4996         (pending_addrmap_interesting): Remove.
4997         (scoped_free_pendings, record_block_range, make_blockvector)
4998         (prepare_for_building, reset_symtab_globals, buildsym_init):
4999         Update.
5000
5001 2018-07-20  Tom Tromey  <tom@tromey.com>
5002
5003         * xcoffread.c (process_linenos): Update.
5004         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
5005         * mdebugread.c (psymtab_to_symtab_1): Update.
5006         * dwarf2read.c (setup_type_unit_groups)
5007         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
5008         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
5009         * dbxread.c (process_one_symbol): Update.
5010         * coffread.c (coff_symtab_read, enter_linenos)
5011         (process_coff_symbol): Update.
5012         * buildsym.h (current_subfile): Don't declare.
5013         (get_current_subfile): Declare.
5014         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
5015         member.
5016         (start_subfile, free_buildsym_compunit, push_subfile)
5017         (prepare_for_building, start_symtab): Update.
5018         (get_current_subfile): New function.
5019
5020 2018-07-20  Tom Tromey  <tom@tromey.com>
5021
5022         * coffread.c (coff_symtab_read): Update.
5023         * xcoffread.c (read_xcoff_symtab): Update.
5024         * dwarf2read.c (new_symbol): Update.
5025         (read_func_scope, read_lexical_block_scope): Update.
5026         * dbxread.c (process_one_symbol): Update.
5027         * buildsym.h (context_stack, context_stack_depth): Don't declare.
5028         (outermost_context_p): Remove macro.
5029         (outermost_context_p, get_current_context_stack)
5030         (get_context_stack_depth): Declare.
5031         (pop_context): Return struct context_stack.
5032         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
5033         member.
5034         (context_stack_size): Remove.
5035         (INITIAL_CONTEXT_STACK_SIZE): Remove.
5036         (prepare_for_building, end_symtab_get_static_block)
5037         (augment_type_symtab, push_context): Update.
5038         (pop_context): Return struct context_stack.
5039         (outermost_context_p, get_current_context_stack)
5040         (get_context_stack_depth): New functions.
5041         (buildsym_init): Update.
5042
5043 2018-07-20  Tom Tromey  <tom@tromey.com>
5044
5045         * rust-exp.y: Now a pure parser.  Update all rules.
5046         (%union): Move earlier.
5047         (current_parser, work_obstack): Remove globals.
5048         (rust_parser, ~rust_parser): Update.
5049         (class rust_parser) <copy_name, concat3, crate_name, super_name,
5050         lex_character, lex_number, lex_string, lex_identifier,
5051         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
5052         convert_name, convert_params_to_expression,
5053         convert_ast_to_expression, ast_basic_type, ast_operation,
5054         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
5055         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
5056         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
5057         ast_array_type, ast_slice_type, ast_reference_type,
5058         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
5059         (rust_parse): Update.
5060         (rustyyerror, rustyylex): Add parser parameter.
5061         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
5062         (rust_lex_stringish_test, rust_lex_test_sequence)
5063         (rust_lex_test_trailing_dot, rust_lex_test_completion)
5064         (rust_lex_test_push_back, rust_lex_tests): Update.
5065
5066 2018-07-19  Pedro Alves  <palves@redhat.com>
5067
5068         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
5069         gdb::unique_xmalloc_ptr.
5070         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
5071         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
5072         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
5073         copy-initialization.
5074         * guile/scm-pretty-print.c (ppscm_print_children): Use
5075         gdb::unique_xmalloc_ptr instead of cleanups.
5076         (gdbscm_apply_val_pretty_printer): Remove cleanups.
5077         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
5078         gdb::unique_xmalloc_ptr.
5079         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
5080         Adjust to use gdb::unique_xmalloc_ptr.
5081         * guile/scm-utils.c (extract_arg): Adjust.
5082         * guile/scm-value.c (gdbscm_value_field): Adjust to use
5083         gdb::unique_xmalloc_ptr instead of a cleanup.
5084
5085 2018-07-19  Tom Tromey  <tom@tromey.com>
5086
5087         * utils.c (do_value_free_to_mark)
5088         (make_cleanup_value_free_to_mark): Remove.
5089         * utils.h (make_cleanup_value_free_to_mark): Remove.
5090
5091 2018-07-19  Pedro Alves  <palves@redhat.com>
5092
5093         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
5094         forwarding reference.
5095
5096 2018-07-18  Pedro Alves  <palves@redhat.com>
5097
5098         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
5099         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
5100         cleanup.
5101
5102 2018-07-18  Pedro Alves  <palves@redhat.com>
5103
5104         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
5105         exceptions.
5106         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
5107         (gdbscm_wrap): New.
5108         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
5109         directly instead of a cleanup.
5110         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
5111         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
5112         (vlscm_binop_gdbthrow): New, factored out from ...
5113         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
5114         (vlscm_rich_compare): Use gdbscm_wrap.
5115         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
5116         instead of a cleanup.
5117         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
5118         cleanup.
5119         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
5120         Use xfree directly instead of a cleanup.
5121         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
5122         Adjust to use gdbscm_wrap and scoped_value_mark.
5123         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
5124         (gdbscm_value_address, gdbscm_value_dereference)
5125         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
5126         scoped_value_mark.
5127         (gdbscm_value_dynamic_type): Use scoped_value_mark.
5128         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
5129         scoped_value_mark.
5130         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
5131         gdbscm_wrap and scoped_value_mark.
5132         (gdbscm_value_to_string): Use xfree directly instead of a
5133         cleanup.  Move 'buffer' unique_ptr to TRY scope.
5134         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
5135         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
5136         scoped_value_mark.
5137         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
5138         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
5139         scoped_value_mark.
5140         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
5141         gdbscm_wrap.
5142
5143 2018-07-18  Tom de Vries  <tdevries@suse.de>
5144
5145         * findvar.c (default_read_var_value): Also resolve dynamic type for
5146         LOC_OPTIMIZED_OUT vars.
5147
5148 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
5149
5150         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
5151         decoding.
5152
5153 2018-07-17  Tom Tromey  <tom@tromey.com>
5154
5155         * guile/scm-param.c (pascm_set_func, pascm_show_func)
5156         (compute_enum_list, pascm_set_param_value_x)
5157         (gdbscm_parameter_value): Update.
5158         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
5159         (gdbscm_scm_to_host_string): Update.
5160         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
5161         Update.
5162         * guile/scm-cmd.c (cmdscm_add_completion): Update.
5163         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
5164         * guile/scm-string.c (gdbscm_scm_to_string): Return
5165         unique_xmalloc_ptr.
5166         (gdbscm_scm_to_host_string): Likewise.
5167
5168 2018-07-17  Tom Tromey  <tom@tromey.com>
5169
5170         * guile/guile.c (gdbscm_eval_from_control_command): Update.
5171         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
5172         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
5173         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
5174         unique_xmalloc_ptr.
5175
5176 2018-07-17  Tom Tromey  <tom@tromey.com>
5177
5178         * guile/scm-param.c (pascm_signal_setshow_error): Update.
5179         * guile/guile-internal.h (gdbscm_exception_message_to_string):
5180         Update.
5181         * guile/scm-cmd.c (cmdscm_function): Update.
5182         * guile/scm-pretty-print.c
5183         (ppscm_print_exception_unless_memory_error): Update.
5184         * guile/scm-exception.c (gdbscm_exception_message_to_string):
5185         Return unique_xmalloc_ptr.
5186
5187 2018-07-17  Tom Tromey  <tom@tromey.com>
5188
5189         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
5190         Use string_printf.
5191
5192 2018-07-17  Jim Wilson  <jimw@sifive.com>
5193
5194         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
5195         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
5196         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
5197         unecessary braces after EF_RISCV_RVC test.  Delete call to
5198         set_gdbarch_decr_pc_after_break.
5199
5200         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
5201         RISCV_LAST_FP_REGNUM + 1.
5202         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
5203
5204 2018-07-17  Tom Tromey  <tom@tromey.com>
5205
5206         * configure.ac: Remove --disable-gdbcli.
5207         * configure: Rebuild.
5208         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
5209         (SUBDIR_CLI_CFLAGS): Remove.
5210         (SFILES): Use SUBDIR_CLI_SRCS.
5211         (COMMON_OBS): Use SUBDIR_CLI_OBS.
5212
5213 2018-07-17  Tom Tromey  <tom@tromey.com>
5214
5215         PR gdb/18624:
5216         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
5217
5218 2018-07-16  Jim Wilson  <jimw@sifive.com>
5219
5220         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
5221
5222 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5223
5224         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
5225         variable.
5226         (libunwind_frame_sniffer): Likewise.
5227         (libunwind_frame_prev_register): Likewise.
5228         (libunwind_sigtramp_frame_sniffer): Likewise.
5229         * ia64-tdep.c (ia64_access_reg): Likewise.
5230         (ia64_access_rse_reg): Likewise.
5231         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
5232         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
5233
5234 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5235
5236         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
5237
5238 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5239
5240         * remote-sim.c (gdbsim_target::close,
5241         gdbsim_target::mourn_inferior): Remove unused variables.
5242
5243 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
5244
5245         * ia64-tdep.c (ktab_buf): New global.
5246         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
5247         (get_kernel_table): Adjust.
5248
5249 2018-07-16  Tom Tromey  <tom@tromey.com>
5250
5251         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
5252         * dwarf2read.c (using_directives, new_symbol): Use
5253         outermost_context_p.
5254         * dbxread.c (process_one_symbol): Use outermost_context_p.
5255         * coffread.c (coff_symtab_read): Use outermost_context_p.
5256
5257 2018-07-16  Tom Tromey  <tom@tromey.com>
5258
5259         * dwarf2read.c (using_directives, read_func_scope)
5260         (read_lexical_block_scope): Update.
5261         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
5262         * buildsym.h (local_using_directives, global_using_directives):
5263         Don't declare.
5264         (get_local_using_directives, set_local_using_directives)
5265         (get_global_using_directives): Declare.
5266         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
5267         m_global_using_directives>: New members.
5268         (finish_block_internal, prepare_for_building)
5269         (reset_symtab_globals, end_symtab_get_static_block)
5270         (push_context): Update.
5271         (get_local_using_directives, set_local_using_directives)
5272         (get_global_using_directives): New functions.
5273         (buildsym_init): Update.
5274
5275 2018-07-16  Tom Tromey  <tom@tromey.com>
5276
5277         * xcoffread.c (xcoff_initial_scan): Don't call
5278         free_pending_blocks.
5279         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
5280         * buildsym.h (class scoped_free_pendings): Add constructor.
5281         (free_pending_blocks): Don't declare.
5282         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
5283         (free_pending_blocks): Now static.
5284
5285 2018-07-16  Tom Tromey  <tom@tromey.com>
5286
5287         * buildsym.h (push_subfile, pop_subfile): Update declarations.
5288         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
5289         member.
5290         (struct subfile_stack): Remove.
5291         (subfile_stack): Remove.
5292         (push_subfile, pop_subfile, buildsym_init): Update.
5293
5294 2018-07-16  Tom Tromey  <tom@tromey.com>
5295
5296         * buildsym.c (push_subfile): Use gdb_assert.
5297         (pop_subfile): Use gdb_assert.
5298
5299 2018-07-16  Tom Tromey  <tom@tromey.com>
5300
5301         * buildsym.h (merge_symbol_lists): Remove.
5302         * buildsym.c (merge_symbol_lists): Remove.
5303
5304 2018-07-16  Tom Tromey  <tom@tromey.com>
5305
5306         * stabsread.c (scan_file_globals): Update comment.
5307         * stabsread.h (scan_file_globals): Move from buildsym.h.
5308         * buildsym.h (scan_file_globals): Move to stabsread.h.
5309
5310 2018-07-16  Tom Tromey  <tom@tromey.com>
5311
5312         * xcoffread.c (xcoff_new_init): Update.
5313         * mipsread.c (mipscoff_new_init): Update.
5314         * mdebugread.c (mdebug_build_psymtabs): Update.
5315         * elfread.c (elf_new_init): Update.
5316         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
5317         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
5318         * buildsym.h (buildsym_new_init): Don't declare.
5319         * buildsym.c (buildsym_new_init): Remove.
5320
5321 2018-07-16  Tom Tromey  <tom@tromey.com>
5322
5323         * stabsread.h (within_function): Move from buildsym.h.
5324         * stabsread.c (start_stabs): Clear within_function.
5325         * coffread.c (coff_start_symtab): Clear within_function.
5326         * buildsym.h (within_function): Move to stabsread.h.
5327         * buildsym.c (prepare_for_building): Update.
5328
5329 2018-07-16  Tom Tromey  <tom@tromey.com>
5330
5331         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
5332         * dwarf2read.c (dwarf2_start_symtab): Don't set
5333         processing_gcc_compilation.
5334         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
5335
5336 2018-07-16  Tom Tromey  <tom@tromey.com>
5337
5338         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
5339         (next_symbol_text_func): Move from buildsym.h.
5340         * stabsread.c (hashname): Move from buildsym.c.
5341         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
5342         (next_symbol_text_func, hashname): Move to stabsread.h.
5343         * buildsym.c: Don't include bcache.h
5344         (hashname): Move to stasbread.c.
5345
5346 2018-07-16  Tom Tromey  <tom@tromey.com>
5347
5348         * buildsym.h (context_stack_size): Don't declare.
5349         * buildsym.c (context_stack_size): New global.
5350
5351 2018-07-16  Tom Tromey  <tom@tromey.com>
5352
5353         * dbxread.c (processing_acc_compilation): New global.
5354         * buildsym.h (processing_acc_compilation): Don't declare.
5355
5356 2018-07-16  Tom Tromey  <tom@tromey.com>
5357
5358         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
5359         * dbxread.c (read_ofile_symtab): Update.
5360         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
5361         * buildsym.h (last_source_start_addr): Remove.
5362         (set_last_source_start_addr, get_last_source_start_addr):
5363         Declare.
5364         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
5365         parameter.
5366         (struct buildsym_compunit) <m_last_source_start_addr>: New
5367         member.
5368         (prepare_for_building): Remove start_addr parameter.
5369         (start_symtab, restart_symtab, end_symtab_get_static_block)
5370         (end_symtab_with_blockvector): Update.
5371         (set_last_source_start_addr, get_last_source_start_addr): New
5372         functions.
5373
5374 2018-07-16  Tom Tromey  <tom@tromey.com>
5375
5376         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
5377         member.
5378         (have_line_numbers): Remove.
5379         (record_line, prepare_for_building, end_symtab_get_static_block)
5380         (augment_type_symtab): Update.
5381
5382 2018-07-16  Tom Tromey  <tom@tromey.com>
5383
5384         * buildsym.c (~buildsym_compunit): Free the macro table.
5385         (struct buildsym_compunit) <get_macro_table, release_macros>: New
5386         methods.
5387         <m_pending_macros>: New member.
5388         (pending_macros): Remove.
5389         (~scoped_free_pendings, get_macro_table, prepare_for_building)
5390         (reset_symtab_globals, end_symtab_get_static_block)
5391         (end_symtab_with_blockvector, augment_type_symtab)
5392         (buildsym_init): Update.
5393
5394 2018-07-16  Tom Tromey  <tom@tromey.com>
5395
5396         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
5397         parameter.
5398         (buildsym_compunit::set_last_source_file): New method.
5399         <m_last_source_file>: New member.
5400         (prepare_for_building): Remove "name" parameter.
5401         (start_symtab, restart_symtab, reset_symtab_globals): Update.
5402         (last_source_file): Remove.
5403         (set_last_source_file, get_last_source_file): Update.
5404
5405 2018-07-16  Tom Tromey  <tom@tromey.com>
5406
5407         * buildsym.c (prepare_for_building): Add assert.
5408
5409 2018-07-16  Tom Tromey  <tom@tromey.com>
5410
5411         * buildsym.c (~buildsym_compunit): Update.
5412         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
5413         (start_subfile, patch_subfile_names)
5414         (end_symtab_with_blockvector): Update.
5415
5416 2018-07-16  Tom Tromey  <tom@tromey.com>
5417
5418         * buildsym.c (struct buildsym_compunit): Add constructor,
5419         destructor, initializers.
5420         (start_buildsym_compunit): Remove.
5421         (free_buildsym_compunit): Use "delete".
5422         (start_symtab, restart_symtab): Use "new".
5423
5424 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
5425
5426         * symfile.c (set_objfile_default_section_offset): Remove struct
5427         keyword.
5428
5429 2018-07-14  Stafford Horne  <shorne@gmail.com>
5430
5431         * (Responsible Maintainers): Add myself as or1k maintainer.
5432
5433 2018-07-13  Tom Tromey  <tom@tromey.com>
5434
5435         * symfile.c (set_objfile_default_section_offset): Use extra braces
5436         around initializer.
5437
5438 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
5439
5440         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
5441         non-branching basr.
5442
5443 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5444
5445         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5446         unittests/cli-utils-selftests.c
5447         * unittests/cli-utils-selftests.c: New file.
5448
5449 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5450
5451         * NEWS: Mention new commands. Mention change to 'thread apply'.
5452
5453 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5454
5455         * thread.c (thr_try_catch_cmd): New function.
5456         (thread_apply_all_command): Handle qcs flags.
5457         (thread_apply_command): Handle qcs flags.
5458         (taas_command): New function.
5459         (tfaas_command): New function.
5460         (_initialize_thread): Update to setup the new commands 'taas
5461         and 'tfaas'. Change doc string for 'thread apply'.
5462
5463 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5464
5465         * stack.c: (trailing_outermost_frame): New function, mostly
5466         extracted from backtrace_command_1.
5467         (leading_innermost_frame): New function.
5468         (backtrace_command_1): Update to call trailing_outermost_frame.
5469         (frame_apply_command_count): New function.
5470         (frame_apply_level_command): New function.
5471         (frame_apply_all_command): New function.
5472         (frame_apply_command): New function.
5473         (faas_command): New function.
5474         (frame_cmd_list): New variable.
5475         (_initialize_stack): Update to setup the new commands 'frame apply'
5476         and 'faas'.
5477
5478 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5479
5480         * cli-utils.c (number_or_range_parser::get_number): Only handle
5481         numbers or convenience var as numbers.
5482         (parse_flags): New function.
5483         (parse_flags_qcs): New function.
5484         (number_or_range_parser::finished): Ensure parsing end is detected
5485         before end of string.
5486         * cli-utils.h (parse_flags): New function.
5487         (parse_flags_qcs): New function.
5488         (number_or_range_parser): Remove m_finished bool.
5489         (number_or_range_parser::skip_range): Set m_in_range to false.
5490
5491 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
5492
5493         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
5494         on Windows.
5495
5496 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
5497             Jan Kratochvil  <jan.kratochvil@redhat.com>
5498             Paul Fertser  <fercerpav@gmail.com>
5499             Tsutomu Seki  <sekiriki@gmail.com>
5500             Pedro Alves  <palves@redhat.com>
5501
5502         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5503         'unittests/parse-connection-spec-selftests.c'.
5504         (COMMON_SFILES): Add 'common/netstuff.c'.
5505         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
5506         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
5507         * common/netstuff.c: New file.
5508         * common/netstuff.h: New file.
5509         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
5510         (wait_for_connect): Update comment.  New parameter
5511         'gdb::optional<int> sock' instead of 'struct serial *scb'.
5512         Use 'sock' directly instead of 'scb->fd'.
5513         (try_connect): New function, with code from 'net_open'.
5514         (net_open): Rewrite main loop to deal with multiple
5515         sockets/addresses.  Handle IPv6-style hostnames; implement
5516         support for IPv6 connections.
5517         * unittests/parse-connection-spec-selftests.c: New file.
5518
5519 2018-07-11  Pedro Alves  <palves@redhat.com>
5520
5521         PR gdb/23377
5522         * remote.c (remote_target::remote_detach_pid): Call
5523         set_current_process.
5524
5525 2018-07-11  Pedro Alves  <palves@redhat.com>
5526
5527         * h8300-tdep.c (h8300_gdbarch_init): Remove
5528         set_gdbarch_ecoff_reg_to_regnum calls.
5529
5530 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
5531
5532         PR c++/23373
5533         * c-typeprint.c (c_type_print_base_struct_union): Don't print
5534         offsets/sizes for static members of a class/struct.
5535
5536 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
5537
5538         * target-descriptions.c (tdesc_register_bitsize): Rename.
5539         * target-descriptions.h (tdesc_register_bitsize): Likewise.
5540         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
5541         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
5542
5543 2018-07-10  Tom Tromey  <tom@tromey.com>
5544
5545         * breakpoint.c (moribund_locations): Now static and a
5546         std::vector.
5547         (breakpoint_init_inferior, moribund_breakpoint_here_p)
5548         (build_bpstat_chain, update_global_location_list)
5549         (breakpoint_retire_moribund): Update.
5550         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
5551         VEC.
5552
5553 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
5554
5555         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
5556         (riscv_register_reggroup_p): Use new function, remove unneeded
5557         parenthesis.
5558         (riscv_push_dummy_call): Extend assert to compare against xlen or
5559         flen based on register type.
5560
5561 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
5562
5563         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
5564
5565 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5566
5567         * remote.c (show_hardware_watchpoint_limit): New function.
5568         (show_hardware_watchpoint_length_limit): New function.
5569         (show_hardware_breakpoint_limit): New function.
5570         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
5571         where appropriate, update help text.
5572
5573 2018-07-09  Tom Tromey  <tom@tromey.com>
5574
5575         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
5576         (CLIBS): Don't mention NAT_CLIBS.
5577
5578 2018-07-09  Tom Tromey  <tom@tromey.com>
5579
5580         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
5581         (LIBGDB_OBS, clean mostlyclean): Update.
5582         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
5583
5584 2018-07-09  Tom Tromey  <tom@tromey.com>
5585
5586         * Makefile.in (%.c: %.y): Use ECHO_YACC.
5587         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
5588         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
5589
5590 2018-07-09  Tom Tromey  <tom@tromey.com>
5591
5592         * Makefile.in (ALLDEPFILES): Remove exec.c.
5593         (COMMON_OBS): Remove exec.o.
5594         (COMMON_SFILES): Add exec.c.
5595
5596 2018-07-09  Tom Tromey  <tom@tromey.com>
5597
5598         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
5599
5600 2018-07-09  Tom Tromey  <tom@tromey.com>
5601
5602         * Makefile.in (clean mostlyclean): Remove stamp-version.
5603         (version.c): Depend on stamp-version.
5604         (stamp-version): New rule, from version.c rule.
5605
5606 2018-07-09  Tom Tromey  <tom@tromey.com>
5607
5608         * Makefile.in (init.c): Depend on stamp-init.
5609         (stamp-init): New rule, from init.c rule.
5610         (clean mostlyclean): Remove stamp-init.
5611
5612 2018-07-09  Tom Tromey  <tom@tromey.com>
5613
5614         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
5615         SUBDIR_GCC_COMPILE_SRCS.
5616
5617 2018-07-09  Tom Tromey  <tom@tromey.com>
5618
5619         * Makefile.in (init.c): Remove some unused sed rules.
5620
5621 2018-07-09  Tom Tromey  <tom@tromey.com>
5622
5623         * Makefile.in (TSOBS): Remove.
5624         (INIT_FILES): Update.
5625         (LIBGDB_OBS): Update.
5626         (COMMON_SFILES): Add inflow.c.
5627         (SFILES): Remove inflow.c.
5628
5629 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
5630
5631         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
5632
5633 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
5634
5635         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
5636         get_saveloc_name, is_signal_frame_name, step_name,
5637         init_remote_name, create_addr_space_name,
5638         destroy_addr_space_name, search_unwind_table_name,
5639         find_dyn_list_name): Constify.
5640
5641 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
5642
5643         * darwin-nat.c (darwin_pthread_kill): New function.
5644         (darwin_resume_thread): Use darwin_pthread_kill.
5645
5646 2018-07-05  Tom de Vries  <tdevries@suse.de>
5647
5648         * macroexp.c (macro_buffer) <operator=>: New member function.
5649
5650 2018-07-04  Tom Tromey  <tom@tromey.com>
5651
5652         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
5653
5654 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
5655
5656         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
5657         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
5658         * maint.c: Likewise.
5659         * top.c: Likewise.
5660
5661 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
5662
5663         * NEWS: Create a new section for the next release branch.
5664         Rename the section of the current branch, now that it has
5665         been cut.
5666
5667 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
5668
5669         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
5670         * version.in: Bump version to 8.2.50.DATE-git.
5671
5672 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
5673             Pedro Alves  <palves@redhat.com>
5674
5675         * linux-nat.c (linux_init_ptrace): Rename to ...
5676         (linux_init_ptrace_procfs): ... this.  Call
5677         linux_proc_init_warnings.
5678         (linux_nat_target::post_attach)
5679         (linux_nat_target::post_startup_inferior): Adjust.
5680         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
5681         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
5682
5683 2018-07-04  Tom de Vries  <tdevries@suse.de>
5684
5685         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
5686         check ...
5687         (read_comp_unit_head): ... here.
5688
5689 2018-07-03  Tom Tromey  <tom@tromey.com>
5690
5691         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
5692         (stop_tracing, tstatus_command)
5693         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
5694         (print_one_static_tracepoint_marker): Update.
5695         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
5696         std::vector.
5697         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
5698         VEC.
5699         (all_tracepoints, static_tracepoints_here): Return std::vector.
5700
5701 2018-07-03  Tom Tromey  <tom@tromey.com>
5702
5703         * common/ptid.c (ptid_equal): Remove.
5704         * common/ptid.h (ptid_equal): Don't declare.
5705         * ada-tasks.c: Update.
5706         * breakpoint.c: Update.
5707         * common/agent.c: Update.
5708         * corelow.c: Update.
5709         * darwin-nat-info.c: Update.
5710         * darwin-nat.c: Update.
5711         * dcache.c: Update.
5712         * dtrace-probe.c: Update.
5713         * dummy-frame.c: Update.
5714         * fbsd-nat.c: Update.
5715         * frame.c: Update.
5716         * gdbthread.h: Update.
5717         * gnu-nat.c: Update.
5718         * go32-nat.c: Update.
5719         * inf-loop.c: Update.
5720         * inf-ptrace.c: Update.
5721         * infcall.c: Update.
5722         * infcmd.c: Update.
5723         * inflow.c: Update.
5724         * infrun.c: Update.
5725         * linux-fork.c: Update.
5726         * linux-nat.c: Update.
5727         * linux-thread-db.c: Update.
5728         * mi/mi-cmd-var.c: Update.
5729         * mi/mi-interp.c: Update.
5730         * mi/mi-main.c: Update.
5731         * nto-procfs.c: Update.
5732         * ppc-linux-tdep.c: Update.
5733         * procfs.c: Update.
5734         * python/py-inferior.c: Update.
5735         * python/py-record-btrace.c: Update.
5736         * python/py-record.c: Update.
5737         * ravenscar-thread.c: Update.
5738         * regcache.c: Update.
5739         * remote-sim.c: Update.
5740         * remote.c: Update.
5741         * sol-thread.c: Update.
5742         * solib.c: Update.
5743         * target.c: Update.
5744         * tui/tui-stack.c: Update.
5745         * varobj.c: Update.
5746         * windows-nat.c: Update.
5747         * windows-tdep.c: Update.
5748
5749 2018-07-03  Tom Tromey  <tom@tromey.com>
5750
5751         * common/ptid.c (ptid_match): Remove.
5752         * common/ptid.h (ptid_match): Don't declare.
5753         * fbsd-nat.c: Update.
5754         * infcmd.c: Update.
5755         * infrun.c: Update.
5756         * linux-nat.c: Update.
5757         * record-btrace.c: Update.
5758         * regcache.c: Update.
5759         * remote.c: Update.
5760
5761 2018-07-03  Tom Tromey  <tom@tromey.com>
5762
5763         * common/ptid.c (ptid_tid_p): Remove.
5764         * common/ptid.h (ptid_tid_p): Don't declare.
5765         * sol-thread.c: Update.
5766
5767 2018-07-03  Tom Tromey  <tom@tromey.com>
5768
5769         * common/ptid.c (ptid_lwp_p): Remove.
5770         * common/ptid.h (ptid_lwp_p): Don't declare.
5771         * fbsd-nat.c: Update.
5772         * linux-nat.c: Update.
5773         * nat/linux-procfs.c: Update.
5774         * nat/x86-linux-dregs.c: Update.
5775         * sol-thread.c: Update.
5776
5777 2018-07-03  Tom Tromey  <tom@tromey.com>
5778
5779         * common/ptid.c (ptid_is_pid): Remove.
5780         * common/ptid.h (ptid_is_pid): Don't declare.
5781         * infrun.c: Update.
5782         * linux-nat.c: Update.
5783         * mi/mi-interp.c: Update.
5784         * remote.c: Update.
5785         * thread.c: Update.
5786
5787 2018-07-03  Tom Tromey  <tom@tromey.com>
5788
5789         * common/ptid.c (ptid_get_tid): Remove.
5790         * common/ptid.h (ptid_get_tid): Don't declare.
5791         * ada-tasks.c: Update.
5792         * aix-thread.c: Update.
5793         * bsd-uthread.c: Update.
5794         * darwin-nat.c: Update.
5795         * fbsd-nat.c: Update.
5796         * i386-darwin-nat.c: Update.
5797         * infrun.c: Update.
5798         * linux-tdep.c: Update.
5799         * nto-procfs.c: Update.
5800         * ppc-ravenscar-thread.c: Update.
5801         * python/py-infthread.c: Update.
5802         * ravenscar-thread.c: Update.
5803         * sol-thread.c: Update.
5804         * sparc-ravenscar-thread.c: Update.
5805         * windows-nat.c: Update.
5806
5807 2018-07-03  Tom Tromey  <tom@tromey.com>
5808
5809         * common/ptid.c (ptid_get_lwp): Remove.
5810         * common/ptid.h (ptid_get_lwp): Don't declare.
5811         * aarch64-linux-nat.c: Update.
5812         * ada-tasks.c: Update.
5813         * aix-thread.c: Update.
5814         * amd64-linux-nat.c: Update.
5815         * arm-linux-nat.c: Update.
5816         * corelow.c: Update.
5817         * fbsd-nat.c: Update.
5818         * fbsd-tdep.c: Update.
5819         * gnu-nat.c: Update.
5820         * i386-cygwin-tdep.c: Update.
5821         * i386-gnu-nat.c: Update.
5822         * i386-linux-nat.c: Update.
5823         * ia64-linux-nat.c: Update.
5824         * inf-ptrace.c: Update.
5825         * infrun.c: Update.
5826         * linux-fork.c: Update.
5827         * linux-nat.c: Update.
5828         * linux-tdep.c: Update.
5829         * linux-thread-db.c: Update.
5830         * mips-linux-nat.c: Update.
5831         * nat/aarch64-linux-hw-point.c: Update.
5832         * nat/aarch64-linux.c: Update.
5833         * nat/linux-btrace.c: Update.
5834         * nat/linux-osdata.c: Update.
5835         * nat/linux-procfs.c: Update.
5836         * nat/x86-linux-dregs.c: Update.
5837         * obsd-nat.c: Update.
5838         * ppc-fbsd-nat.c: Update.
5839         * ppc-linux-nat.c: Update.
5840         * procfs.c: Update.
5841         * python/py-infthread.c: Update.
5842         * ravenscar-thread.c: Update.
5843         * remote.c: Update.
5844         * s390-linux-nat.c: Update.
5845         * sol-thread.c: Update.
5846         * sol2-tdep.c: Update.
5847         * spu-linux-nat.c: Update.
5848         * x86-linux-nat.c: Update.
5849         * xtensa-linux-nat.c: Update.
5850
5851 2018-07-03  Tom Tromey  <tom@tromey.com>
5852
5853         * common/ptid.c (ptid_get_pid): Remove.
5854         * common/ptid.h (ptid_get_pid): Don't declare.
5855         * aarch64-linux-nat.c: Update.
5856         * ada-lang.c: Update.
5857         * aix-thread.c: Update.
5858         * alpha-bsd-nat.c: Update.
5859         * amd64-fbsd-nat.c: Update.
5860         * amd64-linux-nat.c: Update.
5861         * arm-linux-nat.c: Update.
5862         * arm-nbsd-nat.c: Update.
5863         * auxv.c: Update.
5864         * break-catch-syscall.c: Update.
5865         * breakpoint.c: Update.
5866         * bsd-uthread.c: Update.
5867         * corelow.c: Update.
5868         * ctf.c: Update.
5869         * darwin-nat.c: Update.
5870         * fbsd-nat.c: Update.
5871         * fbsd-tdep.c: Update.
5872         * gcore.c: Update.
5873         * gnu-nat.c: Update.
5874         * hppa-nbsd-nat.c: Update.
5875         * hppa-obsd-nat.c: Update.
5876         * i386-fbsd-nat.c: Update.
5877         * ia64-linux-nat.c: Update.
5878         * inf-ptrace.c: Update.
5879         * infcmd.c: Update.
5880         * inferior.c: Update.
5881         * inferior.h: Update.
5882         * inflow.c: Update.
5883         * infrun.c: Update.
5884         * linux-fork.c: Update.
5885         * linux-nat.c: Update.
5886         * linux-tdep.c: Update.
5887         * linux-thread-db.c: Update.
5888         * m68k-bsd-nat.c: Update.
5889         * mi/mi-interp.c: Update.
5890         * mi/mi-main.c: Update.
5891         * mips-linux-nat.c: Update.
5892         * mips-nbsd-nat.c: Update.
5893         * mips64-obsd-nat.c: Update.
5894         * nat/aarch64-linux-hw-point.c: Update.
5895         * nat/aarch64-linux.c: Update.
5896         * nat/linux-btrace.c: Update.
5897         * nat/linux-osdata.c: Update.
5898         * nat/linux-procfs.c: Update.
5899         * nat/x86-linux-dregs.c: Update.
5900         * nto-procfs.c: Update.
5901         * obsd-nat.c: Update.
5902         * ppc-linux-nat.c: Update.
5903         * ppc-nbsd-nat.c: Update.
5904         * ppc-obsd-nat.c: Update.
5905         * proc-service.c: Update.
5906         * procfs.c: Update.
5907         * python/py-inferior.c: Update.
5908         * python/py-infthread.c: Update.
5909         * ravenscar-thread.c: Update.
5910         * record.c: Update.
5911         * remote-sim.c: Update.
5912         * remote.c: Update.
5913         * rs6000-nat.c: Update.
5914         * s390-linux-nat.c: Update.
5915         * sh-nbsd-nat.c: Update.
5916         * sol-thread.c: Update.
5917         * sparc-nat.c: Update.
5918         * sparc64-tdep.c: Update.
5919         * spu-linux-nat.c: Update.
5920         * spu-tdep.c: Update.
5921         * target-debug.h: Update.
5922         * target.c: Update.
5923         * thread.c: Update.
5924         * tid-parse.c: Update.
5925         * tracefile-tfile.c: Update.
5926         * vax-bsd-nat.c: Update.
5927         * windows-nat.c: Update.
5928         * x86-linux-nat.c: Update.
5929         * x86-nat.c: Update.
5930
5931 2018-07-03  Tom Tromey  <tom@tromey.com>
5932
5933         * common/ptid.c (pid_to_ptid): Remove.
5934         * common/ptid.h (pid_to_ptid): Don't declare.
5935         * aix-thread.c: Update.
5936         * arm-linux-nat.c: Update.
5937         * common/ptid.c: Update.
5938         * common/ptid.h: Update.
5939         * corelow.c: Update.
5940         * ctf.c: Update.
5941         * darwin-nat.c: Update.
5942         * fbsd-nat.c: Update.
5943         * fork-child.c: Update.
5944         * gnu-nat.c: Update.
5945         * go32-nat.c: Update.
5946         * inf-ptrace.c: Update.
5947         * infcmd.c: Update.
5948         * inferior.c: Update.
5949         * infrun.c: Update.
5950         * linux-fork.c: Update.
5951         * linux-nat.c: Update.
5952         * nat/aarch64-linux-hw-point.c: Update.
5953         * nat/fork-inferior.c: Update.
5954         * nat/x86-linux-dregs.c: Update.
5955         * nto-procfs.c: Update.
5956         * obsd-nat.c: Update.
5957         * procfs.c: Update.
5958         * progspace.c: Update.
5959         * remote.c: Update.
5960         * rs6000-nat.c: Update.
5961         * s390-linux-nat.c: Update.
5962         * sol-thread.c: Update.
5963         * spu-linux-nat.c: Update.
5964         * target.c: Update.
5965         * top.c: Update.
5966         * tracefile-tfile.c: Update.
5967         * windows-nat.c: Update.
5968
5969 2018-07-03  Tom Tromey  <tom@tromey.com>
5970
5971         * common/ptid.h (ptid_build): Don't declare.
5972         * common/ptid.c (ptid_build): Remove.
5973         * aix-thread.c: Update.
5974         * bsd-kvm.c: Update.
5975         * bsd-uthread.c: Update.
5976         * common/agent.c: Update.
5977         * common/ptid.c: Update.
5978         * common/ptid.h: Update.
5979         * corelow.c: Update.
5980         * darwin-nat.c: Update.
5981         * fbsd-nat.c: Update.
5982         * gnu-nat.c: Update.
5983         * linux-fork.c: Update.
5984         * linux-nat.c: Update.
5985         * linux-thread-db.c: Update.
5986         * nat/linux-osdata.c: Update.
5987         * nat/linux-procfs.c: Update.
5988         * nto-procfs.c: Update.
5989         * obsd-nat.c: Update.
5990         * proc-service.c: Update.
5991         * procfs.c: Update.
5992         * ravenscar-thread.c: Update.
5993         * remote-sim.c: Update.
5994         * remote.c: Update.
5995         * sol-thread.c: Update.
5996         * target.c: Update.
5997         * windows-nat.c: Update.
5998
5999 2018-07-03  Tom Tromey  <tom@tromey.com>
6000
6001         * infrun.c (follow_exec): Use exit_inferior_silent.
6002         * inferior.c (exit_inferior_num_silent): Remove.
6003         * inferior.h (exit_inferior_num_silent): Don't declare.
6004
6005 2018-07-03  Tom Tromey  <tom@tromey.com>
6006
6007         PR cli/23340:
6008         * darwin-nat.c (darwin_attach_pid): Reset inferior and
6009         inferior_ptid on error.
6010
6011 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
6012             Simon Marchi  <simon.marchi@polymtl.ca>
6013
6014         PR tdep/8282
6015         * disasm.h (gdb_disassembler): Add
6016         `m_disassembler_options_holder'. member
6017         * disasm.c (get_all_disassembler_options): New function.
6018         (gdb_disassembler::gdb_disassembler): Use it.
6019         (gdb_buffered_insn_length_init_dis): Likewise.
6020         (gdb_buffered_insn_length): Adjust accordingly.
6021         (set_disassembler_options): Handle options with arguments.
6022         (show_disassembler_options_sfunc): Likewise.  Add a leading new
6023         line if showing options with descriptions.
6024         (disassembler_options_completer): Adapt to using the
6025         `disasm_options_and_args_t' structure.
6026         * mips-tdep.c (mips_disassembler_options): New variable.
6027         (mips_disassembler_options_o32): Likewise.
6028         (mips_disassembler_options_n32): Likewise.
6029         (mips_disassembler_options_n64): Likewise.
6030         (gdb_print_insn_mips): Don't set `disassembler_options'.
6031         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
6032         functions.
6033         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
6034         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
6035         `gdbarch_disassembler_options_implicit' and
6036         `gdbarch_valid_disassembler_options'.
6037         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
6038         `disasm_options_and_args_t' structure.
6039         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
6040         method.
6041         (valid_disassembler_options): Switch from `disasm_options_t' to
6042         the `disasm_options_and_args_t' structure.
6043         * NEWS: Document `set disassembler-options' support for the MIPS
6044         target.
6045         * gdbarch.h: Regenerate.
6046         * gdbarch.c: Regenerate.
6047
6048 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
6049
6050         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
6051
6052 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
6053
6054         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
6055         parameter in call to amd64_target_description.
6056         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
6057         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
6058         (amd64fbsd_init_abi): Likewise.
6059         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
6060         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
6061         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
6062         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
6063
6064 2018-06-29  Pedro Alves  <palves@redhat.com>
6065
6066         * gdb/amd64-tdep.h (amd64_create_target_description): Add
6067         "segments" parameter.
6068         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
6069         (_initialize_amd64_tdep): Update call to
6070         amd64_create_target_description.
6071         (amd64_target_description): Add "segments" parameter.  Adjust
6072         the implementation to use it.
6073         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
6074         call to amd64_create_target_description.
6075         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
6076         * gdb/arch/amd64.h (amd64_create_target_description): Add
6077         "segments" register.
6078         * gdb/arch/amd64.c (amd64_create_target_description): Add
6079         "segments" parameter.  Call create_feature_i386_64bit_segments
6080         only if SEGMENTS is true.
6081         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
6082         call to amd64_create_target_description.
6083
6084 2018-06-29  Pedro Alves  <palves@redhat.com>
6085
6086         * thread.c (thread_target_id_str): New, factored out from ...
6087         (print_thread_info_1): ... here.  Use it to compute the max
6088         "Target Id" column width.
6089
6090 2018-06-29  Pedro Alves  <palves@redhat.com>
6091
6092         * remote.c (remote_target::extra_thread_info): Delete
6093         'display_buf' and 'n' locals.  from the cache, regardless of
6094         packet mechanims is in use.  Use cache for qThreadExtra and qP
6095         methods too.
6096
6097 2018-06-29  Pedro Alves  <palves@redhat.com>
6098
6099         * blockframe.c (find_pc_sect_containing_function): New function.
6100         * breakpoint.c (print_breakpoint_location): Don't call
6101         find_pc_sect_function.
6102         * linespec.c (create_sals_line_offset): Record the location's
6103         symbol in the sal.
6104         * linespec.c (convert_address_location_to_sals): Fill in sal's
6105         symbol with find_pc_sect_containing_function.
6106         * symtab.c (find_function_start_sal): Rename to ...
6107         (find_function_start_sal_1): ... this.
6108         (find_function_start_sal): Reimplement as wrapper around
6109         find_function_start_sal_1, and use
6110         find_pc_sect_containing_function to fill in the sal's symbol.
6111         (find_function_start_sal(symbol*, bool)): Adjust.
6112         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
6113         comments.
6114         (find_pc_sect_containing_function): Declare.
6115
6116 2018-06-29  Pedro Alves  <palves@redhat.com>
6117
6118         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
6119         true if the the location has no symbol.
6120
6121 2018-06-28  Tom Tromey  <tom@tromey.com>
6122
6123         * NEWS: Mention --enable-codesign.
6124         * silent-rules.mk (ECHO_SIGN): New variable.
6125         * configure.ac: Add --enable-codesign.
6126         * configure: Rebuild.
6127         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
6128         (gdb$(EXEEXT)): Optionally invoke codesign.
6129
6130 2018-06-28  Pedro Alves  <palves@redhat.com>
6131
6132         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
6133         comments.
6134         (switch_to_thread_no_regs): Adjust comment.
6135         * infcmd.c (stop_pc): Delete.
6136         (post_create_inferior, info_program_command): Replace references
6137         to stop_pc with references to thread_info->suspend.stop_pc.
6138         * inferior.h (stop_pc): Delete declaration.
6139         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
6140         (handle_inferior_event_1, handle_signal_stop)
6141         (process_event_stop_test, keep_going_stepped_thread)
6142         (handle_step_into_function, handle_step_into_function_backward)
6143         (print_stop_location): Replace references to stop_pc with
6144         references to thread_info->suspend.stop_pc.
6145         (struct infcall_suspend_state) <stop_pc>: Delete field.
6146         (save_infcall_suspend_state, restore_infcall_suspend_state):
6147         Remove references to inf_stat->stop_pc.
6148         * linux-fork.c (fork_load_infrun_state): Likewise.
6149         * record-btrace.c (record_btrace_set_replay): Likewise.
6150         * record-full.c (record_full_goto_entry): Likewise.
6151         * remote.c (print_one_stopped_thread): Likewise.
6152         * target.c (target_resume): Extend comment.
6153         * thread.c (set_executing_thread): New.
6154         (set_executing): Use it.
6155         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
6156         Remove references to stop_pc.
6157
6158 2018-06-28  Pedro Alves  <palves@redhat.com>
6159
6160         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
6161         Moving fetching stop_pc until after ecs->event_thread is refreshed.
6162
6163 2018-06-28  Tom Tromey  <tom@tromey.com>
6164
6165         * coffread.c (coff_symfile_finish): Update.
6166         * xcoffread.c (xcoff_symfile_finish): Update.
6167         * elfread.c (elf_symfile_finish): Update.
6168         * symfile.h (dwarf2_free_objfile): Don't declare.
6169         * dwarf2read.c (_initialize_dwarf2_read): Use
6170         register_objfile_data_with_cleanup.
6171         (dwarf2_free_objfile): Now static.  Change signature.
6172
6173 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6174
6175         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
6176         option "-o" to add-symbol-file-load to add an offset to each
6177         section's load address.
6178         * symfile.c (set_objfile_default_section_offset): New function.
6179
6180 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6181
6182         * symfile.c (add_symbol_file_command): Make sure that sections
6183         with the same name are sorted in the same order.
6184
6185 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6186
6187         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
6188         require the second argument.  If omitted, load sections at the
6189         addresses specified in the file.
6190
6191 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6192
6193         * symfile.c (symbol_file_command, symbol_file_add_main_1)
6194         (_initialize_symfile): Add option "-o" to symbol-file to add an
6195         offset to each section of the symbol file.
6196
6197 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6198
6199         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
6200
6201 2018-06-27  Tom Tromey  <tom@tromey.com>
6202
6203         * stack.c (_initialize_stack): Update "func" help text.
6204
6205 2018-06-27  Tom Tromey  <tom@tromey.com>
6206
6207         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
6208         std::vector.
6209         (unwind_infopy_str, pyuw_create_unwind_info)
6210         (unwind_infopy_add_saved_register, pyuw_sniffer)
6211         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
6212         Update.
6213         (struct saved_reg): Add constructor.
6214         <value>: Now a gdbpy_ref<>.
6215
6216 2018-06-27  Tom Tromey  <tom@tromey.com>
6217
6218         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
6219
6220 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6221
6222         * gdb-gdb.py.in: Format using autopep8.
6223
6224 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6225
6226         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
6227         (type_lookup_function): Recognize CORE_ADDR values.
6228
6229 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6230
6231         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
6232         print tag_name.
6233
6234 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6235
6236         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
6237         <__lt__>: Add.
6238
6239 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6240
6241         * gdb-gdb.py: Move to...
6242         * gdb-gdb.py.in: ... here.
6243         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
6244         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
6245         dependencies.
6246         (distclean): Remove gdb-gdb.py when cleaning.
6247         (gdb-gdb.py, gdb-gdb.gdb): New rules.
6248         * configure: Re-generate.
6249
6250 2018-06-27  Pedro Alves  <palves@redhat.com>
6251
6252         * proc-service.c (get_ps_regcache): New.
6253         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
6254         (ps_lsetfpregs): Use it.
6255
6256 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
6257
6258         PR gdb/21695
6259         * dwarf2read.c (lnp_state_machine::check_line_address): Update declaration.
6260         (dwarf_decode_lines_1): Adjust.
6261
6262 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6263
6264         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
6265         override.
6266         <info_proc>: Likewise.
6267
6268 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
6269
6270         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
6271         to windows_fetch_one_register, and only handle the case of
6272         fetching one register.  Move the code that reloads the context
6273         and iterates over all registers if R is negative to...
6274         (windows_nat_target::fetch_registers): ... here.
6275         (do_windows_store_inferior_registers): Rename to
6276         windows_store_one_register, and only handle the case of storing
6277         one register.  Move the code that handles the case where r is
6278         negative to...
6279         (windows_nat_target::store_registers) ... here.
6280
6281 2018-06-26  Tom Tromey  <tom@tromey.com>
6282
6283         PR rust/22574:
6284         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
6285         * rust-lang.c (rust_print_struct_def): Add podata parameter.
6286         Update.
6287         (rust_internal_print_type): Add podata parameter.
6288         (rust_print_type): Update.
6289
6290 2018-06-26  Tom Tromey  <tom@tromey.com>
6291
6292         * typeprint.h (struct print_offset_data) <update, finish,
6293         maybe_print_hole>: New methods.
6294         <indentation>: New constant.
6295         * typeprint.c (print_offset_data::indentation): Define.
6296         (print_offset_data::maybe_print_hole, print_offset_data::update)
6297         (print_offset_data::finish): Move from c-typeprint.c and rename.
6298         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
6299         (print_spaces_filtered_with_print_options): Update.
6300         (c_print_type_union_field_offset, maybe_print_hole)
6301         (c_print_type_struct_field_offset): Move to typeprint.c and
6302         rename.
6303         (c_type_print_base_struct_union): Update.
6304
6305 2018-06-25  Pedro Alves  <palves@redhat.com>
6306
6307         * gdbthread.h (thread_info_ref, delete_thread)
6308         (delete_thread_silent, first_thread_of_inferior)
6309         (any_thread_of_inferior, switch_to_thread)
6310         (enable_thread_stack_temporaries)
6311         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6312         (get_last_thread_stack_temporary)
6313         (value_in_thread_stack_temporaries, can_access_registers_thread):
6314         Spell out "struct thread_info" instead of just "thread_info".
6315         * inferior.h (notice_new_inferior): Likewise.
6316
6317 2018-06-25  Pedro Alves  <palves@redhat.com>
6318
6319         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
6320         pass thread_info pointer to delete_thread.
6321         (windows_nat_target::detach): Pass inferior pointer to
6322         detach_inferior.
6323         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
6324         delete_thread.
6325         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
6326         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
6327         and pass a thread_info pointer to delete_thread.
6328         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
6329         pass thread_info pointer to delete_thread.
6330         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
6331         delete_thread_silent call.
6332         * procfs.c (procfs_target::detach): Pass inferior pointer to
6333         detach_inferior.
6334         (procfs_target::wait): Pass thread_info pointer to delete_thread.
6335         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
6336         delete_thread_silent call.
6337         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
6338         pass thread_info pointer to delete_thread.
6339         (windows_nat_target::detach): Pass inferior pointer to
6340         delete_inferior.
6341
6342 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
6343
6344         * regcache.c (readable_regcache::read_part): Fix asserts.
6345         (reg_buffer::raw_collect_part): New function.
6346         (regcache::write_part): Fix asserts.
6347         (reg_buffer::raw_supply_part): New function.
6348         (regcache::transfer_regset_register): New helper function.
6349         (regcache::transfer_regset): Call new functions.
6350         (regcache_supply_regset): Use gdb_byte*.
6351         (regcache::supply_regset): Likewise.
6352         (regcache_collect_regset): Likewise.
6353         (regcache::collect_regset): Likewise.
6354         * regcache.h (reg_buffer::raw_collect_part): New declaration.
6355         (reg_buffer::raw_supply_part): Likewise.
6356         (regcache::transfer_regset_register): Likewise.
6357         (regcache::transfer_regset): Use gdb_byte*.
6358
6359 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
6360
6361         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
6362
6363 2018-06-21  Pedro Alves  <palves@redhat.com>
6364
6365         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
6366         instead of a ptid_t.  All callers adjusted.
6367         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
6368         adjusted.
6369         (print_ada_task_info, display_current_task_id, task_command_1):
6370         Adjust.
6371         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
6372         inferior_thread.
6373         (breakpoint_kind): Adjust.
6374         (remove_breakpoints_pid): Rename to ...
6375         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
6376         pointer.  All callers adjusted.
6377         (bpstat_clear_actions): Use inferior_thread.
6378         (get_bpstat_thread): New.
6379         (bpstat_do_actions): Use it.
6380         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
6381         to take a thread_info pointer.  All callers adjusted.
6382         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
6383         (breakpoint_re_set_thread): Use inferior_thread.
6384         * breakpoint.h (struct inferior): Forward declare.
6385         (bpstat_stop_status): Update.
6386         (remove_breakpoints_pid): Delete.
6387         (remove_breakpoints_inf): New.
6388         * bsd-uthread.c (bsd_uthread_target::wait)
6389         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
6390         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
6391         (maint_btrace_packet_history_cmd)
6392         (maint_btrace_clear_packet_history_cmd): Adjust.
6393         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
6394         inferior_thread.
6395         * cli/cli-interp.c: Include "inferior.h".
6396         * common/refcounted-object.h (struct
6397         refcounted_object_ref_policy): New.
6398         * compile/compile-object-load.c: Include gdbthread.h.
6399         (store_regs): Use inferior_thread.
6400         * corelow.c (core_target::close): Use current_inferior.
6401         (core_target_open): Adjust to use first_thread_of_inferior and use
6402         the current inferior.
6403         * ctf.c (ctf_target::close): Adjust to use current_inferior.
6404         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
6405         <thread>: ... this new field.  All references adjusted.
6406         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
6407         Take a thread_info pointer instead of a ptid_t.
6408         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
6409         (dummy_frame_discard, register_dummy_frame_dtor): Take a
6410         thread_info pointer instead of a ptid_t.
6411         * elfread.c: Include "inferior.h".
6412         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
6413         Use inferior_thread.
6414         * eval.c (evaluate_subexp): Likewise.
6415         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
6416         inferior_thread.
6417         * gdb_proc_service.h (struct thread_info): Forward declare.
6418         (struct ps_prochandle) <ptid>: Delete, replaced by ...
6419         <thread>: ... this new field.  All references adjusted.
6420         * gdbarch.h, gdbarch.c: Regenerate.
6421         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
6422         'thread' parameter.  All implementations and callers adjusted.
6423         * gdbthread.h (thread_info) <set_running>: New method.
6424         (delete_thread, delete_thread_silent): Take a thread_info pointer
6425         instead of a ptid.
6426         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
6427         (first_thread_of_process): Delete, replaced by ...
6428         (first_thread_of_inferior): ... this new function.  All callers
6429         adjusted.
6430         (any_live_thread_of_process): Delete, replaced by ...
6431         (any_live_thread_of_inferior): ... this new function.  All callers
6432         adjusted.
6433         (switch_to_thread, switch_to_no_thread): Declare.
6434         (is_executing): Delete.
6435         (enable_thread_stack_temporaries): Update comment.
6436         <enable_thread_stack_temporaries>: Take a thread_info pointer
6437         instead of a ptid_t.  Incref the thread.
6438         <~enable_thread_stack_temporaries>: Decref the thread.
6439         <m_ptid>: Delete
6440         <m_thr>: New.
6441         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6442         (get_last_thread_stack_temporary)
6443         (value_in_thread_stack_temporaries, can_access_registers_thread):
6444         Take a thread_info pointer instead of a ptid_t.  All callers
6445         adjusted.
6446         * infcall.c (get_call_return_value): Use inferior_thread.
6447         (run_inferior_call): Work with thread pointers instead of ptid_t.
6448         (call_function_by_hand_dummy): Work with thread pointers instead
6449         of ptid_t.  Use thread_info_ref.
6450         * infcmd.c (proceed_thread_callback): Access thread's state
6451         directly.
6452         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
6453         access thread's state directly.
6454         (continue_command): Use inferior_thread.
6455         (info_program_command): Use find_thread_ptid and access thread
6456         state directly.
6457         (proceed_after_attach_callback): Use thread state directly.
6458         (notice_new_inferior): Take a thread_info pointer instead of a
6459         ptid_t.  All callers adjusted.
6460         (exit_inferior): Take an inferior pointer instead of a pid.  All
6461         callers adjusted.
6462         (exit_inferior_silent): New.
6463         (detach_inferior): Delete.
6464         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
6465         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
6466         (detach_inferior_command, kill_inferior_command): Use
6467         find_inferior_id instead of valid_gdb_inferior_id and
6468         gdb_inferior_id_to_pid.
6469         (inferior_command): Use inferior and thread pointers.
6470         * inferior.h (struct thread_info): Forward declare.
6471         (notice_new_inferior): Take a thread_info pointer instead of a
6472         ptid_t.  All callers adjusted.
6473         (detach_inferior): Delete declaration.
6474         (exit_inferior, exit_inferior_silent): Take an inferior pointer
6475         instead of a pid.  All callers adjusted.
6476         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
6477         (valid_gdb_inferior_id): Delete.
6478         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
6479         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
6480         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
6481         ...
6482         <inf>: ... this new field.
6483         <step_ptid>: Delete, replaced by ...
6484         <step_thread>: ... this new field.
6485         (get_displaced_stepping_state): Take an inferior pointer instead
6486         of a pid.  All callers adjusted.
6487         (displaced_step_in_progress_any_inferior): Adjust.
6488         (displaced_step_in_progress_thread): Take a thread pointer instead
6489         of a ptid_t.  All callers adjusted.
6490         (displaced_step_in_progress, add_displaced_stepping_state): Take
6491         an inferior pointer instead of a pid.  All callers adjusted.
6492         (get_displaced_step_closure_by_addr): Adjust.
6493         (remove_displaced_stepping_state): Take an inferior pointer
6494         instead of a pid.  All callers adjusted.
6495         (displaced_step_prepare_throw, displaced_step_prepare)
6496         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
6497         All callers adjusted.
6498         (start_step_over): Adjust.
6499         (infrun_thread_ptid_changed): Remove bit updating ptids in the
6500         displaced step queue.
6501         (do_target_resume): Adjust.
6502         (fetch_inferior_event): Use inferior_thread.
6503         (context_switch, get_inferior_stop_soon): Take an
6504         execution_control_state pointer instead of a ptid_t.  All callers
6505         adjusted.
6506         (switch_to_thread_cleanup): Delete.
6507         (stop_all_threads): Use scoped_restore_current_thread.
6508         * inline-frame.c: Include "gdbthread.h".
6509         (inline_state) <inline_state>: Take a thread pointer instead of a
6510         ptid_t.  All callers adjusted.
6511         <ptid>: Delete, replaced by ...
6512         <thread>: ... this new field.
6513         (find_inline_frame_state): Take a thread pointer instead of a
6514         ptid_t.  All callers adjusted.
6515         (skip_inline_frames, step_into_inline_frame)
6516         (inline_skipped_frames, inline_skipped_symbol): Take a thread
6517         pointer instead of a ptid_t.  All callers adjusted.
6518         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
6519         (inline_skipped_frames, inline_skipped_symbol): Likewise.
6520         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
6521         pointers directly.
6522         * linux-nat.c (get_detach_signal): Likewise.
6523         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
6524         (thread_db_notice_clone): Adjust.
6525         (thread_db_find_new_threads_silently)
6526         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
6527         a thread pointer instead of a ptid_t.  All callers adjusted.
6528         * mi/mi-cmd-var.c: Include "inferior.h".
6529         (mi_cmd_var_update_iter): Update to use thread pointers.
6530         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
6531         inferior directly.
6532         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
6533         out to ...
6534         (mi_output_running): ... this new function.
6535         (mi_on_resume_1): Adjust to use it.
6536         (mi_user_selected_context_changed): Adjust to use inferior_thread.
6537         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
6538         directly.
6539         (interrupt_thread_callback): : Adjust to use thread and inferior
6540         pointers.
6541         * proc-service.c: Include "gdbthread.h".
6542         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
6543         * progspace-and-thread.c: Include "inferior.h".
6544         * progspace.c: Include "inferior.h".
6545         * python/py-exitedevent.c (create_exited_event_object): Adjust to
6546         hold a reference to an inferior_object.
6547         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
6548         inferior_thread.
6549         * python/py-inferior.c (struct inferior_object): Give the type a
6550         tag name instead of a typedef.
6551         (python_on_normal_stop): No need to check if the current thread is
6552         listed.
6553         (inferior_to_inferior_object): Change return type to
6554         inferior_object.  All callers adjusted.
6555         (find_thread_object): Delete, bits factored out to ...
6556         (thread_to_thread_object): ... this new function.
6557         * python/py-infthread.c (create_thread_object): Use
6558         inferior_to_inferior_object.
6559         (thpy_is_stopped): Use thread pointer directly.
6560         (gdbpy_selected_thread): Use inferior_thread.
6561         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
6562         field, replaced with ...
6563         <thread>: ... this new field.  All users adjusted.
6564         (btpy_insn_or_gap_new): Drop const.
6565         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
6566         callers adjusted.
6567         * python/py-record.c: Include "gdbthread.h".
6568         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6569         a ptid_t.  All callers adjusted.
6570         (gdbpy_current_recording): Use inferior_thread.
6571         * python/py-record.h (recpy_record_object) <ptid>: Delete
6572         field, replaced with ...
6573         <thread>: ... this new field.  All users adjusted.
6574         (recpy_element_object) <ptid>: Delete
6575         field, replaced with ...
6576         <thread>: ... this new field.  All users adjusted.
6577         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6578         a ptid_t.  All callers adjusted.
6579         * python/py-threadevent.c: Include "gdbthread.h".
6580         (get_event_thread): Use thread_to_thread_object.
6581         * python/python-internal.h (struct inferior_object): Forward
6582         declare.
6583         (find_thread_object, find_inferior_object): Delete declarations.
6584         (thread_to_thread_object, inferior_to_inferior_object): New
6585         declarations.
6586         * record-btrace.c: Include "inferior.h".
6587         (require_btrace_thread): Use inferior_thread.
6588         (record_btrace_frame_sniffer)
6589         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
6590         (get_thread_current_frame): Use scoped_restore_current_thread and
6591         switch_to_thread.
6592         (get_thread_current_frame): Use thread pointer directly.
6593         (record_btrace_replay_at_breakpoint): Use thread's inferior
6594         pointer directly.
6595         * record-full.c: Include "inferior.h".
6596         * regcache.c: Include "gdbthread.h".
6597         (get_thread_arch_regcache): Use the inferior's address space
6598         directly.
6599         (get_thread_regcache, registers_changed_thread): New.
6600         * regcache.h (get_thread_regcache(thread_info *thread)): New
6601         overload.
6602         (registers_changed_thread): New.
6603         (remote_target) <remote_detach_1>: Swap order of parameters.
6604         (remote_add_thread): <remote_add_thread>: Return the new thread.
6605         (get_remote_thread_info(ptid_t)): New overload.
6606         (remote_target::remote_notice_new_inferior): Use thread pointers
6607         directly.
6608         (remote_target::process_initial_stop_replies): Use
6609         thread_info::set_running.
6610         (remote_target::remote_detach_1, remote_target::detach)
6611         (extended_remote_target::detach): Adjust.
6612         * stack.c (frame_show_address): Use inferior_thread.
6613         * target-debug.h (target_debug_print_thread_info_pp): New.
6614         * target-delegates.c: Regenerate.
6615         * target.c (default_thread_address_space): Delete.
6616         (memory_xfer_partial_1): Use current_inferior.
6617         (target_detach): Use current_inferior.
6618         (target_thread_address_space): Delete.
6619         (generic_mourn_inferior): Use current_inferior.
6620         * target.h (struct target_ops) <thread_address_space>: Delete.
6621         (target_thread_address_space): Delete.
6622         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
6623         pointers directly.
6624         (delete_thread_1, delete_thread, delete_thread_silent): Take a
6625         thread pointer instead of a ptid_t.  Adjust all callers.
6626         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
6627         (first_thread_of_process): Delete, replaced by ...
6628         (first_thread_of_inferior): ... this new function.  All callers
6629         adjusted.
6630         (any_thread_of_process): Rename to ...
6631         (any_thread_of_inferior): ... this, and take an inferior pointer.
6632         (any_live_thread_of_process): Rename to ...
6633         (any_live_thread_of_inferior): ... this, and take an inferior
6634         pointer.
6635         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6636         (value_in_thread_stack_temporaries)
6637         (get_last_thread_stack_temporary): Take a thread pointer instead
6638         of a ptid_t.  Adjust all callers.
6639         (thread_info::set_running): New.
6640         (validate_registers_access): Use inferior_thread.
6641         (can_access_registers_ptid): Rename to ...
6642         (can_access_registers_thread): ... this, and take a thread
6643         pointer.
6644         (print_thread_info_1): Adjust to compare thread pointers instead
6645         of ptids.
6646         (switch_to_no_thread, switch_to_thread): Make extern.
6647         (scoped_restore_current_thread::~scoped_restore_current_thread):
6648         Use m_thread pointer directly.
6649         (scoped_restore_current_thread::scoped_restore_current_thread):
6650         Use inferior_thread.
6651         (thread_command): Use thread pointer directly.
6652         (thread_num_make_value_helper): Use inferior_thread.
6653         * top.c (execute_command): Use inferior_thread.
6654         * tui/tui-interp.c: Include "inferior.h".
6655         * varobj.c (varobj_create): Use inferior_thread.
6656         (value_of_root_1): Use find_thread_global_id instead of
6657         global_thread_id_to_ptid.
6658
6659 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
6660
6661         * regcache.c (readable_regcache::read_part): Avoid memcpy when
6662         possible.
6663         (regcache::write_part): Likewise.
6664         (readable_regcache::cooked_read_part): Update comment.
6665         (readable_regcache::cooked_write_part): Likewise.
6666         * regcache.h: (readable_regcache::read_part): Likewise.
6667         (regcache::write_part): Likewise.
6668
6669 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
6670             Dirk Schubert  <dirk.schubert@arm.com>
6671
6672         * aarch64-linux-nat.c (post_attach): New.
6673         (aarch64_linux_nat_target::post_attach): Override post_attach to
6674         record the number of hardware debug registers.
6675
6676 2018-06-20  Tom Tromey  <tom@tromey.com>
6677
6678         * python/py-param.c (add_setshow_generic): Make parameters const.
6679         (parmpy_init): Update.
6680
6681 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
6682
6683         * regcache.h (regcache_cooked_read_ftype): Rename to...
6684         (register_read_ftype): ...this, change type to function_view.
6685         (class reg_buffer) <save>: Remove src parameter.
6686         (readonly_detached_regcache) <readonly_detached_regcache>: Make
6687         parameter non-const in first overload.  Remove src parameter in
6688         second overload.
6689         * regcache.c (do_cooked_read): Remove.
6690         (readonly_detached_regcache::readonly_detached_regcache): Make
6691         parameter non-const, adjust call to other constructor.
6692         (reg_buffer::save): Remove src parameter.
6693         * frame.c (do_frame_register_read): Remove.
6694         (frame_save_as_regcache): Use lambda function.
6695         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
6696         parameter to ppu2spu_data *.
6697         (ppu2spu_sniffer): Use lambda function.
6698
6699 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
6700
6701         * record-full.c (record_full_target::insert_breakpoint): Remove
6702         "struct" keyword, add const.
6703
6704 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
6705
6706         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
6707         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
6708         * configure.ac: Remove AC_PREREQ, add missing quoting.
6709         * gnulib/configure.ac: Modernize usage of
6710         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
6711         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
6712         (AUTOMAKE_VERSION): Bump to 1.15.1.
6713         * configure: Re-generate.
6714         * config.in: Re-generate.
6715         * aclocal.m4: Re-generate.
6716         * gnulib/aclocal.m4: Re-generate.
6717         * gnulib/config.in: Re-generate.
6718         * gnulib/configure: Re-generate.
6719         * gnulib/import/Makefile.in: Re-generate.
6720
6721 2018-06-19  Pedro Alves  <palves@redhat.com>
6722
6723         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
6724         (lookup_minimal_symbol_by_pc_section): ... here with
6725         gdb_assert_not_reached added.
6726
6727 2018-06-19  Pedro Alves  <palves@redhat.com>
6728
6729         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
6730         parameter with a block parameter.  Compare location's block symbol
6731         with the frame's block instead of addresses.
6732         (skip_inline_frames): Pass the current block instead of the
6733         frame's address.  Break out as soon as we determine the frame
6734         should not be skipped.
6735
6736 2018-06-18  Tom Tromey  <tom@tromey.com>
6737
6738         * solib-aix.c (solib_aix_get_section_offsets): Return
6739         unique_xmalloc_ptr.
6740         (solib_aix_solib_create_inferior_hook): Update.
6741
6742 2018-06-18  Tom Tromey  <tom@tromey.com>
6743
6744         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
6745
6746 2018-06-18  Tom Tromey  <tom@tromey.com>
6747
6748         * solib-frv.c (frv_relocate_main_executable): Use
6749         unique_xmalloc_ptr.
6750         * solib-dsbt.c (dsbt_relocate_main_executable): Use
6751         unique_xmalloc_ptr.
6752
6753 2018-06-18  Tom Tromey  <tom@tromey.com>
6754
6755         * objfiles.h (inhibit_section_map_updates): Update.
6756         (resume_section_map_updates, resume_section_map_updates_cleanup):
6757         Remove.
6758         * solib-svr4.c (svr4_handle_solib_event): Update.
6759         * objfiles.c (inhibit_section_map_updates): Return
6760         scoped_restore_tmpl<int>.
6761         (resume_section_map_updates, resume_section_map_updates_cleanup):
6762         Remove.
6763
6764 2018-06-18  Tom Tromey  <tom@tromey.com>
6765
6766         * valprint.h (read_string): Update.
6767         * valprint.c (read_string): Change type of "buffer".
6768         (val_print_string): Update.
6769         * python/py-value.c (valpy_string): Update.
6770         * language.h (struct language_defn) <la_get_string>: Change
6771         type of "buffer".
6772         (default_get_string, c_get_string): Update.
6773         * language.c (default_get_string): Change type of "buffer".
6774         * guile/scm-value.c (gdbscm_value_to_string): Update.
6775         * c-lang.c (c_get_string): Change type of "buffer".
6776
6777 2018-06-18  Tom Tromey  <tom@tromey.com>
6778
6779         * ser-mingw.c (struct pipe_state_destroyer): New.
6780         (pipe_state_up): New typedef.
6781         (cleanup_pipe_state): Remove.
6782         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
6783
6784 2018-06-18  Tom Tromey  <tom@tromey.com>
6785
6786         * rust-lang.h (rust_yyerror): Don't declare.
6787         * rust-lang.c (rust_language_defn): Update.
6788         * rust-exp.y (yyerror): Now static.
6789         * parse.c (parse_exp_in_context_1): Update.
6790         * p-lang.h (p_yyerror): Don't declare.
6791         * p-lang.c (p_language_defn): Update.
6792         * p-exp.y (yyerror): Now static.
6793         * opencl-lang.c (opencl_language_defn): Update.
6794         * objc-lang.c (objc_language_defn): Update.
6795         * m2-lang.h (m2_yyerror): Don't declare.
6796         * m2-lang.c (m2_language_defn): Update.
6797         * m2-exp.y (yyerror): Now static.
6798         * language.h (struct language_defn) <la_error>: Remove.
6799         * language.c (unk_lang_error): Remove.
6800         (unknown_language_defn, auto_language_defn): Remove.
6801         * go-lang.h (go_yyerror): Don't declare.
6802         * go-lang.c (go_language_defn): Update.
6803         * go-exp.y (yyerror): Now static.
6804         * f-lang.h (f_yyerror): Don't declare.
6805         * f-lang.c (f_language_defn): Update.
6806         * f-exp.y (yyerror): Now static.
6807         * d-lang.h (d_yyerror): Don't declare.
6808         * d-lang.c (d_language_defn): Update.
6809         * d-exp.y (yyerror): Now static.
6810         * c-lang.h (c_yyerror): Don't declare.
6811         * c-lang.c (c_language_defn, cplus_language_defn)
6812         (asm_language_defn, minimal_language_defn): Update.
6813         * c-exp.y (yyerror): Now static.
6814         * ada-lang.h (ada_yyerror): Don't declare.
6815         * ada-lang.c (ada_language_defn): Update.
6816         * ada-exp.y (yyerror): Now static.
6817
6818 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
6819
6820         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
6821         (store_sveregs_to_thread): Likewise.
6822         (aarch64_linux_fetch_inferior_registers): Check for SVE.
6823         (aarch64_linux_store_inferior_registers): Likewise.
6824         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
6825         function.
6826         (aarch64_sve_regs_copy_to_regcache): Likewise.
6827         (aarch64_sve_regs_copy_from_regcache): Likewise.
6828         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
6829         declaration.
6830         (aarch64_sve_regs_copy_to_regcache): Likewise.
6831         (aarch64_sve_regs_copy_from_regcache): Likewise.
6832         (sve_context): Structure from Linux headers.
6833         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
6834         (SVE_SIG_ZREG_SIZE): Likewise.
6835         (SVE_SIG_PREG_SIZE): Likewise.
6836         (SVE_SIG_FFR_SIZE): Likewise.
6837         (SVE_SIG_REGS_OFFSET): Likewise.
6838         (SVE_SIG_ZREGS_OFFSET): Likewise.
6839         (SVE_SIG_ZREG_OFFSET): Likewise.
6840         (SVE_SIG_ZREGS_SIZE): Likewise.
6841         (SVE_SIG_PREGS_OFFSET): Likewise.
6842         (SVE_SIG_PREG_OFFSET): Likewise.
6843         (SVE_SIG_PREGS_SIZE): Likewise.
6844         (SVE_SIG_FFR_OFFSET): Likewise.
6845         (SVE_SIG_REGS_SIZE): Likewise.
6846         (SVE_SIG_CONTEXT_SIZE): Likewise.
6847         (SVE_PT_REGS_MASK): Likewise.
6848         (SVE_PT_REGS_FPSIMD): Likewise.
6849         (SVE_PT_REGS_SVE): Likewise.
6850         (SVE_PT_VL_INHERIT): Likewise.
6851         (SVE_PT_VL_ONEXEC): Likewise.
6852         (SVE_PT_REGS_OFFSET): Likewise.
6853         (SVE_PT_FPSIMD_OFFSET): Likewise.
6854         (SVE_PT_FPSIMD_SIZE): Likewise.
6855         (SVE_PT_SVE_ZREG_SIZE): Likewise.
6856         (SVE_PT_SVE_PREG_SIZE): Likewise.
6857         (SVE_PT_SVE_FFR_SIZE): Likewise.
6858         (SVE_PT_SVE_FPSR_SIZE): Likewise.
6859         (SVE_PT_SVE_FPCR_SIZE): Likewise.
6860         (__SVE_SIG_TO_PT): Likewise.
6861         (SVE_PT_SVE_OFFSET): Likewise.
6862         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
6863         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
6864         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
6865         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
6866         (SVE_PT_SVE_PREG_OFFSET): Likewise.
6867         (SVE_PT_SVE_PREGS_SIZE): Likewise.
6868         (SVE_PT_SVE_FFR_OFFSET): Likewise.
6869         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
6870         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
6871         (SVE_PT_SVE_SIZE): Likewise.
6872         (SVE_PT_SIZE): Likewise.
6873         (HAS_SVE_STATE): New define.
6874
6875 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
6876
6877         * nat/aarch64-sve-linux-sigcontext.h: New file.
6878         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
6879         new files.
6880         (SVE_VQ_MIN): Likewise.
6881         (SVE_VQ_MAX): Likewise.
6882         (SVE_VL_MIN): Likewise.
6883         (SVE_VL_MAX): Likewise.
6884         (SVE_NUM_ZREGS): Likewise.
6885         (SVE_NUM_PREGS): Likewise.
6886         (sve_vl_valid): Likewise.
6887         (struct user_sve_header): Likewise.
6888
6889 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
6890             Richard Bunt <Richard.Bunt@arm.com>
6891
6892         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
6893         was requested by GDB.
6894
6895 2018-06-15  Tom de Vries  <tdevries@suse.de>
6896
6897         * MAINTAINERS (Write After Approval): Add Tom de Vries.
6898
6899 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
6900
6901         * gnulib/update-gnulib.sh: Print expected versions of
6902         autoconf/aclocal.
6903
6904 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
6905
6906         * arch-utils.c (default_type_align): Use type_length_units.
6907         * gdbtypes.c (type_align): Use type_length_units.
6908
6909 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6910
6911         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
6912         of 'define' command.
6913
6914 2018-06-14  Tom de Vries  <tdevries@suse.de>
6915
6916         PR cli/22573
6917         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
6918         get_no_prettyformat_print_options.
6919
6920 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
6921
6922         * sparc-nat.h: Include target.h.
6923         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
6924         <fetch_registers>: Remove this argument in function call.
6925         <store_registers>: Remove this argument in function call, remove
6926         extra semicolon.
6927         <low_forget_process>: Call sparc64_forget_process instead of
6928         sparc_forget_process.
6929
6930 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
6931
6932         * procfs.c (_initialize_procfs): Use add_inf_child_target.
6933         (procfs_target::make_corefile_notes): Adjust to new
6934         target_read_alloc return type.
6935
6936 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6937             Stephen Roberts  <stephen.roberts@arm.com>
6938
6939         PR gdb/22882
6940         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
6941         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
6942         Move should_notify_stop local into more inner scope.
6943
6944 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6945             Stephen Roberts  <stephen.roberts@arm.com>
6946
6947         PR gdb/22882
6948         * infrun.c (resume_1): Add call to mark_async_event_handler.
6949
6950 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6951
6952         * infrun.c (do_target_wait): Change old version of $pc printed.
6953
6954 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
6955
6956         * dwarf2read.c (read_index_from_section): Rename to...
6957         (read_gdb_index_from_section): ... this, update all callers.
6958         (dwarf2_read_index): Rename to...
6959         (dwarf2_read_gdb_index): ... this, update all callers.
6960
6961 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
6962
6963         * gdb/hppa-linux-nat.c
6964         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
6965         hppa_linux_nat_target::fetch_registers.
6966
6967 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6968
6969         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
6970         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
6971         (AARCH64_DWARF_SVE_FFR): Likewise.
6972         (AARCH64_DWARF_SVE_P0): Likewise.
6973         (AARCH64_DWARF_SVE_Z0): Likewise.
6974
6975 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6976
6977         * common/common-regcache.h (raw_compare): New function.
6978         * regcache.c (regcache::raw_compare): Likewise.
6979         * regcache.h (regcache::raw_compare): New declaration.
6980
6981 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6982
6983         * common/common-regcache.h (reg_buffer_common): New structure.
6984         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
6985         (reg_buffer::raw_supply): Likewise.
6986         (reg_buffer::raw_supply_integer): Likewise.
6987         (reg_buffer::raw_supply_zeroed): Likewise.
6988         (reg_buffer::raw_collect): Likewise.
6989         (reg_buffer::raw_collect_integer): Likewise.
6990         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
6991         (reg_buffer::raw_supply): Likewise.
6992         (reg_buffer::raw_supply_integer): Likewise.
6993         (reg_buffer::raw_supply_zeroed): Likewise.
6994         (reg_buffer::raw_collect): Likewise.
6995         (reg_buffer::raw_collect_integer): Likewise.
6996
6997 2018-06-10  Tom Tromey  <tom@tromey.com>
6998
6999         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
7000         (class remote_state) <stop_reply_queue>: Now std::vector.
7001         (remote_state::~remote_state)
7002         (remote_target::stop_reply_queue_length): Update.
7003         (struct queue_iter_param, remove_child_of_pending_fork)
7004         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
7005         (check_pending_event_prevents_wildcard_vcont_callback)
7006         (remove_stop_reply_for_inferior)
7007         (remove_stop_reply_of_remote_state)
7008         (remote_notif_remove_once_on_match)
7009         (stop_reply_match_ptid_and_ws)
7010         (remote_kill_child_of_pending_fork): Remove.
7011         (remote_target::remove_new_fork_children)
7012         (remote_target::check_pending_events_prevent_wildcard_vcont)
7013         (remote_target::discard_pending_stop_replies)
7014         (remote_target::discard_pending_stop_replies_in_queue)
7015         (remote_target::remote_notif_remove_queued_reply)
7016         (remote_target::queued_stop_reply)
7017         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
7018         (remote_target::wait, remote_target::kill_new_fork_children)
7019         (remote_target::async): Update.
7020
7021 2018-06-10  Tom Tromey  <tom@tromey.com>
7022
7023         * record-full.c (record_full_arch_list_cleanups): Remove.
7024         (record_full_message): Use try/catch.
7025         (record_full_wait_cleanups): Remove.
7026         (record_full_wait_1): Use try/catch.
7027         (record_full_restore): Likewise.
7028
7029 2018-06-10  Tom Tromey  <tom@tromey.com>
7030
7031         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
7032         declare VEC.  Add constructor.
7033         <in_target_beneath>: Now bool.
7034         (record_full_breakpoints): Now a std::vector, static.
7035         (record_full_sync_record_breakpoints)
7036         (record_full_init_record_breakpoints)
7037         (record_full_target::insert_breakpoint)
7038         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
7039
7040 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
7041
7042         * dwarf2read.c (process_cu_includes): Remove struct keyword.
7043         * serial.c (serial_interface_lookup): Remove struct keyword.
7044
7045 2018-06-10  Tom Tromey  <tom@tromey.com>
7046
7047         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
7048         method.
7049         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
7050         a method.
7051         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
7052         method.
7053         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
7054         "beneath" as a method.
7055         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
7056         Use "beneath" as a method.
7057
7058 2018-06-10  Tom Tromey  <tom@tromey.com>
7059
7060         * tracefile.c (struct trace_file_writer_deleter): New.
7061         <operator()>: Rename from trace_file_writer_xfree.
7062         (trace_file_writer_up): New typedef.
7063         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
7064
7065 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
7066
7067         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
7068         <m_registers, m_register_status>: Change type to
7069         std::unique_ptr.
7070         * regcache.c (reg_buffer::reg_buffer): Use new instead of
7071         XCNEWVEC.
7072
7073 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
7074
7075         * common/common-regcache.h (enum register_status): Add
7076         underlying type "signed char".
7077         * regcache.h (reg_buffer) <m_register_status>: Change type to
7078         register_status *.
7079         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
7080         register_status instead of signed char.
7081         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
7082         (reg_buffer::get_register_status): Remove cast.
7083         (readable_regcache::raw_read): Remove cast.
7084         (readable_regcache::cooked_read): Remove cast.
7085
7086 2018-06-09  Tom Tromey  <tom@tromey.com>
7087
7088         * source.c (reverse_search_command, forward_search_command): Use
7089         scoped_fd.
7090
7091 2018-06-09  Tom Tromey  <tom@tromey.com>
7092
7093         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
7094         (serial_ops_list): Now static, std::vector.
7095         (serial_interface_lookup, serial_add_interface): Update.
7096
7097 2018-06-09  Tom Tromey  <tom@tromey.com>
7098
7099         * dwarf2read.c (process_cu_includes): Update.
7100         (process_full_comp_unit): Update.
7101         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
7102         std::vector.
7103
7104 2018-06-08  Paul Koning  <paul_koning@dell.com>
7105
7106         PR gdb/23252
7107
7108         * python/python.c (do_start_initialization):
7109         Avoid call to internal Python API.
7110         (init__gdb_module): New function.
7111
7112 2018-06-08  Gary Benson <gbenson@redhat.com>
7113
7114         * linux-thread-db.c (valprint.h): New include.
7115         (struct check_thread_db_info): New structure.
7116         (check_thread_db_on_load, tdb_testinfo): New static globals.
7117         (check_thread_db, check_thread_db_callback): New functions.
7118         (try_thread_db_load_1): Run integrity checks if requested.
7119         (maintenance_check_libthread_db): New function.
7120         (_initialize_thread_db): Register "maint check libthread-db"
7121         and "maint set/show check-libthread-db".
7122         * NEWS: Mention the above new commands.
7123
7124 2018-06-08  Tom Tromey  <tom@tromey.com>
7125
7126         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
7127         now a method.
7128
7129 2018-06-08  Tom Tromey  <tom@tromey.com>
7130
7131         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
7132
7133 2018-06-08  Tom Tromey  <tom@tromey.com>
7134
7135         * common/btrace-common.h (struct btrace_data): Add constructor,
7136         destructor, move assignment operator.
7137         <empty, clear, fini>: New methods.
7138         <format>: Initialize.
7139         (btrace_data_init, btrace_data_fini, btrace_data_clear)
7140         (btrace_data_empty): Don't declare.
7141         * common/btrace-common.c (btrace_data_init): Remove.
7142         (btrace_data::fini): Rename from btrace_data_fini.
7143         (btrace_data::empty): Rename from btrace_data_empty.
7144         (btrace_data::clear): Rename from btrace_data_clear.  Return
7145         bool.
7146         * btrace.h (make_cleanup_btrace_data): Don't declare.
7147         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
7148         (parse_xml_btrace): Update.
7149         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
7150         (maint_btrace_clear_packet_history_cmd): Update.
7151
7152 2018-06-07  Pedro Alves  <palves@redhat.com>
7153
7154         * target.h (target_ops) <beneath>: Now a method.  All references
7155         updated.
7156         (class target_stack): New.
7157         * target.c (g_target_stack): New.
7158         (g_current_top_target): Delete.
7159         (current_top_target): Get the top target out of g_target_stack.
7160         (target_stack::push, target_stack::unpush): New.
7161         (push_target, unpush_target): Reimplement.
7162         (target_is_pushed): Reimplement in terms of g_target_stack.
7163         (target_ops::beneath, target_stack::find_beneath): New.
7164
7165 2018-06-07  Pedro Alves  <palves@redhat.com>
7166
7167         * target.h (find_target_beneath): Delete declaration.
7168         * target.c (find_target_beneath): Delete definition.
7169         * aix-thread.c: All callers of find_target_beneath adjusted to
7170         call target_ops::beneath instead.
7171         * bsd-uthread.c: Likewise.
7172         * linux-thread-db.c: Likewise.
7173         * ravenscar-thread.c: Likewise.
7174         * sol-thread.c: Likewise.
7175         * spu-multiarch.c: Likewise.
7176
7177 2018-06-07  Pedro Alves  <palves@redhat.com>
7178
7179         * target.h (target_ops) <beneath>: Now a method.  All references
7180         updated.
7181         (target_ops) <m_beneath>: New.
7182         * target.c (target_ops::beneath): New.
7183         * corelow.c: Adjust all references to target_ops::beneath.
7184         * linux-thread-db.c: Likewise.
7185         * make-target-delegates: Likewise.
7186         * record-btrace.c: Likewise.
7187         * record-full.c: Likewise.
7188         * remote.c: Likewise.
7189         * target.c: Likewise.
7190         * target-delegates.c: Regenerate.
7191
7192 2018-06-07  Pedro Alves  <palves@redhat.com>
7193
7194         * target.h (target_stack): Delete.
7195         (current_top_target): Declare function.
7196         * target.c (target_stack): Delete.
7197         (g_current_top_target): New.
7198         (current_top_target): New function.
7199         * auxv.c: Use current_top_target instead of target_stack
7200         throughout.
7201         * avr-tdep.c: Likewise.
7202         * breakpoint.c: Likewise.
7203         * corefile.c: Likewise.
7204         * elfread.c: Likewise.
7205         * eval.c: Likewise.
7206         * exceptions.c: Likewise.
7207         * frame.c: Likewise.
7208         * gdbarch-selftests.c: Likewise.
7209         * gnu-v3-abi.c: Likewise.
7210         * ia64-tdep.c: Likewise.
7211         * ia64-vms-tdep.c: Likewise.
7212         * infcall.c: Likewise.
7213         * infcmd.c: Likewise.
7214         * infrun.c: Likewise.
7215         * linespec.c: Likewise.
7216         * linux-tdep.c: Likewise.
7217         * minsyms.c: Likewise.
7218         * ppc-linux-nat.c: Likewise.
7219         * ppc-linux-tdep.c: Likewise.
7220         * procfs.c: Likewise.
7221         * regcache.c: Likewise.
7222         * remote.c: Likewise.
7223         * rs6000-tdep.c: Likewise.
7224         * s390-linux-nat.c: Likewise.
7225         * s390-tdep.c: Likewise.
7226         * solib-aix.c: Likewise.
7227         * solib-darwin.c: Likewise.
7228         * solib-dsbt.c: Likewise.
7229         * solib-spu.c: Likewise.
7230         * solib-svr4.c: Likewise.
7231         * solib-target.c: Likewise.
7232         * sparc-tdep.c: Likewise.
7233         * sparc64-tdep.c: Likewise.
7234         * spu-tdep.c: Likewise.
7235         * symfile.c: Likewise.
7236         * symtab.c: Likewise.
7237         * target-descriptions.c: Likewise.
7238         * target-memory.c: Likewise.
7239         * target.c: Likewise.
7240         * target.h: Likewise.
7241         * tracefile-tfile.c: Likewise.
7242         * tracepoint.c: Likewise.
7243         * valops.c: Likewise.
7244         * valprint.c: Likewise.
7245         * value.c: Likewise.
7246         * windows-tdep.c: Likewise.
7247         * mi/mi-main.c: Likewise.
7248
7249 2018-06-07  Tom Tromey  <tom@tromey.com>
7250
7251         * valprint.h (build_address_symbolic): Declare.
7252         * printcmd.c (print_address_symbolic): Update.
7253         (build_address_symbolic): Change "name" and "filename" to
7254         std::string.
7255         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
7256         Update.
7257         * defs.h (build_address_symbolic): Remove declaration.
7258
7259 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
7260
7261         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
7262         (aarch64_vnv_type): Add function.
7263         (aarch64_pseudo_register_name): Add V regs for SVE.
7264         (aarch64_pseudo_register_type): Likewise.
7265         (aarch64_pseudo_register_reggroup_p): Likewise.
7266         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
7267         (aarch64_pseudo_read_value): Add V regs for SVE.
7268         (aarch64_pseudo_write_2): Use V0 offset for SVE
7269         (aarch64_pseudo_write): Add V regs for SVE.
7270         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
7271
7272 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
7273
7274         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
7275         (sve_vl_from_vq): Likewise.
7276
7277 2018-06-05  Tom Tromey  <tom@tromey.com>
7278
7279         * cli/cli-cmds.c (show_version): Update.
7280         * top.c (print_gdb_version): Add "interactive" parameter.
7281         Update.
7282         * main.c (captured_main_1): Update.
7283         * top.h (print_gdb_version): Add "interactive" parameter and a
7284         comment.
7285
7286 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
7287
7288         * common/enum-flags.h: Add trailing semicolon to example in
7289         comment.
7290
7291 2018-06-05  Tom Tromey  <tom@tromey.com>
7292
7293         PR cli/12326:
7294         * NEWS: Add entry about pager.
7295         * utils.c (pagination_disabled_for_command): New global.
7296         (prompt_for_continue): Allow "c" response to prompt.
7297         (reinitialize_more_filter): Clear
7298         pagination_disabled_for_command.
7299         (fputs_maybe_filtered): Check pagination_disabled_for_command.
7300
7301 2018-06-04  Tom Tromey  <tom@tromey.com>
7302
7303         * ada-lang.h (ada_lookup_symbol_list): Update.
7304         * ada-lang.c (resolve_subexp): Update.
7305         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
7306         parameter.
7307         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
7308         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
7309         results parameter to std::vector.
7310         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
7311         Update.
7312         * ada-exp.y (block_lookup): Update.
7313         (select_possible_type_sym): Change type of syms.  Remove nsyms
7314         parameter.
7315         (write_var_or_type, write_name_assoc): Update.
7316
7317 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
7318
7319         * windows-nat.c (windows_nat_target::xfer_partial): Return
7320         TARGET_XFER_E_IO if we need to delegate to the target beneath
7321         but BENEATH is NULL.
7322
7323 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
7324
7325         * Makefile.in (config.status): Add configure.nat as a
7326         dependency.
7327
7328 2018-06-04  Tom Tromey  <tom@tromey.com>
7329
7330         * cp-name-parser.y (cpname_state): Add method declarations.
7331         (HANDLE_QUAL): Update.
7332         (cpname_state::d_grab, cpname_state::fill_comp)
7333         (cpname_state::make_operator, cpname_state::make_dtor)
7334         (cpname_state::make_builtin_type, cpname_state::make_name)
7335         (cpname_state::d_qualify, cpname_state::d_int_type)
7336         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
7337         (%union): Move earlier.
7338
7339 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7340
7341         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
7342
7343 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7344
7345         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
7346         (aarch64_pseudo_write_1): Likewise.
7347         (aarch64_pseudo_read_value): Use helper.
7348         (aarch64_pseudo_write): Likewise.
7349
7350 2018-06-04  Pedro Alves  <palves@redhat.com>
7351
7352         * darwin-nat.c (darwin_ops): Delete.
7353         (darwin_attach_pid): Use get_native_target.
7354
7355 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7356
7357         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
7358         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
7359
7360 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7361
7362         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
7363         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
7364         (aarch64_gdbarch_init): Check for SVE.
7365         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
7366
7367 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7368
7369         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
7370         * aarch64-tdep.h (aarch64_read_description): Likewise.
7371         * arch/aarch64.c (aarch64_create_target_description): Likewise.
7372         * arch/aarch64.h (aarch64_create_target_description): Likewise.
7373         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
7374         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
7375         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
7376
7377 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
7378
7379         * value.c (value_fetch_lazy_bitfield): New.
7380         (value_fetch_lazy_memory): New.
7381         (value_fetch_lazy_register): New.
7382         (value_fetch_lazy): Factor out to smaller functions.
7383
7384 2018-06-01  Tom Tromey  <tom@tromey.com>
7385
7386         * cp-name-parser.y (backslashable, represented): Now const.
7387
7388 2018-06-01  Tom Tromey  <tom@tromey.com>
7389
7390         * cp-name-parser.y: Include parser-defs.h.
7391         (parser_fprintf): Remove declaration.
7392
7393 2018-06-01  Tom Tromey  <tom@tromey.com>
7394
7395         * cp-name-parser.y: Use %pure-parser, %lex-param, and
7396         %parse-param.
7397         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
7398         (global_result): Remove globals.
7399         (struct cpname_state): New.
7400         (yyparse): Don't declare.
7401         (yylex, yyerror): Move declarations after %union.
7402         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
7403         (make_name): Add state parameter.
7404         Update all callers.
7405         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
7406         parameter.
7407         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
7408         Update.
7409         (yylex): Add lvalp, state parameters.
7410         (yyerror): Add state parameter.
7411         (cp_demangled_name_to_comp): Update.
7412
7413 2018-06-01  Tom Tromey  <tom@tromey.com>
7414
7415         * cp-name-parser.y (parser_fprintf): Declare.
7416         (GDB_YY_REMAP_PREFIX): Define.
7417         Include yy-remap.h.  Don't redefine yy* identifiers.
7418
7419 2018-06-01  Tom Tromey  <tom@tromey.com>
7420
7421         * python/py-type.c (typy_legacy_template_argument): Update.
7422         * cp-support.h (cp_demangled_name_to_comp): Update.
7423         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
7424         parameter to be a "std::string *".
7425         (main): Update.
7426
7427 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
7428
7429         * ada-lex.l: Include "diagnostics.h" instead of
7430         "common/diagnostics.h".
7431         * unittests/environ-selftests.c: Likewise.
7432         * common/diagnostics.h: Moved to ../include.
7433
7434 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
7435
7436         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
7437         to language_mode_manual while calling breakpoint_re_set_one.
7438
7439 2018-06-01  Tom Tromey  <tom@tromey.com>
7440
7441         * valops.c (value_cast_structs, destructor_name_p): Update.
7442         * symtab.c (gdb_mangle_name): Update.
7443         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
7444         Update.
7445         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
7446         (pascal_object_print_value_fields, pascal_object_print_value):
7447         Update.
7448         * p-typeprint.c (pascal_type_print_derivation_info): Update.
7449         * linespec.c (find_methods): Update.
7450         * gdbtypes.h (type_name_no_tag): Remove.
7451         (type_name_or_error): Rename from type_name_no_tag_or_error.
7452         * gdbtypes.c (type_name_no_tag): Remove.
7453         (type_name_or_error): Rename from type_name_no_tag_or_error.
7454         (lookup_struct_elt_type, check_typedef): Update.
7455         * expprint.c (print_subexp_standard): Update.
7456         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
7457         * d-namespace.c (d_lookup_nested_symbol): Update.
7458         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
7459         (cp_print_class_member): Update.
7460         * cp-namespace.c (cp_lookup_nested_symbol): Update.
7461         * completer.c (add_struct_fields): Update.
7462         * c-typeprint.c (cp_type_print_derivation_info)
7463         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
7464         Update.
7465         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
7466         (ada_prefer_type, ada_is_exception_sym): Update.
7467
7468 2018-06-01  Tom Tromey  <tom@tromey.com>
7469
7470         * valops.c (enum_constant_from_type, value_namespace_elt)
7471         (value_maybe_namespace_elt): Update.
7472         * valarith.c (find_size_for_pointer_math): Update.
7473         * target-descriptions.c (make_gdb_type): Update.
7474         * symmisc.c (print_symbol): Update.
7475         * stabsread.c (define_symbol, read_type)
7476         (complain_about_struct_wipeout, add_undefined_type)
7477         (cleanup_undefined_types_1): Update.
7478         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
7479         (rust_range_type_p, val_print_struct, rust_print_struct_def)
7480         (rust_internal_print_type, rust_composite_type)
7481         (rust_evaluate_funcall, rust_evaluate_subexp)
7482         (rust_inclusive_range_type_p): Update.
7483         * python/py-type.c (typy_get_tag): Update.
7484         * p-typeprint.c (pascal_type_print_base): Update.
7485         * mdebugread.c (parse_symbol, parse_type): Update.
7486         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
7487         Update.
7488         * guile/scm-type.c (gdbscm_type_tag): Update.
7489         * go-lang.c (sixg_string_p): Update.
7490         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
7491         Update.
7492         * gdbtypes.h (struct main_type) <tag_name>: Remove.
7493         (TYPE_TAG_NAME): Remove.
7494         * gdbtypes.c (type_name_no_tag): Simplify.
7495         (check_typedef, check_types_equal, recursive_dump_type)
7496         (copy_type_recursive, arch_composite_type): Update.
7497         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
7498         in summary mode when needed.
7499         * eval.c (evaluate_funcall): Update.
7500         * dwarf2read.c (fixup_go_packaging, read_structure_type)
7501         (process_structure_scope, read_enumeration_type)
7502         (read_namespace_type, read_module_type, determine_prefix): Update.
7503         * cp-support.c (inspect_type): Update.
7504         * coffread.c (process_coff_symbol, decode_base_type): Update.
7505         * c-varobj.c (c_is_path_expr_parent): Update.
7506         * c-typeprint.c (c_type_print_base_struct_union): Update.
7507         (c_type_print_base_1): Update.  Print struct/class/union/enum in
7508         summary when using C language.
7509         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
7510         (gen_maybe_namespace_elt): Update.
7511         * ada-lang.c (ada_type_name): Simplify.
7512         (empty_record, ada_template_to_fixed_record_type_1)
7513         (template_to_static_fixed_type)
7514         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
7515
7516 2018-06-01  Tom Tromey  <tom@tromey.com>
7517
7518         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
7519         c_print_type.
7520         * c-typeprint.c (c_print_type_1): Add "language" parameter.
7521         (c_print_type): Update.
7522         (c_print_type): New overload.
7523         (c_type_print_varspec_prefix, c_type_print_args)
7524         (c_type_print_varspec_suffix, c_print_type_no_offsets)
7525         (c_type_print_base_struct_union, c_type_print_base_1)
7526         (cp_type_print_method_args): Add "language" parameter.
7527         (c_type_print_base): Update.
7528         * c-lang.h (c_print_type): Add new overload.
7529
7530 2018-06-01  Tom Tromey  <tom@tromey.com>
7531
7532         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
7533         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
7534
7535 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
7536
7537         * aarch64-tdep.c (aarch64_sve_register_names): New const
7538         var.
7539         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
7540         (AARCH64_SVE_Z_REGS_NUM): New define.
7541         (AARCH64_SVE_P_REGS_NUM): Likewise.
7542         (AARCH64_SVE_NUM_REGS): Likewise.
7543
7544 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
7545
7546         * nat/linux-ptrace.h [__alpha__]
7547         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
7548         definitions.
7549
7550 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
7551
7552         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
7553         the endianness selected.
7554         * NEWS: Document `set endian auto' mode operation update.
7555
7556 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7557
7558         * Makefile.in: Add new header.
7559         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
7560         (sve_vl_from_vg): Likewise.
7561         (sve_vq_from_vl): Likewise.
7562         (sve_vl_from_vq): Likewise.
7563         (sve_vq_from_vg): Likewise.
7564         (sve_vg_from_vq): Likewise.
7565         * configure.nat: Add new c file.
7566         * nat/aarch64-sve-linux-ptrace.c: New file.
7567         * nat/aarch64-sve-linux-ptrace.h: New file.
7568
7569 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7570
7571         * aarch64-linux-nat.c (aarch64_linux_read_description):
7572         Add parmeter zero.
7573         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
7574         Likewise.
7575         * aarch64-tdep.c (tdesc_aarch64_list): Add.
7576         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
7577         (aarch64_gdbarch_init): Add parmeter zero.
7578         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
7579         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
7580         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
7581         parmeter.
7582         * doc/gdb.texinfo: Describe SVE feature
7583         * features/aarch64-sve.c: New file.
7584
7585 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
7586
7587         PR gdb/23210
7588         * gdbarch.sh (significant_addr_bit): Default to zero when
7589         not set by target architecture.
7590         * gdbarch.c: Re-generated.
7591         * utils.c (address_significant): Update.
7592
7593 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
7594
7595         * stack.c (func_command): Remove trailing newline in call to error.
7596
7597 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7598
7599         * regcache.h (regcache_raw_collect): Remove, update callers to
7600         use regcache::raw_collect.
7601         * regcache.c (regcache_raw_collect): Remove.
7602
7603 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7604
7605         * regcache.h (regcache_raw_supply): Remove, update callers to
7606         use detached_regcache::raw_supply.
7607         * regcache.c (regcache_raw_supply): Remove.
7608
7609 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7610
7611         * regcache.h (regcache_cooked_write_part): Remove, update
7612         callers to use regcache::cooked_write_part.
7613         * regcache.c (regcache_cooked_write_part): Remove.
7614
7615 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7616
7617         * regcache.h (regcache_cooked_read_part): Remove, update callers
7618         to use readable_regcache::cooked_read_part.
7619         * regcache.c (regcache_cooked_read_part): Remove.
7620
7621 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7622
7623         * regcache.h (regcache_cooked_read_value): Remove, update
7624         callers to use readable_regcache::cooked_read_value.
7625         * regcache.c (regcache_cooked_read_value): Remove.
7626
7627 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7628
7629         * regcache.h (regcache_cooked_write): Remove, update callers to
7630         use regcache::cooked_write.
7631         * regcache.c (regcache_cooked_write): Remove.
7632
7633 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7634
7635         * regcache.h (regcache_invalidate): Remove, update callers to
7636         use detached_regcache::invalidate instead.
7637         * regcache.c (regcache_invalidate): Remove.
7638
7639 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7640
7641         * regcache.h (regcache_raw_write_part): Remove, update callers
7642         to use regcache::raw_write_part instead.
7643         * regcache.c (regcache_raw_write_part): Remove.
7644
7645 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7646
7647         * regcache.h (regcache_raw_read_part): Remove, update callers to
7648         use readable_regcache::raw_read_part instead.
7649         * regcache.c (regcache_raw_read_part): Remove.
7650
7651 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7652
7653         * regcache.h (regcache_cooked_read): Remove, update callers to
7654         use readable_regcache::cooked_read instead.
7655         * regcache.c (regcache_cooked_read): Remove.
7656
7657 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7658
7659         * regcache.h (regcache_raw_write): Remove, update callers to use
7660         regcache::raw_write instead.
7661         * regcache.c (regcache_raw_write): Remove.
7662
7663 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7664
7665         * regcache.h (regcache_raw_read): Remove, update callers to use
7666         readable_regcache::raw_read instead.
7667         * regcache.c (regcache_raw_read): Remove.
7668
7669 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7670
7671         * regcache.h (regcache_raw_update): Remove, update callers to
7672         use readable_regcache::raw_update instead.
7673         * regcache.c (regcache_raw_update): Remove.
7674
7675 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7676
7677         * regcache.h (regcache_register_status): Remove, update callers
7678         to use reg_buffer::get_register_status directly instead.
7679         * regcache.c (regcache_register_status): Remove.
7680
7681 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7682
7683         * regcache.h (regcache_get_ptid): Remove, update all callers to
7684         call regcache::ptid instead.
7685         * regcache.c (regcache_get_ptid): Remove.
7686
7687 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7688
7689         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
7690
7691 2018-05-30  Pedro Alves  <palves@redhat.com>
7692
7693         * common/common-exceptions.h (exception_rethrow): Use
7694         ATTRIBUTE_NORETURN.
7695
7696 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
7697
7698         * breakpoint.c (print_solib_event, check_status_catch_solib):
7699         Remove struct keyword in range-based for loops.
7700         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
7701         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
7702         Likewise.
7703         * linespec.c (find_superclass_methods, search_minsyms_for_name):
7704         Likewise.
7705         * symfile.c (addr_info_make_relative): Likewise.
7706         * thread.c (value_in_thread_stack_temporaries): Likewise.
7707
7708 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
7709
7710         PR gdb/16841
7711         * valops.c (value_struct_elt_for_reference): Call check_typedef on
7712         aggregate type to get its real type before accessing it.
7713
7714 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
7715
7716         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
7717         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
7718         * coff-pe-read.c (add_pe_forwarded_sym): Replace
7719         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
7720         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
7721         * jit.c (jit_breakpoint_re_set_internal): Likewise.
7722         * printcmd.c (info_address_command): Likewise.
7723
7724 2018-05-29  Tom Tromey  <tom@tromey.com>
7725
7726         * windows-nat.c (handle_exception): Update fall-through comment.
7727
7728 2018-05-29  Tom Tromey  <tom@tromey.com>
7729
7730         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
7731         (struct program_space) <added_solibs>: Now a std::vector.
7732         * breakpoint.c (print_solib_event): Update.
7733         (check_status_catch_solib): Update.
7734         * progspace.c (clear_program_space_solib_cache): Update.
7735         * solib.c (update_solib_list): Update.
7736
7737 2018-05-29  Tom Tromey  <tom@tromey.com>
7738
7739         * python/py-type.c (typy_richcompare): Update.
7740         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
7741         * gdbtypes.h (types_deeply_equal): Return bool.
7742         (types_equal): Likewise.
7743         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
7744         declare VEC.
7745         (check_types_equal): Change worklist to std::vector.  Return
7746         bool.
7747         (struct type_equality_entry): Add constructor.
7748         (compare_maybe_null_strings): Return bool.
7749         (check_types_worklist): Return bool.  Change worklist to
7750         std::vector.
7751         (types_deeply_equal): Use std::vector.
7752         (types_equal): Return bool.
7753         (compare_maybe_null_strings): Simplify.
7754
7755 2018-05-29  Tom Tromey  <tom@tromey.com>
7756
7757         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
7758
7759 2018-05-29  Tom Tromey  <tom@tromey.com>
7760
7761         * objc-lang.h: Don't include cp-support.h.
7762         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
7763         declare VEC.
7764
7765 2018-05-27  Tom Tromey  <tom@tromey.com>
7766
7767         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
7768
7769 2018-05-25  Tom Tromey  <tom@tromey.com>
7770
7771         * value.c (value::location): Initialize.
7772
7773 2018-05-25  Tom Tromey  <tom@tromey.com>
7774
7775         * dbxread.c (init_bincl_list): Remove.
7776         (bincl_list): Now a std::vector.
7777         (bincls_allocated, next_bincl): Remove.
7778         (free_bincl_list, do_free_bincl_list_cleanup)
7779         (make_cleanup_free_bincl_list): Remove.
7780         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
7781         unique_xmalloc_ptr.
7782         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
7783         (struct header_file_location): Add constructor.
7784         (add_bincl_to_list): Remove.
7785
7786 2018-05-25  Tom Tromey  <tom@tromey.com>
7787
7788         * tui/tui.c (tui_enable): Update.
7789         * mi/mi-interp.c (mi_interp::init): Update.
7790         * interps.h (class interp) <name>: New method.
7791         <m_name>: Rename from name.
7792         (~scoped_restore_interp): Update.
7793         * interps.c (interp::interp): Update.
7794         (interp_add, interp_set, interp_lookup_existing)
7795         (current_interp_named_p): Update.
7796
7797 2018-05-25  Tom Tromey  <tom@tromey.com>
7798
7799         * interps.c (interp_name): Remove.
7800         * mi/mi-interp.c (mi_interp::init): Update.
7801         * interps.h (interp_name): Remove.
7802         (~scoped_restore_interp): Update.
7803         * tui/tui.c (tui_enable): Update.
7804
7805 2018-05-25  Tom Tromey  <tom@tromey.com>
7806
7807         * utils.c (fputs_maybe_filtered): Update.
7808         * linespec.c (decode_line_full): Update.
7809         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
7810         (mi_print_breakpoint_for_event, mi_solib_loaded)
7811         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
7812         (mi_user_selected_context_changed): Update.
7813         * mi/mi-main.c (mi_execute_command): Update.
7814         * cli/cli-script.c (execute_control_command): Update.
7815         * python/python.c (execute_gdb_command): Update.
7816         * solib.c (info_sharedlibrary_command): Update.
7817         * interps.c (interp_ui_out): Remove.
7818         * interps.h (interp_ui_out): Remove.
7819
7820 2018-05-25  Tom Tromey  <tom@tromey.com>
7821
7822         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
7823         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
7824         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
7825
7826 2018-05-25  Tom Tromey  <tom@tromey.com>
7827
7828         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
7829         * interps.c (interp_exec): Use scoped_restore.
7830
7831 2018-05-25  Tom Tromey  <tom@tromey.com>
7832
7833         * remote.c (remote_target::remote_file_get): Use
7834         gdb::byte_vector.
7835         (remote_target::remote_file_put): Likewise.
7836
7837 2018-05-25  Tom Tromey  <tom@tromey.com>
7838
7839         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
7840         a std::string.
7841         (get_pe_section_index, add_pe_exported_sym): Update.
7842         (read_pe_exported_syms): Use gdb::def_vector.
7843
7844 2018-05-25  Tom Tromey  <tom@tromey.com>
7845
7846         * frame.c (remove_prev_frame): Remove.
7847         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
7848
7849 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
7850
7851         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
7852         Remove prototypes.
7853         * mips-linux-nat.c (supply_fpregset): Always call
7854         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
7855         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
7856         `mips_fill_fpregset'.
7857         * mips-linux-tdep.c (mips_supply_fpregset)
7858         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
7859         (mips_fill_fpregset_wrapper): Remove functions.
7860         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
7861         (mips_linux_fpregset): Remove variable.
7862         (mips_linux_iterate_over_regset_sections): Use
7863         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
7864         (mips_linux_o32_sigframe_init): Remove comment.
7865
7866 2018-05-25  Pedro Alves  <palves@redhat.com>
7867
7868         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
7869         (struct readahead_cache, struct packet_reg, struct
7870         remote_arch_state, class remote_state): Move higher up in the
7871         file.
7872         (remote_target::m_remote_state): Now an object instead of a pointer.
7873         (remote_target::get_remote_state): Adjust.
7874
7875 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
7876
7877         * stack.c (select_and_print_frame): Delete.
7878         (struct function_bounds): Move struct within function.
7879         (func_command): Most content moved into new function
7880         find_frame_for_function, use new function, print result, add
7881         function comment.
7882         (find_frame_for_function): New function, now returns a result.
7883
7884 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7885
7886         * stack.c (iterate_over_block_arg_vars): Fix comment.
7887         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
7888
7889 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
7890
7891         PR gdb/23203
7892         * frame.c
7893         (scoped_restore_selected_frame::scoped_restore_selected_frame):
7894         Define.
7895         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
7896         Define.
7897         * frame.h (class scoped_restore_selected_frame): New class.
7898         * stack.c (print_frame_local_vars): Remove catching and rethrowing
7899         of any exception, use scoped_restore_selected_frame to restore the
7900         frame instead.
7901
7902 2018-05-24  Pedro Alves  <palves@redhat.com>
7903
7904         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
7905         override.
7906
7907 2018-05-23  Tom Tromey  <tom@tromey.com>
7908
7909         * complaints.c (struct complaints): Remove.
7910         (symfile_complaint_book): Remove.
7911         (series): New global.
7912         (complaint_internal): Update.
7913         (clear_complaints): Update.
7914
7915 2018-05-23  Tom Tromey  <tom@tromey.com>
7916
7917         * complaints.c (counters): New global.
7918         (struct complain): Remove.
7919         (struct complaints) <root>: Remove.
7920         (complaint_sentinel): Remove.
7921         (symfile_complaint_book): Update.
7922         (find_complaint) Remove.
7923         (complaint_internal, clear_complaints): Update.
7924
7925 2018-05-23  Tom Tromey  <tom@tromey.com>
7926
7927         * complaints.c (struct complain) <file, line>: Remove.
7928         (find_complaint): Remove file, line parameters.
7929         (complaint_internal): Update.
7930
7931 2018-05-23  Tom Tromey  <tom@tromey.com>
7932
7933         * complaints.c (vcomplaint): Remove.
7934         (complaint_internal) Merge in contents of vcomplaint.
7935
7936 2018-05-23  Tom Tromey  <tom@tromey.com>
7937
7938         * complaints.c (struct complaints) <explanation>: Remove.
7939         (symfile_explanations): Remove.
7940         (symfile_complaint_book): Update.
7941         (vcomplaint): Update.
7942         (struct explanation): Remove.
7943
7944 2018-05-23  Tom Tromey  <tom@tromey.com>
7945
7946         * complaints.c (symfile_complaints): Remove.
7947         (complaint_internal): Remove "complaints" parameter.
7948         (clear_complaints, vcomplaint): Remove "c" parameter.
7949         (get_complaints): Remove.
7950         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
7951         (dwarf2_debug_line_missing_file_complaint)
7952         (dwarf2_debug_line_missing_end_sequence_complaint)
7953         (dwarf2_complex_location_expr_complaint)
7954         (dwarf2_const_value_length_mismatch_complaint)
7955         (dwarf2_section_buffer_overflow_complaint)
7956         (dwarf2_macro_malformed_definition_complaint)
7957         (dwarf2_invalid_attrib_class_complaint)
7958         (create_addrmap_from_index, dw2_symtab_iter_next)
7959         (dw2_expand_marked_cus)
7960         (dw2_debug_names_iterator::find_vec_in_debug_names)
7961         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
7962         (create_debug_type_hash_table, init_cutu_and_read_dies)
7963         (partial_die_parent_scope, add_partial_enumeration)
7964         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
7965         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
7966         (read_import_statement, read_file_scope, create_dwo_cu_reader)
7967         (create_cus_hash_table, create_dwp_hash_table)
7968         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
7969         (dwarf2_rnglists_process, dwarf2_ranges_process)
7970         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
7971         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
7972         (handle_struct_member_die, process_structure_scope)
7973         (read_array_type, read_common_block, read_module_type)
7974         (read_tag_pointer_type, read_typedef, read_base_type)
7975         (read_subrange_type, load_partial_dies, partial_die_info::read)
7976         (partial_die_info::read, partial_die_info::read)
7977         (partial_die_info::read, read_checked_initial_length_and_offset)
7978         (dwarf2_string_attr, read_formatted_entries)
7979         (dwarf_decode_line_header)
7980         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
7981         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
7982         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
7983         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
7984         (get_signatured_type, get_DW_AT_signature_type)
7985         (decode_locdesc, file_file_name, consume_improper_spaces)
7986         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
7987         (dwarf_decode_macro_bytes, dwarf_decode_macros)
7988         (dwarf2_symbol_mark_computed, set_die_type)
7989         (read_attribute_value): Update.
7990         * stap-probe.c (handle_stap_probe, get_stap_base_address):
7991         Update.
7992         * dbxread.c (unknown_symtype_complaint)
7993         (lbrac_mismatch_complaint, repeated_header_complaint)
7994         (set_namestring, function_outside_compilation_unit_complaint)
7995         (read_dbx_symtab, process_one_symbol): Update.
7996         * gdbtypes.c (stub_noname_complaint): Update.
7997         * windows-nat.c (handle_unload_dll): Update.
7998         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
7999         (decode_base_type): Update.
8000         * xcoffread.c (bf_notfound_complaint, ef_complaint)
8001         (eb_complaint, record_include_begin, record_include_end)
8002         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
8003         (process_xcoff_symbol, read_symbol)
8004         (function_outside_compilation_unit_complaint)
8005         (scan_xcoff_symtab): Update.
8006         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
8007         * buildsym.c (finish_block_internal, make_blockvector)
8008         (end_symtab_get_static_block, augment_type_symtab): Update.
8009         * dtrace-probe.c (dtrace_process_dof)
8010         (dtrace_static_probe_ops::get_probes): Update.
8011         * complaints.h (struct complaint): Don't declare.
8012         (symfile_complaints): Remove.
8013         (complaint_internal): Remove "complaints" parameter.
8014         (complaint): Likewise.
8015         (clear_complaints): Likewise.
8016         * symfile.c (syms_from_objfile_1, finish_new_objfile)
8017         (reread_symbols): Update.
8018         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
8019         (dwarf2_frame_cache, decode_frame_entry): Update.
8020         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
8021         * objc-lang.c (lookup_objc_class, lookup_child_selector)
8022         (info_selectors_command): Update.
8023         * macrotab.c (macro_include, check_for_redefinition)
8024         (macro_undef): Update.
8025         * objfiles.c (filter_overlapping_sections): Update.
8026         * stabsread.c (invalid_cpp_abbrev_complaint)
8027         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
8028         (define_symbol, error_type, read_type, rs6000_builtin_type)
8029         (stabs_method_name_from_physname, read_member_functions)
8030         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
8031         (attach_fields_to_type, complain_about_struct_wipeout)
8032         (read_range_type, read_args, common_block_start)
8033         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
8034         Update.
8035         * mdebugread.c (index_complaint, unknown_ext_complaint)
8036         (basic_type_complaint, bad_tag_guess_complaint)
8037         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
8038         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
8039         (parse_procedure, parse_lines)
8040         (function_outside_compilation_unit_complaint)
8041         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
8042         (bad_tag_guess_complaint, reg_value_complaint): Update.
8043         * cp-support.c (demangled_name_complaint): Update.
8044         * macroscope.c (sal_macro_scope): Update.
8045         * dwarf-index-write.c (class debug_names): Update.
8046
8047 2018-05-23  Tom Tromey  <tom@tromey.com>
8048
8049         * complaints.c (clear_complaints): Remove "noisy" parameter.
8050         * complaints.h (clear_complaints): Update.
8051         * symfile.c (syms_from_objfile_1, finish_new_objfile)
8052         (reread_symbols): Update.
8053
8054 2018-05-23  Tom Tromey  <tom@tromey.com>
8055
8056         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
8057         SUBSEQUENT_MESSAGE.
8058         (vcomplaint, clear_complaints): Update.
8059         (symfile_explanations): Remove some messages.
8060
8061 2018-05-23  Tom Tromey  <tom@tromey.com>
8062
8063         * complaints.c (internal_complaint): Remove.
8064         * complaints.h (internal_complaint): Remove.
8065
8066 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
8067
8068         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
8069
8070 2018-05-22  Pedro Alves  <palves@redhat.com>
8071
8072         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
8073         (remote_fileio_badfd, remote_fileio_return_errno)
8074         (remote_fileio_return_success, remote_fileio_func_open)
8075         (remote_fileio_func_open, remote_fileio_func_close)
8076         (remote_fileio_func_read, remote_fileio_func_write)
8077         (remote_fileio_func_lseek, remote_fileio_func_rename)
8078         (remote_fileio_func_unlink, remote_fileio_func_stat)
8079         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
8080         (remote_fileio_func_isatty, remote_fileio_func_system): Add
8081         remote_target parameter.
8082         (remote_fio_func_map) <func>: Add remote_target parameter.
8083         (do_remote_fileio_request, remote_fileio_request):
8084         * remote-fileio.h (remote_fileio_request):
8085         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
8086         remote_target parameter.
8087         (remote_notif_process, handle_notification): Adjust to pass down
8088         the remote.
8089         (remote_notif_state_allocate): Add remote_target parameter.  Save
8090         it.
8091         * remote-notif.h (struct remote_target): Forward declare.
8092         (struct notif_client) <parse, ack, can_get_pending_events>: Add
8093         remote_target parameter.
8094         (struct remote_notif_state) <remote>: New field.
8095         (remote_notif_ack, remote_notif_parse): Add remote_target
8096         parameter.
8097         (remote_notif_state_allocate, remote_notif_state_allocate): Add
8098         remote_target parameter.
8099         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
8100         (threads_listing_context, rmt_thread_action, protocol_feature)
8101         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
8102         (packet_result, struct threads_listing_context, remote_state):
8103         Move definitions and declarations higher up.
8104         (remote_target) <~remote_target>: Declare.
8105         (remote_download_command_source, remote_file_put, remote_file_get)
8106         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
8107         (remote_hostio_pread_vFile, remote_hostio_send_command)
8108         (remote_hostio_set_filesystem, remote_hostio_open)
8109         (remote_hostio_close, remote_hostio_unlink, remote_state)
8110         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
8111         (get_memory_write_packet_size, get_memory_read_packet_size)
8112         (append_pending_thread_resumptions, remote_detach_1)
8113         (append_resumption, remote_resume_with_vcont)
8114         (add_current_inferior_and_thread, wait_ns, wait_as)
8115         (process_stop_reply, remote_notice_new_inferior)
8116         (process_initial_stop_replies, remote_add_thread)
8117         (btrace_sync_conf, remote_btrace_maybe_reopen)
8118         (remove_new_fork_children, kill_new_fork_children)
8119         (discard_pending_stop_replies, stop_reply_queue_length)
8120         (check_pending_events_prevent_wildcard_vcont)
8121         (discard_pending_stop_replies_in_queue, stop_reply)
8122         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
8123         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
8124         (remote_interrupt_as, remote_interrupt_ns)
8125         (remote_get_noisy_reply, remote_query_attached)
8126         (remote_add_inferior, remote_current_thread, get_current_thread)
8127         (set_thread, set_general_thread, set_continue_thread)
8128         (set_general_process, write_ptid)
8129         (remote_unpack_thread_info_response, remote_get_threadinfo)
8130         (parse_threadlist_response, remote_get_threadlist)
8131         (remote_threadlist_iterator, remote_get_threads_with_ql)
8132         (remote_get_threads_with_qxfer)
8133         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
8134         (get_offsets, remote_check_symbols, remote_supported_packet)
8135         (remote_query_supported, remote_packet_size)
8136         (remote_serial_quit_handler, remote_detach_pid)
8137         (remote_vcont_probe, remote_resume_with_hc)
8138         (send_interrupt_sequence, interrupt_query)
8139         (remote_notif_get_pending_events, fetch_register_using_p)
8140         (send_g_packet, process_g_packet, fetch_registers_using_g)
8141         (store_register_using_P, store_registers_using_G)
8142         (set_remote_traceframe, check_binary_download)
8143         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
8144         (remote_xfer_live_readonly_partial, remote_read_bytes)
8145         (remote_send_printf, remote_flash_write, readchar)
8146         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
8147         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
8148         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
8149         (extended_remote_disable_randomization, extended_remote_run)
8150         (send_environment_packet, extended_remote_environment_support)
8151         (extended_remote_set_inferior_cwd, remote_write_qxfer)
8152         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
8153         (packet_command): Now methods of ...
8154         (remote_target): ... this class.
8155         (m_remote_state) <remote_target>: New field.
8156         (struct remote_state) <stop_reply_queue,
8157         remote_async_inferior_event_token, wait_forever_enabled_p>: New
8158         fields.
8159         (remote_state::remote_state): Allocate stop_reply_queue.
8160         (remote_state): Delete global.
8161         (get_remote_state_raw): Delete.
8162         (remote_target::get_remote_state): Allocate m_remote_state on
8163         demand.
8164         (get_current_remote_target): New.
8165         (remote_ops, extended_remote_ops): Delete.
8166         (wait_forever_enabled_p, remote_async_inferior_event_token):
8167         Delete, moved to struct remote_state.
8168         (remote_target::close): Delete self.  Destruction bits split to
8169         ...
8170         (remote_target::~remote_target): ... this.
8171         (show_memory_packet_size): Adjust to use
8172         get_current_remote_target.
8173         (struct protocol_feature) <func>: Add remote_target parameter.
8174         All callers adjusted.
8175         (curr_quit_handler_target): New.
8176         (remote_serial_quit_handler): Reimplement.
8177         (remote_target::open_1): Adjust to use get_current_remote_target.
8178         Heap-allocate remote_target/extended_remote_target instances.
8179         (vcont_builder::vcont_builder): Add remote_target parameter, and
8180         save it in m_remote.  All callers adjusted.
8181         (vcont_builder::m_remote): New field.
8182         (vcont_builder::restart, vcont_builder::flush)
8183         (vcont_builder::push_action): Use it.
8184         (remote_target::commit_resume): Use it.
8185         (struct queue_iter_param) <remote>: New field.
8186         (remote_target::remove_new_fork_children): Fill in 'remote' field.
8187         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
8188         (check_pending_event_prevents_wildcard_vcont_callback)
8189         (remote_target::check_pending_events_prevent_wildcard_vcont)
8190         (remote_target::discard_pending_stop_replies)
8191         (remote_target::discard_pending_stop_replies_in_queue)
8192         (remote_target::remote_notif_remove_queued_reply): Fill in
8193         'remote' field.
8194         (remote_notif_get_pending_events): New.
8195         (remote_target::readchar, remote_target::remote_serial_write):
8196         Save/restore curr_quit_handler_target.
8197         (putpkt): New.
8198         (kill_new_fork_children): Fill in 'remote' field.
8199         (packet_command): Use get_current_remote_target, defer to
8200         remote_target method of same name.
8201         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
8202         parameter, and save it in m_remote.  All callers adjusted.
8203         (scoped_remote_fd::release): Use m_remote.
8204         (scoped_remote_fd::m_remote): New field.
8205         (remote_file_put, remote_file_get, remote_file_delete): Use
8206         get_current_remote_target, defer to remote_target method of same
8207         name.
8208         (remote_btrace_reset): Add remote_state paremeter.  Update all
8209         callers.
8210         (remote_async_inferior_event_handler). Pass down 'data'.
8211         (remote_new_objfile): Use get_current_remote_target.
8212         (remote_target::vcont_r_supported): New.
8213         (set_range_stepping): Use get_current_remote_target and
8214         remote_target::vcont_r_supported.
8215         (_initialize_remote): Don't allocate 'remote_state' and
8216         'stop_reply_queue' globals.
8217         * remote.h (struct remote_target): Forward declare.
8218         (getpkt, putpkt, remote_notif_get_pending_events): Add
8219         'remote_target' parameter.
8220
8221 2018-05-22  Pedro Alves  <palves@redhat.com>
8222
8223         * remote.c (vcont_builder): Now a class.  Make all data members
8224         private.
8225         (vcont_builder) <vcont_builder, restart, flush, push_action>:
8226         Declare methods.
8227         (vcont_builder_restart): Rename to ...
8228         (vcont_builder::restart): ... this.
8229         (vcont_builder_flush): Rename to ...
8230         (vcont_builder::flush): ... this.
8231         (vcont_builder_push_action): Rename to ...
8232         (vcont_builder::push_action): ... this.
8233         (remote_target::commit_resume): Adjust.
8234
8235 2018-05-22  Pedro Alves  <palves@redhat.com>
8236
8237         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
8238         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
8239         (get_fixed_memory_packet_size): New.
8240         (get_memory_packet_size): Use it.
8241         (set_memory_packet_size): Don't override the config size with
8242         DEFAULT_MAX_MEMORY_PACKET_SIZE.
8243         (show_memory_packet_size): Use get_fixed_memory_packet_size.
8244         Don't refer to get_memory_packet_size if not connected to a remote
8245         target.  Show "(default)" if configured size is 0.
8246
8247 2018-05-22  Pedro Alves  <palves@redhat.com>
8248
8249         * remote.c (remote_target::mourn_inferior): Move
8250         discard_pending_stop_replies call here from ...
8251         (_initialize_remote): ... here.
8252
8253 2018-05-22  Pedro Alves  <palves@redhat.com>
8254
8255         * remote.c (compare_section_command): Remove set_general_process
8256         call.
8257
8258 2018-05-22  Pedro Alves  <palves@redhat.com>
8259
8260         * remote.c (struct packet_reg, struct remote_arch_state):
8261         Move higher up in the file.
8262         (remote_state) <m_arch_states>: Store remote_arch_state values
8263         instead of remote_arch_state pointers.
8264         (remote_state::get_remote_arch_state): Adjust.
8265
8266 2018-05-22  Pedro Alves  <palves@redhat.com>
8267
8268         * remote.c: Include <unordered_map>.
8269         (remote_state): Now a class.
8270         (remote_state) <get_remote_arch_state>: Declare method.
8271         <get_remote_arch_state>: New field.
8272         (remote_arch_state) <remote_arch_state>: Declare ctor.
8273         <regs>: Now a unique_ptr.
8274         (remote_gdbarch_data_handle): Delete.
8275         (get_remote_arch_state): Delete.
8276         (remote_state::get_remote_arch_state): New.
8277         (get_remote_state): Adjust to call remote_state's
8278         get_remote_arch_state method.
8279         (init_remote_state): Delete, bits factored out to ...
8280         (remote_arch_state::remote_arch_state): ... this new method.
8281         (get_remote_packet_size, get_memory_packet_size)
8282         (process_g_packet, remote_target::fetch_registers)
8283         (remote_target::prepare_to_store, store_registers_using_G)
8284         (remote_target::store_registers, remote_target::get_trace_status):
8285         Adjust to call remote_state's method.
8286         (_initialize_remote): Remove reference to
8287         remote_gdbarch_data_handle.
8288
8289 2018-05-22  Pedro Alves  <palves@redhat.com>
8290
8291         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
8292         pread>: New method declarations.
8293         (remote_target::open_1): Adjust.
8294         (readahead_cache_invalidate): Rename to ...
8295         (readahead_cache::invalidate): ... this, and adjust to be a class
8296         method.
8297         (readahead_cache_invalidate_fd): Rename to ...
8298         (readahead_cache::invalidate_fd): ... this, and adjust to be a
8299         class method.
8300         (remote_hostio_pwrite): Adjust.
8301         (remote_hostio_pread_from_cache): Rename to ...
8302         (readahead_cache::pread): ... this, and adjust to be a class
8303         method.
8304         (remote_hostio_close): Adjust.
8305
8306 2018-05-22  Pedro Alves  <palves@redhat.com>
8307
8308         * remote.c (remote_hostio_close_cleanup): Delete.
8309         (class scoped_remote_fd): New.
8310         (remote_file_put, remote_file_get): Use it.
8311
8312 2018-05-22  Pedro Alves  <palves@redhat.com>
8313
8314         (struct vCont_action_support): Use bool and initialize all fields.
8315         (struct readahead_cache): Initialize all fields.
8316         (remote_state): Use bool and initialize all fields.
8317         (remote_state::remote_state, remote_state::~remote_state): New.
8318         (new_remote_state): Delete.
8319         (_initialize_remote): Use new to allocate remote_state.
8320
8321 2018-05-22  Pedro Alves  <palves@redhat.com>
8322             張俊芝  <zjz@zjz.name>
8323
8324         PR gdb/22973
8325         * c-exp.y: Include "c-support.h".
8326         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
8327         of tolower.  Use c_ident_is_alpha to scan names.
8328         * c-lang.c: Include "c-support.h".
8329         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
8330         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
8331         * c-support.h: New file, with bits factored out from ...
8332         * cp-name-parser.y: ... this file.
8333         Include "c-support.h".
8334         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
8335         c-support.h and renamed.
8336         (symbol_end, yylex): Adjust.
8337
8338 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8339
8340         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
8341         parameter type to CORE_ADDR.
8342         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
8343         parameter type in declaration to CORE_ADDR.
8344         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
8345         target_auxv_search to get AT_HWCAP and use the result to get the
8346         target description.
8347         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
8348         to CORE_ADDR. Remove the cast of the return value to unsigned
8349         long. Fix error predicate of target_auxv_search.
8350         (ppc_linux_nat_target::read_description): Change the type of the
8351         hwcap variable to CORE_ADDR.
8352
8353 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8354
8355         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
8356         if the size of fpscr is larger than 32 bits.
8357
8358 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8359
8360         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
8361         (ppc32_linux_vsxregmap): New global.
8362         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
8363         regcache_supply_regset, and regcache_collect_regset.
8364         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
8365         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
8366         (fetch_vsx_register, store_vsx_register): Remove.
8367         (fetch_vsx_registers): Add regno parameter. Get regset using
8368         ppc_linux_vsxregset. Use regset to supply registers.
8369         (store_vsx_registers): Add regno parameter. Get regset using
8370         ppc_linux_vsxregset. Use regset to collect registers.
8371         (fetch_register): Call fetch_vsx_registers instead of
8372         fetch_vsx_register.
8373         (store_register): Call store_vsx_registers instead of
8374         store_vsx_register.
8375         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
8376         new regno parameter.
8377         (store_ppc_registers): Call store_vsx_registers with -1 for the
8378         new regno parameter.
8379         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
8380         (ppc_collect_vsxregset): Remove.
8381
8382 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8383
8384         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
8385         offset fields.
8386         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
8387         for vector register offset fields.
8388         (ppc64_fbsd_reg_offsets): Likewise.
8389         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
8390         to vector register offset fields.
8391         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
8392         to vector register offset fields.
8393         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
8394         vector register offset fields.
8395         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
8396         initializers for vector register offset fields.
8397         (rs6000_aix64_reg_offsets): Likewise.
8398         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
8399         (ppc_supply_vrregset): Remove.
8400         (ppc_collect_vrregset): Remove.
8401         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
8402         (ppc_linux_vrregset) : New function.
8403         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
8404         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
8405         (ppc32_linux_vrregset): Remove.
8406         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
8407         and use result instead of ppc32_linux_vrregset.
8408         (ppc32_linux_reg_offsets): Remove initializers for vector register
8409         offset fields.
8410         (ppc64_linux_reg_offsets): Likewise.
8411         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
8412         * ppc-linux-nat.c: Include regset.h.
8413         (gdb_vrregset_t): Adjust comment to account for little-endian
8414         mode.
8415         (supply_vrregset, fill_vrregset): Remove.
8416         (fetch_altivec_register, store_altivec_register): Remove.
8417         (fetch_altivec_registers): Add regno parameter. Get regset using
8418         ppc_linux_vrregset. Use regset to supply registers.
8419         (store_altivec_registers): Add regno parameter. Get regset using
8420         ppc_linux_vrregset. Use regset to collect registers.
8421         (fetch_register): Call fetch_altivec_registers instead of
8422         fetch_altivec_register.
8423         (store_register): Call store_altivec_registers instead of
8424         store_altivec_register.
8425         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
8426         the new regno parameter.
8427         (store_ppc_registers): Call store_altivec_registers with -1 for
8428         the new regno parameter.
8429
8430 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8431
8432         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
8433         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
8434         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
8435         (gdb_vrregset_t): Change array type size to
8436         PPC_LINUX_SIZEOF_VRREGSET.
8437         (gdb_vsxregset_t): Change array type size to
8438         PPC_LINUX_SIZEOF_VSXREGSET.
8439         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
8440         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
8441         PPC_LINUX_SIZEOF_VSXREGSET.
8442
8443 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8444
8445         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
8446         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
8447         nat/ppc-linux.c.
8448         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
8449         ppc_linux_target_wordsize with tid.
8450         (ppc_linux_nat_target::read_description): Call ppc_linux_target
8451         wordsize with tid.
8452         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
8453         (ppc64_64bit_inferior_p): Add static and inline specifiers.
8454         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
8455         tid parameter. Remove static specifier.
8456         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
8457         (ppc_linux_target_wordsize): New declaration.
8458
8459 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8460
8461         * arch/ppc-linux-common.c: New file.
8462         * arch/ppc-linux-common.h: New file.
8463         * arch/ppc-linux-tdesc.h: New file.
8464         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
8465         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
8466         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
8467         arch/ppc-linux-tdesc.h.
8468         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
8469         arch/ppc-linux-tdesc.h.
8470         (ppc_linux_nat_target::read_description): Remove target
8471         description matching code. Fill a ppc_linux_features struct and
8472         call ppc_linux_match_description with it. Move comment about ISA
8473         2.05 to ppc-linux-common.c.
8474         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
8475         arch/ppc-linux-tdesc.h.
8476         (ppc_linux_core_read_description): Remove target description
8477         matching code. Fill a ppc_linux_features struct and call
8478         ppc_linux_match_description with it.
8479         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
8480         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
8481         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
8482         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
8483         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
8484         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
8485         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
8486         (tdesc_powerpc_e500l): Remove.
8487
8488 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
8489
8490         * ada-lang.c (catch_assert_command): Pass empty string instead
8491         of NULL for excep_string argument.
8492
8493 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
8494
8495         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
8496         the width of the requested register exceeds the width of the
8497         `ptrace' data type.
8498
8499 2018-05-21  Tom Tromey  <tom@tromey.com>
8500
8501         * printcmd.c (output_command): Remove.
8502         (output_command_const): Rename to output_command.
8503         * valprint.h (output_command): Rename from output_command_const.
8504         * tracepoint.c (trace_dump_actions): Call output_command.
8505
8506 2018-05-21  Tom Tromey  <tom@tromey.com>
8507
8508         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
8509         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
8510         * ada-lang.h (create_ada_exception_catchpoint): Update.
8511         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
8512         std::string.
8513         (create_excep_cond_exprs, ~ada_catchpoint)
8514         (should_stop_exception, print_one_exception)
8515         (print_mention_exception, print_recreate_exception): Update.
8516         (ada_get_next_arg): Remove.
8517         (catch_ada_exception_command_split): Use std::string.  Change type
8518         of "excep_string", "cond_string".
8519         (catch_ada_exception_command): Update.
8520         (create_ada_exception_catchpoint): Change type of excep_string.
8521         (ada_exception_sal): Remove excep_string parameter.
8522         (~ada_catchpoint): Remove.
8523
8524 2018-05-21  Tom Tromey  <tom@tromey.com>
8525
8526         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
8527         cleanup.
8528
8529 2018-05-21  Tom Tromey  <tom@tromey.com>
8530
8531         * ada-lang.c (ada_exception_message_1, ada_exception_message):
8532         Return unique_xmalloc_ptr.
8533         (print_it_exception): Update.
8534
8535 2018-05-21  Tom Tromey  <tom@tromey.com>
8536
8537         * tracepoint.c (trace_dump_actions): Use std::string.
8538
8539 2018-05-21  Tom Tromey  <tom@tromey.com>
8540
8541         * symfile.c (reread_symbols): Use std::string for original_name.
8542
8543 2018-05-21  Tom Tromey  <tom@tromey.com>
8544
8545         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
8546         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
8547         constructor.
8548
8549 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
8550
8551         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
8552         instance to...
8553         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
8554         * objfiles.c (get_objfile_bfd_data): Allocate
8555         objfile_per_bfd_storage with obstack_new when allocating on
8556         obstack.
8557
8558 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8559
8560         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
8561         OBSTACK_ZALLOC.
8562         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
8563         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
8564         * mdebugread.c (mdebug_build_psymtabs): Likewise.
8565         (add_pending): Likewise.
8566         (parse_symbol): Likewise.
8567         (parse_partial_symbols): Likewise.
8568         (psymtab_to_symtab_1): Likewise.
8569         (new_psymtab): Likewise.
8570         (elfmdebug_build_psymtabs): Likewise.
8571         * minsyms.c (terminate_minimal_symbol_table): Likewise.
8572         * objfiles.c (get_objfile_bfd_data): Likewise.
8573         (objfile_register_static_link): Likewise.
8574         * psymtab.c (allocate_psymtab): Likewise.
8575         * stabsread.c (read_member_functions): Likewise.
8576         * xcoffread.c (xcoff_end_psymtab): Likewise.
8577
8578 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8579
8580         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
8581         compiler supports std::is_trivially_constructible.
8582         * common/poison.h: Include obstack.h.
8583         (IsMallocable): Define to is_trivially_constructible if the
8584         compiler supports it, define to true_type otherwise.
8585         (xobnew): New.
8586         (XOBNEW): Redefine.
8587         (xobnewvec): New.
8588         (XOBNEWVEC): Redefine.
8589         * gdb_obstack.h (obstack_zalloc): New.
8590         (OBSTACK_ZALLOC): Redefine.
8591         (obstack_calloc): New.
8592         (OBSTACK_CALLOC): Redefine.
8593         (obstack_new): New.
8594         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
8595         (gdbarch_obstack): New declaration in gdbarch.h, definition in
8596         gdbarch.c.
8597         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
8598         obstack_calloc/obstack_zalloc.
8599         (gdbarch_obstack_zalloc): Remove.
8600         * target-descriptions.c (tdesc_data_init): Use obstack_new.
8601
8602 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8603
8604         * stack.c (backtrace_command_1): Remove useless variable int i.
8605
8606 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8607
8608         * stack.c (print_frame_info): Fix comment.
8609
8610 2018-05-18  Tom Tromey  <tom@tromey.com>
8611
8612         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
8613         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
8614         (~dwarf2_per_objfile): Update
8615         (dwarf2_get_dwz_file): Use new.
8616         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
8617         unique_ptr.
8618
8619 2018-05-18  Tom Tromey  <tom@tromey.com>
8620
8621         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
8622         unique_ptr.
8623         * dwarf2read.c (struct dwp_file): Add constructor and
8624         initializers.
8625         (open_and_init_dwp_file): Return a unique_ptr.
8626         (dwarf2_per_objfile, create_dwp_hash_table)
8627         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
8628         (lookup_dwo_unit_in_dwp): Update.
8629         (open_and_init_dwp_file, get_dwp_file): Update.
8630
8631 2018-05-18  Tom Tromey  <tom@tromey.com>
8632
8633         * dwarf2read.c (dwarf2_per_objfile): Update.
8634         (struct mapped_index): Add initializers.
8635         (dwarf2_read_index): Use new.
8636         (dw2_symtab_iter_init): Update.
8637         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
8638         unique_ptr.
8639
8640 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8641
8642         * dwarf2read.c (mapped_index) <total_size>: Remove.
8643
8644 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8645
8646         * unittests/format_pieces-selftests.c (test_format_specifier):
8647         Add ARI comments.
8648
8649 2018-05-18  Tom Tromey  <tom@tromey.com>
8650
8651         * c-typeprint.c (maybe_print_hole): New function.
8652         (c_print_type_struct_field_offset): Update.
8653         (c_type_print_base_struct_union): Call maybe_print_hole.
8654
8655 2018-05-17  Keith Seitz  <keiths@redhat.com>
8656
8657         * breakpoint.c (build_bpstat_chain): New function, moved from
8658         bpstat_stop_status.
8659         (bpstat_stop_status): Add optional parameter, `stop_chain'.
8660         If no stop chain is passed, call build_bpstat_chain to build it.
8661         * breakpoint.h (build_bpstat_chain): Declare.
8662         (bpstat_stop_status): Move documentation here from breakpoint.c.
8663         * infrun.c (handle_signal_stop): Before eliding inlined frames,
8664         build the stop chain and pass it to skip_inline_frames.
8665         Pass this stop chain to bpstat_stop_status.
8666         * inline-frame.c: Include breakpoint.h.
8667         (stopped_by_user_bp_inline_frame): New function.
8668         (skip_inline_frames): Add parameter `stop_chain'.
8669         Move documention to inline-frame.h.
8670         If non-NULL, use stopped_by_user_bp_inline_frame to determine
8671         whether the frame should be elided.
8672         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
8673         Add moved documentation and update for new parameter.
8674
8675 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
8676
8677         PR cli/14975
8678         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
8679         unittests/format_pieces-selftests.c.
8680         * common/format.h (format_piece) <operator==>: New.
8681         (format_pieces) <operator[]>: Remove.
8682         * common/format.c (format_pieces::format_pieces): Handle \e.
8683         * unittests/format_pieces-selftests.c: New.
8684
8685 2018-05-17  Tom Tromey  <tom@tromey.com>
8686
8687         PR symtab/23010:
8688         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
8689         (dw2_instantiate_symtab): Add skip_partial parameter.
8690         (dw2_find_last_source_symtab, dw2_map_expand_apply)
8691         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
8692         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
8693         (dw2_expand_symtabs_matching_one)
8694         (dw2_find_pc_sect_compunit_symtab)
8695         (dw2_debug_names_lookup_symbol)
8696         (dw2_debug_names_expand_symtabs_for_function): Update.
8697         (init_cutu_and_read_dies): Add skip_partial parameter.
8698         (process_psymtab_comp_unit, build_type_psymtabs_1)
8699         (process_skeletonless_type_unit, load_partial_comp_unit)
8700         (psymtab_to_symtab_1): Update.
8701         (load_full_comp_unit): Add skip_partial parameter.
8702         (process_imported_unit_die, dwarf2_read_addr_index)
8703         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
8704         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
8705         (read_signatured_type): Update.
8706
8707 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
8708
8709         * value.c (release_value): Remove unused variable.
8710         (record_latest_value): Likewise.
8711         (access_value_history): Likewise.
8712         (preserve_values): Likewise.
8713
8714 2018-05-17  Tom Tromey  <tom@tromey.com>
8715
8716         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
8717         Initialize.
8718
8719 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
8720
8721         PR gdb/22286
8722         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
8723         Also handle registers whose width is not a multiple of
8724         PTRACE_TYPE_RET.
8725         (linux_nat_trad_target::store_register): Likewise.
8726
8727 2018-05-16  Tom Tromey  <tom@tromey.com>
8728
8729         * gdbcore.h (core_bfd): Redefine.
8730         * corelow.c (core_target::close): Update.
8731         (core_target_open): Update.
8732         * progspace.h (struct program_space) <cbfd>: Now a
8733         gdb_bfd_ref_ptr.
8734
8735 2018-05-16  Tom Tromey  <tom@tromey.com>
8736
8737         PR cli/19551:
8738         * symfile-add-flags.h (enum symfile_add_flags)
8739         <SYMFILE_NOT_FILENAME>: New constant.
8740         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
8741         objfile name from BFD.
8742         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
8743         * minidebug.c (find_separate_debug_file_in_section): Put
8744         ".gnu_debugdata" into BFD's file name.
8745
8746 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
8747
8748         * regcache.c (regcache_read_ftype, regcache_write_ftype):
8749         Remove.
8750
8751 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
8752
8753         PR binutils/21446
8754         * aarch64-tdep.c (aarch64_analyze_prologue,
8755         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
8756         Indicate not interested in errors.
8757
8758 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
8759
8760         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
8761         Supply the MIPS_ZERO_REGNUM register.
8762
8763 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
8764
8765         * mips-tdep.c (mask_address_var): Make variable static.
8766
8767 2018-05-14  Tom Tromey  <tom@tromey.com>
8768
8769         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
8770
8771 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
8772
8773         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
8774         FXSAVE_ADDR for the mxcsr register.
8775
8776 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
8777
8778         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
8779
8780 2018-05-11  Pedro Alves  <palves@redhat.com>
8781
8782         * corelow.c (core_target) <core_target>: No longer inline.
8783         Initialize m_core_gdbarch, m_core_vec and build the section table
8784         here.
8785         <~core_target>: New.
8786         <core_gdbarch, get_core_register_section>: New methods.
8787         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
8788         factored out from ...
8789         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
8790         (core_ops): Delete.
8791         (sniff_core_bfd): Add gdbarch parameter.
8792         (core_close): Delete, merged into ...
8793         (core_target::close): ... here.  Delete self.
8794         (core_close_cleanup): Delete.
8795         (core_target_open): Allocate a core_target on the heap.  Use a
8796         unique_ptr instead of a cleanup.  Bits moved into the core_target
8797         ctor.  Adjust to use core_target methods instead of globals.
8798         (get_core_register_section): Rename to ...
8799         (core_target::get_core_register_section): ... this and adjust.
8800         (struct get_core_registers_cb_data): New.
8801         (get_core_registers_cb): Use it.  Use bool.
8802         (core_target::fetch_registers, core_target::files_info)
8803         (core_target::xfer_partial, core_target::read_description)
8804         (core_target::pid_to, core_target::thread_name): Adjust to
8805         reference class fields instead of globals.
8806         * target.h (struct target_ops_deleter, target_ops_up): New.
8807
8808 2018-05-11  Pedro Alves  <palves@redhat.com>
8809
8810         * corefile.c (core_file_command): Move to corelow.c.
8811         * corelow.c (the_core_target): Delete.
8812         (core_file_command): Moved from corefile.c.  Check exec_bfd
8813         instead of the_core_target.  Use target_detach instead of calling
8814         into the_core_target directly.
8815         (maybe_say_no_core_file_now): New.
8816         (core_target::detach): Use it.
8817         (_initialize_corelow): Remove references to the_core_target.
8818         * gdbcore.h (the_core_target): Delete.
8819
8820 2018-05-11  Tom Tromey  <tromey@redhat.com>
8821             Pedro Alves  <palves@redhat.com>
8822
8823         * corefile.c (core_bfd): Remove.
8824         * gdbcore.h (core_bfd): Now a macro.
8825         * progspace.h (struct program_space) <cbfd>: New field.
8826
8827 2018-05-11  Tom Tromey  <tom@tromey.com>
8828
8829         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
8830         gdb::def_vector.
8831
8832 2018-05-10  Tom Tromey  <tom@tromey.com>
8833
8834         * configure: Rebuild.
8835         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
8836
8837 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
8838
8839         PR server/23158:
8840         * regformats/regdat.sh: Adjust script, following the addition
8841         of the new expedite_regs parameter to init_target_desc.
8842
8843 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
8844     
8845         PR gdb/23127
8846         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
8847         set_gdbarch_significant_addr_bit.
8848         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
8849         set_gdbarch_significant_addr_bit.
8850         * utils.c (address_significant): Update to sign extend addr.
8851
8852 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
8853
8854         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
8855         (xtensa_linux_init_abi): Limit tdep->num_regs by
8856         tdep->num_nopriv_regs.
8857         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
8858         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
8859         not initialized.
8860
8861 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
8862
8863         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
8864
8865 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
8866
8867         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
8868         (I387_MXCSR_INIT_VAL): New constant.
8869         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
8870         buffer if it was supplied by the inferior.
8871         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
8872         (i387_xsave_get_clear_bv): New function.
8873         (i387_supply_xsave): Only read x87 control registers from the
8874         xsave buffer if the feature is enabled, and the state will have
8875         been written, otherwise, provide a suitable default.
8876         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
8877         including x87 control registers.  Update control registers if they
8878         have changed from the default value, and mark features as enabled
8879         as required.
8880         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
8881
8882 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
8883
8884         * spu-tdep.c (info_spu_event_command): Fix output formatting.
8885
8886 2018-05-07  Tom Tromey  <tom@tromey.com>
8887
8888         * configure: Rebuild.
8889         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
8890
8891 2018-05-07  Tom Tromey  <tom@tromey.com>
8892
8893         PR tdep/20362:
8894         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
8895         bit.  Use correct value for VDIV.
8896
8897 2018-05-04  Tom Tromey  <tom@tromey.com>
8898
8899         * configure: Rebuild.
8900         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
8901
8902 2018-05-04  Tom Tromey  <tom@tromey.com>
8903
8904         * linux-record.c (record_linux_system_call) <case
8905         RECORD_SYS_RECVFROM>: Add "break".
8906
8907 2018-05-04  Tom Tromey  <tom@tromey.com>
8908
8909         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
8910         Add missing "break".
8911         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
8912         Add missing "break".
8913
8914 2018-05-04  Tom Tromey  <tom@tromey.com>
8915
8916         * rs6000-tdep.c (ppc_process_record_op4)
8917         (ppc_process_record_op63): Add fall-through comment.
8918
8919 2018-05-04  Tom Tromey  <tom@tromey.com>
8920
8921         * i386-tdep.c (i386_process_record): Add fall-through comment.
8922
8923 2018-05-04  Tom Tromey  <tom@tromey.com>
8924
8925         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
8926         comment.
8927
8928 2018-05-04  Tom Tromey  <tom@tromey.com>
8929
8930         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
8931         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
8932         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
8933         comment.
8934         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
8935         comment.
8936         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
8937         comment.
8938
8939 2018-05-04  Tom Tromey  <tom@tromey.com>
8940
8941         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
8942
8943 2018-05-04  Tom Tromey  <tom@tromey.com>
8944
8945         * s390-tdep.c (s390_process_record): Fix fall-through comments.
8946         * xcoffread.c (scan_xcoff_symtab): Move comment later.
8947         * symfile.c (section_is_mapped): Fix fall-through comment.
8948         * stabsread.c (define_symbol, read_member_functions): Fix
8949         fall-through comment.
8950         * s390-linux-tdep.c (s390_process_record): Fix fall-through
8951         comment.
8952         * remote.c (remote_wait_as): Fix fall-through comment.
8953         * p-exp.y (yylex): Fix fall-through comment.
8954         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
8955         comment.
8956         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
8957         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
8958         * jv-exp.y (yylex): Fix fall-through comment.
8959         * go-exp.y (lex_one_token): Fix fall-through comment.
8960         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
8961         fall-through comment.
8962         * f-exp.y (yylex): Fix fall-through comment.
8963         * dwarf2read.c (process_die): Fix fall-through comments.
8964         * dbxread.c (process_one_symbol): Fix fall-through comment.
8965         * d-exp.y (lex_one_token): Fix fall-through comment.
8966         * cp-name-parser.y (yylex): Fix fall-through comment.
8967         * coffread.c (coff_symtab_read): Fix fall-through comment.
8968         * c-exp.y (lex_one_token): Fix fall-through comment.
8969         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
8970         comment.
8971         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
8972         comment.
8973
8974 2018-05-04  Tom Tromey  <tom@tromey.com>
8975
8976         PR python/22730:
8977         * NEWS: Mention gdb.execute change.
8978         * gdbcmd.h (execute_control_command): Don't declare.
8979         * python/python.c (execute_gdb_command): Use read_command_lines_1,
8980         execute_control_commands, execute_control_commands_to_string.
8981         * cli/cli-script.h (execute_control_commands)
8982         (execute_control_commands_to_string): Declare.
8983         (execute_control_command): Add from_tty parameter.
8984         * cli/cli-script.c (execute_control_commands)
8985         (execute_control_commands_to_string): New functions.
8986         (execute_user_command): Use execute_control_commands.
8987         (execute_control_command_1): Add "from_tty" parameter.  Update.
8988         (execute_control_command): Likewise.
8989
8990 2018-05-04  Tom Tromey  <tom@tromey.com>
8991
8992         PR python/22731:
8993         * NEWS: Mention that breakpoint commands are writable.
8994         * python/py-breakpoint.c (bppy_set_commands): New function.
8995         (breakpoint_object_getset) <"commands">: Use it.
8996
8997 2018-05-04  Tom Tromey  <tom@tromey.com>
8998
8999         * tracepoint.c (actions_command): Update.
9000         * mi/mi-cmd-break.c (mi_command_line_array)
9001         (mi_command_line_array_cnt, mi_command_line_array_ptr)
9002         (mi_read_next_line): Remove.
9003         (mi_cmd_break_commands): Update.
9004         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
9005         function_view.
9006         * cli/cli-script.c (get_command_line): Update.
9007         (process_next_line): Use function_view.  Constify.
9008         (recurse_read_control_structure, read_command_lines)
9009         (read_command_lines_1): Change argument types to function_view.
9010         (do_define_command, document_command): Update.
9011         * breakpoint.h (check_tracepoint_command): Don't declare.
9012         * breakpoint.c (check_tracepoint_command): Remove.
9013         (commands_command_1, create_tracepoint_from_upload): Update.
9014
9015 2018-05-04  Tom Tromey  <tom@tromey.com>
9016
9017         PR gdb/11750:
9018         * cli/cli-script.h (enum command_control_type) <define_control>:
9019         New constant.
9020         * cli/cli-script.c (multi_line_command_p): Handle define_control.
9021         (build_command_line, execute_control_command_1)
9022         (process_next_line): Likewise.
9023         (do_define_command): New function, extracted from define_command.
9024         (define_command): Use it.
9025
9026 2018-05-04  Tom Tromey  <tom@tromey.com>
9027
9028         * tracepoint.c (actions_command): Update.
9029         * cli/cli-script.h (read_command_lines): Update.
9030         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
9031         (MAX_TMPBUF): Remove define.
9032         (define_command): Use string_printf.
9033         (document_command): Likewise.
9034         * breakpoint.c (commands_command_1): Update.
9035
9036 2018-05-04  Tom Tromey  <tom@tromey.com>
9037
9038         * top.c (execute_command): Update.
9039         * cli/cli-script.h (print_command_lines): Now varargs.
9040         * cli/cli-script.c (print_command_lines): Now varargs.
9041         (execute_control_command_1) <case while_control, case if_control>:
9042         Update.
9043
9044 2018-05-04  Tom Tromey  <tom@tromey.com>
9045
9046         * tracepoint.c (all_tracepoint_actions): Rename from
9047         all_tracepoint_actions_and_cleanup.  Change return type.
9048         (actions_command, encode_actions_1, encode_actions)
9049         (trace_dump_actions, tdump_command): Update.
9050         * remote.c (remote_download_command_source): Update.
9051         * python/python.c (gdbpy_eval_from_control_command)
9052         (python_command, python_interactive_command): Update.
9053         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
9054         * guile/guile.c (guile_command)
9055         (gdbscm_eval_from_control_command, guile_command): Update.
9056         * compile/compile.c (compile_code_command)
9057         (compile_print_command, compile_to_object): Update.
9058         * cli/cli-script.h (struct command_lines_deleter): New.
9059         (counted_command_line): New typedef.
9060         (struct command_line): Add constructor, destructor.
9061         <body_list>: Remove.
9062         <body_list_0, body_list_1>: New members.
9063         (command_line_up): Remove typedef.
9064         (read_command_lines, read_command_lines_1, get_command_line):
9065         Update.
9066         (copy_command_lines): Don't declare.
9067         * cli/cli-script.c (build_command_line): Use "new".
9068         (get_command_line): Return counted_command_line.
9069         (print_command_lines, execute_user_command)
9070         (execute_control_command_1, while_command, if_command): Update.
9071         (realloc_body_list): Remove.
9072         (process_next_line, recurse_read_control_structure): Update.
9073         (read_command_lines, read_command_lines_1): Return counted_command_line.
9074         (free_command_lines): Use "delete".
9075         (copy_command_lines): Remove.
9076         (define_command, document_command, show_user_1): Update.
9077         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
9078         a counted_command_line.
9079         * breakpoint.h (counted_command_line): Remove typedef.
9080         (breakpoint_set_commands): Update.
9081         * breakpoint.c (check_no_tracepoint_commands)
9082         (validate_commands_for_breakpoint): Update.
9083         (breakpoint_set_commands): Change commands to be a
9084         counted_command_line.
9085         (commands_command_1, update_dprintf_command_list)
9086         (create_tracepoint_from_upload): Update.
9087
9088 2018-05-04  Tom Tromey  <tom@tromey.com>
9089
9090         * cli/cli-decode.h (cmd_list_element): New constructor.
9091         (~cmd_list_element): New destructor.
9092         (struct cmd_list_element): Add initializers.
9093         * cli/cli-decode.c (do_add_cmd): Use "new".
9094         (delete_cmd): Use "delete".
9095
9096 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
9097             Pedro Alves <palves@redhat.com>
9098
9099         PR breakpoints/19806 and support for PR external/20207.
9100         * NEWS: Mention Aarch64 watchpoint improvements.
9101         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
9102         watchpoints and PR external/20207 watchpoints.
9103         * nat/aarch64-linux-hw-point.c
9104         (kernel_supports_any_contiguous_range): New.
9105         (aarch64_watchpoint_offset): New.
9106         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
9107         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
9108         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
9109         (aarch64_align_watchpoint): New parameters aligned_offset_p and
9110         next_addr_orig_p.  Support PR external/20207 watchpoints.
9111         (aarch64_downgrade_regs): New.
9112         (aarch64_dr_state_insert_one_point): New parameters offset and
9113         addr_orig.
9114         (aarch64_dr_state_remove_one_point): Likewise.
9115         (aarch64_handle_breakpoint): Update caller.
9116         (aarch64_handle_aligned_watchpoint): Likewise.
9117         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
9118         aligned_offset.
9119         (aarch64_linux_set_debug_regs): Remove const from state.  Call
9120         aarch64_downgrade_regs.
9121         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
9122         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
9123         (DR_CONTROL_MASK): ... this.
9124         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
9125         (unsigned int aarch64_watchpoint_offset): New prototype.
9126         (aarch64_linux_set_debug_regs): Remove const from state.
9127         * utils.c (align_up, align_down): Move to ...
9128         * common/common-utils.c (align_up, align_down): ... here.
9129         * utils.h (align_up, align_down): Move to ...
9130         * common/common-utils.h (align_up, align_down): ... here.
9131
9132 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
9133
9134         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
9135         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
9136         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
9137         Re-implement to match the ABI as summarized in GCC's
9138         gcc/config/sparc/sparc.c.  All callers updated.
9139         (sparc32_store_arguments): Remove assertion.
9140
9141 2018-05-04  Tom Tromey  <tom@tromey.com>
9142
9143         * printcmd.c: Don't include tui.h.
9144         (decode_format): Use skip_spaces.
9145
9146 2018-05-04  Tom Tromey  <tom@tromey.com>
9147
9148         PR gdb/22619:
9149         * printcmd.c (last_count): New global.
9150         (x_command): Use saved count when repeating.
9151
9152 2018-05-04  Tom Tromey  <tom@tromey.com>
9153
9154         * nto-procfs.c (do_closedir_cleanup): Remove.
9155         (procfs_pidlist): Use gdb_dir_up.
9156         * procfs.c (do_closedir_cleanup): Remove.
9157         (proc_update_threads): Use gdb_dir_up.
9158         * common/filestuff.h (struct gdb_dir_deleter): New.
9159         (gdb_dir_up): New typedef.
9160
9161 2018-05-04  Tom Tromey  <tom@tromey.com>
9162
9163         * ada-lang.c (print_mention_exception): Use std::string.
9164
9165 2018-05-04  Tom Tromey  <tom@tromey.com>
9166
9167         * ada-lang.c (create_excep_cond_exprs): Update.
9168         (ada_exception_catchpoint_cond_string): Use std::string.
9169
9170 2018-05-04  Tom Tromey  <tom@tromey.com>
9171
9172         * ada-lang.c (xget_renaming_scope): Return std::string.
9173         (old_renaming_is_invisible): Update.
9174
9175 2018-05-04  Tom Tromey  <tom@tromey.com>
9176
9177         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
9178         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
9179
9180 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
9181
9182         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
9183
9184 2018-05-04  Tom Tromey  <tom@tromey.com>
9185
9186         * remote.c (remote_query_supported_append): Change type.
9187         (remote_check_symbols): Update.
9188
9189 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
9190
9191         PR gdb/11420
9192         * configure.ac: Prepend libpython.
9193         * python/python-config.py: Likewise.
9194         * configure: Regenerate.
9195
9196 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
9197
9198         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
9199
9200 2018-05-03  Pedro Alves  <palves@redhat.com>
9201
9202         * s390-linux-nat.c
9203         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
9204         override.  Write 'true' instead of '1'.
9205         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
9206         declaration.
9207
9208 2018-05-02  Pedro Alves  <palves@redhat.com>
9209
9210         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
9211         add_inf_child_target.
9212         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
9213         add_inf_child_target.
9214         * aix-thread.c (aix_thread_target_info): New.
9215         (aix_thread_target) <shortname, longname, doc>: Delete.
9216         <info>: New.
9217         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
9218         add_inf_child_target.
9219         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
9220         add_inf_child_target.
9221         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
9222         add_inf_child_target.
9223         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
9224         add_inf_child_target.
9225         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
9226         add_inf_child_target.
9227         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
9228         add_inf_child_target.
9229         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
9230         add_inf_child_target.
9231         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
9232         add_inf_child_target.
9233         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
9234         add_inf_child_target.
9235         * bfd-target.c (target_bfd_target_info): New.
9236         (target_bfd) <shortname, longname, doc>: Delete.
9237         <info>: New.
9238         * bsd-kvm.c (bsd_kvm_target_info): New.
9239         (bsd_kvm_target) <shortname, longname, doc>: Delete.
9240         <info>: New.
9241         (bsd_kvm_target::open): Rename to ...
9242         (bsd_kvm_target_open): ... this.  Adjust.
9243         * bsd-uthread.c (bsd_uthread_target_info): New.
9244         (bsd_uthread_target) <shortname, longname, doc>: Delete.
9245         <info>: New.
9246         * corefile.c (core_file_command): Adjust.
9247         * corelow.c (core_target_info): New.
9248         (core_target) <shortname, longname, doc>: Delete.
9249         <info>: New.
9250         (core_target::open): Rename to ...
9251         (core_target_open): ... this.  Adjust.
9252         * ctf.c (ctf_target_info): New.
9253         (ctf_target) <shortname, longname, doc>: Delete.
9254         <info>: New.
9255         (ctf_target::open): Rename to ...
9256         (ctf_target_open): ... this.
9257         (_initialize_ctf): Adjust.
9258         * exec.c (exec_target_info): New.
9259         (exec_target) <shortname, longname, doc>: Delete.
9260         <info>: New.
9261         (exec_target::open): Rename to ...
9262         (exec_target_open): ... this.
9263         * gdbcore.h (core_target_open): Declare.
9264         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
9265         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
9266         add_inf_child_target.
9267         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
9268         add_inf_child_target.
9269         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
9270         add_inf_child_target.
9271         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
9272         add_inf_child_target.
9273         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
9274         add_inf_child_target.
9275         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
9276         add_inf_child_target.
9277         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
9278         add_inf_child_target.
9279         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
9280         add_inf_child_target.
9281         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
9282         add_inf_child_target.
9283         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
9284         add_inf_child_target.
9285         * inf-child.c (inf_child_target_info): New.
9286         (inf_child_target::info): New.
9287         (inf_child_open_target): Remove 'target' parameter.  Use
9288         get_native_target instead.
9289         (inf_child_target::open): Delete.
9290         (add_inf_child_target): New.
9291         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
9292         Delete.
9293         <info>: New.
9294         (add_inf_child_target): Declare.
9295         (inf_child_open_target): Declare.
9296         * linux-thread-db.c (thread_db_target_info): New.
9297         (thread_db_target) <shortname, longname, doc>: Delete.
9298         <info>: New.
9299         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
9300         add_inf_child_target.
9301         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
9302         add_inf_child_target.
9303         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
9304         add_inf_child_target.
9305         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
9306         add_inf_child_target.
9307         * make-target-delegates (print_class): Adjust.
9308         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
9309         add_inf_child_target.
9310         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
9311         add_inf_child_target.
9312         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
9313         add_inf_child_target.
9314         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
9315         add_inf_child_target.
9316         * nto-procfs.c (nto_native_target_info): New.
9317         (nto_procfs_target_native) <shortname, longname, doc>:
9318         Delete.
9319         <info>: New.
9320         (nto_procfs_target_info): New.
9321         (nto_procfs_target_procfs) <shortname, longname, doc>:
9322         Delete.
9323         <info>: New.
9324         (init_procfs_targets): Adjust.
9325         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
9326         add_inf_child_target.
9327         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
9328         add_inf_child_target.
9329         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
9330         add_inf_child_target.
9331         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
9332         add_inf_child_target.
9333         * ravenscar-thread.c (ravenscar_target_info): New.
9334         (ravenscar_thread_target) <shortname, longname, doc>:
9335         Delete.
9336         <info>: New.
9337         * record-btrace.c (record_btrace_target_info):
9338         (record_btrace_target) <shortname, longname, doc>: Delete.
9339         <info>: New.
9340         (record_btrace_target::open): Rename to ...
9341         (record_btrace_target_open): ... this.  Adjust.
9342         * record-full.c (record_longname, record_doc): New.
9343         (record_full_base_target) <shortname, longname, doc>: Delete.
9344         <info>: New.
9345         (record_full_target_info): New.
9346         (record_full_target): <shortname>: Delete.
9347         <info>: New.
9348         (record_full_core_open_1, record_full_open_1): Update comments.
9349         (record_full_base_target::open): Rename to ...
9350         (record_full_open): ... this.
9351         (cmd_record_full_restore): Update.
9352         (_initialize_record_full): Update.
9353         * remote-sim.c (remote_sim_target_info): New.
9354         (gdbsim_target) <shortname, longname, doc>: Delete.
9355         <info>: New.
9356         (gdbsim_target::open): Rename to ...
9357         (gdbsim_target_open): ... this.
9358         (_initialize_remote_sim): Adjust.
9359         * remote.c (remote_doc): New.
9360         (remote_target_info): New.
9361         (remote_target) <shortname, longname, doc>: Delete.
9362         <info>: New.
9363         (extended_remote_target_info): New.
9364         (extended_remote_target) <shortname, longname, doc>: Delete.
9365         <info>: New.
9366         (remote_target::open_1): Make static.  Adjust.
9367         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
9368         * s390-linux-nat.c (_initialize_s390_nat): Use
9369         add_inf_child_target.
9370         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
9371         add_inf_child_target.
9372         * sol-thread.c (thread_db_target_info): New.
9373         (sol_thread_target) <shortname, longname, doc>: Delete.
9374         <info>: New.
9375         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
9376         add_inf_child_target.
9377         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
9378         add_inf_child_target.
9379         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
9380         add_inf_child_target.
9381         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
9382         add_inf_child_target.
9383         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
9384         add_inf_child_target.
9385         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
9386         add_inf_child_target.
9387         * spu-linux-nat.c (_initialize_spu_nat): Use
9388         add_inf_child_target.
9389         * spu-multiarch.c (spu_multiarch_target_info): New.
9390         (spu_multiarch_target) <shortname, longname, doc>: Delete.
9391         <info>: New.
9392         * target-delegates.c: Regenerate.
9393         * target.c: Include <unordered_map>.
9394         (target_ops_p): Delete.
9395         (DEF_VEC_P(target_ops_p)): Delete.
9396         (target_factories): New.
9397         (test_target_info): New.
9398         (test_target_ops::info): New.
9399         (open_target): Adjust to use target_factories.
9400         (add_target_with_completer): Rename to ...
9401         (add_target): ... this.  Change prototype.  Register target_info
9402         and open callback in target_factories.  Register target_info in
9403         command context instead of target_ops.
9404         (add_target): Delete old implementation.
9405         (add_deprecated_target_alias): Change prototype.  Adjust.
9406         (the_native_target): New.
9407         (set_native_target, get_native_target): New.
9408         (find_default_run_target): Use the_native_target.
9409         (find_attach_target, find_run_target): Simplify.
9410         (target_ops::open): Delete.
9411         (dummy_target_info): New.
9412         (dummy_target::shortname, dummy_target::longname)
9413         (dummy_target::doc): Delete.
9414         (dummy_target::info): New.
9415         (debug_target::shortname, debug_target::longname)
9416         (debug_target::doc): Delete.
9417         (debug_target::info): New.
9418         * target.h (struct target_info): New.
9419         (target_ops::~target_ops): Add comment.
9420         (target_ops::info): New.
9421         (target_ops::shortname, target_ops::longname, target_ops::doc): No
9422         longer virtual.  Implement in terms of target_info.
9423         (set_native_target, get_native_target): Declare.
9424         (target_open_ftype): New.
9425         (add_target, add_target_with_completer)
9426         (add_deprecated_target_alias): Change prototype.
9427         (test_target) <shortname, longname, doc>: Delete.
9428         <info>: New.
9429         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
9430         add_inf_child_target.
9431         * tracefile-tfile.c (tfile_target_info): New.
9432         (tfile_target) <shortname, longname, doc>: Delete.
9433         <info>: New.
9434         (tfile_target::open): Rename to ...
9435         (tfile_target_open): ... this.
9436         (_initialize_tracefile_tfile): Adjust.
9437         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
9438         add_inf_child_target.
9439         * windows-nat.c (_initialize_windows_nat): Use
9440         add_inf_child_target.
9441         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
9442         add_inf_child_target.
9443
9444 2018-05-02  Pedro Alves  <palves@redhat.com>
9445
9446         * linux-nat.h (linux_nat_target) <low_new_thread,
9447         low_delete_thread, low_new_fork, low_forget_process,
9448         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
9449         New virtual methods.
9450         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
9451         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
9452         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
9453         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
9454         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
9455         Delete.
9456         * linux-fork.c (delete_fork): Adjust to call low method.
9457         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
9458         (linux_nat_new_fork, linux_nat_forget_process_hook)
9459         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
9460         (linux_nat_status_is_event):
9461         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
9462         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
9463         to call low method.
9464         (sigtrap_is_event): Rename to ...
9465         (linux_nat_target::low_status_is_event): ... this.
9466         (linux_nat_set_status_is_event): Delete.
9467         (save_stop_reason, linux_nat_wait_1)
9468         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
9469         low methods.
9470         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
9471         (linux_nat_set_new_fork, linux_nat_set_forget_process)
9472         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
9473         (linux_nat_set_prepare_to_resume): Delete.
9474         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
9475         low virtual methods.
9476         * amd64-linux-nat.c: Likewise.
9477         * arm-linux-nat.c: Likewise.
9478         * i386-linux-nat.c: Likewise.
9479         * ia64-linux-nat.c: Likewise.
9480         * mips-linux-nat.c: Likewise.
9481         * ppc-linux-nat.c: Likewise.
9482         * s390-linux-nat.c: Likewise.
9483         * sparc64-linux-nat.c: Likewise.
9484         * x86-linux-nat.c: Likewise.
9485         * x86-linux-nat.h: Include "nat/x86-linux.h".
9486         (x86_linux_nat_target) <low_new_fork, low_forget_process,
9487         low_prepare_to_resume, low_new_thread, low_delete_thread>:
9488         Override methods.
9489
9490 2018-05-02  Pedro Alves  <palves@redhat.com>
9491
9492         * target.h (target_ops)
9493         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
9494         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
9495         stopped_by_watchpoint, have_continuable_watchpoint,
9496         stopped_data_address, watchpoint_addr_within_range,
9497         can_accel_watchpoint_condition, can_run, thread_alive,
9498         has_all_memory, has_memory, has_stack, has_registers,
9499         has_execution, can_async_p, is_async_p, supports_non_stop,
9500         always_non_stop_p, can_execute_reverse, supports_multi_process,
9501         supports_enable_disable_tracepoint,
9502         supports_disable_randomization, supports_string_tracing,
9503         supports_evaluation_of_breakpoint_conditions,
9504         can_run_breakpoint_commands, filesystem_is_local,
9505         can_download_tracepoint, get_trace_state_variable_value,
9506         set_trace_notes, get_tib_address, use_agent, can_use_agent,
9507         record_is_replaying, record_will_replay,
9508         augmented_libraries_svr4_read>: Adjust to return bool.
9509         * aarch64-linux-nat.c: All implementations adjusted.
9510         * aix-thread.c: All implementations adjusted.
9511         * arm-linux-nat.c: All implementations adjusted.
9512         * breakpoint.c: All implementations adjusted.
9513         * bsd-kvm.c: All implementations adjusted.
9514         * bsd-uthread.c: All implementations adjusted.
9515         * corelow.c: All implementations adjusted.
9516         * ctf.c: All implementations adjusted.
9517         * darwin-nat.c: All implementations adjusted.
9518         * darwin-nat.h: All implementations adjusted.
9519         * exec.c: All implementations adjusted.
9520         * fbsd-nat.c: All implementations adjusted.
9521         * fbsd-nat.h: All implementations adjusted.
9522         * gnu-nat.c: All implementations adjusted.
9523         * gnu-nat.h: All implementations adjusted.
9524         * go32-nat.c: All implementations adjusted.
9525         * ia64-linux-nat.c: All implementations adjusted.
9526         * inf-child.c: All implementations adjusted.
9527         * inf-child.h: All implementations adjusted.
9528         * inf-ptrace.c: All implementations adjusted.
9529         * inf-ptrace.h: All implementations adjusted.
9530         * linux-nat.c: All implementations adjusted.
9531         * linux-nat.h: All implementations adjusted.
9532         * mips-linux-nat.c: All implementations adjusted.
9533         * nto-procfs.c: All implementations adjusted.
9534         * ppc-linux-nat.c: All implementations adjusted.
9535         * procfs.c: All implementations adjusted.
9536         * ravenscar-thread.c: All implementations adjusted.
9537         * record-btrace.c: All implementations adjusted.
9538         * record-full.c: All implementations adjusted.
9539         * remote-sim.c: All implementations adjusted.
9540         * remote.c: All implementations adjusted.
9541         * s390-linux-nat.c: All implementations adjusted.
9542         * sol-thread.c: All implementations adjusted.
9543         * spu-multiarch.c: All implementations adjusted.
9544         * target-delegates.c: All implementations adjusted.
9545         * target.c: All implementations adjusted.
9546         * target.h: All implementations adjusted.
9547         * tracefile-tfile.c: All implementations adjusted.
9548         * tracefile.c: All implementations adjusted.
9549         * tracefile.h: All implementations adjusted.
9550         * windows-nat.c: All implementations adjusted.
9551         * x86-linux-nat.h: All implementations adjusted.
9552         * x86-nat.h: All implementations adjusted.
9553
9554 2018-05-02  Pedro Alves  <palves@redhat.com>
9555
9556         * make-target-delegates (scan_target_h): Don't trim lines here.
9557         Replace sequences of tabs and/or whitespace with a single
9558         whitespace.
9559         (top level, parsing methods): Trim each line before processing it
9560         here.
9561
9562 2018-05-02  Pedro Alves  <palves@redhat.com>
9563             John Baldwin  <jhb@freebsd.org>
9564
9565         * target.h (enum strata) <debug_stratum>: New.
9566         (struct target_ops) <all delegation methods>: Replace by C++
9567         virtual methods, and drop "to_" prefix.  All references updated
9568         throughout.
9569         <to_shortname, to_longname, to_doc, to_data,
9570         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
9571         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
9572         virtual methods.  All references updated throughout.
9573         <can_attach, supports_terminal_ours, can_create_inferior,
9574         get_thread_control_capabilities, attach_no_wait>: New
9575         virtual methods.
9576         <insert_breakpoint, remove_breakpoint>: Now
9577         TARGET_DEFAULT_NORETURN methods.
9578         <info_proc>: Now returns bool.
9579         <to_magic>: Delete.
9580         (OPS_MAGIC): Delete.
9581         (current_target): Delete.  All references replaced by references
9582         to ...
9583         (target_stack): ... this.  New.
9584         (target_shortname, target_longname): Adjust.
9585         (target_can_run): Now a function declaration.
9586         (default_child_has_all_memory, default_child_has_memory)
9587         (default_child_has_stack, default_child_has_registers)
9588         (default_child_has_execution): Remove target_ops parameter.
9589         (complete_target_initialization): Delete.
9590         (memory_breakpoint_target): New template class.
9591         (test_target_ops): Refactor as a C++ class with virtual methods.
9592         * make-target-delegates (NAME_PART): Tighten.
9593         (POINTER_PART, CP_SYMBOL): New.
9594         (SIMPLE_RETURN_PART): Reimplement.
9595         (VEC_RETURN_PART): Expect less.
9596         (RETURN_PART, VIRTUAL_PART): New.
9597         (METHOD): Adjust to C++ virtual methods.
9598         (scan_target_h): Remove reference to C99.
9599         (dname): Output "target_ops::" prefix.
9600         (write_function_header): Adjust to output a C++ class method.
9601         (write_declaration): New.
9602         (write_delegator): Adjust to output a C++ class method.
9603         (tdname): Output "dummy_target::" prefix.
9604         (write_tdefault, write_debugmethod): Adjust to output a C++ class
9605         method.
9606         (tdefault_names, debug_names): Delete.
9607         (return_types, tdefaults, styles, argtypes_array): New.
9608         (top level): All methods are delegators.
9609         (print_class): New.
9610         (top level): Print dummy_target and debug_target classes.
9611         * target-delegates.c: Regenerate.
9612         * target-debug.h (target_debug_print_enum_info_proc_what)
9613         (target_debug_print_thread_control_capabilities)
9614         (target_debug_print_thread_info_p): New.
9615         * target.c (dummy_target): Delete.
9616         (the_dummy_target, the_debug_target): New.
9617         (target_stack): Now extern.
9618         (set_targetdebug): Push/unpush debug target.
9619         (default_child_has_all_memory, default_child_has_memory)
9620         (default_child_has_stack, default_child_has_registers)
9621         (default_child_has_execution): Remove target_ops parameter.
9622         (complete_target_initialization): Delete.
9623         (add_target_with_completer): No longer call
9624         complete_target_initialization.
9625         (target_supports_terminal_ours): Use regular delegation.
9626         (update_current_target): Delete.
9627         (push_target): No longer check magic number.  Don't call
9628         update_current_target.
9629         (unpush_target): Don't call update_current_target.
9630         (target_is_pushed): No longer check magic number.
9631         (target_require_runnable): Skip for all stratums over
9632         process_stratum.
9633         (target_ops::info_proc): New.
9634         (target_info_proc): Use find_target_at and
9635         find_default_run_target.
9636         (target_supports_disable_randomization): Use regular delegation.
9637         (target_get_osdata): Use find_target_at.
9638         (target_ops::open, target_ops::close, target_ops::can_attach)
9639         (target_ops::attach, target_ops::can_create_inferior)
9640         (target_ops::create_inferior, target_ops::can_run)
9641         (target_can_run): New.
9642         (default_fileio_target): Use regular delegation.
9643         (target_ops::fileio_open, target_ops::fileio_pwrite)
9644         (target_ops::fileio_pread, target_ops::fileio_fstat)
9645         (target_ops::fileio_close, target_ops::fileio_unlink)
9646         (target_ops::fileio_readlink): New.
9647         (target_fileio_open_1, target_fileio_unlink)
9648         (target_fileio_readlink): Always call the target method.  Handle
9649         FILEIO_ENOSYS.
9650         (return_zero, return_zero_has_execution): Delete.
9651         (init_dummy_target): Delete.
9652         (dummy_target::dummy_target, dummy_target::shortname)
9653         (dummy_target::longname, dummy_target::doc)
9654         (debug_target::debug_target, debug_target::shortname)
9655         (debug_target::longname, debug_target::doc): New.
9656         (target_supports_delete_record): Use regular delegation.
9657         (setup_target_debug): Delete.
9658         (maintenance_print_target_stack): Skip debug_stratum.
9659         (initialize_targets): Instantiate the_dummy_target and
9660         the_debug_target.
9661         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
9662         use target_stack.
9663         (target_auxv_search, fprint_target_auxv): Adjust.
9664         (info_auxv_command): Adjust to use target_stack.
9665         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
9666         * exceptions.c (print_flush): Handle a NULL target_stack.
9667         * regcache.c (target_ops_no_register): Refactor as class with
9668         virtual methods.
9669
9670         * exec.c (exec_target): New class.
9671         (exec_ops): Now an exec_target.
9672         (exec_open, exec_close_1, exec_get_section_table)
9673         (exec_xfer_partial, exec_files_info, exec_has_memory)
9674         (exec_make_note_section): Refactor as exec_target methods.
9675         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
9676         Delete.
9677         (exec_target::find_memory_regions): New.
9678         (_initialize_exec): Don't call init_exec_ops.
9679         * gdbcore.h (exec_file_clear): Delete.
9680
9681         * corefile.c (core_target): Delete.
9682         (core_file_command): Adjust.
9683         * corelow.c (core_target): New class.
9684         (the_core_target): New.
9685         (core_close): Remove target_ops parameter.
9686         (core_close_cleanup): Adjust.
9687         (core_target::close): New.
9688         (core_open, core_detach, get_core_registers, core_files_info)
9689         (core_xfer_partial, core_thread_alive, core_read_description)
9690         (core_pid_to_str, core_thread_name, core_has_memory)
9691         (core_has_stack, core_has_registers, core_info_proc): Rework as
9692         core_target methods.
9693         (ignore, core_remove_breakpoint, init_core_ops): Delete.
9694         (_initialize_corelow): Initialize the_core_target.
9695         * gdbcore.h (core_target): Delete.
9696         (the_core_target): New.
9697
9698         * ctf.c: (ctf_target): New class.
9699         (ctf_ops): Now a ctf_target.
9700         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
9701         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
9702         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
9703         methods.
9704         (init_ctf_ops): Delete.
9705         (_initialize_ctf): Don't call it.
9706         * tracefile-tfile.c (tfile_target): New class.
9707         (tfile_ops): Now a tfile_target.
9708         (tfile_open, tfile_close, tfile_files_info)
9709         (tfile_get_tracepoint_status, tfile_trace_find)
9710         (tfile_fetch_registers, tfile_xfer_partial)
9711         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
9712         Refactor as tfile_target methods.
9713         (tfile_xfer_partial_features): Remove target_ops parameter.
9714         (init_tfile_ops): Delete.
9715         (_initialize_tracefile_tfile): Don't call it.
9716         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
9717         (tracefile_has_stack, tracefile_has_registers)
9718         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
9719         tracefile_target methods.
9720         (init_tracefile_ops): Delete.
9721         (tracefile_target::tracefile_target): New.
9722         * tracefile.h: Include "target.h".
9723         (tracefile_target): New class.
9724         (init_tracefile_ops): Delete.
9725
9726         * spu-multiarch.c (spu_multiarch_target): New class.
9727         (spu_ops): Now a spu_multiarch_target.
9728         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
9729         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
9730         (spu_search_memory, spu_mourn_inferior): Refactor as
9731         spu_multiarch_target methods.
9732         (init_spu_ops): Delete.
9733         (_initialize_spu_multiarch): Remove references to init_spu_ops,
9734         complete_target_initialization.
9735
9736         * ravenscar-thread.c (ravenscar_thread_target): New class.
9737         (ravenscar_ops): Now a ravenscar_thread_target.
9738         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
9739         (ravenscar_thread_alive, ravenscar_pid_to_str)
9740         (ravenscar_fetch_registers, ravenscar_store_registers)
9741         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
9742         (ravenscar_stopped_by_hw_breakpoint)
9743         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
9744         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
9745         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
9746         methods.
9747         (init_ravenscar_thread_ops): Delete.
9748         (_initialize_ravenscar): Remove references to
9749         init_ravenscar_thread_ops and complete_target_initialization.
9750
9751         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
9752         (bsd_uthread_target): New class.
9753         (bsd_uthread_ops): Now a bsd_uthread_target.
9754         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
9755         (bsd_uthread_close, bsd_uthread_mourn_inferior)
9756         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
9757         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
9758         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
9759         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
9760         (bsd_uthread_target): Delete function.
9761         (_initialize_bsd_uthread): Remove reference to
9762         complete_target_initialization.
9763
9764         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
9765         (target_bfd): ... this new class.
9766         (target_bfd_xfer_partial, target_bfd_get_section_table)
9767         (target_bfd_close): Refactor as target_bfd methods.
9768         (target_bfd::~target_bfd): New.
9769         (target_bfd_reopen): Adjust.
9770         (target_bfd::close): New.
9771
9772         * record-btrace.c (record_btrace_target): New class.
9773         (record_btrace_ops): Now a record_btrace_target.
9774         (record_btrace_open, record_btrace_stop_recording)
9775         (record_btrace_disconnect, record_btrace_close)
9776         (record_btrace_async, record_btrace_info)
9777         (record_btrace_insn_history, record_btrace_insn_history_range)
9778         (record_btrace_insn_history_from, record_btrace_call_history)
9779         (record_btrace_call_history_range)
9780         (record_btrace_call_history_from, record_btrace_record_method)
9781         (record_btrace_is_replaying, record_btrace_will_replay)
9782         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
9783         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
9784         (record_btrace_store_registers, record_btrace_prepare_to_store)
9785         (record_btrace_to_get_unwinder)
9786         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
9787         (record_btrace_commit_resume, record_btrace_wait)
9788         (record_btrace_stop, record_btrace_can_execute_reverse)
9789         (record_btrace_stopped_by_sw_breakpoint)
9790         (record_btrace_supports_stopped_by_sw_breakpoint)
9791         (record_btrace_stopped_by_hw_breakpoint)
9792         (record_btrace_supports_stopped_by_hw_breakpoint)
9793         (record_btrace_update_thread_list, record_btrace_thread_alive)
9794         (record_btrace_goto_begin, record_btrace_goto_end)
9795         (record_btrace_goto, record_btrace_stop_replaying_all)
9796         (record_btrace_execution_direction)
9797         (record_btrace_prepare_to_generate_core)
9798         (record_btrace_done_generating_core): Refactor as
9799         record_btrace_target methods.
9800         (init_record_btrace_ops): Delete.
9801         (_initialize_record_btrace): Remove reference to
9802         init_record_btrace_ops.
9803         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
9804         the execution_direction global.
9805         (record_full_base_target, record_full_target)
9806         (record_full_core_target): New classes.
9807         (record_full_ops): Now a record_full_target.
9808         (record_full_core_ops): Now a record_full_core_target.
9809         (record_full_target::detach, record_full_target::disconnect)
9810         (record_full_core_target::disconnect)
9811         (record_full_target::mourn_inferior, record_full_target::kill):
9812         New.
9813         (record_full_open, record_full_close, record_full_async): Refactor
9814         as methods of the record_full_base_target class.
9815         (record_full_resume, record_full_commit_resume): Refactor
9816         as methods of the record_full_target class.
9817         (record_full_wait, record_full_stopped_by_watchpoint)
9818         (record_full_stopped_data_address)
9819         (record_full_stopped_by_sw_breakpoint)
9820         (record_full_supports_stopped_by_sw_breakpoint)
9821         (record_full_stopped_by_hw_breakpoint)
9822         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
9823         methods of the record_full_base_target class.
9824         (record_full_store_registers, record_full_xfer_partial)
9825         (record_full_insert_breakpoint, record_full_remove_breakpoint):
9826         Refactor as methods of the record_full_target class.
9827         (record_full_can_execute_reverse, record_full_get_bookmark)
9828         (record_full_goto_bookmark, record_full_execution_direction)
9829         (record_full_record_method, record_full_info, record_full_delete)
9830         (record_full_is_replaying, record_full_will_replay)
9831         (record_full_goto_begin, record_full_goto_end, record_full_goto)
9832         (record_full_stop_replaying): Refactor as methods of the
9833         record_full_base_target class.
9834         (record_full_core_resume, record_full_core_kill)
9835         (record_full_core_fetch_registers)
9836         (record_full_core_prepare_to_store)
9837         (record_full_core_store_registers, record_full_core_xfer_partial)
9838         (record_full_core_insert_breakpoint)
9839         (record_full_core_remove_breakpoint)
9840         (record_full_core_has_execution): Refactor
9841         as methods of the record_full_core_target class.
9842         (record_full_base_target::supports_delete_record): New.
9843         (init_record_full_ops): Delete.
9844         (init_record_full_core_ops): Delete.
9845         (record_full_save): Refactor as method of the
9846         record_full_base_target class.
9847         (_initialize_record_full): Remove references to
9848         init_record_full_ops and init_record_full_core_ops.
9849
9850         * remote.c (remote_target, extended_remote_target): New classes.
9851         (remote_ops): Now a remote_target.
9852         (extended_remote_ops): Now an extended_remote_target.
9853         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
9854         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
9855         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
9856         (remote_pass_signals, remote_set_syscall_catchpoint)
9857         (remote_program_signals, )
9858         (remote_thread_always_alive): Remove target_ops parameter.
9859         (remote_thread_alive, remote_thread_name)
9860         (remote_update_thread_list, remote_threads_extra_info)
9861         (remote_static_tracepoint_marker_at)
9862         (remote_static_tracepoint_markers_by_strid)
9863         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
9864         (remote_open): Refactor as methods of remote_target.
9865         (extended_remote_open, extended_remote_detach)
9866         (extended_remote_attach, extended_remote_post_attach):
9867         (extended_remote_supports_disable_randomization)
9868         (extended_remote_create_inferior): : Refactor as method of
9869         extended_remote_target.
9870         (remote_set_permissions, remote_open_1, remote_detach)
9871         (remote_follow_fork, remote_follow_exec, remote_disconnect)
9872         (remote_resume, remote_commit_resume, remote_stop)
9873         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
9874         (remote_terminal_ours, remote_wait, remote_fetch_registers)
9875         (remote_prepare_to_store, remote_store_registers)
9876         (remote_flash_erase, remote_flash_done, remote_files_info)
9877         (remote_kill, remote_mourn, remote_insert_breakpoint)
9878         (remote_remove_breakpoint, remote_insert_watchpoint)
9879         (remote_watchpoint_addr_within_range)
9880         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
9881         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
9882         (remote_supports_stopped_by_sw_breakpoint)
9883         (remote_stopped_by_hw_breakpoint)
9884         (remote_supports_stopped_by_hw_breakpoint)
9885         (remote_stopped_by_watchpoint, remote_stopped_data_address)
9886         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
9887         (remote_verify_memory): Refactor as methods of remote_target.
9888         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
9889         parameter.
9890         (remote_xfer_partial, remote_get_memory_xfer_limit)
9891         (remote_search_memory, remote_rcmd, remote_memory_map)
9892         (remote_pid_to_str, remote_get_thread_local_address)
9893         (remote_get_tib_address, remote_read_description): Refactor as
9894         methods of remote_target.
9895         (remote_target::fileio_open, remote_target::fileio_pwrite)
9896         (remote_target::fileio_pread, remote_target::fileio_close): New.
9897         (remote_hostio_readlink, remote_hostio_fstat)
9898         (remote_filesystem_is_local, remote_can_execute_reverse)
9899         (remote_supports_non_stop, remote_supports_disable_randomization)
9900         (remote_supports_multi_process, remote_supports_cond_breakpoints)
9901         (remote_supports_enable_disable_tracepoint)
9902         (remote_supports_string_tracing)
9903         (remote_can_run_breakpoint_commands, remote_trace_init)
9904         (remote_download_tracepoint, remote_can_download_tracepoint)
9905         (remote_download_trace_state_variable, remote_enable_tracepoint)
9906         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
9907         (remote_trace_start, remote_get_trace_status)
9908         (remote_get_tracepoint_status, remote_trace_stop)
9909         (remote_trace_find, remote_get_trace_state_variable_value)
9910         (remote_save_trace_data, remote_get_raw_trace_data)
9911         (remote_set_disconnected_tracing, remote_core_of_thread)
9912         (remote_set_circular_trace_buffer, remote_traceframe_info)
9913         (remote_get_min_fast_tracepoint_insn_len)
9914         (remote_set_trace_buffer_size, remote_set_trace_notes)
9915         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
9916         (remote_disable_btrace, remote_teardown_btrace)
9917         (remote_read_btrace, remote_btrace_conf)
9918         (remote_augmented_libraries_svr4_read, remote_load)
9919         (remote_pid_to_exec_file, remote_can_do_single_step)
9920         (remote_execution_direction, remote_thread_handle_to_thread_info):
9921         Refactor as methods of remote_target.
9922         (init_remote_ops, init_extended_remote_ops): Delete.
9923         (remote_can_async_p, remote_is_async_p, remote_async)
9924         (remote_thread_events, remote_upload_tracepoints)
9925         (remote_upload_trace_state_variables): Refactor as methods of
9926         remote_target.
9927         (_initialize_remote): Remove references to init_remote_ops and
9928         init_extended_remote_ops.
9929
9930         * remote-sim.c (gdbsim_target): New class.
9931         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
9932         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
9933         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
9934         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
9935         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
9936         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
9937         Refactor as methods of gdbsim_target.
9938         (gdbsim_ops): Now a gdbsim_target.
9939         (init_gdbsim_ops): Delete.
9940         (gdbsim_cntrl_c): Adjust.
9941         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
9942
9943         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
9944         (the_amd64_linux_nat_target): New.
9945         (amd64_linux_fetch_inferior_registers)
9946         (amd64_linux_store_inferior_registers): Refactor as methods of
9947         amd64_linux_nat_target.
9948         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
9949         * i386-linux-nat.c: Don't include "linux-nat.h".
9950         (i386_linux_nat_target): New class.
9951         (the_i386_linux_nat_target): New.
9952         (i386_linux_fetch_inferior_registers)
9953         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
9954         as methods of i386_linux_nat_target.
9955         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
9956         * inf-child.c (inf_child_ops): Delete.
9957         (inf_child_fetch_inferior_registers)
9958         (inf_child_store_inferior_registers): Delete.
9959         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
9960         methods of inf_child_target.
9961         (inf_child_target::supports_terminal_ours)
9962         (inf_child_target::terminal_init)
9963         (inf_child_target::terminal_inferior)
9964         (inf_child_target::terminal_ours_for_output)
9965         (inf_child_target::terminal_ours, inf_child_target::interrupt)
9966         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
9967         New.
9968         (inf_child_open, inf_child_disconnect, inf_child_close)
9969         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
9970         (inf_child_post_startup_inferior, inf_child_can_run)
9971         (inf_child_pid_to_exec_file): Refactor as methods of
9972         inf_child_target.
9973         (inf_child_follow_fork): Delete.
9974         (inf_child_target::can_create_inferior)
9975         (inf_child_target::can_attach): New.
9976         (inf_child_target::has_all_memory, inf_child_target::has_memory)
9977         (inf_child_target::has_stack, inf_child_target::has_registers)
9978         (inf_child_target::has_execution): New.
9979         (inf_child_fileio_open, inf_child_fileio_pwrite)
9980         (inf_child_fileio_pread, inf_child_fileio_fstat)
9981         (inf_child_fileio_close, inf_child_fileio_unlink)
9982         (inf_child_fileio_readlink, inf_child_use_agent)
9983         (inf_child_can_use_agent): Refactor as methods of
9984         inf_child_target.
9985         (return_zero, inf_child_target): Delete.
9986         (inf_child_target::inf_child_target): New.
9987         * inf-child.h: Include "target.h".
9988         (inf_child_target): Delete function prototype.
9989         (inf_child_target): New class.
9990         (inf_child_open_target, inf_child_mourn_inferior)
9991         (inf_child_maybe_unpush_target): Delete.
9992         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
9993         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
9994         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
9995         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
9996         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
9997         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
9998         (inf_ptrace_wait, inf_ptrace_xfer_partial)
9999         (inf_ptrace_thread_alive, inf_ptrace_files_info)
10000         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
10001         methods of inf_ptrace_target.
10002         (inf_ptrace_target): Delete function.
10003         * inf-ptrace.h: Include "inf-child.h".
10004         (inf_ptrace_target): Delete function declaration.
10005         (inf_ptrace_target): New class.
10006         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
10007         * linux-nat.c (linux_target): New.
10008         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
10009         (linux_nat_target::~linux_nat_target): New.
10010         (linux_child_post_attach, linux_child_post_startup_inferior)
10011         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
10012         (linux_child_remove_fork_catchpoint)
10013         (linux_child_insert_vfork_catchpoint)
10014         (linux_child_remove_vfork_catchpoint)
10015         (linux_child_insert_exec_catchpoint)
10016         (linux_child_remove_exec_catchpoint)
10017         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
10018         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
10019         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
10020         (linux_nat_stopped_data_address)
10021         (linux_nat_stopped_by_sw_breakpoint)
10022         (linux_nat_supports_stopped_by_sw_breakpoint)
10023         (linux_nat_stopped_by_hw_breakpoint)
10024         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
10025         (linux_nat_kill, linux_nat_mourn_inferior)
10026         (linux_nat_xfer_partial, linux_nat_thread_alive)
10027         (linux_nat_update_thread_list, linux_nat_pid_to_str)
10028         (linux_nat_thread_name, linux_child_pid_to_exec_file)
10029         (linux_child_static_tracepoint_markers_by_strid)
10030         (linux_nat_is_async_p, linux_nat_can_async_p)
10031         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
10032         (linux_nat_supports_multi_process)
10033         (linux_nat_supports_disable_randomization, linux_nat_async)
10034         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
10035         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
10036         (linux_nat_fileio_open, linux_nat_fileio_readlink)
10037         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
10038         methods of linux_nat_target.
10039         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
10040         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
10041         parameter.
10042         (check_stopped_by_watchpoint): Adjust.
10043         (linux_xfer_partial): Delete.
10044         (linux_target_install_ops, linux_target, linux_nat_add_target):
10045         Delete.
10046         (linux_nat_target::linux_nat_target): New.
10047         * linux-nat.h: Include "inf-ptrace.h".
10048         (linux_nat_target): New.
10049         (linux_target, linux_target_install_ops, linux_nat_add_target):
10050         Delete function declarations.
10051         (linux_target): Declare global.
10052         * linux-thread-db.c (thread_db_target): New.
10053         (thread_db_target::thread_db_target): New.
10054         (thread_db_ops): Delete.
10055         (the_thread_db_target): New.
10056         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
10057         (thread_db_update_thread_list, thread_db_pid_to_str)
10058         (thread_db_extra_thread_info)
10059         (thread_db_thread_handle_to_thread_info)
10060         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
10061         (thread_db_resume): Refactor as methods of thread_db_target.
10062         (init_thread_db_ops): Delete.
10063         (_initialize_thread_db): Remove reference to init_thread_db_ops.
10064         * x86-linux-nat.c: Don't include "linux-nat.h".
10065         (super_post_startup_inferior): Delete.
10066         (x86_linux_nat_target::~x86_linux_nat_target): New.
10067         (x86_linux_child_post_startup_inferior)
10068         (x86_linux_read_description, x86_linux_enable_btrace)
10069         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
10070         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
10071         methods of x86_linux_nat_target.
10072         (x86_linux_create_target): Delete.  Bits folded ...
10073         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
10074         pointer.
10075         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
10076         (x86_linux_nat_target): New class.
10077         (x86_linux_create_target): Delete.
10078         (x86_linux_add_target): Now takes a linux_nat_target pointer.
10079         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
10080         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
10081         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
10082         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
10083         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
10084         make extern.
10085         (x86_use_watchpoints): Delete.
10086         * x86-nat.h: Include "breakpoint.h" and "target.h".
10087         (x86_use_watchpoints): Delete.
10088         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
10089         (x86_stopped_by_watchpoint, x86_stopped_data_address)
10090         (x86_insert_watchpoint, x86_remove_watchpoint)
10091         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
10092         (x86_stopped_by_hw_breakpoint): New declarations.
10093         (x86_nat_target): New template class.
10094
10095         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
10096         (the_ppc_linux_nat_target): New.
10097         (ppc_linux_fetch_inferior_registers)
10098         (ppc_linux_can_use_hw_breakpoint)
10099         (ppc_linux_region_ok_for_hw_watchpoint)
10100         (ppc_linux_ranged_break_num_registers)
10101         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
10102         (ppc_linux_insert_mask_watchpoint)
10103         (ppc_linux_remove_mask_watchpoint)
10104         (ppc_linux_can_accel_watchpoint_condition)
10105         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
10106         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
10107         (ppc_linux_watchpoint_addr_within_range)
10108         (ppc_linux_masked_watch_num_registers)
10109         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
10110         (ppc_linux_read_description): Refactor as methods of
10111         ppc_linux_nat_target.
10112         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
10113
10114         * procfs.c (procfs_xfer_partial): Delete forward declaration.
10115         (procfs_target): New class.
10116         (the_procfs_target): New.
10117         (procfs_target): Delete function.
10118         (procfs_auxv_parse, procfs_attach, procfs_detach)
10119         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
10120         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
10121         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
10122         (procfs_create_inferior, procfs_update_thread_list)
10123         (procfs_thread_alive, procfs_pid_to_str)
10124         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
10125         (procfs_stopped_data_address, procfs_insert_watchpoint)
10126         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
10127         (proc_find_memory_regions, procfs_info_proc)
10128         (procfs_make_note_section): Refactor as methods of procfs_target.
10129         (_initialize_procfs): Adjust.
10130         * sol-thread.c (sol_thread_target): New class.
10131         (sol_thread_ops): Now a sol_thread_target.
10132         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
10133         (sol_thread_fetch_registers, sol_thread_store_registers)
10134         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
10135         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
10136         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
10137         (init_sol_thread_ops): Delete.
10138         (_initialize_sol_thread): Adjust.  Remove references to
10139         init_sol_thread_ops and complete_target_initialization.
10140
10141         * windows-nat.c (windows_nat_target): New class.
10142         (windows_fetch_inferior_registers)
10143         (windows_store_inferior_registers, windows_resume, windows_wait)
10144         (windows_attach, windows_detach, windows_pid_to_exec_file)
10145         (windows_files_info, windows_create_inferior)
10146         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
10147         (windows_close, windows_pid_to_str, windows_xfer_partial)
10148         (windows_get_tib_address, windows_get_ada_task_ptid)
10149         (windows_thread_name, windows_thread_alive): Refactor as
10150         windows_nat_target methods.
10151         (do_initial_windows_stuff): Adjust.
10152         (windows_target): Delete function.
10153         (_initialize_windows_nat): Adjust.
10154
10155         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
10156         (darwin_mourn_inferior, darwin_kill_inferior)
10157         (darwin_create_inferior, darwin_attach, darwin_detach)
10158         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
10159         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
10160         (darwin_supports_multi_process): Refactor as darwin_nat_target
10161         methods.
10162         (darwin_resume_to, darwin_files_info): Delete.
10163         (_initialize_darwin_inferior): Rename to ...
10164         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
10165         * darwin-nat.h: Include "inf-child.h".
10166         (darwin_nat_target): New class.
10167         (darwin_complete_target): Delete.
10168         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
10169         (darwin_target): New.
10170         (i386_darwin_fetch_inferior_registers)
10171         (i386_darwin_store_inferior_registers): Refactor as methods of
10172         darwin_nat_target.
10173         (darwin_complete_target): Delete, with ...
10174         (_initialize_i386_darwin_nat): ... bits factored out here.
10175
10176         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
10177         (the_alpha_linux_nat_target): New.
10178         (alpha_linux_register_u_offset): Refactor as
10179         alpha_linux_nat_target method.
10180         (_initialize_alpha_linux_nat): Adjust.
10181         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
10182         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
10183         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
10184         methods of linux_nat_trad_target.
10185         (linux_trad_target): Delete.
10186         * linux-nat-trad.h (linux_trad_target): Delete function.
10187         (linux_nat_trad_target): New class.
10188         * mips-linux-nat.c (mips_linux_nat_target): New class.
10189         (super_fetch_registers, super_store_registers, super_close):
10190         Delete.
10191         (the_mips_linux_nat_target): New.
10192         (mips64_linux_regsets_fetch_registers)
10193         (mips64_linux_regsets_store_registers)
10194         (mips64_linux_fetch_registers, mips64_linux_store_registers)
10195         (mips_linux_register_u_offset, mips_linux_read_description)
10196         (mips_linux_can_use_hw_breakpoint)
10197         (mips_linux_stopped_by_watchpoint)
10198         (mips_linux_stopped_data_address)
10199         (mips_linux_region_ok_for_hw_watchpoint)
10200         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
10201         (mips_linux_close): Refactor as methods of mips_linux_nat.
10202         (_initialize_mips_linux_nat): Adjust to C++ification.
10203
10204         * aix-thread.c (aix_thread_target): New class.
10205         (aix_thread_ops): Now an aix_thread_target.
10206         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
10207         (aix_thread_fetch_registers, aix_thread_store_registers)
10208         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
10209         (aix_thread_thread_alive, aix_thread_pid_to_str)
10210         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
10211         Refactor as methods of aix_thread_target.
10212         (init_aix_thread_ops): Delete.
10213         (_initialize_aix_thread): Remove references to init_aix_thread_ops
10214         and complete_target_initialization.
10215         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
10216         (rs6000_nat_target): New class.
10217         (the_rs6000_nat_target): New.
10218         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
10219         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
10220         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
10221         (super_create_inferior): Delete.
10222         (_initialize_rs6000_nat): Adjust to C++ification.
10223
10224         * arm-linux-nat.c (arm_linux_nat_target): New class.
10225         (the_arm_linux_nat_target): New.
10226         (arm_linux_fetch_inferior_registers)
10227         (arm_linux_store_inferior_registers, arm_linux_read_description)
10228         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
10229         (arm_linux_remove_hw_breakpoint)
10230         (arm_linux_region_ok_for_hw_watchpoint)
10231         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
10232         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
10233         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
10234         arm_linux_nat_target.
10235         (_initialize_arm_linux_nat): Adjust to C++ification.
10236
10237         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
10238         (the_aarch64_linux_nat_target): New.
10239         (aarch64_linux_fetch_inferior_registers)
10240         (aarch64_linux_store_inferior_registers)
10241         (aarch64_linux_child_post_startup_inferior)
10242         (aarch64_linux_read_description)
10243         (aarch64_linux_can_use_hw_breakpoint)
10244         (aarch64_linux_insert_hw_breakpoint)
10245         (aarch64_linux_remove_hw_breakpoint)
10246         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
10247         (aarch64_linux_region_ok_for_hw_watchpoint)
10248         (aarch64_linux_stopped_data_address)
10249         (aarch64_linux_stopped_by_watchpoint)
10250         (aarch64_linux_watchpoint_addr_within_range)
10251         (aarch64_linux_can_do_single_step): Refactor as methods of
10252         aarch64_linux_nat_target.
10253         (super_post_startup_inferior): Delete.
10254         (_initialize_aarch64_linux_nat): Adjust to C++ification.
10255
10256         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
10257         (the_hppa_linux_nat_target): New.
10258         (hppa_linux_fetch_inferior_registers)
10259         (hppa_linux_store_inferior_registers): Refactor as methods of
10260         hppa_linux_nat_target.
10261         (_initialize_hppa_linux_nat): Adjust to C++ification.
10262
10263         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
10264         (the_ia64_linux_nat_target): New.
10265         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
10266         (ia64_linux_stopped_data_address)
10267         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
10268         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
10269         ia64_linux_nat_target methods.
10270         (super_xfer_partial): Delete.
10271         (_initialize_ia64_linux_nat): Adjust to C++ification.
10272
10273         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
10274         (the_m32r_linux_nat_target): New.
10275         (m32r_linux_fetch_inferior_registers)
10276         (m32r_linux_store_inferior_registers): Refactor as
10277         m32r_linux_nat_target methods.
10278         (_initialize_m32r_linux_nat): Adjust to C++ification.
10279
10280         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
10281         (the_m68k_linux_nat_target): New.
10282         (m68k_linux_fetch_inferior_registers)
10283         (m68k_linux_store_inferior_registers): Refactor as
10284         m68k_linux_nat_target methods.
10285         (_initialize_m68k_linux_nat): Adjust to C++ification.
10286
10287         * s390-linux-nat.c (s390_linux_nat_target): New class.
10288         (the_s390_linux_nat_target): New.
10289         (s390_linux_fetch_inferior_registers)
10290         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
10291         (s390_insert_watchpoint, s390_remove_watchpoint)
10292         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
10293         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
10294         (s390_auxv_parse, s390_read_description): Refactor as methods of
10295         s390_linux_nat_target.
10296         (_initialize_s390_nat): Adjust to C++ification.
10297
10298         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
10299         (the_sparc_linux_nat_target): New.
10300         (_initialize_sparc_linux_nat): Adjust to C++ification.
10301         * sparc-nat.c (sparc_fetch_inferior_registers)
10302         (sparc_store_inferior_registers): Remove target_ops parameter.
10303         * sparc-nat.h (sparc_fetch_inferior_registers)
10304         (sparc_store_inferior_registers): Remove target_ops parameter.
10305         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
10306         (the_sparc64_linux_nat_target): New.
10307         (_initialize_sparc64_linux_nat): Adjust to C++ification.
10308
10309         * spu-linux-nat.c (spu_linux_nat_target): New class.
10310         (the_spu_linux_nat_target): New.
10311         (spu_child_post_startup_inferior, spu_child_post_attach)
10312         (spu_child_wait, spu_fetch_inferior_registers)
10313         (spu_store_inferior_registers, spu_xfer_partial)
10314         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
10315         methods.
10316         (_initialize_spu_nat): Adjust to C++ification.
10317
10318         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
10319         (the_tilegx_linux_nat_target): New.
10320         (fetch_inferior_registers, store_inferior_registers):
10321         Refactor as methods.
10322         (_initialize_tile_linux_nat): Adjust to C++ification.
10323
10324         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
10325         (the_xtensa_linux_nat_target): New.
10326         (xtensa_linux_fetch_inferior_registers)
10327         (xtensa_linux_store_inferior_registers): Refactor as
10328         xtensa_linux_nat_target methods.
10329         (_initialize_xtensa_linux_nat): Adjust to C++ification.
10330
10331         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
10332         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
10333         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
10334         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
10335         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
10336         (fbsd_stopped_by_sw_breakpoint)
10337         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
10338         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
10339         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
10340         (fbsd_post_startup_inferior, fbsd_post_attach)
10341         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
10342         (fbsd_set_syscall_catchpoint)
10343         (super_xfer_partial, super_resume, super_wait)
10344         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
10345         (fbsd_handle_debug_trap): Remove target_ops parameter.
10346         (fbsd_nat_add_target): Delete.
10347         * fbsd-nat.h: Include "inf-ptrace.h".
10348         (fbsd_nat_add_target): Delete.
10349         (USE_SIGTRAP_SIGINFO): Define.
10350         (fbsd_nat_target): New class.
10351
10352         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
10353         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
10354         (amd64bsd_target): Delete.
10355         * amd64-bsd-nat.h: New file.
10356         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
10357         "x86-bsd-nat.h".
10358         (amd64_fbsd_nat_target): New class.
10359         (the_amd64_fbsd_nat_target): New.
10360         (amd64fbsd_read_description): Refactor as method of
10361         amd64_fbsd_nat_target.
10362         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
10363         (_initialize_amd64fbsd_nat): Adjust to C++ification.
10364         * amd64-nat.h (amd64bsd_target): Delete function declaration.
10365         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
10366         (i386bsd_store_inferior_registers): Remove target_ops parameter.
10367         (i386bsd_target): Delete.
10368         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
10369         (i386bsd_fetch_inferior_registers)
10370         (i386bsd_store_inferior_registers): Declare.
10371         (i386_bsd_nat_target): New class.
10372         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
10373         (the_i386_fbsd_nat_target): New.
10374         (i386fbsd_resume, i386fbsd_read_description): Refactor as
10375         i386_fbsd_nat_target methods.
10376         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
10377         (_initialize_i386fbsd_nat): Adjust to C++ification.
10378         * x86-bsd-nat.c (super_mourn_inferior): Delete.
10379         (x86bsd_mourn_inferior, x86bsd_target): Delete.
10380         (_initialize_x86_bsd_nat): Adjust to C++ification.
10381         * x86-bsd-nat.h: Include "x86-nat.h".
10382         (x86bsd_target): Delete declaration.
10383         (x86bsd_nat_target): New class.
10384
10385         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
10386         (the_aarch64_fbsd_nat_target): New.
10387         (aarch64_fbsd_fetch_inferior_registers)
10388         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
10389         aarch64_fbsd_nat_target.
10390         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
10391         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
10392         (the_alpha_bsd_nat_target): New.
10393         (alphabsd_fetch_inferior_registers)
10394         (alphabsd_store_inferior_registers): Refactor as
10395         alpha_bsd_nat_target methods.
10396         (_initialize_alphabsd_nat): Refactor as methods of
10397         alpha_bsd_nat_target.
10398         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
10399         (the_amd64_nbsd_nat_target): New.
10400         (_initialize_amd64nbsd_nat): Adjust to C++ification.
10401         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
10402         (the_amd64_obsd_nat_target): New.
10403         (_initialize_amd64obsd_nat): Adjust to C++ification.
10404         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
10405         (the_arm_fbsd_nat_target): New.
10406         (arm_fbsd_fetch_inferior_registers)
10407         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
10408         (_initialize_arm_fbsd_nat): Refactor as methods of
10409         arm_fbsd_nat_target.
10410         (_initialize_arm_fbsd_nat): Adjust to C++ification.
10411         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
10412         (the_arm_netbsd_nat_target): New.
10413         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
10414         arm_netbsd_nat_target.
10415         (_initialize_arm_netbsd_nat): Adjust to C++ification.
10416         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
10417         (the_hppa_nbsd_nat_target): New.
10418         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
10419         hppa_nbsd_nat_target methods.
10420         (_initialize_hppanbsd_nat): Adjust to C++ification.
10421         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
10422         (the_hppa_obsd_nat_target): New.
10423         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
10424         methods of hppa_obsd_nat_target.
10425         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
10426         add_target.
10427         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
10428         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
10429         add_target.
10430         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
10431         (_initialize_i386obsd_nat): Use add_target.
10432         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
10433         (the_m68k_bsd_nat_target): New.
10434         (m68kbsd_fetch_inferior_registers)
10435         (m68kbsd_store_inferior_registers): Refactor as methods of
10436         m68k_bsd_nat_target.
10437         (_initialize_m68kbsd_nat): Adjust to C++ification.
10438         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
10439         (the_mips_fbsd_nat_target): New.
10440         (mips_fbsd_fetch_inferior_registers)
10441         (mips_fbsd_store_inferior_registers): Refactor as methods of
10442         mips_fbsd_nat_target.
10443         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
10444         add_target.
10445         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
10446         (the_mips_nbsd_nat_target): New.
10447         (mipsnbsd_fetch_inferior_registers)
10448         (mipsnbsd_store_inferior_registers): Refactor as methods of
10449         mips_nbsd_nat_target.
10450         (_initialize_mipsnbsd_nat): Adjust to C++ification.
10451         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
10452         (the_mips64_obsd_nat_target): New.
10453         (mips64obsd_fetch_inferior_registers)
10454         (mips64obsd_store_inferior_registers): Refactor as methods of
10455         mips64_obsd_nat_target.
10456         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
10457         add_target.
10458         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
10459         nbsd_nat_target.
10460         * nbsd-nat.h: Include "inf-ptrace.h".
10461         (nbsd_nat_target): New class.
10462         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
10463         (obsd_wait): Refactor as methods of obsd_nat_target.
10464         (obsd_add_target): Delete.
10465         * obsd-nat.h: Include "inf-ptrace.h".
10466         (obsd_nat_target): New class.
10467         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
10468         (the_ppc_fbsd_nat_target): New.
10469         (ppcfbsd_fetch_inferior_registers)
10470         (ppcfbsd_store_inferior_registers): Refactor as methods of
10471         ppc_fbsd_nat_target.
10472         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
10473         add_target.
10474         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
10475         (the_ppc_nbsd_nat_target): New.
10476         (ppcnbsd_fetch_inferior_registers)
10477         (ppcnbsd_store_inferior_registers): Refactor as methods of
10478         ppc_nbsd_nat_target.
10479         (_initialize_ppcnbsd_nat): Adjust to C++ification.
10480         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
10481         (the_ppc_obsd_nat_target): New.
10482         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
10483         methods of ppc_obsd_nat_target.
10484         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
10485         add_target.
10486         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
10487         (the_sh_nbsd_nat_target): New.
10488         (shnbsd_fetch_inferior_registers)
10489         (shnbsd_store_inferior_registers): Refactor as methods of
10490         sh_nbsd_nat_target.
10491         (_initialize_shnbsd_nat): Adjust to C++ification.
10492         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
10493         (inf_ptrace_xfer_partial): Delete.
10494         (sparc_xfer_partial, sparc_target): Delete.
10495         * sparc-nat.h (sparc_fetch_inferior_registers)
10496         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
10497         (sparc_target): Delete function declaration.
10498         (sparc_target): New template class.
10499         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
10500         (_initialize_sparcnbsd_nat): Adjust to C++ification.
10501         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
10502         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
10503         add_target.
10504         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
10505         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
10506         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
10507         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
10508         add_target.
10509         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
10510         (the_vax_bsd_nat_target): New.
10511         (vaxbsd_fetch_inferior_registers)
10512         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
10513         methods.
10514         (_initialize_vaxbsd_nat): Adjust to C++ification.
10515
10516         * bsd-kvm.c (bsd_kvm_target): New class.
10517         (bsd_kvm_ops): Now a bsd_kvm_target.
10518         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
10519         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
10520         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
10521         bsd_kvm_target.
10522         (bsd_kvm_return_one): Delete.
10523         (bsd_kvm_add_target): Adjust to C++ification.
10524
10525         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
10526         (nto_procfs_target_procfs): New classes.
10527         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
10528         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
10529         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
10530         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
10531         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
10532         (procfs_remove_hw_breakpoint, procfs_resume)
10533         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
10534         (procfs_kill_inferior, procfs_store_registers)
10535         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
10536         as methods of nto_procfs_target.
10537         (nto_procfs_ops): Now an nto_procfs_target_procfs.
10538         (nto_native_ops): Delete.
10539         (procfs_open, procfs_native_open): Delete.
10540         (nto_native_ops): Now an nto_procfs_target_native.
10541         (init_procfs_targets): Adjust to C++ification.
10542         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
10543         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
10544         Refactor as methods of nto_procfs_target.
10545
10546         * go32-nat.c (go32_nat_target): New class.
10547         (the_go32_nat_target): New.
10548         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
10549         (go32_store_registers, go32_xfer_partial, go32_files_info)
10550         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
10551         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
10552         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
10553         (go32_pid_to_str): Refactor as methods of go32_nat_target.
10554         (go32_target): Delete.
10555         (_initialize_go32_nat): Adjust to C++ification.
10556
10557         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
10558         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
10559         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
10560         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
10561         gnu_nat_target.
10562         (gnu_target): Delete.
10563         * gnu-nat.h (gnu_target): Delete.
10564         (gnu_nat_target): New class.
10565         * i386-gnu-nat.c (gnu_base_target): New.
10566         (i386_gnu_nat_target): New class.
10567         (the_i386_gnu_nat_target): New.
10568         (_initialize_i386gnu_nat): Adjust to C++ification.
10569
10570 2018-05-02  Pedro Alves  <palves@redhat.com>
10571
10572         * bfd-target.c (target_bfd_xclose): Rename to ...
10573         (target_bfd_close): ... this.
10574         (target_bfd_reopen): Adjust.
10575         * target.c (target_close): Remove references to to_xclose.
10576         * target.h (target_ops::to_xclose): Delete.
10577         (target_ops::to_close): Update comments.
10578
10579 2018-05-02  Pedro Alves  <palves@redhat.com>
10580
10581         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
10582         "linux-nat.h".
10583         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
10584         * inf-ptrace.c (inf_ptrace_register_u_offset)
10585         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
10586         (inf_ptrace_store_register, inf_ptrace_store_registers)
10587         (inf_ptrace_trad_target): Move to ...
10588         * linux-nat-trad.c: ... this new file.
10589         * linux-nat-trad.h: New file.
10590         * linux-nat.c (linux_target_install_ops): Make extern.
10591         (linux_trad_target): Delete.
10592         * linux-nat.h (linux_trad_target): Delete declaration.
10593         (linux_target_install_ops): Declare.
10594         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
10595         "linux-nat.h".
10596
10597 2018-05-02  Pedro Alves  <palves@redhat.com>
10598
10599         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10600         procfs_target/add_target here.
10601         * procfs.c (procfs_target): Make static.
10602         (_initialize_procfs): Call add_target here.
10603         * procfs.h (struct target_ops): Remove forward declaration.
10604         (procfs_target): Remove declaration.
10605         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
10606
10607 2018-05-02  Pedro Alves  <palves@redhat.com>
10608
10609         * procfs.c (procfs_stopped_by_watchpoint)
10610         (procfs_insert_watchpoint, procfs_remove_watchpoint)
10611         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
10612         Forward declare.
10613         (procfs_use_watchpoints): Delete, move contents...
10614         (procfs_target): ... here.
10615         * procfs.h (procfs_use_watchpoints): Delete declaration.
10616         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10617         procfs_use_watchpoints.
10618         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
10619         procfs_use_watchpoints.
10620
10621 2018-05-02  Tom Tromey  <tom@tromey.com>
10622
10623         PR python/20084:
10624         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
10625         and var_zuinteger_unlimited.
10626         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
10627         and PARAM_ZUINTEGER_UNLIMITED.
10628         (set_parameter_value): Handle var_zuinteger and
10629         var_zuinteger_unlimited.
10630         (add_setshow_generic): Likewise.
10631         (parmpy_init): Likewise.
10632
10633 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
10634
10635         PR rust/23124
10636         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
10637         pointer is not null before dereferencing it.
10638
10639 2018-04-30  Tom Tromey  <tom@tromey.com>
10640
10641         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
10642         is_mi_like_p.
10643
10644 2018-04-30  Tom Tromey  <tom@tromey.com>
10645
10646         * breakpoint.c (mention): Remove use of is_mi_like_p.
10647         (print_mention_ranged_breakpoint): Likewise.
10648         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
10649         of is_mi_like_p.
10650
10651 2018-04-30  Tom Tromey  <tom@tromey.com>
10652
10653         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
10654
10655 2018-04-30  Tom Tromey  <tom@tromey.com>
10656
10657         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
10658         (info_spu_event_command): Remove some uses of is_mi_like_p.
10659
10660 2018-04-30  Tom Tromey  <tom@tromey.com>
10661
10662         * python/py-framefilter.c (py_print_single_arg)
10663         (enumerate_locals, py_print_args, py_print_frame): Remove some
10664         uses of is_mi_like_p.
10665
10666 2018-04-30  Tom Tromey  <tom@tromey.com>
10667
10668         * ui-out.c: Update.
10669         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
10670         * ui-out.h (ui_out::is_mi_like_p): Now const.
10671         (ui_out::do_is_mi_like_p): Now const.
10672         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
10673
10674 2018-04-30  Tom Tromey  <tom@tromey.com>
10675
10676         * varobj.c (varobj_set_visualizer): Use new_reference.
10677         * python/python.c (gdbpy_decode_line): Use new_reference.
10678         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
10679         new_reference.
10680
10681 2018-04-30  Tom Tromey  <tom@tromey.com>
10682
10683         * varobj.c (install_new_value): Use new_reference.
10684         * value.h (value_incref): Return void.  Swap intro comment with
10685         value_decref.
10686         * value.c (set_value_parent): Use new_reference.
10687         (value_incref): Return void.  Update intro comment.
10688         (release_value): Use new_reference.
10689         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
10690
10691 2018-04-30  Tom Tromey  <tom@tromey.com>
10692
10693         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
10694         * gdb_bfd.h (new_bfd_ref): Remove.
10695         (gdb_bfd_open): Update comment.
10696         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
10697         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
10698         (gdb_bfd_fdopenr): Use new_reference.
10699         * exec.c (exec_file_attach): Use new_reference.
10700
10701 2018-04-30  Tom Tromey  <tom@tromey.com>
10702
10703         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
10704         method.
10705
10706 2018-04-30  Tom Tromey  <tom@tromey.com>
10707
10708         * jit.c (jit_read_code_entry): Use type_align.
10709         * i386-tdep.c (i386_gdbarch_init): Don't call
10710         set_gdbarch_long_long_align_bit.
10711         * gdbarch.sh: Remove long_long_align_bit.
10712         * gdbarch.c, gdbarch.h: Rebuild.
10713         * arc-tdep.c (arc_type_align): New function.
10714         (arc_gdbarch_init): Use arc_type_align.  Don't call
10715         set_gdbarch_long_long_align_bit.
10716
10717 2018-04-30  Tom Tromey  <tom@tromey.com>
10718
10719         * rust-lang.c (rust_type_alignment): Remove.
10720         (rust_composite_type): Use type_align.
10721
10722 2018-04-30  Tom Tromey  <tom@tromey.com>
10723
10724         * NEWS: Mention Type.align.
10725         * python/py-type.c (typy_get_alignof): New function.
10726         (type_object_getset): Add "alignof".
10727
10728 2018-04-30  Tom Tromey  <tom@tromey.com>
10729
10730         PR exp/17095:
10731         * NEWS: Update.
10732         * std-operator.def (UNOP_ALIGNOF): New operator.
10733         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
10734         New.
10735         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
10736         * c-lang.c (c_op_print_tab): Add alignof.
10737         * c-exp.y (ALIGNOF): New token.
10738         (exp): Add "ALIGNOF" production.
10739         (ident_tokens): Add _Alignof and alignof.
10740
10741 2018-04-30  Tom Tromey  <tom@tromey.com>
10742
10743         * i386-tdep.c (i386_type_align): New function.
10744         (i386_gdbarch_init): Update.
10745         * gdbarch.sh (type_align): New method.
10746         * gdbarch.c, gdbarch.h: Rebuild.
10747         * arch-utils.h (default_type_align): Declare.
10748         * arch-utils.c (default_type_align): New function.
10749         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
10750         (struct type) <align_log2>: New field.
10751         <instance_flags>: Now a bitfield.
10752         (TYPE_RAW_ALIGN): New macro.
10753         (type_align, type_raw_align, set_type_align): Declare.
10754         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
10755         functions.
10756         * dwarf2read.c (quirk_rust_enum): Set type alignment.
10757         (get_alignment, maybe_set_alignment): New functions.
10758         (read_structure_type, read_enumeration_type, read_array_type)
10759         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
10760         (read_subrange_type, read_base_type): Set type alignment.
10761
10762 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
10763
10764         * dwarf2read.c (read_index_from_section): Use bool.
10765
10766 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
10767
10768         PR gdb/22950
10769         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
10770         with #ifdef.
10771
10772 2018-04-29  John Reiser  <jreiser@BitWagon.com>
10773
10774         PR build/22873
10775         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
10776         last step, and do it atomically.
10777
10778 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
10779
10780         * compile/compile-c-types.c (convert_int, convert_float):
10781         Update for C FE v1.
10782
10783 2018-04-27  Tom Tromey  <tom@tromey.com>
10784
10785         PR rust/22545:
10786         * rust-lang.c (rust_inclusive_range_type_p): New function.
10787         (rust_range): Handle inclusive ranges.
10788         (rust_compute_range): Likewise.
10789         * rust-exp.y (struct rust_op) <inclusive>: New field.
10790         (DOTDOTEQ): New constant.
10791         (range_expr): Add "..=" productions.
10792         (operator_tokens): Add "..=" token.
10793         (ast_range): Add "inclusive" parameter.
10794         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
10795         ranges.
10796         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
10797         bounds values.
10798         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
10799         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
10800         Update comments.
10801         * expprint.c (print_subexp_standard): Handle new bounds values.
10802         (dump_subexp_body_standard): Likewise.
10803
10804 2018-04-27  Tom Tromey  <tom@tromey.com>
10805
10806         * configure: Rebuild.
10807         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
10808         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
10809         "OVERRIDE".
10810         (class symbol_needs_eval_context): Likewise.
10811         * dwarf2read.c (mock_mapped_index::symbol_name_count)
10812         (mock_mapped_index::symbol_name_at): Use "override".  Remove
10813         "virtual".
10814         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
10815         "override".
10816         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
10817         * aarch64-tdep.c (instruction_reader::read): Use "override".
10818         (instruction_reader_test::read): Likewise.
10819         * arm-tdep.c (instruction_reader::read): Use "override".
10820         (instruction_reader_thumb::read): Likewise.
10821
10822 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
10823
10824         PR remote/9665
10825         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
10826         instead of remote_send.
10827         (remote_send): Remove.
10828
10829 2018-04-26  Pedro Alves  <palves@redhat.com>
10830
10831         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
10832         find_function_start_sal instead of find_pc_line.
10833
10834 2018-04-26  Pedro Alves  <palves@redhat.com>
10835
10836         * breakpoint.c (set_breakpoint_location_function): Handle
10837         mst_data_gnu_ifunc.
10838         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
10839         * elfread.c (elf_symtab_read): Give data symbols with
10840         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
10841         (elf_rel_plt_read): Update comment.
10842         * linespec.c (convert_linespec_to_sals): Handle
10843         mst_data_gnu_ifunc.
10844         (minsym_found): Handle mst_data_gnu_ifunc.
10845         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
10846         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
10847         * parse.c (find_minsym_type_and_address): Handle
10848         mst_data_gnu_ifunc.
10849         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
10850         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
10851         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
10852         comment.
10853         <mst_data_gnu_ifunc>: New enumerator.
10854
10855 2018-04-26  Pedro Alves  <palves@redhat.com>
10856
10857         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
10858         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
10859         'want_trampoline' parameter by a lookup_msym_prefer parameter.
10860         Handle it.
10861         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
10862         (lookup_minimal_symbol_by_pc): Adjust.
10863         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
10864         (lookup_solib_trampoline_symbol_by_pc): Adjust.
10865         * minsyms.h (lookup_msym_prefer): New enum.
10866         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
10867         parameter by a lookup_msym_prefer parameter.
10868
10869 2018-04-26  Pedro Alves  <palves@redhat.com>
10870
10871         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
10872         ends in "@plt" instead of looking at the symbol's section.
10873
10874 2018-04-26  Pedro Alves  <palves@redhat.com>
10875
10876         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
10877         all references.
10878         (find_pc_partial_function_gnu_ifunc): Rename to ...
10879         (find_pc_partial_function): ... this, and remove references to
10880         'is_gnu_ifunc_p'.
10881         (find_pc_partial_function): Delete old implementation.
10882         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
10883
10884 2018-04-26  Pedro Alves  <palves@redhat.com>
10885
10886         * linespec.c (struct bound_minimal_symbol_search_key): New.
10887         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
10888         skip first line if we found a GNU ifunc minimal symbol by name.
10889         (compare_msymbols): Change parameters to work with a destructured
10890         lhs minsym.
10891         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
10892         functions.
10893
10894 2018-04-26  Pedro Alves  <palves@redhat.com>
10895
10896         * breakpoint.c (set_breakpoint_location_function): Don't resolve
10897         ifunc targets here.  Instead, if we have an ifunc minsym, use its
10898         address/name.
10899         (add_location_to_breakpoint): Store the minsym and the objfile in
10900         the breakpoint location.
10901         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
10902         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
10903         Record the minsym in the sal.
10904         * symtab.h (symtab_and_line) <msymbol>: New field.
10905
10906 2018-04-26  Pedro Alves  <palves@redhat.com>
10907
10908         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
10909         unless we actually resolved the ifunc.
10910
10911 2018-04-26  Pedro Alves  <palves@redhat.com>
10912
10913         * c-exp.y (variable production): Prefer ifunc minsyms over
10914         regular function symbols.
10915         * symtab.c (find_gnu_ifunc): New function.
10916         * minsyms.h (lookup_msym_prefer): New enum.
10917         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
10918         parameter by a lookup_msym_prefer parameter.
10919         * symtab.h (find_gnu_ifunc): New declaration.
10920
10921 2018-04-26  Pedro Alves  <palves@redhat.com>
10922
10923         * blockframe.c (find_gnu_ifunc_target_type): New function.
10924         (find_function_type): New.
10925         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
10926         return a value with a memory address.
10927         (eval_call): For calls to GNU ifunc functions, try to find the
10928         type of the target function from the type that the resolver
10929         returns.
10930         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
10931         symbols.
10932         * infcall.c (find_function_return_type): Delete.
10933         (find_function_addr): Add 'function_type' parameter.  For calls to
10934         GNU ifunc functions, try to find the type of the target function
10935         from the type that the resolver returns, and return it via
10936         FUNCTION_TYPE.
10937         (call_function_by_hand_dummy): Adjust to use the function type
10938         returned by find_function_addr.
10939         (find_function_addr): Add 'function_type' parameter and move
10940         description here.
10941         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
10942         declarations.
10943
10944 2018-04-26  Pedro Alves  <palves@redhat.com>
10945
10946         * c-exp.y (variable production): Skip finding an alias for ifunc
10947         symbols.
10948
10949 2018-04-26  Pedro Alves  <palves@redhat.com>
10950
10951         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
10952
10953 2018-04-25  Pedro Alves  <palves@redhat.com>
10954
10955         * infcmd.c (kill_command): Print the pid as string, not the whole
10956         thread's ptid.  Add comment.  s/has been killed/killed/ in output
10957         message.
10958         * remote.c (remote_detach_1): Print the pid as string, not the
10959         whole thread's ptid.
10960
10961 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
10962             Sergio Durigan Junior  <sergiodj@redhat.com>
10963             Pedro Alves  <palves@redhat.com>
10964
10965         * infcmd.c (kill_command): Print message when inferior has
10966         been killed.
10967         * inferior.c (print_inferior_events): Remove 'static'.  Set as
10968         '1'.
10969         (add_inferior): Improve message printed when
10970         'print_inferior_events' is on.
10971         (exit_inferior): Remove message printed when
10972         'print_inferior_events' is on.
10973         (detach_inferior): Improve message printed when
10974         'print_inferior_events' is on.
10975         (initialize_inferiors): Use 'add_inferior_silent' to set
10976         'current_inferior_'.
10977         * inferior.h (print_inferior_events): Declare here as
10978         'extern'.
10979         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
10980         '[Detaching...]' messages when 'print_inferior_events' is on.
10981         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
10982         as prefix/suffix for messages.  Remove periods.  Fix erroneous
10983         'Detaching after fork from child...', replace it by '... from
10984         parent...'.
10985         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
10986         prefix/suffix when printing 'Detaching...' messages.  Print
10987         them when 'print_inferior_events' is on.
10988         * remote.c (remote_detach_1): Print message when detaching
10989         from inferior and '!is_fork_parent'.
10990
10991 2018-04-24  Tom Tromey  <tom@tromey.com>
10992
10993         * cli-out.h: Reindent.
10994
10995 2018-04-24  Tom Tromey  <tom@tromey.com>
10996
10997         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
10998         (cli_ui_out::do_field_string): Use fputs_filtered.
10999         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
11000
11001 2018-04-23  Tom Tromey  <tom@tromey.com>
11002
11003         * guile/scm-frame.c (gdbscm_frame_read_var): Use
11004         gdb::unique_xmalloc_ptr.
11005
11006 2018-04-23  Tom Tromey  <tom@tromey.com>
11007
11008         * configure: Rebuild.
11009
11010 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
11011
11012         PR gdb/23095
11013         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
11014         prepare_for_testing.  Set normal_bp to r_debug_state if target
11015         is bsd.
11016
11017 2018-04-21  Pedro Alves  <palves@redhat.com>
11018             Rajendra SY  <rajendra.sy@gmail.com>
11019
11020         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
11021         * remote.c (extended_remote_attach): In all-stop mode, mark the
11022         thread as executing.
11023
11024 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
11025
11026         * thread.c (thread_apply_all_command): Fix comment.
11027         (thread_command): Fix comment.
11028
11029 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
11030
11031         * common/tdesc.h (tdesc_create_feature): Remove xml filename
11032         parameter.
11033         * features/aarch64-core.c (create_feature_aarch64_core):
11034         Regenerate.
11035         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
11036         Likewise.
11037         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
11038         Likewise.
11039         * features/i386/32bit-avx512.c
11040         (create_feature_i386_32bit_avx512): Likewise.
11041         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
11042         Likewise.
11043         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
11044         Likewise.
11045         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
11046         Likewise.
11047         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
11048         Likewise.
11049         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
11050         Likewise.
11051         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
11052         Likewise.
11053         * features/i386/64bit-avx512.c
11054         (create_feature_i386_64bit_avx512): Likewise.
11055         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
11056         Likewise.
11057         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
11058         Likewise.
11059         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
11060         Likewise.
11061         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
11062         Likewise.
11063         * features/i386/64bit-segments.c
11064         (create_feature_i386_64bit_segments): Likewise.
11065         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
11066         Likewise.
11067         * features/i386/x32-core.c
11068         (create_feature_i386_x32_core): Likewise.
11069         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
11070         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
11071         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
11072         * target-descriptions.c: In generated code, don't pass xml
11073         filename.
11074
11075 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11076
11077         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
11078         (print_xml_feature::visit_post): Likewise.
11079         (print_xml_feature::visit): Likewise.
11080         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
11081         (print_xml_feature): Add new class.
11082         * regformats/regdat.sh: Null xmltarget on feature targets.
11083         * target-descriptions.c (struct target_desc): Add xmltarget.
11084         (maintenance_check_tdesc_xml_convert): Add unittest function.
11085         (tdesc_get_features_xml): Add function to get xml.
11086         (maintenance_check_xml_descriptions): Test xml generation.
11087         * xml-tdesc.c (string_read_description_xml): Add function.
11088         * xml-tdesc.h (string_read_description_xml): Add declaration.
11089
11090 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11091
11092         * features/Makefile: Add feature marker to targets with new style
11093         target descriptions.
11094         * regformats/aarch64.dat: Regenerate.
11095         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
11096         * regformats/i386/amd64-avx-linux.dat: Likewise.
11097         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
11098         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
11099         * regformats/i386/amd64-linux.dat: Likewise.
11100         * regformats/i386/amd64-mpx-linux.dat: Likewise.
11101         * regformats/i386/amd64.dat: Likewise.
11102         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
11103         * regformats/i386/i386-avx-linux.dat: Likewise.
11104         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
11105         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
11106         * regformats/i386/i386-linux.dat: Likewise.
11107         * regformats/i386/i386-mmx-linux.dat: Likewise.
11108         * regformats/i386/i386-mpx-linux.dat: Likewise.
11109         * regformats/i386/i386.dat: Likewise.
11110         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
11111         * regformats/i386/x32-avx-linux.dat: Likewise.
11112         * regformats/i386/x32-linux.dat: Likewise.
11113         * regformats/tic6x-c62x-linux.dat: Likewise.
11114         * regformats/tic6x-c64x-linux.dat: Likewise.
11115         * regformats/tic6x-c64xp-linux.dat: Likewise.
11116         * regformats/regdat.sh: Parse feature marker.
11117
11118 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11119
11120         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
11121         (tdesc_osabi_name): Likewise.
11122         * target-descriptions.c (tdesc_architecture_name): Add new
11123         function.
11124         (tdesc_osabi_name): Likewise.
11125
11126 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11127
11128         * common/tdesc.c (tdesc_predefined_type): Move to here.
11129         (tdesc_named_type): Likewise.
11130         (tdesc_create_vector): Likewise.
11131         (tdesc_create_struct): Likewise.
11132         (tdesc_set_struct_size): Likewise.
11133         (tdesc_create_union): Likewise.
11134         (tdesc_create_flags): Likewise.
11135         (tdesc_create_enum): Likewise.
11136         (tdesc_add_field): Likewise.
11137         (tdesc_add_typed_bitfield): Likewise.
11138         (tdesc_add_bitfield): Likewise.
11139         (tdesc_add_flag): Likewise.
11140         (tdesc_add_enum_value): Likewise.
11141         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
11142         (struct tdesc_type_vector): Likewise.
11143         (struct tdesc_type_field): Likewise.
11144         (struct tdesc_type_with_fields): Likewise.
11145         (tdesc_create_enum): Add declaration.
11146         (tdesc_add_typed_bitfield): Likewise.
11147         (tdesc_add_enum_value): Likewise.
11148         * target-descriptions.c (tdesc_type_field): Move from here.
11149         (tdesc_type_builtin): Likewise.
11150         (tdesc_type_vector): Likewise.
11151         (tdesc_type_with_fields): Likewise.
11152         (tdesc_predefined_types): Likewise.
11153         (tdesc_named_type): Likewise.
11154         (tdesc_create_vector): Likewise.
11155         (tdesc_create_struct): Likewise.
11156         (tdesc_set_struct_size): Likewise.
11157         (tdesc_create_union): Likewise.
11158         (tdesc_create_flags): Likewise.
11159         (tdesc_create_enum): Likewise.
11160         (tdesc_add_field): Likewise.
11161         (tdesc_add_typed_bitfield): Likewise.
11162         (tdesc_add_bitfield): Likewise.
11163         (tdesc_add_flag): Likewise.
11164         (tdesc_add_enum_value): Likewise.
11165         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
11166         (tdesc_add_typed_bitfield): Likewise.
11167         (tdesc_add_enum_value): Likewise.
11168
11169 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11170
11171         * common/tdesc.c (tdesc_feature::accept): Move to here.
11172         (tdesc_feature::operator==): Likewise.
11173         (tdesc_create_reg): Likewise.
11174         * common/tdesc.h (tdesc_type_kind): Likewise.
11175         (struct tdesc_type): Likewise.
11176         (struct tdesc_feature): Likewise.
11177         * regformats/regdat.sh: Create a feature.
11178         * target-descriptions.c (tdesc_type_kind): Move from here.
11179         (tdesc_type): Likewise.
11180         (tdesc_type_up): Likewise.
11181         (tdesc_feature): Likewise.
11182         (tdesc_create_reg): Likewise.
11183
11184 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11185
11186         * Makefile.in: Add arch/tdesc.c
11187         * common/tdesc.c: New file.
11188         * common/tdesc.h (tdesc_element_visitor): Move to here.
11189         (tdesc_element): Likewise.
11190         (tdesc_reg): Likewise.
11191         (tdesc_reg_up): Likewise.
11192         * regformats/regdef.h (reg): Add offset to constructors.
11193         * target-descriptions.c (tdesc_element_visitor): Move from here.
11194         (tdesc_element): Likewise.
11195         (tdesc_reg): Likewise.
11196         (tdesc_reg_up): Likewise.
11197
11198 2018-04-17  Tom Tromey  <tom@tromey.com>
11199
11200         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
11201         discriminant field.
11202
11203 2018-04-17  Tom Tromey  <tom@tromey.com>
11204
11205         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
11206
11207 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11208
11209         * symtab.c (print_symbol_info): Skip printing filename and line
11210         number when `last' is NULL.
11211         (symtab_symbol_info): Use empty string instead of NULL for first
11212         invocation of print_symbol_info.
11213         (rbreak_command): Pass NULL to `last' parameter of
11214         print_symbol_info.
11215
11216 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
11217
11218         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
11219         instead of nullptr.
11220
11221 2018-04-16  Pedro Alves  <palves@redhat.com>
11222
11223         * MAINTAINERS (sh): Remove.
11224         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
11225         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
11226         (ALLDEPFILES): Remove sh64-tdep.c.
11227         * NEWS: Mentions that support for SH-5/SH64 is removed.
11228         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
11229         (sh*-*-openbsd*): Ditto.
11230         (sh64-*-elf*): Remove.
11231         (sh*): Remove.
11232         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
11233         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
11234         * sh-tdep.c: No longer include "sh64-tdep.h".
11235         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
11236         * sh64-tdep.c, sh64-tdep.h: Remove files.
11237
11238 2018-04-16  Pedro Alves  <palves@redhat.com>
11239
11240         * MAINTAINERS: Remove m88k.
11241         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
11242         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
11243         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
11244         * NEWS: Mention that support for m88k was removed.
11245         * configure.host (m88*-*-*): Remove support.
11246         * configure.nat (m88k-*-*): Remove support.
11247         * configure.tgt (m88*-*-openbsd*): Remove.
11248         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
11249
11250 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
11251
11252         * configure.tgt (x86_tobjs): New variable.
11253         (amd64_tobjs, i386_tobjs): Use it.
11254
11255 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11256
11257         * symtab.c (print_symbol_info): Precede the symbol definition by
11258         the line number when available.
11259         * NEWS: Advertise this enhancement.
11260
11261 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11262
11263         * NEWS (New options): announce set/show record btrace cpu.
11264         * btrace.c: Include record-btrace.h.
11265         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
11266         the vendor is unknown.
11267         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
11268         Maybe overwrite the btrace configuration's cpu.
11269         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
11270         (btrace_fetch): Add cpu parameter.  Update callers.
11271         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
11272         Maybe overwrite the btrace configuration's cpu.  Skip enabling
11273         errata workarounds if the vendor is unknown.
11274         * python/py-record-btrace.c: Include record-btrace.h.
11275         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
11276         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
11277         * record-btrace.c (record_btrace_cpu_state_kind): New.
11278         (record_btrace_cpu): New.
11279         (set_record_btrace_cpu_cmdlist): New.
11280         (record_btrace_get_cpu): New.
11281         (require_btrace_thread, record_btrace_info)
11282         (record_btrace_resume_thread): Call record_btrace_get_cpu.
11283         (cmd_set_record_btrace_cpu_none): New.
11284         (cmd_set_record_btrace_cpu_auto): New.
11285         (cmd_set_record_btrace_cpu): New.
11286         (cmd_show_record_btrace_cpu): New.
11287         (_initialize_record_btrace): Initialize set/show record btrace cpu
11288         commands.
11289         * record-btrace.h (record_btrace_get_cpu): New.
11290
11291 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11292
11293         * record.c (set_record_command): Fix typo in message.
11294
11295 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11296
11297         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
11298
11299 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11300
11301         * infrun.c (process_event_stop_test): Call
11302         gdbarch_in_indirect_branch_thunk.
11303         * gdbarch.sh (in_indirect_branch_thunk): New.
11304         * gdbarch.c: Regenerated.
11305         * gdbarch.h: Regenerated.
11306         * x86-tdep.h: New.
11307         * x86-tdep.c: New.
11308         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
11309         (HFILES_NO_SRCDIR): Add x86-tdep.h.
11310         (ALLDEPFILES): Add x86-tdep.c.
11311         * arch-utils.h (default_in_indirect_branch_thunk): New.
11312         * arch-utils.c (default_in_indirect_branch_thunk): New.
11313         * i386-tdep: Include x86-tdep.h.
11314         (i386_in_indirect_branch_thunk): New.
11315         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
11316         function.
11317         * amd64-tdep: Include x86-tdep.h.
11318         (amd64_in_indirect_branch_thunk): New.
11319         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
11320
11321 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
11322
11323         PR gdb/23053
11324         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
11325         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
11326         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
11327         regression.
11328
11329 2018-04-12  Tom Tromey  <tom@tromey.com>
11330
11331         * rust-lang.c (rust_print_struct_def): Remove univariant code.
11332         (rust_evaluate_subexp): Likewise.
11333
11334 2018-04-12  Pedro Alves  <palves@redhat.com>
11335
11336         * procfs.c (procfs_detach): Make forward declaration's prototype
11337         match definition's protototype.
11338         (proc_get_LDT_entry): Remove stale do_cleanups call.
11339
11340 2018-04-12  Pedro Alves  <palves@redhat.com>
11341
11342         * target.h (target_ops::to_has_exited): Delete.
11343         (target_has_exited): Delete.
11344         * target-delegates.c: Regenerate.
11345
11346 2018-04-11  Pedro Alves  <palves@redhat.com>
11347
11348         * target.c (fileio_fh_t::t): Add comment.
11349         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
11350         (target_fileio_close): Handle a NULL target.
11351         (invalidate_fileio_fh): New.
11352         (target_close): Call it.
11353         * remote.c (remote_hostio_send_command): No longer check whether
11354         remote_desc is open.
11355
11356 2018-04-11  Pedro Alves  <palves@redhat.com>
11357
11358         * target.c (fileio_fh_t): Make it a named struct instead of a
11359         typedef.
11360         (fileio_fh_t::is_closed): New method.
11361         (DEF_VEC_O (fileio_fh_t)): Remove.
11362         (fileio_fhandles): Now a std::vector.
11363         (is_closed_fileio_fh): Delete.
11364         (acquire_fileio_fd): Adjust.  Rename parameters.
11365         (release_fileio_fd): Adjust.
11366         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
11367         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
11368         (target_fileio_close): Adjust.
11369
11370 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
11371
11372         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
11373         index.
11374
11375 2018-04-10  Pedro Alves  <palves@redhat.com>
11376
11377         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
11378         (scoped_finish_thread_state): New class.
11379         * infcmd.c (run_command_1): Use it instead of finish_thread_state
11380         cleanup.
11381         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
11382         (fetch_inferior_event, normal_stop): Likewise.
11383         * thread.c (finish_thread_state_cleanup): Delete.
11384
11385 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11386             Pedro Alves  <palves@redhat.com>
11387
11388         * value.c: Include "selftest.h" and "common/array-view.h".
11389         (struct range) <operator ==>: New.
11390         (test_ranges_contain): New.
11391         (check_ranges_vector): New.
11392         (test_insert_into_bit_range_vector): New.
11393         (_initialize_values): Register selftests.
11394         * common/array-view.h (operator==, operator!=): New.
11395
11396 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11397
11398         * common/gdb_vecs.h (unordered_remove): Add overload that takes
11399         an iterator.
11400         * inline-frame.c: Include <algorithm>.
11401         (struct inline_state): Add constructor.
11402         (inline_state_s): Remove.
11403         (DEF_VEC_O(inline_state_s)): Remove.
11404         (inline_states): Change type to std::vector.
11405         (find_inline_frame_state): Adjust to std::vector.
11406         (allocate_inline_frame_state): Remove.
11407         (clear_inline_frame_state): Adjust to std::vector.
11408         (skip_inline_frames): Adjust to std::vector.
11409
11410 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11411
11412         * tracepoint.h (struct trace_state_variable): Add constructor.
11413         <name>: Change type to std::string.
11414         * tracepoint.c (tsv_s): Remove.
11415         (DEF_VEC_O(tsv_s)): Remove.
11416         (tvariables): Change to std::vector.
11417         (create_trace_state_variable): Adjust to std::vector.
11418         (find_trace_state_variable): Likewise.
11419         (find_trace_state_variable_by_number): Likewise.
11420         (delete_trace_state_variable): Likewise.
11421         (trace_variable_command): Adjust to std::string.
11422         (delete_trace_variable_command): Likewise.
11423         (tvariables_info_1): Adjust to std::vector.
11424         (save_trace_state_variables): Likewise.
11425         (start_tracing): Likewise.
11426         (merge_uploaded_trace_state_variables): Adjust to std::vector
11427         and std::string.
11428         * target.h (struct target_ops)
11429         <to_download_trace_state_variable>: Pass reference to
11430         trace_state_variable.
11431         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
11432         * target-delegates.c: Re-generate.
11433         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
11434         (mi_tsv_deleted): Likewise.
11435         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
11436         * remote.c (remote_download_trace_state_variable): Change
11437         pointer to reference and adjust.
11438         * make-target-delegates (parse_argtypes): Handle references.
11439         (write_function_header): Likewise.
11440         (munge_type): Likewise.
11441
11442 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11443
11444         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11445         string_view-selftests.c.
11446         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
11447         testsuite.
11448         * unittests/basic_string_view/cons/char/1.cc: Likewise.
11449         * unittests/basic_string_view/cons/char/2.cc: Likewise.
11450         * unittests/basic_string_view/cons/char/3.cc: Likewise.
11451         * unittests/basic_string_view/element_access/char/1.cc:
11452         Likewise.
11453         * unittests/basic_string_view/element_access/char/empty.cc:
11454         Likewise.
11455         * unittests/basic_string_view/element_access/char/front_back.cc:
11456         Likewise.
11457         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
11458         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
11459         Likewise.
11460         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
11461         Likewise.
11462         * unittests/basic_string_view/modifiers/swap/char/1.cc:
11463         Likewise.
11464         * unittests/basic_string_view/operations/compare/char/1.cc:
11465         Likewise.
11466         * unittests/basic_string_view/operations/compare/char/13650.cc:
11467         Likewise.
11468         * unittests/basic_string_view/operations/copy/char/1.cc:
11469         Likewise.
11470         * unittests/basic_string_view/operations/data/char/1.cc:
11471         Likewise.
11472         * unittests/basic_string_view/operations/find/char/1.cc:
11473         Likewise.
11474         * unittests/basic_string_view/operations/find/char/2.cc:
11475         Likewise.
11476         * unittests/basic_string_view/operations/find/char/3.cc:
11477         Likewise.
11478         * unittests/basic_string_view/operations/find/char/4.cc:
11479         Likewise.
11480         * unittests/basic_string_view/operations/rfind/char/1.cc:
11481         Likewise.
11482         * unittests/basic_string_view/operations/rfind/char/2.cc:
11483         Likewise.
11484         * unittests/basic_string_view/operations/rfind/char/3.cc:
11485         Likewise.
11486         * unittests/basic_string_view/operations/substr/char/1.cc:
11487         Likewise.
11488         * unittests/basic_string_view/operators/char/2.cc: Likewise.
11489         * unittests/string_view-selftests.c: New file.
11490
11491 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11492
11493         * unittests/basic_string_view/capacity/1.cc: New file.
11494         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
11495         * unittests/basic_string_view/cons/char/1.cc: New file.
11496         * unittests/basic_string_view/cons/char/2.cc: New file.
11497         * unittests/basic_string_view/cons/char/3.cc: New file.
11498         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
11499         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
11500         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
11501         * unittests/basic_string_view/element_access/char/1.cc: New file.
11502         * unittests/basic_string_view/element_access/char/2.cc: New file.
11503         * unittests/basic_string_view/element_access/char/empty.cc: New file.
11504         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
11505         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
11506         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
11507         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
11508         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
11509         * unittests/basic_string_view/include.cc: New file.
11510         * unittests/basic_string_view/inserters/char/1.cc: New file.
11511         * unittests/basic_string_view/inserters/char/2.cc: New file.
11512         * unittests/basic_string_view/inserters/char/3.cc: New file.
11513         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
11514         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
11515         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
11516         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
11517         * unittests/basic_string_view/literals/types.cc: New file.
11518         * unittests/basic_string_view/literals/values.cc: New file.
11519         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
11520         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
11521         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
11522         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
11523         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
11524         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
11525         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
11526         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
11527         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
11528         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
11529         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
11530         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
11531         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
11532         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
11533         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
11534         * unittests/basic_string_view/operations/data/char/1.cc: New file.
11535         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
11536         * unittests/basic_string_view/operations/find/char/1.cc: New file.
11537         * unittests/basic_string_view/operations/find/char/2.cc: New file.
11538         * unittests/basic_string_view/operations/find/char/3.cc: New file.
11539         * unittests/basic_string_view/operations/find/char/4.cc: New file.
11540         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
11541         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
11542         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
11543         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
11544         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
11545         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
11546         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
11547         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
11548         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
11549         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
11550         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
11551         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
11552         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
11553         * unittests/basic_string_view/operators/char/2.cc: New file.
11554         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
11555         * unittests/basic_string_view/range_access/char/1.cc: New file.
11556         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
11557         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
11558         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
11559         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
11560         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
11561         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
11562         * unittests/basic_string_view/requirements/typedefs.cc: New file.
11563         * unittests/basic_string_view/typedefs.cc: New file.
11564         * unittests/basic_string_view/types/1.cc: New file.
11565
11566 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11567
11568         * common/gdb_string_view.h: Remove libstdc++ implementation
11569         details, adjust to gdb reality.
11570         * common/gdb_string_view.tcc: Likewise.
11571         * cli/cli-script.c (struct string_view): Remove.
11572         (user_args) <m_args>: Change element type to gdb::string_view.
11573         (user_args::insert_args): Adjust.
11574
11575 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11576
11577         * common/gdb_string_view.h: New file.
11578         * common/gdb_string_view.tcc: New file.
11579
11580 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11581
11582         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
11583         * configure: Re-generate.
11584
11585 2018-04-09  Pedro Alves  <palves@redhat.com>
11586
11587         * gdbarch.sh: Include "observable.h" instead of "observer.h".
11588         (set_target_gdbarch): Call
11589         gdb::observers::architecture_changed.notify instead of
11590         observer_notify_architecture_changed.
11591
11592 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11593
11594         * tracepoint.c (struct current_traceframe_cleanup): Remove.
11595         (do_restore_current_traceframe_cleanup): Remove.
11596         (restore_current_traceframe_cleanup_dtor): Remove.
11597         (make_cleanup_restore_current_traceframe): Remove.
11598         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
11599         New.
11600         * tracepoint.h (struct scoped_restore_current_traceframe): New.
11601         * infrun.c (fetch_inferior_event): Use
11602         scoped_restore_current_traceframe.
11603
11604 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11605
11606         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
11607         Remove.
11608         <n_allocated_type_units>: Remove.
11609         <all_type_units>: Change to std::vector.
11610         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11611         to std::vector change.
11612         (dwarf2_per_objfile::get_cutu): Likewise.
11613         (dwarf2_per_objfile::get_tu): Likewise.
11614         (create_signatured_type_table_from_index): Likewise.
11615         (create_signatured_type_table_from_debug_names): Likewise.
11616         (dw2_symtab_iter_next): Likewise.
11617         (dw2_print_stats): Likewise.
11618         (dw2_expand_all_symtabs): Likewise.
11619         (dw2_expand_marked_cus): Likewise.
11620         (dw2_debug_names_iterator::next): Likewise.
11621         (dwarf2_initialize_objfile): Likewise.
11622         (add_signatured_type_cu_to_table): Likewise.
11623         (create_all_type_units): Likewise.
11624         (add_type_unit): Likewise.
11625         (struct tu_abbrev_offset): Add constructor.
11626         (build_type_psymtabs_1): Adjust to std::vector change.
11627         (print_tu_stats): Likewise.
11628         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
11629         (write_debug_names): Likewise.
11630
11631 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11632
11633         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
11634         Make an std::vector.
11635         <n_comp_units>: Remove.
11636         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11637         to std::vector change.
11638         (dwarf2_per_objfile::get_cutu): Likewise.
11639         (dwarf2_per_objfile::get_cu): Likewise.
11640         (create_cus_from_index): Likewise.
11641         (create_addrmap_from_index): Likewise.
11642         (create_addrmap_from_aranges): Likewise.
11643         (dwarf2_read_index): Likewise.
11644         (dw2_find_last_source_symtab): Likewise.
11645         (dw2_map_symtabs_matching_filename): Likewise.
11646         (dw2_symtab_iter_next): Likewise.
11647         (dw2_print_stats): Likewise.
11648         (dw2_expand_all_symtabs): Likewise.
11649         (dw2_expand_symtabs_with_fullname): Likewise.
11650         (dw2_expand_marked_cus): Likewise.
11651         (dw2_map_symbol_filenames): Likewise.
11652         (create_cus_from_debug_names): Likewise.
11653         (dwarf2_read_debug_names): Likewise.
11654         (dw2_debug_names_iterator::next): Likewise.
11655         (dwarf2_initialize_objfile): Likewise.
11656         (set_partial_user): Likewise.
11657         (dwarf2_build_psymtabs_hard): Likewise.
11658         (read_comp_units_from_section): Remove arguments, adjust to
11659         std::vector change.
11660         (create_all_comp_units): Adjust to std::vector and
11661         read_comp_units_from_section changes.
11662         (dwarf2_find_containing_comp_unit): Adjust to std::vector
11663         change.
11664         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
11665         (psyms_seen_size): Likewise.
11666         (write_gdbindex): Likewise.
11667         (write_debug_names): Likewise.
11668
11669 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11670
11671         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
11672         with dwarf2_per_objfile.
11673         (create_cus_from_index): Likewise.
11674         (create_signatured_type_table_from_index): Likewise.
11675         (dwarf2_read_index): Likewise.
11676         (dwarf2_initialize_objfile): Likewise.
11677         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
11678         per_cu rather than get_dwarf2_per_objfile.
11679
11680 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11681
11682         * dwarf2read.h (struct signatured_type): Forward declare.
11683         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
11684         New methods.
11685         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
11686         (dw2_get_cutu): ...this.
11687         (dwarf2_per_objfile::get_cu): Rename from...
11688         (dw2_get_cu): ...this.
11689         (dwarf2_per_objfile::get_tu): New.
11690         (create_addrmap_from_index): Adjust.
11691         (create_addrmap_from_aranges): Adjust.
11692         (dw2_find_last_source_symtab): Adjust.
11693         (dw2_map_symtabs_matching_filename): Adjust.
11694         (dw2_symtab_iter_next): Adjust.
11695         (dw2_print_stats): Adjust.
11696         (dw2_expand_all_symtabs): Adjust.
11697         (dw2_expand_symtabs_with_fullname): Adjust.
11698         (dw2_expand_marked_cus): Adjust.
11699         (dw_expand_symtabs_matching_file_matcher): Adjust.
11700         (dw2_map_symbol_filenames): Adjust.
11701         (dw2_debug_names_iterator::next): Adjust.
11702         (dwarf2_initialize_objfile): Adjust.
11703         (set_partial_user): Adjust.
11704         (dwarf2_build_psymtabs_hard): Adjust.
11705
11706 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11707
11708         * dwarf2read.c (create_signatured_type_table_from_debug_names):
11709         Remove unused variables.
11710         (dw2_map_symtabs_matching_filename): Likewise.
11711         (dwarf2_record_block_ranges): Likewise.
11712         (dwarf2_read_addr_index): Likewise.
11713         (follow_die_offset): Likewise.
11714
11715 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11716
11717         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
11718         to symbol_file_add_main.
11719
11720 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11721
11722         PR mi/22299
11723         * mi/mi-console.c (do_fputc_async_safe): New.
11724         (mi_console_file::write_async_safe): New.
11725         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
11726         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
11727         New.
11728         * ui-file.c (ui_file::putstrn): Adjust call to
11729         fputstrn_unfiltered.
11730         * utils.c (printchar): Replace do_fputs and do_fprintf
11731         parameters by do_fputc.
11732         (fputstr_filtered): Adjust call to printchar.
11733         (fputstr_unfiltered): Likewise.
11734         (fputstrn_filtered): Likewise.
11735         (fputstrn_unfiltered): Add do_fputc parameter, pass to
11736         printchar.
11737         * utils.h (do_fputc_ftype): New typedef.
11738         (fputstrn_unfiltered): Add do_fputc parameter.
11739
11740 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11741
11742         * regformats/i386/i386-avx.dat: Remove.
11743
11744 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11745
11746         PR gdb/22979
11747         * amd64-tdep.c (amd64_none_init_abi): New function.
11748         (amd64_x32_none_init_abi): New function.
11749         (_initialize_amd64_tdep): Register handlers for x86-64 and
11750         x64_32 with GDB_OSABI_NONE.
11751         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
11752         GDB_OSABI_NONE osabi.
11753
11754 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11755
11756         PR gdb/22980
11757         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
11758         GDB_OSABI_NONE.
11759         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
11760         * osabi.c (gdb_osabi_names): Add "unknown" entry.
11761
11762 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11763
11764         * common/byte-vector.h (char_vector): New type.
11765         * target.h (target_read_alloc): Return
11766         gdb::optional<byte_vector>.
11767         (target_read_stralloc): Return gdb::optional<char_vector>.
11768         (target_get_osdata): Return gdb::optional<char_vector>.
11769         * target.c (target_read_alloc_1): Templatize.  Replacement
11770         manual memory management with vector.
11771         (target_read_alloc): Change return type, adjust.
11772         (target_read_stralloc): Change return type, adjust.
11773         (target_get_osdata): Change return type, adjust.
11774         * auxv.c (struct auxv_info) <length>: Remove.
11775         <data>: Change type to gdb::optional<byte_vector>.
11776         (auxv_inferior_data_cleanup): Free auxv_info with delete.
11777         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
11778         (target_auxv_search): Adjust.
11779         (fprint_target_auxv): Adjust.
11780         * avr-tdep.c (avr_io_reg_read_command): Adjust.
11781         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
11782         (linux_make_corefile_notes): Adjust.
11783         * osdata.c (get_osdata): Adjust.
11784         * remote.c (remote_get_threads_with_qxfer): Adjust.
11785         (remote_memory_map): Adjust.
11786         (remote_traceframe_info): Adjust.
11787         (btrace_read_config): Adjust.
11788         (remote_read_btrace): Adjust.
11789         (remote_pid_to_exec_file): Adjust.
11790         * solib-aix.c (solib_aix_get_library_list): Adjust.
11791         * solib-dsbt.c (decode_loadmap): Don't free buf.
11792         (dsbt_get_initial_loadmaps): Adjust.
11793         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
11794         * solib-target.c (solib_target_current_sos): Adjust.
11795         * tracepoint.c (sdata_make_value): Adjust.
11796         * xml-support.c (xinclude_start_include): Adjust.
11797         (xml_fetch_content_from_file): Adjust.
11798         * xml-support.h (xml_fetch_another): Change return type.
11799         (xml_fetch_content_from_file): Change return type.
11800         * xml-syscall.c (xml_init_syscalls_info): Adjust.
11801         * xml-tdesc.c (file_read_description_xml): Adjust.
11802         (fetch_available_features_from_target): Change return type.
11803         (target_fetch_description_xml): Adjust.
11804         (target_read_description_xml): Adjust.
11805
11806 2018-04-06  Tom Tromey  <tom@tromey.com>
11807
11808         * value.c (~value): Update.
11809         (struct value) <contents>: Now unique_xmalloc_ptr.
11810         (value_contents_bits_eq, allocate_value_contents)
11811         (value_contents_raw, value_contents_all_raw)
11812         (value_contents_for_printing, value_contents_for_printing_const)
11813         (set_value_enclosing_type): Update.
11814
11815 2018-04-06  Tom Tromey  <tom@tromey.com>
11816
11817         * value.c (range_s): Remove typedef, VEC.
11818         (struct range): Add operator<.
11819         (range_lessthan): Remove.
11820         (ranges_contain): Change type.
11821         (~value): Update.
11822         (struct value) <unavailable, optimized_out>: Now std::vector.
11823         (value_entirely_available)
11824         (value_entirely_covered_by_range_vector)
11825         (value_entirely_unavailable, value_entirely_optimized_out):
11826         Update.
11827         (insert_into_bit_range_vector): Change argument type.
11828         (find_first_range_overlap): Likewise.
11829         (struct ranges_and_idx, value_contents_bits_eq)
11830         (require_not_optimized_out, require_available): Update.
11831         (ranges_copy_adjusted): Change argument types.
11832         (value_optimized_out, value_copy, value_fetch_lazy): Update.
11833
11834 2018-04-06  Tom Tromey  <tom@tromey.com>
11835
11836         * value.c (~value): Update.
11837         (struct value) <parent>: Now a value_ref_ptr.
11838         (value_parent, set_value_parent, value_address, value_copy):
11839         Update.
11840
11841 2018-04-06  Tom Tromey  <tom@tromey.com>
11842
11843         * value.c (struct value): Add constructor, destructor, and member
11844         initializers.
11845         (allocate_value_lazy, value_decref): Update.
11846
11847 2018-04-06  Tom Tromey  <tom@tromey.com>
11848
11849         * value.c (struct value) <released, next>: Remove.
11850         (all_values): Now a std::vector.
11851         (allocate_value_lazy): Update.
11852         (value_next): Remove.
11853         (value_mark, value_free_to_mark, release_value)
11854         (value_release_to_mark): Update.
11855
11856 2018-04-06  Tom Tromey  <tom@tromey.com>
11857
11858         * value.h (fetch_subexp_value, value_release_to_mark): Update.
11859         (free_value_chain): Remove.
11860         * value.c (free_value_chain): Remove.
11861         (value_release_to_mark): Return a std::vector.
11862         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
11863         std::vector.
11864         (check_condition): Update.
11865         * eval.c (fetch_subexp_value): Change "val_chain" to a
11866         std::vector.
11867         * breakpoint.c (update_watchpoint): Update.
11868         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
11869
11870 2018-04-06  Tom Tromey  <tom@tromey.com>
11871
11872         * value.h (free_all_values): Remove.
11873         * value.c (free_all_values): Remove.
11874
11875 2018-04-06  Tom Tromey  <tom@tromey.com>
11876
11877         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
11878         (value_history_chain, value_history_count): Remove.
11879         (value_history): New global.
11880         (record_latest_value, access_value_history, show_values)
11881         (preserve_values): Update.
11882
11883 2018-04-06  Tom Tromey  <tom@tromey.com>
11884
11885         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
11886         * varobj.c (varobj_set_display_format, varobj_set_value)
11887         (install_default_visualizer, construct_visualizer)
11888         (install_new_value, ~varobj, varobj_get_value_type)
11889         (my_value_of_variable, varobj_editable_p): Update.
11890         * c-varobj.c (c_describe_child, c_value_of_variable)
11891         (cplus_number_of_children, cplus_describe_child): Update.
11892         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
11893         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
11894         (ada_value_of_variable, ada_value_is_changeable_p): Update.
11895
11896 2018-04-06  Tom Tromey  <tom@tromey.com>
11897
11898         * printcmd.c (last_examine_address): Change type to
11899         value_ref_ptr.
11900         (do_examine, x_command): Update.
11901
11902 2018-04-06  Tom Tromey  <tom@tromey.com>
11903
11904         * value.c (release_value): Update.
11905         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
11906         (struct bpstats) <val>: Now a value_ref_ptr.
11907         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
11908         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
11909         (~watchpoint, print_it_watchpoint, watch_command_1)
11910         (invalidate_bp_value_on_memory_change): Update.
11911
11912 2018-04-06  Tom Tromey  <tom@tromey.com>
11913
11914         * varobj.c (varobj_clear_saved_item)
11915         (update_dynamic_varobj_children, install_new_value, ~varobj):
11916         Update.
11917         * value.h (value_incref): Move declaration earlier.
11918         (value_decref): Rename from value_free.
11919         (struct value_ref_policy): New.
11920         (value_ref_ptr): New typedef.
11921         (struct value_deleter): Remove.
11922         (gdb_value_up): Remove typedef.
11923         (release_value): Change return type.
11924         (release_value_or_incref): Remove.
11925         * value.c (set_value_parent): Update.
11926         (value_incref): Change return type.
11927         (value_decref): Rename from value_free.
11928         (value_free_to_mark, free_all_values, free_value_chain): Update.
11929         (release_value): Return value_ref_ptr.
11930         (release_value_or_incref): Remove.
11931         (record_latest_value, set_internalvar, clear_internalvar):
11932         Update.
11933         * stack.c (info_frame_command): Don't call value_free.
11934         * python/py-value.c (valpy_dealloc, valpy_new)
11935         (value_to_value_object): Update.
11936         * printcmd.c (do_examine): Update.
11937         * opencl-lang.c (lval_func_free_closure): Update.
11938         * mi/mi-main.c (register_changed_p): Don't call value_free.
11939         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
11940         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
11941         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
11942         value_free.
11943         * guile/scm-value.c (vlscm_free_value_smob)
11944         (vlscm_scm_from_value): Update.
11945         * frame.c (frame_register_unwind, frame_unwind_register_signed)
11946         (frame_unwind_register_unsigned, get_frame_register_bytes)
11947         (put_frame_register_bytes): Don't call value_free.
11948         * findvar.c (address_from_register): Don't call value_free.
11949         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
11950         * dwarf2loc.c (entry_data_value_free_closure)
11951         (value_of_dwarf_reg_entry, free_pieced_value_closure)
11952         (dwarf2_evaluate_loc_desc_full): Update.
11953         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
11954         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
11955         (~watchpoint, watch_command_1)
11956         (invalidate_bp_value_on_memory_change): Update.
11957         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
11958
11959 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
11960
11961         PR gdb/23022
11962         * warning.m4: Add -Wno-error=deprecated-register.
11963         * configure: Re-generate.
11964
11965 2018-04-05  Tom Tromey  <tom@tromey.com>
11966
11967         * linespec.h: Remove include of "vec.h".
11968
11969 2018-04-05  Tom Tromey  <tom@tromey.com>
11970
11971         * linespec.c (typep): Remove typedef.
11972         (find_methods, find_superclass_methods): Take a std::vector.
11973         (find_method): Use std::vector.
11974
11975 2018-04-05  Tom Tromey  <tom@tromey.com>
11976
11977         * utils.c (compare_strings): Remove.
11978         * utils.h (compare_strings): Remove.
11979         * objc-lang.h (find_imps): Update.
11980         * objc-lang.c (find_methods): Take a std::vector.
11981         (uniquify_strings, find_imps): Likewise.
11982         * linespec.c (find_methods): Take a std::vector.
11983         (decode_objc): Use std::vector.
11984         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
11985         a std::vector.
11986         (find_method, find_function_symbols): Use std::vector.
11987
11988 2018-04-05  Tom Tromey  <tom@tromey.com>
11989
11990         * completer.c (completion_tracker::completion_tracker): Remove
11991         cast.
11992         (completion_tracker::discard_completions): Likewise.
11993         * breakpoint.c (ambiguous_names_p): Remove cast.
11994         * ada-lang.c (_initialize_ada_language): Remove cast.
11995         * utils.h (streq): Update.
11996         (streq_hash): Add new declaration.
11997         * utils.c (streq): Return bool.
11998         (streq_hash): New function.
11999
12000 2018-04-05  Tom Tromey  <tom@tromey.com>
12001
12002         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
12003         Remove a string copy.
12004
12005 2018-04-05  Tom Tromey  <tom@tromey.com>
12006
12007         * linespec.c (filter_results): Use std::vector.
12008         (decode_line_2, decode_line_full): Update.
12009
12010 2018-04-05  Tom Tromey  <tom@tromey.com>
12011
12012         * linespec.c (canonical_to_fullform): Return std::string.
12013         (filter_results): Update.
12014         (struct decode_line_2_item): Add constructor.
12015         <fullform, displayform>: Now std::string.
12016         (decode_line_2_compare_items): Now a std::sort comparator.
12017         (decode_line_2): Update.
12018
12019 2018-04-05  Tom Tromey  <tom@tromey.com>
12020
12021         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
12022         (unexpected_linespec_error): Update.
12023         (linespec_parse_basic, parse_linespec): Update.
12024
12025 2018-04-05  Tom Tromey  <tom@tromey.com>
12026
12027         * linespec.c (linespec_parse_basic): Reindent.
12028
12029 2018-04-05  Tom Tromey  <tom@tromey.com>
12030
12031         * minsyms.h (iterate_over_minimal_symbols): Update.
12032         * minsyms.c (iterate_over_minimal_symbols): Take a
12033         gdb::function_view.
12034         * linespec.c (struct collect_minsyms): Remove.
12035         (compare_msyms): Now a std::sort comparator.
12036         (add_minsym): Add parameters.
12037         (search_minsyms_for_name): Update.  Use std::vector.
12038
12039 2018-04-03  Tom Tromey  <tom@tromey.com>
12040
12041         * mipsread.c (read_alphacoff_dynamic_symtab): Use
12042         gdb::byte_vector.
12043
12044 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
12045
12046         * MAINTAINERS (Write After Approval): Add Weimin Pan.
12047
12048 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
12049
12050         PR gdb/16959
12051         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
12052         printing static type.
12053
12054 2018-04-01  Tom Tromey  <tom@tromey.com>
12055
12056         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
12057         (rs6000_xfer_shared_libraries): Update.
12058
12059 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
12060
12061         * common/gdb_vecs.h (char_ptr): Remove.
12062         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
12063
12064 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
12065
12066         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
12067         with std::vector.
12068         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
12069
12070 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
12071
12072         * tracepoint.h (struct uploaded_tp): Initialize fields.
12073         <actions, step_actions, cmd_strings>: Change type to
12074         std::vector<char *>.
12075         * tracepoint.c (get_uploaded_tp): Allocate with new.
12076         (free_uploaded_tps): Free with delete.
12077         (parse_tracepoint_definition): Adjust to std::vector change.
12078         * breakpoint.c (read_uploaded_action): Likewise.
12079         (create_tracepoint_from_upload): Likewise.
12080         * ctf.c (ctf_write_uploaded_tp): Likewise.
12081         (SET_ARRAY_FIELD): Likewise.
12082         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
12083
12084 2018-03-30  Tom Tromey  <tom@tromey.com>
12085
12086         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
12087         std::unique_ptr.
12088         (svr4_keep_data_in_core): Update.
12089         (svr4_read_so_list): Update.
12090
12091 2018-03-30  Tom Tromey  <tom@tromey.com>
12092
12093         * windows-nat.c (handle_output_debug_string, handle_exception):
12094         Update.
12095         * target.h (target_read_string): Update.
12096         * target.c (target_read_string): Change "string" to
12097         unique_xmalloc_ptr.
12098         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
12099         Update.
12100         * solib-frv.c (frv_current_sos): Update.
12101         * solib-dsbt.c (dsbt_current_sos): Update.
12102         * solib-darwin.c (darwin_current_sos): Update.
12103         * linux-thread-db.c (inferior_has_bug): Update.
12104         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
12105         Update.  Remove alloca.
12106         * ada-lang.c (ada_main_name): Update.
12107
12108 2018-03-30  Tom Tromey  <tom@tromey.com>
12109
12110         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
12111         (struct dwo_file_deleter): New.
12112         (dwo_file_up): New typedef.
12113         (open_and_init_dwo_file): Use dwo_file_up.
12114         (free_dwo_file_cleanup): Remove.
12115
12116 2018-03-30  Tom Tromey  <tom@tromey.com>
12117
12118         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
12119         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
12120
12121 2018-03-30  Tom Tromey  <tom@tromey.com>
12122
12123         * dwarf2read.c (class free_cached_comp_units): New class.
12124         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
12125         (free_cached_comp_units): Remove function.
12126
12127 2018-03-30  Tom Tromey  <tom@tromey.com>
12128
12129         * utils.h (make_cleanup_unpush_target): Remove.
12130         * inf-ptrace.c (struct target_unpusher): New.
12131         (target_unpush_up) New typedef.
12132         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
12133         target_unpush_up.
12134         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
12135
12136 2018-03-27  Tom Tromey  <tom@tromey.com>
12137
12138         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
12139
12140 2018-03-27  Pedro Alves  <palves@redhat.com>
12141             Tom Tromey  <tom@tromey.com>
12142
12143         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
12144         destructor.  Now a class.
12145         (gdb_readline_wrapper_cleanup): Remove function.
12146         (gdb_readline_wrapper): Remove cleanups.
12147
12148 2018-03-27  Tom Tromey  <tom@tromey.com>
12149
12150         * typeprint.h (struct type_print_options) <local_typedefs,
12151         global_typedefs>: Remove "struct" keyword.
12152         (class typedef_hash_table): New class.
12153         (recursively_update_typedef_hash, add_template_parameters)
12154         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
12155         (find_typedef_in_hash): Don't declare.
12156         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
12157         (typedef_hash_table::recursively_update): Rename from
12158         recursively_update_typedef_hash.  Now a member.
12159         (typedef_hash_table::add_template_parameters): Rename from
12160         add_template_parameters.  Now a member.
12161         (typedef_hash_table::typedef_hash_table): Now a constructor;
12162         rename from create_typedef_hash.
12163         (typedef_hash_table::~typedef_hash_table): Now a destructor;
12164         rename from free_typedef_hash.
12165         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
12166         (do_free_global_table): Remove.
12167         (typedef_hash_table::typedef_hash_table): New constructor; renamed
12168         from copy_type_recursive.
12169         (create_global_typedef_table): Remove.
12170         (typedef_hash_table::find_global_typedef): Now a member of
12171         typedef_hash_table.
12172         (typedef_hash_table::find_typedef): Rename from
12173         find_typedef_in_hash; now a member.
12174         (whatis_exp): Update.
12175         * extension.h (struct ext_lang_type_printers): Add constructor and
12176         destructor.
12177         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
12178         declare.
12179         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
12180         Now a constructor; rename from start_ext_lang_type_printers.
12181         (ext_lang_type_printers): Now a destructor; rename from
12182         free_ext_lang_type_printers.
12183         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
12184         Update.
12185         (c_type_print_base_struct_union): Update.  Remove cleanups.
12186
12187 2018-03-27  Tom Tromey  <tom@tromey.com>
12188
12189         * dwarf-index-write.c: Include <cmath>.
12190
12191 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
12192
12193         * NEWS: Add entry describing new "set|show varsize-limit" command.
12194         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
12195         command.
12196         * printcmd.c (_initialize_printcmd): Add "set var" alias of
12197         "set variable".
12198
12199 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
12200
12201         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
12202         dwarf-index-write.c
12203         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
12204         * dwarf-index-common.c: New file.
12205         * dwarf-index-common.h: New file.
12206         * dwarf-index-write.c: New file.
12207         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
12208         (struct dwarf2_section_info): Move from here.
12209         (dwarf2_section_info_def): Likewise.
12210         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
12211         (offset_type): Likewise.
12212         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
12213         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
12214         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
12215         (byte_swap): Likewise.
12216         (MAYBE_SWAP): Likewise.
12217         (dwarf2_per_cu_ptr): Likewise.
12218         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
12219         (struct tu_stats): Likewise.
12220         (struct dwarf2_per_objfile): Likewise.
12221         (struct dwarf2_per_cu_data): Likewise.
12222         (struct signatured_type): Likewise.
12223         (sig_type_ptr): Likewise.
12224         (DEF_VEC_P (sig_type_ptr)): Likewise.
12225         (INDEX4_SUFFIX): Likewise.
12226         (INDEX5_SUFFIX): Likewise.
12227         (DEBUG_STR_SUFFIX): Likewise.
12228         (dwarf2_read_section): Make non-static.
12229         (mapped_index_string_hash): Move from here.
12230         (dwarf5_djb_hash): Likewise.
12231         (file_write): Likewise.
12232         (class data_buf): Likewise.
12233         (struct symtab_index_entry): Likewise.
12234         (struct mapped_symtab): Likewise.
12235         (find_slot): Likewise.
12236         (hash_expand): Likewise.
12237         (add_index_entry): Likewise.
12238         (uniquify_cu_indices): Likewise.
12239         (class c_str_view): Likewise.
12240         (class c_str_view_hasher): Likewise.
12241         (class vector_hasher): Likewise.
12242         (write_hash_table): Likewise.
12243         (psym_index_map): Likewise.
12244         (struct addrmap_index_data): Likewise.
12245         (add_address_entry): Likewise.
12246         (add_address_entry_worker): Likewise.
12247         (write_address_map): Likewise.
12248         (symbol_kind): Likewise.
12249         (write_psymbols): Likewise.
12250         (struct signatured_type_index_data): Likewise.
12251         (write_one_signatured_type): Likewise.
12252         (recursively_count_psymbols): Likewise.
12253         (recursively_write_psymbols): Likewise.
12254         (class debug_names): Likewise.
12255         (check_dwarf64_offsets): Likewise.
12256         (psyms_seen_size): Likewise.
12257         (write_gdbindex): Likewise.
12258         (write_debug_names): Likewise.
12259         (assert_file_size): Likewise.
12260         (write_psymtabs_to_index): Likewise.
12261         (save_gdb_index_command): Likewise.
12262         (_initialize_dwarf2_read): Don't register the "save gdb-index"
12263         command.
12264         * dwarf2read.h: New file.
12265
12266 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
12267
12268         PR gdb/22670
12269         * dwarf2read.c (dwarf2_physname): Do not return the demangled
12270         symbol name if the CU's language stores symbol names in linkage
12271         format.
12272         * language.h (struct language_defn)
12273         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
12274         all instances of this struct.
12275
12276 2018-03-26  Tom Tromey  <tom@tromey.com>
12277
12278         * stack.c (backtrace_command_1): Remove verbose code.
12279
12280 2018-03-26  Tom Tromey  <tom@tromey.com>
12281
12282         * python/py-framefilter.c (py_print_type): Don't catch
12283         exceptions.  Return void.
12284         (py_print_value): Likewise.
12285         (py_print_single_arg): Likewise.
12286         (enumerate_args): Don't catch exceptions.
12287         (py_print_args): Likewise.
12288         (py_print_frame): Likewise.
12289         (gdbpy_apply_frame_filter): Catch exceptions here.
12290
12291 2018-03-26  Tom Tromey  <tom@tromey.com>
12292
12293         * stack.c (_initialize_stack): Remove trailing newlines from help
12294         text.  Add "Usage" line to "backtrace" help.
12295
12296 2018-03-26  Tom Tromey  <tom@tromey.com>
12297
12298         PR python/16486:
12299         * python/py-framefilter.c (py_print_args): Call wrap_hint.
12300
12301 2018-03-26  Tom Tromey  <tom@tromey.com>
12302
12303         * python/py-framefilter.c (py_print_single_arg): Return
12304         EXT_LANG_BT_ERROR from catch.
12305
12306 2018-03-26  Tom Tromey  <tom@tromey.com>
12307
12308         PR backtrace/15584:
12309         * stack.c (backtrace_command_1): Move some code into no-filters
12310         "if".
12311
12312 2018-03-26  Tom Tromey  <tom@tromey.com>
12313
12314         * python/py-framefilter.c (throw_quit_or_print_exception): New
12315         function.
12316         (gdbpy_apply_frame_filter): Use it.
12317
12318 2018-03-26  Tom Tromey  <tom@tromey.com>
12319
12320         PR cli/17716:
12321         * python/py-framefilter.c (py_print_type, py_print_value)
12322         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
12323         RETURN_MASK_ERROR.
12324
12325 2018-03-26  Tom Tromey  <tom@tromey.com>
12326
12327         * python/py-framefilter.c (enumerate_args): Use
12328         gdb::unique_xmalloc_ptr.
12329
12330 2018-03-26  Tom Tromey  <tom@tromey.com>
12331
12332         * python/py-framefilter.c (py_print_frame): Return
12333         EXT_LANG_BT_OK.
12334         (gdbpy_apply_frame_filter): Update comment.
12335         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
12336         Remove.
12337         <EXT_LANG_BT_NO_FILTERS>: Change value.
12338
12339 2018-03-26  Tom Tromey  <tom@tromey.com>
12340
12341         PR backtrace/15582:
12342         * stack.c (backtrace_command): Parse "hide" argument.
12343         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
12344         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
12345         constant.
12346
12347 2018-03-26  Tom Tromey  <tom@tromey.com>
12348
12349         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
12350         add "flags".
12351         (backtrace_command): Remove "fulltrace", add "flags".
12352
12353 2018-03-26  Tom Tromey  <tom@tromey.com>
12354
12355         * stack.c (backtrace_command): Rewrite command line parsing.
12356
12357 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
12358
12359         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
12360
12361 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
12362
12363         * filename-seen-cache.h: Add include guard.
12364
12365 2018-03-26  Keith Seitz  <keiths@redhat.com>
12366
12367         * symfile.c (place_section): Remove "struct" from section_addr_info
12368         in comment.
12369         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
12370         "struct" keyword from section_addr_info.
12371
12372 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
12373
12374         * regformats/regdef.h (reg): Add constructors.
12375
12376 2018-03-25  Pedro Alves  <palves@redhat.com>
12377
12378         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
12379         if then/else bodies in var_func_name extraction.
12380
12381 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
12382
12383         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
12384         lookup_minimal_symbol() to find symbol entry.
12385         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
12386
12387 2018-03-23  Keith Seitz  <keiths@redhat.com>
12388
12389         PR c++/22968
12390         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
12391         nested type definitions for C++, too.
12392
12393 2018-03-23  Tom Tromey  <tom@tromey.com>
12394
12395         * machoread.c (struct oso_el): Add a constructor.  Don't define as
12396         a typedef.
12397         (macho_register_oso): Remove.
12398         (macho_symtab_read): Take a std::vector.
12399         (oso_el_compare_name): Now a std::sort comparator.
12400         (macho_symfile_read_all_oso): Take a std::vector.
12401         (macho_symfile_read): Use std::vector.  Remove cleanups.
12402
12403 2018-03-22  Tom Tromey  <tom@tromey.com>
12404
12405         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
12406         (record_full_goto_bookmark): Use std::string.
12407
12408 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12409
12410         PR tdep/18295
12411         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
12412         a single mask.
12413
12414 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12415
12416         * rs6000-tdep.c (store_insn_p): New function.
12417         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
12418         and cr_reg to their unshifted values. Use store_insn_p to
12419         match LR saves using either R1 or fdata->alloca_reg. Use
12420         store_insn_p to match CR saves. Set alloca_reg_offset
12421         when alloca_reg and framep are set. Remove lr_reg shift
12422         when assigning to fdata->lr_register.
12423
12424 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12425
12426         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
12427         command line args instead of emitting a warning.
12428
12429 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
12430
12431         * tracepoint.h (struct static_tracepoint_marker): Initialize
12432         fields, define default constructor, move constructor and move
12433         assignment, disable the rest.
12434         <str_id, extra>: Make std::string.
12435         (release_static_tracepoint_marker): Remove.
12436         (free_current_marker): Remove.
12437         * tracepoint.c (free_current_marker): Remove.
12438         (parse_static_tracepoint_marker_definition): Adjust to
12439         std::string, use new hex2str overload.
12440         (release_static_tracepoint_marker): Remove.
12441         (print_one_static_tracepoint_marker): Get marker by reference
12442         and adjust to std::string.
12443         (info_static_tracepoint_markers_command): Adjust to std::vector
12444         changes
12445         * target.h (static_tracepoint_marker_p): Remove typedef.
12446         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
12447         (struct target_ops) <to_static_tracepoint_marker_at>: Return
12448         bool.
12449         <to_static_tracepoint_markers_by_strid>: Return std::vector.
12450         * target-debug.h
12451         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
12452         (target_debug_print_std_vector_static_tracepoint_marker): New.
12453         (target_debug_print_struct_static_tracepoint_marker_p): Rename
12454         to...
12455         (target_debug_print_static_tracepoint_marker_p): ... this.
12456         * target-delegates.c: Re-generate.
12457         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
12458         Make std::string.
12459         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
12460         (decode_static_tracepoint_spec): Adjust to std::vector.
12461         (tracepoint_print_one_detail): Adjust to std::string.
12462         (strace_marker_decode_location): Adjust to std::string.
12463         (update_static_tracepoint): Adjust to std::string, remove call
12464         to release_static_tracepoint_marker.
12465         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
12466         Adjust to std::vector.
12467         * remote.c (remote_static_tracepoint_marker_at): Return bool.
12468         (remote_static_tracepoint_markers_by_strid): Adjust to
12469         std::vector.
12470         * common/rsp-low.h (hex2str): New overload with explicit count
12471         of bytes.
12472         * common/rsp-low.c (hex2str): New overload with explicit count
12473         of bytes.
12474         * unittests/rsp-low-selftests.c (test_hex2str): New function.
12475         (_initialize_rsp_low_selftests): Add test_hex2str test.
12476         * unittests/tracepoint-selftests.c
12477         (test_parse_static_tracepoint_marker_definition): Adjust to
12478         std::string.
12479
12480 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
12481
12482         * tracepoint.c (parse_static_tracepoint_marker_definition):
12483         Consider case where the definition is followed by more
12484         definitions.
12485         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12486         tracepoint-selftests.c.
12487         * unittests/tracepoint-selftests.c: New.
12488
12489 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12490
12491         * MAINTAINERS (Write After Approval): Add Pedro Franco de
12492         Carvalho.
12493
12494 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
12495
12496         * symtab.c (find_pc_sect_line): fixed indentation.
12497
12498 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
12499
12500         * symtab.c (find_pc_sect_line): now uses binary search.
12501
12502 2018-03-19  Tom Tromey  <tom@tromey.com>
12503
12504         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
12505         "IDENT" production.
12506
12507 2018-03-19  Pedro Alves  <palves@redhat.com>
12508             Tom Tromey  <tom@tromey.com>
12509
12510         * unittests/observable-selftests.c: New file.
12511         * common/observable.h: New file.
12512         * observable.h: New file.
12513         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
12514         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
12515         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
12516         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
12517         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
12518         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
12519         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
12520         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
12521         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
12522         python/py-breakpoint.c, python/py-finishbreakpoint.c,
12523         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
12524         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
12525         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
12526         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
12527         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
12528         tui/tui-interp.c, valops.c: Update all users.
12529         * tui/tui-hooks.c (tui_bp_created_observer)
12530         (tui_bp_deleted_observer, tui_bp_modified_observer)
12531         (tui_inferior_exit_observer, tui_before_prompt_observer)
12532         (tui_normal_stop_observer, tui_register_changed_observer):
12533         Remove.
12534         (tui_observers_token): New global.
12535         (attach_or_detach, tui_attach_detach_observers): New functions.
12536         (tui_install_hooks, tui_remove_hooks): Use
12537         tui_attach_detach_observers.
12538         * record-btrace.c (record_btrace_thread_observer): Remove.
12539         (record_btrace_thread_observer_token): New global.
12540         * observer.sh: Remove.
12541         * observer.c: Rename to observable.c.
12542         * observable.c (namespace gdb_observers): Define new objects.
12543         (observer_debug): Move into gdb_observers namespace.
12544         (struct observer, struct observer_list, xalloc_observer_list_node)
12545         (xfree_observer_list_node, generic_observer_attach)
12546         (generic_observer_detach, generic_observer_notify): Remove.
12547         (_initialize_observer): Update.
12548         Don't include observer.inc.
12549         * Makefile.in (generated_files): Remove observer.h, observer.inc.
12550         (clean mostlyclean): Likewise.
12551         (observer.h, observer.inc): Remove targets.
12552         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
12553         (COMMON_SFILES): Use observable.c, not observer.c.
12554         * .gitignore: Remove observer.h.
12555
12556 2018-03-18  Tom Tromey  <tom@tromey.com>
12557
12558         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
12559         gdb::def_vector.
12560         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
12561
12562 2018-03-17  Tom Tromey  <tom@tromey.com>
12563
12564         * auto-load.c (auto_load_objfile_script_1): Use std::string.
12565
12566 2018-03-17  Tom Tromey  <tom@tromey.com>
12567
12568         * target.c (class scoped_target_fd): New.
12569         (target_fileio_close_cleanup): Remove.
12570         (target_fileio_read_alloc_1): Use scoped_target_fd.
12571
12572 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
12573
12574         * silent-rules.mk: New.
12575         * Makefile.in: Include silent-rules.mk
12576         (srcdir, VPATH, top_srcdir): Move up.
12577         (COMPILE): Add ECHO_CXX.
12578         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
12579         (init.c): Add ECHO_INIT_C.
12580         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
12581         (version.c): Add ECHO_GEN.
12582         (printcmd.o): Add ECHO_CXX.
12583         (target-float.o): Add ECHO_CXX.
12584         (ada-exp.o): Add ECHO_CXX.
12585         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
12586         (insight$(EXEEXT)): Add ECHO_CXXLD.
12587         * gnulib/configure.ac: Add AM_SILENT_RULES.
12588         * gnulib/aclocal.m4: Re-generate.
12589         * gnulib/configure: Re-generate.
12590         * gnulib/import/Makefile.in: Re-generate.
12591
12592 2018-03-16  Tom Tromey  <tom@tromey.com>
12593
12594         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
12595         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
12596         * utils.c (do_free_section_addr_info)
12597         (make_cleanup_free_section_addr_info): Remove.
12598         * symfile.h (struct other_sections): Add constructor.
12599         (struct section_addr_info): Remove.
12600         (section_addr_info): New typedef.
12601         (struct sym_fns) <sym_offsets>: Change type of parameter.
12602         (build_section_addr_info_from_objfile)
12603         (relative_addr_info_to_section_offsets, addr_info_make_relative)
12604         (default_symfile_offsets, symbol_file_add)
12605         (symbol_file_add_from_bfd)
12606         (build_section_addr_info_from_section_table): Update.
12607         (alloc_section_addr_info, free_section_addr_info): Don't declare.
12608         * symfile.c (alloc_section_addr_info): Remove.
12609         (build_section_addr_info_from_section_table): Change return type.
12610         Update.
12611         (build_section_addr_info_from_bfd)
12612         (build_section_addr_info_from_objfile): Likewise.
12613         (free_section_addr_info): Remove.
12614         (relative_addr_info_to_section_offsets): Change type of "addrs".
12615         (addrs_section_compar): Now a std::sort comparator.
12616         (addrs_section_sort): Change return type.
12617         (addr_info_make_relative): Change type of "addrs".  Update.
12618         (default_symfile_offsets, syms_from_objfile_1)
12619         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
12620         (symbol_file_add_separate): Update.
12621         (symbol_file_add): Change type of "addrs".  Update.
12622         (add_symbol_file_command): Update.  Remove cleanups.
12623         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
12624         cleanups.
12625         * symfile-debug.c (debug_sym_offsets): Change type of "info".
12626         * solib.c (solib_read_symbols): Update.
12627         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
12628         * machoread.c (macho_symfile_offsets): Update.
12629         * jit.c (jit_bfd_try_read_symtab): Update.
12630
12631 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
12632
12633         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12634         unittests/utils-selftests.c.
12635         * unittests/utils-selftests.c: New file.
12636
12637 2018-03-14  Tom Tromey  <tom@tromey.com>
12638
12639         PR cli/14977:
12640         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
12641         for NULL.
12642
12643 2018-03-14  Tom Tromey  <tom@tromey.com>
12644
12645         PR cli/19918:
12646         * printcmd.c (printf_pointer): Allow "-" in format.
12647
12648 2018-03-14  Tom Tromey  <tom@tromey.com>
12649
12650         * printcmd.c (_initialize_printcmd): Add usage to printf.
12651
12652 2018-03-14  Yao Qi  <qiyao@sourceware.org>
12653
12654         * MAINTAINERS: Update my email address.
12655
12656 2018-03-13  Tom Tromey  <tom@tromey.com>
12657
12658         * machoread.c (macho_check_dsym): Change filenamep to a
12659         std::string*.
12660         (macho_symfile_read): Update.
12661         * symfile.c (load_command): Use std::string.
12662
12663 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
12664
12665         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
12666         to error message string.
12667         (riscv_register_name): Use xsnprintf instead of sprintf.
12668         (riscv_insn::fetch_instruction): Use gdb_assert instead of
12669         internal_error.
12670         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
12671         error.
12672         (riscv_push_dummy_call): Likewise.
12673
12674 2018-03-12  Tom Tromey  <tom@tromey.com>
12675
12676         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
12677         Use gdb::byte_vector.
12678         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
12679
12680 2018-03-12  Yao Qi  <yao.qi@linaro.org>
12681
12682         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
12683         parameter type to readable_regcache.
12684         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
12685         the declaration.
12686
12687 2018-03-11  Tom Tromey  <tom@tromey.com>
12688
12689         * dwarf2read.c (struct nextfield): Add initializers.
12690         (struct nextfnfield): Remove.
12691         (struct fnfieldlist): Add initializers.  Remove "length" and
12692         "head", use std::vector.
12693         (struct decl_field_list): Remove.
12694         (struct field_info): Add initializers.
12695         <fields, baseclasses>: Now std::vector.
12696         <nbaseclasses, nfnfields, typedef_field_list_count,
12697         nested_types_list_count>: Remove.
12698         (dwarf2_add_field, dwarf2_add_type_defn)
12699         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
12700         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
12701         (process_structure_scope): Update.
12702
12703 2018-03-11  Tom Tromey  <tom@tromey.com>
12704
12705         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
12706         for use by std::sort.
12707         (build_type_psymtabs_1): Use std::vector.
12708
12709 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
12710
12711         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
12712         and LIBMPFR in the printed configuration.
12713
12714 2018-03-08  Tom Tromey  <tom@tromey.com>
12715
12716         * source.c (get_filename_and_charpos): Use scoped_fd.
12717         * nto-procfs.c (procfs_open_1): Use scoped_fd.
12718         (procfs_pidlist): Likewise.
12719         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
12720         (iterate_over_mappings): Likewise.
12721
12722 2018-03-08  Tom Tromey  <tom@tromey.com>
12723
12724         * infcall.c (struct call_return_meta_info)
12725         <stack_temporaries_enabled>: Remove.
12726         (get_call_return_value, call_function_by_hand_dummy): Update.
12727         * thread.c (disable_thread_stack_temporaries): Remove.
12728         (enable_thread_stack_temporaries): Remove.
12729         (thread_stack_temporaries_enabled_p): Return bool.
12730         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
12731         (get_last_thread_stack_temporary): Update.
12732         * eval.c (evaluate_subexp): Update.
12733         * gdbthread.h (class enable_thread_stack_temporaries): Now a
12734         class, not a function.
12735         (value_ptr, value_vec): Remove typedefs.
12736         (class thread_info) <stack_temporaries_enabled>: Now bool.
12737         <stack_temporaries>: Now a std::vector.
12738         (thread_stack_temporaries_enabled_p)
12739         (value_in_thread_stack_temporaries): Return bool.
12740
12741 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
12742
12743         * remote.c (putpkt_binary): Fix omitted bytes reporting.
12744         (getpkt_or_notif_sane_1): Likewise.
12745
12746 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12747
12748         * build-id.c (build_id_to_debug_bfd): Use std::string.
12749
12750 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12751
12752         * build-id.c (find_separate_debug_file_by_buildid): Return
12753         std::string.
12754         * build-id.h (find_separate_debug_file_by_buildid): Return
12755         std::string.
12756         * coffread.c (coff_symfile_read): Adjust to std::string.
12757         * elfread.c (elf_symfile_read): Adjust to std::string.
12758         * symfile.c (separate_debug_file_exists): Change parameter to
12759         std::string.
12760         (find_separate_debug_file): Return std::string.
12761         (find_separate_debug_file_by_debuglink): Return std::string.
12762         * symfile.h (find_separate_debug_file_by_debuglink): Return
12763         std::string.
12764
12765 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12766
12767         * common/xml-utils.c (xml_escape_text): Move code to...
12768         (xml_escape_text_append): ... this new function.
12769         * common/xml-utils.h (xml_escape_text_append): New declaration.
12770         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
12771         New function.
12772         (_initialize_xml_utils): register test_xml_escape_text_append as
12773         a selftest.
12774
12775 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
12776
12777         * defs.h: Remove MAX_REGISTER_SIZE.
12778         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
12779         asserts.
12780         * python/py-unwind.c (pyuw_sniffer): Likewise.
12781
12782 2018-03-07  Tom Tromey  <tom@tromey.com>
12783
12784         * linux-tdep.c (linux_info_proc): Update.
12785         * target.h (struct target_ops) <to_fileio_readlink>: Return
12786         optional<string>.
12787         (target_fileio_readlink): Return optional<string>.
12788         * remote.c (remote_hostio_readlink): Return optional<string>.
12789         * inf-child.c (inf_child_fileio_readlink): Return
12790         optional<string>.
12791         * target.c (target_fileio_readlink): Return optional<string>.
12792
12793 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
12794
12795         * regcache.c (cooked_read_test): Add riscv to the list of
12796         architectures that have a save_reggroup.
12797
12798 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12799
12800         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
12801         value is not a dynamic class object.
12802
12803 2018-03-06  Tom Tromey  <tom@tromey.com>
12804
12805         * rust-exp.y: Formatting fixes.
12806
12807 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12808
12809         * riscv-tdep.c (riscv_register_name): Remove target description
12810         support.
12811         (riscv_gdbarch_init): Remove target description check.
12812
12813 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12814
12815         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
12816         comment.
12817         * riscv-tdep.h: Likewise.
12818
12819 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12820
12821         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
12822         (riscv_pseudo_register_write): Delete.
12823         (riscv_gdbarch_init): Remove all use of pseudo registers.
12824
12825 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12826
12827         * record-btrace.c (btrace_print_lines): Replace cleanup
12828         parameter with RAII equivalents.
12829         (btrace_insn_history): Replace cleanup with RAII equivalents.
12830         * ui-out.h (make_cleanup_ui_out_list_begin_end,
12831         make_cleanup_ui_out_tuple_begin_end): Remove.
12832         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
12833         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
12834         make_cleanup_ui_out_list_begin_end): Remove.
12835
12836 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12837
12838         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
12839         parameter types to std::vector.  Use bool.
12840         (record_btrace_wait): Replace VEC(tp_t) with
12841         std::vector<thread_info *>.
12842         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
12843
12844 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12845
12846         * record-btrace.c (record_btrace_disable_callback): Remove.
12847         (struct scoped_btrace_disable): New.
12848         (record_btrace_open): Use scoped_btrace_disable.
12849
12850 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12851
12852         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
12853         reading values from registers.
12854
12855 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12856
12857         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
12858         where appropriate.
12859
12860 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12861
12862         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
12863         change parameter type.  Use GDB's print functions, and use
12864         core_addr_to_string where appropriate.
12865         (riscv_push_dummy_call): Use core_addr_to_string where
12866         appropriate, update call to riscv_print_arg_location, and reindent
12867         a few lines.
12868         (riscv_return_value): Update call to riscv_print_arg_location.
12869
12870 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12871             Tim Newsome <tim@sifive.com>
12872             Albert Ou <a0u@eecs.berkeley.edu>
12873             Darius Rad <darius@bluespec.com>
12874
12875         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
12876         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
12877         (ALLDEPFILES): Add riscv-tdep.c
12878         * configure.tgt: Add riscv support.
12879         * riscv-tdep.c: New file.
12880         * riscv-tdep.h: New file.
12881         * NEWS: Mention new target.
12882         * MAINTAINERS: Add entry for riscv.
12883
12884 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12885
12886         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
12887         fields within aggregates.
12888
12889 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
12890
12891         * record-btrace.c (btrace_print_lines): Change type of flags to
12892         gdb_disassembly_flags.
12893
12894 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12895
12896         * fbsd-nat.c: Include "inf-ptrace.h".
12897         (USE_SIGTRAP_SIGINFO): Conditionally define.
12898         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
12899         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
12900         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
12901         function.
12902         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
12903         Likewise.
12904         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
12905         Likewise.
12906         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
12907         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
12908         "supports_stopped_by_hw_breakpoint" target methods.
12909
12910 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12911
12912         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
12913         * fbsd-nat.c (debug_fbsd_nat): New variable.
12914         (show_fbsd_nat_debug): New function.
12915         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
12916         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
12917
12918 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12919
12920         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
12921         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
12922         prototype.
12923         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
12924         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
12925         method.
12926
12927 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12928
12929         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
12930         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
12931
12932 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12933
12934         * charset.c (struct charset_vector): New.
12935         (charsets): Change type to charset_vector.
12936         (find_charset_names): Adjust.
12937         (add_one): Adjust.
12938         (_initialize_charset): Adjust.
12939
12940 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12941
12942         * progspace.h (struct program_space) <deleted_solibs>: Change
12943         type to std::vector<std::string>.
12944         * progspace.c (clear_program_space_solib_cache): Adjust.
12945         * breakpoint.c (print_solib_event): Adjust.
12946         (check_status_catch_solib): Adjust.
12947         * solib.c (update_solib_list): Adjust.
12948         * ui-out.h (class ui_out) <field_string>: New overload.
12949         * ui-out.c (ui_out::field_string): New overload.
12950
12951 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12952
12953         * progspace.h (struct program_space): Add constructor and
12954         destructor, initialize fields.
12955         (add_program_space): Remove.
12956         * progspace.c (add_program_space): Rename to...
12957         (program_space::program_space): ... this.
12958         (release_program_space): Rename to...
12959         (program_space::~program_space): ... this.
12960         (delete_program_space): Use delete to delete program_space.
12961         (initialize_progspace): Use new to allocate program_space.
12962         * inferior.c (add_inferior_with_spaces): Likewise.
12963         (clone_inferior_command): Likewise.
12964         * infrun.c (follow_fork_inferior): Likewise.
12965         (handle_vfork_child_exec_or_exit): Likewise.
12966
12967 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12968
12969         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
12970         (delim_string_to_char_ptr_vec): Return std::vector of
12971         gdb::unique_xmalloc_ptr.
12972         (dirnames_to_char_ptr_vec_append): Take std::vector of
12973         gdb::unique_xmalloc_ptr.
12974         (dirnames_to_char_ptr_vec): Return std::vector of
12975         gdb::unique_xmalloc_ptr.
12976         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
12977         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
12978         (delim_string_to_char_ptr_vec): Return an std::vector of
12979         gdb::unique_xmalloc_ptr, adjust the code.
12980         (dirnames_to_char_ptr_vec_append): Take an std::vector of
12981         gdb::unique_xmalloc_ptr, adjust the code.
12982         (dirnames_to_char_ptr_vec): Return an std::vector of
12983         gdb::unique_xmalloc_ptr, adjust the code.
12984         * auto-load.c (auto_load_safe_path_vec): Change type to
12985         std::vector of gdb::unique_xmalloc_ptr.
12986         (auto_load_expand_dir_vars): Return an std::vector of
12987         gdb::unique_xmalloc_ptr, adjust the code.
12988         (auto_load_safe_path_vec_update): Adjust.
12989         (filename_is_in_auto_load_safe_path_vec): Adjust.
12990         (auto_load_objfile_script_1): Adjust.
12991         * build-id.c (build_id_to_debug_bfd): Adjust.
12992         * linux-thread-db.c (thread_db_load_search): Adjust.
12993         * source.c (add_path): Adjust.
12994         (openp): Adjust.
12995         * symfile.c (find_separate_debug_file): Adjust.
12996         * utils.c (do_free_char_ptr_vec): Remove.
12997         (make_cleanup_free_char_ptr_vec): Remove.
12998
12999 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
13000
13001         PR gdb/22907
13002         * common/pathstuff.c: Conditionally include "<windows.h>".
13003
13004 2018-03-01  Georg Sauthoff  <mail@georg.so>
13005
13006         PR gdb/22888
13007         * gcore.in: Quote variables and switch interpreter to bash.
13008
13009 2018-03-01  Tom Tromey  <tom@tromey.com>
13010
13011         * dwarf2read.c (alloc_discriminant_info): Fix default_index
13012         assertion.  Add assertion for discriminant_index.
13013         (quirk_rust_enum): Use correct base type name in univariant case.
13014
13015 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
13016
13017         * record.c (get_call_history_modifiers): Return a
13018         record_print_flags.
13019         (cmd_record_call_history): Adjust.
13020         * record-btrace.c (record_btrace_call_history): Adjust.
13021         (record_btrace_call_history_range): Adjust.
13022         (record_btrace_call_history_from): Adjust.
13023         * target-debug.h (target_debug_print_record_print_flags): New.
13024         * target-delegates.c: Re-generate.
13025         * target.c (target_call_history): Change flags type.
13026         (target_call_history_from): Likewise.
13027         (target_call_history_range): Likewise.
13028         * target.h (struct target_ops) <target_call_history>: Likewise.
13029         (target_call_history_from): Likewise.
13030         (target_call_history_range): Likewise.
13031
13032 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
13033             Simon Marchi  <simon.marchi@polymtl.ca>
13034
13035         * common/common-utils.c: Include "sys/stat.h".
13036         (is_regular_file): Move here from "source.c"; change return
13037         type to "bool".
13038         * common/common-utils.h (is_regular_file): New prototype.
13039         * common/pathstuff.c (contains_dir_separator): New function.
13040         * common/pathstuff.h (contains_dir_separator): New prototype.
13041         * source.c: Don't include "sys/stat.h".
13042         (is_regular_file): Move to "common/common-utils.c".
13043
13044 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
13045
13046         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
13047         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
13048         * auto-load.c: Include "common/pathstuff.h".
13049         * common/common-def.h (current_directory): Move here.
13050         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
13051         function.
13052         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
13053         prototype.
13054         * common/pathstuff.c: New file.
13055         * common/pathstuff.h: New file.
13056         * compile/compile.c: Include "common/pathstuff.h".
13057         * defs.h (current_directory): Move to "common/common-defs.h".
13058         * dwarf2read.c: Include "common/pathstuff.h".
13059         * exec.c: Likewise.
13060         * guile/scm-safe-call.c: Likewise.
13061         * linux-thread-db.c: Likewise.
13062         * main.c: Likewise.
13063         * nto-tdep.c: Likewise.
13064         * objfiles.c: Likewise.
13065         * source.c: Likewise.
13066         * symtab.c: Likewise.
13067         * utils.c: Include "common/pathstuff.h".
13068         (gdb_realpath): Move to "common/pathstuff.c".
13069         (gdb_realpath_keepfile): Likewise.
13070         (gdb_abspath): Likewise.
13071         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
13072         (gdb_realpath_keepfile): Likewise.
13073         (gdb_abspath): Likewise.
13074
13075 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
13076
13077         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
13078         wildcard process pid for super_resume for kernels with a
13079         specific bug.
13080
13081 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
13082
13083         * compile/compile.c (get_args): Add additional comments
13084         explaining function.
13085
13086 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
13087             Tom Tromey  <tom@tromey.com>
13088
13089         * target.h (memory_write_request_s): Remove typedef.  Don't define
13090         VEC.
13091         (target_write_memory_blocks): Change argument to std::vector.
13092         (struct memory_write_request): Add constructor.
13093         * target-memory.c (compare_block_starting_address): Return bool.
13094         Change argument types.
13095         (claim_memory): Change arguments to use std::vector.
13096         (split_regular_and_flash_blocks, blocks_to_erase)
13097         (compute_garbled_blocks): Likewise.
13098         (cleanup_request_data, cleanup_write_requests_vector): Remove.
13099         (target_write_memory_blocks): Change argument to std::vector.
13100         * symfile.c (struct load_section_data): Add constructor and
13101         destructor.  Use std::vector for "requests".
13102         (struct load_progress_data): Add initializers.
13103         (load_section_callback): Update.  Use "new".
13104         (clear_memory_write_data): Remove.
13105         (generic_load): Update.
13106
13107 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
13108
13109         * arch/aarch64.h: Use common/tdesc.h.
13110
13111 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
13112
13113         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
13114         architecture with a 64-bit ABI.
13115
13116 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
13117
13118         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
13119         ahead of target description loading.
13120
13121 2018-02-26  Tom Tromey  <tom@tromey.com>
13122
13123         * stack.c (backtrace_command_1): Update.
13124         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
13125         of "flags".
13126         * python/py-framefilter.c (py_print_frame)
13127         (gdbpy_apply_frame_filter): Change type of "flags".
13128         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
13129         of "flags".
13130         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
13131         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
13132         * extension.h (enum frame_filter_flag): Rename from
13133         frame_filter_flags.
13134         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
13135         (apply_ext_lang_frame_filter): Change type of "flags".
13136         * extension.c (apply_ext_lang_frame_filter): Change type of
13137         "flags".
13138         * extension-priv.h (struct extension_language_ops)
13139         <apply_frame_filter>: Change type of "flags".
13140
13141 2018-02-26  Tom Tromey  <tom@tromey.com>
13142
13143         PR python/16497:
13144         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
13145         off-by-one in py_end computation.
13146         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
13147         PRINT_MORE_FRAMES.
13148         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
13149         constant.
13150
13151 2018-02-26  Tom Tromey  <tom@tromey.com>
13152
13153         * dwarf2read.c (struct variant_field): New.
13154         (struct nextfield) <variant>: New field.
13155         (dwarf2_add_field): Handle DW_TAG_variant_part.
13156         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
13157         discriminated union.
13158         (read_structure_type): Handle DW_TAG_variant_part.
13159         (handle_struct_member_die): New function, extracted from
13160         process_structure_scope.  Handle DW_TAG_variant.
13161         (process_structure_scope): Handle discriminated unions.  Call
13162         handle_struct_member_die.
13163
13164 2018-02-26  Tom Tromey  <tom@tromey.com>
13165
13166         * rust-lang.h (rust_last_path_segment): Declare.
13167         * rust-lang.c (rust_last_path_segment): Now public.  Change
13168         contract.
13169         (struct disr_info): Remove.
13170         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
13171         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
13172         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
13173         (rust_enum_p, rust_enum_variant): New function.
13174         (rust_underscore_fields): Remove "offset" parameter.
13175         (rust_print_enum): New function.
13176         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
13177         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
13178         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
13179         enums.
13180         (rust_internal_print_type): New function, from rust_print_type.
13181         Remove enum code.
13182         (rust_print_type): Call rust_internal_print_type.
13183         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
13184         Update enum handling.
13185         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
13186         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
13187         (rust_union_quirks): New functions.
13188         (process_full_comp_unit, process_full_type_unit): Call
13189         rust_union_quirks.
13190         (process_structure_scope): Update rust_unions if necessary.
13191
13192 2018-02-26  Tom Tromey  <tom@tromey.com>
13193
13194         * value.h (value_union_variant): Declare.
13195         * valops.c (value_union_variant): New function.
13196         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
13197         (struct discriminant_info): New.
13198         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
13199         enumerator.
13200         (struct main_type) <flag_discriminated_union>: New field.
13201
13202 2018-02-26  Tom Tromey  <tom@tromey.com>
13203
13204         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13205         unittests/unpack-selftests.c.
13206         * unittests/unpack-selftests.c: New file.
13207         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
13208
13209 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13210
13211         * dwarf2read.c (struct partial_die_info) <read>: New method.
13212         (read_partial_die): Remove the declaration.
13213         (load_partial_dies): Update.
13214         (partial_die_info::partial_die_info):
13215         (read_partial_die): Change it to partial_die_info::read.
13216
13217 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13218
13219         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
13220         (fixup_partial_die): Remove declaration.
13221         (scan_partial_symbols): Update.
13222         (partial_die_parent_scope): Likewise.
13223         (partial_die_full_name): Likewise.
13224         (fixup_partial_die): Change it to partial_die_info::fixup.
13225
13226 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13227
13228         * dwarf2read.c (read_partial_die): Update the declaration.
13229         (load_partial_dies): Caller update.
13230         (read_partial_die): Remove one argument abbrev_len.
13231
13232 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13233
13234         * dwarf2read.c (struct partial_die_info): Add ctor, delete
13235         assignment operator.
13236         (load_partial_dies): Use ctor and copy ctor.
13237         (read_partial_die): Update.
13238         (dwarf2_cu::find_partial_die): Use ctor.
13239
13240 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13241
13242         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
13243         (find_partial_die_in_comp_unit): Change it to
13244         dwarf2_cu::find_partial_die.
13245         (find_partial_die): Update.
13246
13247 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13248
13249         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
13250         is NULL.
13251
13252 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13253
13254         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
13255
13256 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
13257
13258         * arch/amd64.h: Use common/tdesc.h.
13259         * arch/i386.c: Likewise.
13260         * arch/i386.h: Likewise.
13261         * arch/tic6x.c: Likewise.
13262         * arch/tdesc.h: Move file from here...
13263         * common/tdesc.h: ...to here.
13264         * features/aarch64-core.c: Regenerate.
13265         * features/aarch64-fpu.c: Regenerate.
13266         * features/i386/32bit-avx.c: Regenerate.
13267         * features/i386/32bit-avx512.c: Regenerate.
13268         * features/i386/32bit-core.c: Regenerate.
13269         * features/i386/32bit-linux.c: Regenerate.
13270         * features/i386/32bit-mpx.c: Regenerate.
13271         * features/i386/32bit-pkeys.c: Regenerate.
13272         * features/i386/32bit-sse.c: Regenerate.
13273         * features/i386/64bit-avx.c: Regenerate.
13274         * features/i386/64bit-avx512.c: Regenerate.
13275         * features/i386/64bit-core.c: Regenerate.
13276         * features/i386/64bit-linux.c: Regenerate.
13277         * features/i386/64bit-mpx.c: Regenerate.
13278         * features/i386/64bit-pkeys.c: Regenerate.
13279         * features/i386/64bit-segments.c: Regenerate.
13280         * features/i386/64bit-sse.c: Regenerate.
13281         * features/i386/x32-core.c: Regenerate.
13282         * features/tic6x-c6xp.c: Regenerate.
13283         * features/tic6x-core.c: Regenerate.
13284         * features/tic6x-gp.c: Regenerate.
13285         * target-descriptions.c: Use common/tdesc.h.
13286         * target-descriptions.h: Likewise.
13287
13288 2018-02-24  Tom Tromey  <tom@tromey.com>
13289
13290         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
13291         (try_thread_db_load_from_dir, thread_db_load_search): Use
13292         std::string.
13293         (info_auto_load_libthread_db_compare): Return bool.  Change
13294         argument types.
13295         (info_auto_load_libthread_db): Use std::vector, std::string.
13296         Remove cleanups.
13297
13298 2018-02-24  Tom Tromey  <tom@tromey.com>
13299
13300         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
13301         std::string.
13302         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
13303         std::string*.
13304         * gdbarch.c: Rebuild.
13305         * gdbarch.h: Rebuild.
13306         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
13307         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
13308         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
13309         std::string*.
13310
13311 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
13312
13313         * gdbtypes.h (sect_offset): Change type to uint64_t.
13314         (sect_offset_str): New function.
13315         * dwarf2read.c (create_addrmap_from_aranges): Use
13316         sect_offset_str.
13317         (error_check_comp_unit_head): Likewise.
13318         (create_debug_type_hash_table): Likewise.
13319         (read_cutu_die_from_dwo): Likewise.
13320         (init_cutu_and_read_dies): Likewise.
13321         (init_cutu_and_read_dies_no_follow): Likewise.
13322         (process_psymtab_comp_unit_reader): Likewise.
13323         (partial_die_parent_scope): Likewise.
13324         (peek_die_abbrev): Likewise.
13325         (process_queue): Likewise.
13326         (dwarf2_physname): Likewise.
13327         (read_namespace_alias): Likewise.
13328         (read_import_statement): Likewise.
13329         (create_dwo_cu_reader): Likewise.
13330         (create_cus_hash_table): Likewise.
13331         (lookup_dwo_cutu): Likewise.
13332         (inherit_abstract_dies): Likewise.
13333         (read_func_scope): Likewise.
13334         (read_call_site_scope): Likewise.
13335         (dwarf2_add_member_fn): Likewise.
13336         (read_common_block): Likewise.
13337         (read_module_type): Likewise.
13338         (read_typedef): Likewise.
13339         (read_subrange_type): Likewise.
13340         (load_partial_dies): Likewise.
13341         (read_partial_die): Likewise.
13342         (find_partial_die): Likewise.
13343         (read_str_index): Likewise.
13344         (dwarf2_string_attr): Likewise.
13345         (build_error_marker_type): Likewise.
13346         (lookup_die_type): Likewise.
13347         (dump_die_shallow): Likewise.
13348         (follow_die_ref): Likewise.
13349         (dwarf2_fetch_die_loc_sect_off): Likewise.
13350         (dwarf2_fetch_constant_bytes): Likewise.
13351         (follow_die_sig): Likewise.
13352         (get_signatured_type): Likewise.
13353         (get_DW_AT_signature_type): Likewise.
13354         (dwarf2_find_containing_comp_unit): Likewise.
13355         (set_die_type): Likewise.
13356
13357 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
13358
13359         * arch/aarch64.c: Include "common-defs.h".
13360         * arch/amd64.c: Likewise.
13361         * arch/i386.c: Likewise.
13362
13363 2018-02-21  Tom Tromey  <tom@tromey.com>
13364
13365         * value.h: (extract_field_op): Update.
13366         * eval.c (extract_field_op): Return a const char *.
13367         * expression.h (parse_expression_for_completion): Update.
13368         * completer.c (complete_expression): Update.
13369         (add_struct_fields): Make fieldname const.
13370         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
13371         (mark_completion_tag, parse_exp_in_context_1): Update.
13372         (parse_expression_for_completion): Change "name" to
13373         unique_xmalloc_ptr*.
13374
13375 2018-02-21  Tom Tromey  <tom@tromey.com>
13376
13377         * infcall.c (call_function_by_hand_dummy): Use std::vector.
13378
13379 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13380
13381         * avr-tdep.c (avr_read_pc): Change parameter type to
13382         readable_regcache.
13383         * gdbarch.sh (read_pc): Likewise.
13384         * gdbarch.c: Re-generated.
13385         * gdbarch.h: Re-generated.
13386         * hppa-tdep.c (hppa_read_pc): Change parameter type to
13387         readable_regcache.
13388         * ia64-tdep.c (ia64_read_pc): Likewise.
13389         * mips-tdep.c (mips_read_pc): Likewise.
13390         * spu-tdep.c (spu_read_pc): Likewise.
13391
13392 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13393
13394         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
13395         * regcache-dump.c: New file.
13396         * regcache.c: Move register_dump to regcache-dump.c.
13397         (maintenance_print_registers): Likewise.
13398         (maintenance_print_raw_registers): Likewise.
13399         (maintenance_print_cooked_registers): Likewise.
13400         (maintenance_print_register_groups): Likewise.
13401         (maintenance_print_remote_registers): Likewise.
13402         (_initialize_regcache): Likewise.
13403         * regcache.h (register_dump): Moved from regcache.c.
13404
13405 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13406
13407         * regcache.c (regcache::regcache): Update.
13408         (regcache::invalidate): Move it to detached_regcache::invalidate.
13409         (get_thread_arch_aspace_regcache): Update.
13410         (regcache::raw_update): Update.
13411         (regcache::cooked_read): Remove some code.
13412         (regcache::cooked_read_value): Likewise.
13413         (regcache::raw_write): Remove assert on m_readonly_p.
13414         (regcache::raw_supply_integer): Move it to
13415         detached_regcache::raw_supply_integer.
13416         (regcache::raw_supply_zeroed): Likewise.
13417         * regcache.h (detached_regcache) <raw_supply_integer>: New
13418         declaration.
13419         <raw_supply_zeroed, invalidate>: Likewise.
13420         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
13421         <invalidate>: Likewise.
13422         <m_readonly_p>: Removed.
13423
13424 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13425
13426         * infcmd.c (get_return_value): Let stop_regs point to
13427         get_current_regcache.
13428         * regcache.c (regcache::regcache): Remove.
13429         (register_dump_reg_buffer): New class.
13430         (regcache_print): Adjust.
13431         * regcache.h (regcache): Remove constructors.
13432
13433 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13434
13435         * regcache.c (class register_dump): New class.
13436         (register_dump_regcache, register_dump_none): New class.
13437         (register_dump_remote, register_dump_groups): New class.
13438         (regcache_print): Update.
13439         * regcache.h (regcache_dump_what): Move it to regcache.c.
13440         (regcache) <dump>: Remove.
13441
13442 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13443
13444         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
13445          reg_buffer_rw *.
13446         (jit_unwind_reg_set_impl): Call raw_supply.
13447         (jit_frame_sniffer): Use reg_buffer_rw.
13448         * record-full.c (record_full_core_regbuf): Change its type.
13449         (record_full_core_open_1): Use reg_buffer_rw.
13450         (record_full_close): Likewise.
13451         (record_full_core_fetch_registers): Use regcache->raw_supply.
13452         (record_full_core_store_registers): Likewise.
13453         * regcache.c (regcache::get_register_status): Move it to
13454         reg_buffer.
13455         (regcache_raw_set_cached_value): Remove.
13456         (regcache::raw_set_cached_value): Remove.
13457         (regcache::raw_write): Call raw_supply.
13458         (regcache::raw_supply): Move it to reg_buffer_rw.
13459         * regcache.h (regcache_raw_set_cached_value): Remove.
13460         (reg_buffer_rw): New class.
13461
13462 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13463
13464         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
13465         readonly_detached_regcache.
13466         (dummy_frame_prev_register): Use regcache->cooked_read.
13467         * frame.c (frame_save_as_regcache): Change return type.
13468         (frame_pop): Update.
13469         * frame.h (frame_save_as_regcache): Update declaration.
13470         * inferior.h (get_infcall_suspend_state_regcache): Update
13471         declaration.
13472         * infrun.c (infcall_suspend_state) <registers>: use
13473         readonly_detached_regcache.
13474         (save_infcall_suspend_state): Don't use regcache_dup.
13475         (get_infcall_suspend_state_regcache): Change return type.
13476         * linux-fork.c (struct fork_info) <savedregs>: Change to
13477         readonly_detached_regcache.
13478         <pc>: New field.
13479         (fork_save_infrun_state): Don't use regcache_dup.
13480         (info_checkpoints_command): Adjust.
13481         * mi/mi-main.c (register_changed_p): Update declaration.
13482         (mi_cmd_data_list_changed_registers): Use
13483         readonly_detached_regcache.
13484         (register_changed_p): Change parameter type to
13485         readonly_detached_regcache.
13486         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
13487         readonly_detached_regcache.
13488         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
13489         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
13490         New.
13491         (regcache::save): Move it to reg_buffer.
13492         (regcache::restore): Change parameter type.
13493         (regcache_dup): Remove.
13494         * regcache.h (reg_buffer) <save>: New method.
13495         (readonly_detached_regcache): New class.
13496         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
13497         readonly_detached_regcache.
13498         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
13499
13500 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13501
13502         * frame.c (frame_save_as_regcache): Use regcache method save.
13503         (frame_pop): Use regcache method restore.
13504         * infrun.c (restore_infcall_suspend_state): Likewise.
13505         * linux-fork.c (fork_load_infrun_state): Likewise.
13506         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
13507         save.
13508         * regcache.c (regcache_save): Remove.
13509         (regcache::restore): More asserts.
13510         (regcache_cpy): Remove.
13511         * regcache.h (regcache_save): Remove the declaration.
13512         (regcache::restore): Move from private to public.
13513         Remove the friend declaration of regcache_cpy.
13514         (regcache_cpy): Remove declaration.
13515
13516 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13517
13518         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
13519         parameter type to 'readable_regcache *'.
13520         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
13521         * arm-tdep.c (arm_neon_quad_read): Likewise.
13522         (arm_pseudo_read): Likewise.
13523         * avr-tdep.c (avr_pseudo_register_read): Likewise.
13524         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
13525         * frv-tdep.c (frv_pseudo_register_read): Likewise.
13526         * gdbarch.c: Re-generated.
13527         * gdbarch.h: Re-generated.
13528         * gdbarch.sh (pseudo_register_read): Change parameter type to
13529         'readable_regcache *'.
13530         (pseudo_register_read_value): Likewise.
13531         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
13532         (h8300_pseudo_register_read): Likewise.
13533         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
13534         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
13535         (i386_pseudo_register_read_into_value): Likewise.
13536         (i386_pseudo_register_read_value): Likewise.
13537         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
13538         declaration.
13539         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
13540         * m32c-tdep.c (m32c_raw_read): Likewise.
13541         (m32c_read_flg): Likewise.
13542         (m32c_banked_register): Likewise.
13543         (m32c_banked_read): Likewise.
13544         (m32c_sb_read): Likewise.
13545         (m32c_part_read): Likewise.
13546         (m32c_cat_read): Likewise.
13547         (m32c_r3r2r1r0_read): Likewise.
13548         (m32c_pseudo_register_read): Likewise.
13549         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
13550         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
13551         (mep_pseudo_cr64_read): Likewise.
13552         (mep_pseudo_register_read): Likewise.
13553         * mips-tdep.c (mips_pseudo_register_read): Likewise.
13554         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
13555         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
13556         * regcache.c (regcache::raw_read): Move it to readable_regcache.
13557         (regcache::cooked_read): Likewise.
13558         (regcache::cooked_read_value): Likewise.
13559         (regcache_cooked_read_signed):
13560         (regcache::cooked_read): Likewise.
13561         * regcache.h (readable_regcache): New class.
13562         (regcache): Inherit readable_regcache.  Move some methods to
13563         readable_regcache.
13564         * rl78-tdep.c (rl78_pseudo_register_read): Change
13565         parameter type to 'readable_regcache *'.
13566         * rs6000-tdep.c (do_regcache_raw_read): Remove.
13567         (e500_pseudo_register_read): Change parameter type to
13568         'readable_regcache *'.
13569         (dfp_pseudo_register_read): Likewise.
13570         (vsx_pseudo_register_read): Likewise.
13571         (efpr_pseudo_register_read): Likewise.
13572         * s390-tdep.c (s390_pseudo_register_read): Likewise.
13573         * sh-tdep.c (sh_pseudo_register_read): Likewise.
13574         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
13575         (sh64_pseudo_register_read): Likewise.
13576         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
13577         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
13578         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
13579         (spu_pseudo_register_read): Likewise.
13580         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
13581         (xtensa_pseudo_register_read): Likewise.
13582
13583 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13584
13585         * regcache.c (regcache::regcache): Call reg_buffer ctor.
13586         (regcache::arch): Move it to reg_buffer::arch.
13587         (regcache::register_buffer): Likewise.
13588         (regcache::assert_regnum): Likewise.
13589         (regcache::num_raw_registers): Likewise.
13590         * regcache.h (reg_buffer): New class.
13591         (regcache): Inherit reg_buffer.
13592
13593 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
13594
13595         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
13596         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
13597
13598 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
13599
13600         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
13601
13602 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
13603
13604         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
13605         (SFILES): Remove common/*.c files.
13606         (COMMON_OBS): Remove some *.o files built from common/*.c files.
13607         * common/common.host: Add common reference.
13608         * configure.ac: Likewise.
13609         * configure: Regenerate.
13610
13611 2018-02-16  Yao Qi  <yao.qi@linaro.org>
13612
13613         * block.c (block_namespace_info): Inherit allocate_on_obstack.
13614         (block_initialize_namespace): Use new.
13615         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
13616         (dwarf2_free_objfile): Use delete.
13617         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
13618         (copy_type_recursive): Use new.
13619         * gdb_obstack.h (allocate_on_obstack): New.
13620
13621 2018-02-15  Yao Qi  <yao.qi@linaro.org>
13622
13623         PR gdb/22849
13624         * inferior.c (exit_inferior_1): Reset inf->control.
13625
13626 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
13627
13628         * ada-lang.c (ada_to_fixed_value_create): Delete advance
13629         declaration.
13630
13631 2018-02-14  Pedro Alves  <palves@redhat.com>
13632
13633         * frame-unwind.c (frame_unwind_try_unwinder): Always call
13634         frame_cleanup_after_sniffer on exception.
13635
13636 2018-02-14  Tom Tromey  <tom@tromey.com>
13637
13638         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
13639         const.
13640         (solib_bfd_open): Make pathname const.
13641         * solib.c (solib_bfd_open): Make pathname const.
13642         * solib-spu.c (spu_bfd_fopen): Make name const.
13643         (spu_bfd_open): Make pathname const.
13644         * solib-darwin.c (darwin_bfd_open): Make pathname const.
13645         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
13646
13647 2018-02-14  Tom Tromey  <tom@tromey.com>
13648
13649         * symfile.c (symfile_bfd_open): Update.
13650         * source.h (openp, source_full_path_of, find_and_open_source):
13651         Change argument type to unique_xmalloc_ptr.
13652         * source.c (openp): Take a unique_xmalloc_ptr.
13653         (source_full_path_of, find_and_open_source): Likewise.
13654         (open_source_file, symtab_to_fullname): Update.
13655         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
13656         unique_xmalloc_ptr.
13657         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
13658         (exec_file_find): Update.
13659         * psymtab.c (psymtab_to_fullname): Update.
13660         * nto-tdep.h (nto_find_and_open_solib): Update.
13661         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
13662         unique_xmalloc_ptr.
13663         * exec.c (exec_file_attach): Update.
13664         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
13665         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
13666
13667 2018-02-14  Tom Tromey  <tom@tromey.com>
13668
13669         * solib.c: Include source.h.
13670         * nto-tdep.c: Include source.h.
13671         * mi/mi-cmd-env.c: Include source.h.
13672         * infcmd.c: Include source.h.
13673         * exec.c: Include source.h.
13674         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
13675         (add_path, directory_switch, source_path, init_source_path): Move
13676         declarations...
13677         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
13678         (add_path, directory_switch, source_path, init_source_path):
13679         ...here.
13680
13681 2018-02-14  Tom Tromey  <tom@tromey.com>
13682
13683         * solist.h (exec_file_find, solib_find): Return
13684         unique_xmalloc_ptr.
13685         (solib_bfd_fopen): Take a const char *.
13686         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
13687         (exec_file_find, solib_find): Likewise.
13688         (solib_bfd_fopen): Do not take ownership of "pathname".
13689         (solib_bfd_open): Use unique_xmalloc_ptr.
13690         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
13691         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
13692         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
13693         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
13694
13695 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
13696
13697         * ada-lang.c (name_match_type_from_name): Remove reference to
13698         ada_name_for_lookup in function's documentation.
13699         * ada-lang.h (ada_name_for_lookup): Delete declaration.
13700
13701 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
13702
13703         * defs.h (enum openp_flags): New enum.
13704         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
13705         Move to enum openp_flags.
13706         (openp_flags): New enum flags.
13707         (openp): Change parameter type to openp_flags.
13708         * source.c (openp): Change parameter type to openp_flags.
13709         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
13710         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
13711
13712 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
13713
13714         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
13715         per-command.
13716
13717 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
13718
13719         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
13720         into...
13721         (class dwarf2_queue_guard): ...the destructor of this new class.
13722         (dw2_do_instantiate_symtab): Create instance of the new class
13723         dwarf2_queue_guard, remove cleanup.
13724
13725 2018-02-09  Tom Tromey  <tom@tromey.com>
13726
13727         * source.c (find_source_lines): Don't reference past the end of
13728         the vector.
13729
13730 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13731
13732         * remote.c (remote_btrace_maybe_reopen): Change error message.
13733         * btrace.c (btrace_enable): Likewise.
13734         (parse_xml_btrace): Likewise.
13735         (parse_xml_btrace_conf): Likewise.
13736
13737 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13738
13739         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
13740         (linux_enable_pt, linux_enable_bts): Call
13741         diagnose_perf_event_open_fail.
13742
13743 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13744
13745         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
13746         Remove parameter and change return type.  Update callers.  Move it.
13747         (linux_enable_bts, linux_enable_pt): Improve error message.
13748         (linux_enable_pt): Remove zero buffer size check.
13749         (linux_enable_btrace): Improve error messages.  Remove NULL return
13750         check.
13751
13752 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13753
13754         * btrace.c (btrace_enable): Remove target_supports_btrace call.
13755         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
13756         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
13757         (linux_supports_pt, linux_supports_btrace): Remove.
13758         (linux_enable_bts): Call cpu_supports_bts.
13759         * nat/linux-btrace.h (linux_supports_btrace): Remove.
13760         * remote.c (remote_supports_btrace): Remove.
13761         (init_remote_ops): Remove remote_supports_btrace.
13762         * target-delegates.c: Regenerated.
13763         * target.c (target_supports_btrace): Remove.
13764         * target.h (target_ops) <to_supports_btrace>: Remove
13765         (target_supports_btrace): Remove.
13766         * x86-linux-nat.c (x86_linux_create_target): Remove
13767         linux_supports_btrace.
13768
13769 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13770
13771         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
13772         btrace failed.
13773         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
13774         exception and use message in own exception.
13775
13776 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13777
13778         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
13779         (perf_event_pt_event_type): Use gdb_file_up.
13780         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
13781         scoped_fd, and scoped_mmap.
13782
13783 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13784
13785         * common/scoped_mmap.h: New.
13786         * unittests/scoped_mmap-selftest.c: New.
13787         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13788         unittests/scoped_mmap-selftest.c.
13789
13790 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13791
13792         * common/scoped_fd.h: New.
13793         * unittests/scoped_fd-selftest.c: New.
13794         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13795         unittests/scoped_fd-selftest.c.
13796
13797 2018-02-09  Tom Tromey  <tom@tromey.com>
13798
13799         * auto-load.c (auto_load_section_scripts): Use
13800         gdb::unique_xmalloc_ptr.
13801
13802 2018-02-09  Tom Tromey  <tom@tromey.com>
13803
13804         * auto-load.c (execute_script_contents): Use std::string.
13805
13806 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
13807
13808         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
13809         Python function, rather than a new command.
13810
13811 2018-02-08  Tom Tromey  <tom@tromey.com>
13812
13813         * solib.c (solib_find_1): Use std::string.
13814         (solib_bfd_fopen): Use unique_xmalloc_ptr.
13815
13816 2018-02-08  Tom Tromey  <tom@tromey.com>
13817
13818         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
13819
13820 2018-02-08  Tom Tromey  <tom@tromey.com>
13821
13822         * source.c (find_source_lines): Use gdb::def_vector.
13823
13824 2018-02-08  Tom Tromey  <tom@tromey.com>
13825
13826         * macrocmd.c (struct temporary_macro_definition): New.
13827         (macro_define_command): Use temporary_macro_definition.  Remove
13828         cleanups.
13829         (free_macro_definition_ptr): Remove.
13830
13831 2018-02-08  Tom Tromey  <tom@tromey.com>
13832
13833         * macroexp.c (maybe_expand): Use std::string.
13834
13835 2018-02-08  Tom Tromey  <tom@tromey.com>
13836
13837         * macroexp.c (struct macro_buffer): Add initializers for some
13838         members.
13839         (init_buffer, init_shared_buffer, free_buffer)
13840         (free_buffer_return_text): Remove.
13841         (macro_buffer): New constructors.
13842         (~macro_buffer): New destructor.
13843         (macro_buffer::set_shared): New method.
13844         (macro_buffer::resize_buffer, macro_buffer::appendc)
13845         (macro_buffer::appendmem): Now methods, not free functions.
13846         (set_token, append_tokens_without_splicing, stringify)
13847         (macro_stringify): Update.
13848         (gather_arguments): Change return type.  Remove argc_p argument,
13849         add args_ptr argument.  Use std::vector.
13850         (substitute_args): Remove argc argument.  Accept std::vector.
13851         (expand): Update.  Use std::vector.
13852         (scan, macro_expand, macro_expand_next): Update.
13853
13854 2018-02-08  Tom Tromey  <tom@tromey.com>
13855
13856         * symtab.c (default_collect_symbol_completion_matches_break_on):
13857         Use unique_xmalloc_ptr.
13858         * macroscope.h: (sal_macro_scope, user_macro_scope)
13859         (default_macro_scope): Return unique_xmalloc_ptr.
13860         * macroscope.c (sal_macro_scope, user_macro_scope)
13861         (default_macro_scope): Return unique_xmalloc_ptr.
13862         * macroexp.h (macro_expand, macro_expand_once): Return
13863         unique_xmalloc_ptr.
13864         * macroexp.c (macro_expand, macro_expand_once): Return
13865         unique_xmalloc_ptr.
13866         * macrocmd.c (macro_expand_command, macro_expand_once_command)
13867         (info_macro_command, info_macros_command): Use
13868         unique_xmalloc_ptr.
13869         * compile/compile-c-support.c (write_macro_definitions): Use
13870         unique_xmalloc_ptr.
13871         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
13872
13873 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
13874
13875         * value.c (value_static_field): Assign field type instead of
13876         containing type when returning an optimized out value.
13877
13878 2018-02-06  Yao Qi  <yao.qi@linaro.org>
13879
13880         * ft32-tdep.c (ft32_read_pc): Remove.
13881         (ft32_write_pc): Remove.
13882         (ft32_gdbarch_init): Update.
13883         * m32r-tdep.c (m32r_read_pc): Remove.
13884         (m32r_gdbarch_init): Update.
13885         * mep-tdep.c (mep_read_pc): Remove.
13886         (mep_gdbarch_init): Update.
13887         * microblaze-tdep.c (microblaze_write_pc): Remove.
13888         (microblaze_gdbarch_init): Update.
13889         * mn10300-tdep.c (mn10300_read_pc): Remove.
13890         (mn10300_write_pc): Remove.
13891         (mn10300_gdbarch_init): Update.
13892         * moxie-tdep.c (moxie_read_pc): Remove.
13893         (moxie_write_pc): Remove.
13894         (moxie_gdbarch_init): Update.
13895
13896 2018-02-06  Yao Qi  <yao.qi@linaro.org>
13897
13898         * expprint.c (print_subexp_standard): Handle
13899         OP_F77_UNDETERMINED_ARGLIST.
13900         (dump_subexp_body_standard): Likewise.
13901
13902 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
13903
13904         * target-descriptions.c (tdesc_element_visitor) Add empty
13905         implementations.
13906         (tdesc_type): Move make_gdb_type from here.
13907         (tdesc_type_builtin): Likewise.
13908         (tdesc_type_vector): Likewise.
13909         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
13910         (make_gdb_type_struct): Move from tdesc_type_with_fields.
13911         (make_gdb_type_union): Likewise.
13912         (make_gdb_type_flags): Likewise.
13913         (make_gdb_type_enum): Likewise.
13914         (make_gdb_type): New function.
13915         (tdesc_register_type): Use static make_gdb_type.
13916
13917 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
13918
13919         * infcmd.c (default_print_one_register_info): Align natural-format
13920         column values consistently one under another.
13921         (pad_to_column): New function.
13922
13923 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
13924
13925         * dwarf2read.c (dwarf2_physname): Move commment.
13926
13927 2018-02-01  Leszek Swirski  <leszeks@google.com>
13928
13929         * varobj.c (varobj_formatted_print_options): Allow recursive
13930         pretty printing if pretty printing is enabled.
13931
13932 2018-02-01  Leszek Swirski  <leszeks@google.com>
13933
13934         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
13935         names after a structop as a filename.
13936
13937 2018-02-01  Yao Qi  <yao.qi@linaro.org>
13938
13939         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
13940         (arm_record_coproc_data_proc): Likewise.
13941
13942 2018-02-01  Yao Qi  <yao.qi@linaro.org>
13943
13944         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
13945
13946 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
13947
13948         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
13949         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
13950
13951 2018-01-31  Pedro Alves  <palves@redhat.com>
13952
13953         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
13954         * inflow.c (child_terminal_save_inferior): Wrap reference to
13955         tcgetpgrp in HAVE_TERMIOS_H.
13956         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
13957         _WIN32.
13958         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
13959         always iterate over all inferiors.
13960         (gdbsim_cntrl_c): Adjust.
13961         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
13962
13963 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
13964
13965         * gdbtypes.c (lookup_array_range_type): Make sure the array's
13966         index type is objfile-owned if the element type is as well.
13967
13968 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
13969
13970         GDB 8.1 released.
13971
13972 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13973
13974         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
13975         "features/s390x-linux64.c".
13976         (_initialize_s390_linux_tdep): Remove initialization of tdescs
13977         s390_linux32 and s390x_linux64.
13978         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
13979         default tdesc.
13980         * s390-tdep.c: Include "features/s390-linux32.c" and
13981         "features/s390x-linux64.c".
13982         (s390_tdesc_valid): Add check for tdesc_has_registers.
13983         (s390_gdbarch_init): Make sure there is always a valid tdesc.
13984         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
13985         tdesc_s390x_linux64.
13986         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
13987         tdesc_s390x_linux64 to...
13988         * s390-tdep.h: ...here.
13989
13990 2018-01-30  Pedro Alves  <palves@redhat.com>
13991
13992         PR gdb/13211
13993         * config.in, configure: Regenerate.
13994         * configure.ac: Check for getpgid.
13995         * go32-nat.c (go32_pass_ctrlc): New.
13996         (go32_target): Install it.
13997         * inf-child.c (inf_child_target): Install
13998         child_terminal_save_inferior, child_pass_ctrlc and
13999         child_interrupt.
14000         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
14001         (inf_ptrace_target): No longer install it.
14002         * infcmd.c (interrupt_target_1): Adjust.
14003         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
14004         (child_interrupt): Declare.
14005         (inferior::terminal_state): New.
14006         * inflow.c (struct terminal_info): Update comments.
14007         (inferior_process_group): Delete.
14008         (terminal_is_ours): Delete.
14009         (gdb_tty_state): New.
14010         (child_terminal_init): Adjust.
14011         (is_gdb_terminal, sharing_input_terminal_1)
14012         (sharing_input_terminal): New functions.
14013         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
14014         Set the process's actual process group in the foreground if
14015         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
14016         mark terminal as the inferior's if not sharing GDB's terminal.
14017         Don't check attach_flag.
14018         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
14019         pass down a target_terminal_state.
14020         (child_terminal_save_inferior): New, factored out from ...
14021         (child_terminal_ours_1): ... this.  Handle
14022         target_terminal_state::is_ours_for_output.
14023         (child_interrupt, child_pass_ctrlc): New.
14024         (inflow_inferior_exit): Clear the inferior's terminal_state.
14025         (copy_terminal_info): Copy the inferior's terminal state.
14026         (_initialize_inflow): Remove reference to terminal_is_ours.
14027         * inflow.h (inferior_process_group): Delete.
14028         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
14029         * procfs.c (procfs_target): Don't install procfs_interrupt.
14030         (procfs_interrupt): Delete.
14031         * remote.c (remote_serial_quit_handler): Adjust.
14032         (remote_interrupt): Remove ptid parameter.  Adjust.
14033         * target-delegates.c: Regenerate.
14034         * target.c: Include "terminal.h".
14035         (target_terminal::terminal_state): Rename to ...
14036         (target_terminal::m_terminal_state): ... this.
14037         (target_terminal::init): Adjust.
14038         (target_terminal::inferior): Adjust to per-inferior
14039         terminal_state.
14040         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
14041         (target_terminal::ours, target_terminal::ours_for_output): Use
14042         target_terminal_is_ours_kind.
14043         (target_interrupt): Remove ptid parameter.  Adjust.
14044         (default_target_pass_ctrlc): Adjust.
14045         * target.h (target_ops::to_terminal_save_inferior): New field.
14046         (target_ops::to_interrupt): Remove ptid_t parameter.
14047         (target_interrupt): Remove ptid_t parameter.  Update comment.
14048         (target_pass_ctrlc): Update comment.
14049         * target/target.h (target_terminal_state): New scoped enum,
14050         factored out of ...
14051         (target_terminal::terminal_state): ... here.
14052         (target_terminal::inferior): Update comments.
14053         (target_terminal::restore_inferior): New.
14054         (target_terminal::is_inferior, target_terminal::is_ours)
14055         (target_terminal::is_ours_for_output): Adjust.
14056         (target_terminal::scoped_restore_terminal_state): Adjust to
14057         rename, and call restore_inferior() instead of inferior().
14058         (target_terminal::scoped_restore_terminal_state::m_state): Change
14059         type.
14060         (target_terminal::terminal_state): Rename to ...
14061         (target_terminal::m_terminal_state): ... this and change type.
14062
14063 2018-01-30  Pedro Alves  <palves@redhat.com>
14064
14065         * linux-nat.c (wait_for_signal): New function.
14066         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
14067         directly.
14068         (async_terminal_is_ours)
14069         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
14070         (linux_nat_add_target): Don't override
14071         to_terminal_inferior/to_terminal_ours.
14072
14073 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
14074
14075         * remote.c (remote_follow_fork): Don't call "detach_inferior".
14076
14077 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
14078
14079         * dwarf2read.c (free_dwo_files): Add forward-declaration.
14080         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
14081         dwarf2_per_objfile_free here.
14082         (dwarf2_per_objfile_free): Remove.
14083         (_initialize_dwarf2_read): Don't register
14084         dwarf2_per_objfile_free as a registry cleanup.
14085
14086 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
14087
14088         Avoid compilation errors in MinGW native builds
14089
14090         The error is triggered by including python-internal.h, and the
14091         error message is:
14092
14093              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
14094                       from build-gnulib/import/math.h:27,
14095                       from d:/usr/Python26/include/pyport.h:235,
14096                       from d:/usr/Python26/include/Python.h:58,
14097                       from python/python-internal.h:94,
14098                       from python/py-arch.c:24:
14099              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
14100         using ::hypot;
14101                 ^~~~~
14102
14103         This happens because Python headers define 'hypot' to expand t
14104         '_hypot' in the Windows builds.
14105         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
14106         'hypoth'.  This avoids a compilation error.
14107
14108 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
14109
14110         * MAINTAINERS (Write After Approval): Fix ordering.
14111
14112 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
14113
14114         * MAINTAINERS (Write After Approval): Add Alan Hayward.
14115
14116 2018-01-26  Alan Modra  <amodra@gmail.com>
14117
14118         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
14119         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
14120         Remove nop.  Make const.  Comment.
14121         (powerpc32_plt_stub_so_2): New.
14122         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
14123         Correct count.  Update uses.
14124         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
14125         Move common code reading PLT entry word.  Correct
14126         powerpc32_plt_stub PLT address calculation.
14127         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
14128         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
14129         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
14130         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
14131         (ppc64_standard_linkage8): Likewise.
14132         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
14133         Correct insns description.
14134         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
14135
14136 2018-01-24  Pedro Alves  <palves@redhat.com>
14137
14138         GCC PR libstdc++/83906
14139         * gdbtypes.c (operator==(const dynamic_prop &,
14140         const dynamic_prop &)): New.
14141         (operator==(const range_bounds &, const range_bounds &)): New.
14142         (check_types_equal): Use them instead of memcmp.
14143         * gdbtypes.h (operator==(const dynamic_prop &,
14144         const dynamic_prop &)): Declare.
14145         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
14146         (operator==(const range_bounds &, const range_bounds &)): Declare.
14147         (operator!=(const range_bounds &, const range_bounds &)): Declare.
14148
14149 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14150
14151         * s390-linux-tdep.c (s390_record_address_mask)
14152         (s390_record_calc_disp_common, s390_record_calc_disp)
14153         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
14154         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
14155         (s390_process_record): Move to s390-tdep.c.
14156         (s390_linux_init_abi_any): Adjust.
14157         * s390-tdep.c (s390_record_address_mask)
14158         (s390_record_calc_disp_common, s390_record_calc_disp)
14159         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
14160         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
14161         (s390_process_record): Moved from s390-linux-tdep.c
14162         (s390_gdbarch_init): Adjust.
14163
14164 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14165
14166         * s390-linux-nat.c (s390-tdep.h): New include.
14167         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
14168         (HFILES_NO_SRCDIR): Add s390-tdep.h.
14169         (ALLDEPFILES): Add s390-tdep.c.
14170         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
14171         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
14172         * s390-tdep.h: ...this.  New file.
14173         * s390-linux-tdep.c (s390-tdep.h): New include.
14174         (_initialize_s390_tdep): Rename to...
14175         (_initialize_s390_linux_tdep): ...this and adjust.
14176         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
14177         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
14178         s390-tdep.h.
14179         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
14180         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
14181         (s390_is_partial_instruction, s390_software_single_step)
14182         (is_non_branch_ril, s390_displaced_step_copy_insn)
14183         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
14184         (s390_prologue_data, s390_addr, s390_store, s390_load)
14185         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
14186         (s390_register_call_saved, s390_guess_tracepoint_registers)
14187         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
14188         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
14189         (s390_pseudo_register_name, s390_pseudo_register_type)
14190         (s390_pseudo_register_read, s390_pseudo_register_write)
14191         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
14192         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
14193         (s390_addr_bits_remove, s390_address_class_type_flags)
14194         (s390_address_class_type_flags_to_name)
14195         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
14196         (s390_function_arg_float, s390_function_arg_vector)
14197         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
14198         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
14199         (s390_frame_align, s390_register_return_value, s390_return_value)
14200         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
14201         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
14202         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
14203         (s390_trad_frame_prev_register, s390_unwind_cache)
14204         (s390_prologue_frame_unwind_cache)
14205         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
14206         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
14207         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
14208         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
14209         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
14210         (s390_frame_base_address, s390_local_base_address)
14211         (s390_frame_base, s390_gcc_target_options)
14212         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
14213         (s390_validate_reg_range, s390_tdesc_valid)
14214         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
14215         * s390-tdep.c: ...this.  New file.
14216
14217 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14218
14219         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
14220         (s390_process_record, s390_gdbarch_tdep_alloc)
14221         (s390_linux_init_abi_any): Use/set new hook.
14222
14223 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14224
14225         * s390-linux-tdep.c (osabi.h): New include.
14226         (s390_linux_init_abi_31, s390_linux_init_abi_64)
14227         (s390_linux_init_abi_any): New functions.
14228         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
14229
14230 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14231
14232         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
14233         tdesc_has_registers check
14234
14235 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14236
14237         * s390-linux-tdep.c (s390_tdesc_valid): New function.
14238         (s390_validate_reg_range): New macro.
14239         (s390_gdbarch_init): Adjust.
14240
14241 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14242
14243         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
14244         (s390_gdbarch_tdep_alloc): Adjust.
14245         (s390_gdbarch_init): Adjust.
14246
14247 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14248
14249         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
14250         <have_tdb>: Change type to bool.
14251         (s390_gdbarch_tdep_alloc): Adjust.
14252         (s390_gdbarch_init): Adjust.
14253
14254 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14255
14256         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
14257         (gdbarch_tdep) <have_upper, have_vx>: New fields.
14258         (s390_gdbarch_tdep_alloc): New function.
14259         (s390_gdbarch_init): Allocate tdep at start and use its fields
14260         instead of separate variables.
14261
14262 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14263
14264         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
14265         when looking for cached gdbarch and add comment for remaining.
14266
14267 2018-01-22  Pedro Alves  <palves@redhat.com>
14268             Sergio Durigan Junior  <sergiodj@redhat.com>
14269
14270         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
14271         case.
14272
14273 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
14274
14275         * MAINTAINERS: Update my company e-mail address.
14276
14277 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14278
14279         * regcache.c (cooked_write_test): New function.
14280         (_initialize_regcache): Register the test.
14281
14282 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14283
14284         * ia64-tdep.c (ia64_pseudo_register_read): Call
14285         regcache->cooked_read instead of regcache_cooked_read_unsigned.
14286         * m32c-tdep.c (m32c_cat_read): Likewise.
14287         (m32c_r3r2r1r0_read): Likewise.
14288         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
14289         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
14290
14291 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14292
14293         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
14294         method raw_read instead of regcache_raw_read.
14295         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
14296         * arm-tdep.c (arm_neon_quad_read): Likewise.
14297         * avr-tdep.c (avr_pseudo_register_read): Likewise.
14298         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
14299         * frv-tdep.c (frv_pseudo_register_read): Likewise.
14300         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
14301         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
14302         (i386_pseudo_register_read_into_value): Likewise.
14303         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
14304         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
14305         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
14306         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
14307         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
14308         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
14309         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
14310         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
14311         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
14312
14313 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14314
14315         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
14316         * configure.tgt: Remove target mt.
14317         * mt-tdep.c: Remove.
14318         * regcache.c (cooked_read_test): Remove the check for mt.
14319
14320 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14321
14322         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
14323         instead of gdbarch_pseudo_register_read_value.
14324
14325 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
14326
14327         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
14328         language is Ada.
14329
14330 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
14331
14332         * linespec.c (create_sals_line_offset): Remove code that preserved
14333         the symtab_and_line's line number.
14334
14335 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14336
14337         * varobj.c (varobj_create): Don't set valid_block when creating a
14338         floating varobj.
14339
14340 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14341
14342         * varobj.c (varobj_create): Remove out of date comment.
14343
14344 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14345
14346         PR mi/20395
14347         * ada-exp.y (write_var_from_sym): Pass extra parameter when
14348         updating innermost block.
14349         * parse.c (innermost_block_tracker::update): Take extra type
14350         parameter, and check types match before updating innermost block.
14351         (write_dollar_variable): Update innermost block for registers.
14352         * parser-defs.h (enum innermost_block_tracker_type): New enum.
14353         (innermost_block_tracker::innermost_block_tracker): Initialise
14354         m_types member.
14355         (innermost_block_tracker::reset): Take type parameter.
14356         (innermost_block_tracker::update): Take type parameter, and pass
14357         type through as needed.
14358         (innermost_block_tracker::m_types): New member.
14359         * varobj.c (varobj_create): Pass type when reseting innermost
14360         block.
14361
14362 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14363
14364         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
14365         * ada-lang.c (resolve_subexp): Likewise.
14366         * breakpoint.c (set_breakpoint_condition) Likewise.
14367         (watch_command_1) Likewise.
14368         * c-exp.y (variable): Likewise.
14369         * d-exp.y (PrimaryExpression): Likewise.
14370         * f-exp.y (variable): Likewise.
14371         * go-exp.y (variable): Likewise.
14372         * m2-exp.y (variable): Likewise.
14373         * objfiles.c (objfile::~objfile): Likewise.
14374         * p-exp.y (variable): Likewise.
14375         * parse.c (innermost_block): Change type.
14376         * parser-defs.h (class innermost_block_tracker): New.
14377         (innermost_block): Change to innermost_block_tracker.
14378         * printcmd.c (display_command): Switch to innermost_block API.
14379         (do_one_display): Likewise.
14380         * rust-exp.y (do_one_display): Likewise.
14381         * symfile.c (clear_symtab_users): Likewise.
14382         * varobj.c (varobj_create): Switch to innermost_block API, replace
14383         use of innermost_block with block stored on varobj object.
14384
14385 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14386
14387         * expression.h (innermost_block): Remove declaration.
14388         * varobj.c: Add 'parser-defs.h' include.
14389
14390 2018-01-19  Tom Tromey  <tom@tromey.com>
14391
14392         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
14393         symbols in the static and global blocks.
14394
14395 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
14396
14397         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
14398         gdb_ptrace.h, and move including gdb_wait.h ...
14399         * nat/linux-ptrace.h: ... to here.
14400
14401 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14402
14403         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
14404         inf_ptrace_detach_success.
14405         (inf_ptrace_detach_success): Add inferior parameter, use it
14406         instead of inferior_ptid, pass it to detach_inferior.
14407         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
14408         parameter.
14409         * inferior.c (detach_inferior): Add overload that takes an
14410         inferior object.
14411         * inferior.h (detach_inferior): Likewise.
14412         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
14413         use inferior_ptid, adjust call to inf_ptrace_detach_success.
14414         * linux-thread-db.c (thread_db_detach): Use inf parameter.
14415
14416 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14417
14418         * target.h (struct target_ops) <to_detach>: Add inferior
14419         parameter.
14420         (target_detach): Likewise.
14421         * target.c (dispose_inferior): Pass inferior down.
14422         (target_detach): Pass inferior down.  Assert that it is equal to
14423         the current inferior.
14424         * aix-thread.c (aix_thread_detach): Pass inferior down.
14425         * corefile.c (core_file_command): Pass current_inferior() down.
14426         * corelow.c (core_detach): Add inferior parameter.
14427         * darwin-nat.c (darwin_detach): Likewise.
14428         * gnu-nat.c (gnu_detach): Likewise.
14429         * inf-ptrace.c (inf_ptrace_detach): Likewise.
14430         * infcmd.c (detach_command): Pass current_inferior() down to
14431         target_detach.
14432         * infrun.c (follow_fork_inferior): Pass parent_inf to
14433         target_detach.
14434         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
14435         target_detach.
14436         * linux-nat.c (linux_nat_detach): Add inferior parameter.
14437         * linux-thread-db.c (thread_db_detach): Likewise.
14438         * nto-procfs.c (procfs_detach): Likewise.
14439         * procfs.c (procfs_detach): Likewise.
14440         * record.c (record_detach): Likewise.
14441         * record.h (struct inferior): Forward-declare.
14442         (record_detach): Add inferior parameter.
14443         * remote-sim.c (gdbsim_detach): Likewise.
14444         * remote.c (remote_detach_1): Likewise.
14445         (remote_detach): Likewise.
14446         (extended_remote_detach): Likewise.
14447         * sol-thread.c (sol_thread_detach): Likewise.
14448         * target-debug.h (target_debug_print_inferior_p): New macro.
14449         * target-delegates.c: Re-generate.
14450         * top.c (kill_or_detach): Pass inferior down to target_detach.
14451         * windows-nat.c (windows_detach): Add inferior parameter.
14452
14453 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14454
14455         * target.h (struct target_ops) <to_detach>: Remove args
14456         parameter.
14457         (target_detach): Likewise.
14458         * target.c (dispose_inferior): Adjust.
14459         (target_detach): Remove args parameter, adjust.
14460         * aix-thread.c (aix_thread_detach): Adjust.
14461         * corefile.c (core_file_command): Adjust.
14462         * corelow.c (core_detach): Adjust.
14463         * darwin-nat.c (darwin_detach): Adjust.
14464         * gnu-nat.c (gnu_detach): Adjust.
14465         * inf-ptrace.c (inf_ptrace_detach): Adjust.
14466         * infcmd.c (detach_command): Adjust
14467         * infrun.c (follow_fork_inferior): Adjust.
14468         (handle_vfork_child_exec_or_exit): Adjust.
14469         * linux-fork.c (linux_fork_detach): Remove args parameter.
14470         * linux-fork.h (linux_fork_detach): Likewise.
14471         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
14472         * linux-thread-db.c (thread_db_detach): Likewise.
14473         * nto-procfs.c (procfs_detach): Likewise.
14474         * procfs.c (procfs_detach): Likewise.
14475         (do_detach): Remove signo parameter.
14476         * record.c (record_detach): Remove args parameter.
14477         * record.h (record_detach): Likewise.
14478         * remote-sim.c (gdbsim_detach): Likewise.
14479         * remote.c (remote_detach_1): Likewise.
14480         (remote_detach): Likewise.
14481         (extended_remote_detach): Likewise.
14482         * sol-thread.c (sol_thread_detach): Likewise.
14483         * target-delegates.c: Re-generate.
14484         * top.c (struct qt_args) <args>: Remove field.
14485         (kill_or_detach): Don't pass args.
14486         (quit_force): Don't set args.
14487         * windows-nat.c (windows_detach): Remove args parameter.
14488
14489 2018-01-19  Yao Qi  <yao.qi@linaro.org>
14490
14491         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
14492         (arm_linux_init_abi): Install it.
14493
14494 2018-01-19  Yao Qi  <yao.qi@linaro.org>
14495
14496         * osabi.c (gdb_osabi_names): Extend the regexp for
14497         arm-linux-gnueabihf.
14498
14499 2018-01-18  Yao Qi  <yao.qi@linaro.org>
14500
14501         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
14502         m_abbrevs.
14503         (abbrev_table::add_abbrev): Update.
14504         (abbrev_table::lookup_abbrev): Update.
14505
14506 2018-01-18  Yao Qi  <yao.qi@linaro.org>
14507
14508         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
14509
14510 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
14511
14512         * compile/compile.c (compile_to_object): Convert "triplet_rx"
14513         to "std::string".
14514
14515 2018-01-17  Tom Tromey  <tom@tromey.com>
14516
14517         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
14518
14519 2018-01-17  Tom Tromey  <tom@tromey.com>
14520
14521         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
14522         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
14523         (create_array_type_with_stride): Update.
14524         * dwarf2read.c (set_die_type): Update.
14525
14526 2018-01-17  Tom Tromey  <tom@tromey.com>
14527
14528         * dwarf2read.c (delayed_method_info): Remove typedef.
14529         (dwarf2_cu::method_info): Now a std::vector.
14530         (add_to_method_list): Update.
14531         (free_delayed_list): Remove.
14532         (compute_delayed_physnames): Update.
14533         (process_full_comp_unit, process_full_type_unit): Clear the method
14534         list.  Remove cleanups.
14535         (psymtab_include_file_name): Add name_holder parameter.  Use
14536         unique_xmalloc_ptr.
14537         (dwarf_decode_lines): Update.
14538
14539 2018-01-17  Tom Tromey  <tom@tromey.com>
14540             Simon Marchi  <simon.marchi@ericsson.com>
14541
14542         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
14543         (dwarf2_per_objfile::free_cached_comp_units)
14544         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
14545         (init_cutu_and_read_dies_no_follow): Update.
14546         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
14547         (dwarf2_cu::~dwarf2_cu): New.
14548         (free_heap_comp_unit, free_stack_comp_unit): Remove.
14549         (age_cached_comp_units, free_one_cached_comp_unit): Update.
14550
14551 2018-01-17  Tom Tromey  <tom@tromey.com>
14552             Simon Marchi  <simon.marchi@ericsson.com>
14553
14554         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
14555         (struct die_reader_specs) <abbrev_table>: New member.
14556         (struct abbrev_table): Add constructor.
14557         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
14558         <abbrev_obstack>: Now an auto_obstack.
14559         (abbrev_table_up): New typedef.
14560         (init_cu_die_reader): Add abbrev_table parameter.
14561         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
14562         Add result_dwo_abbrev_table.
14563         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
14564         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
14565         Update.
14566         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
14567         parameter.
14568         (skip_children): Update.
14569         (abbrev_table::alloc_abbrev): Rename from
14570         abbrev_table_alloc_abbrev.
14571         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
14572         (abbrev_table::lookup_abbrev): Rename from
14573         abbrev_table_lookup_abbrev.
14574         (abbrev_table_read_table): Return abbrev_table_up.
14575         (abbrev_table_free, abbrev_table_free_cleanup)
14576         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
14577         (load_partial_dies): Update.
14578
14579 2018-01-17  Tom Tromey  <tom@tromey.com>
14580
14581         * dwarf2read.c (dwarf2_compute_name): Update comment.
14582         (read_func_scope, read_variable): Update.
14583         (new_symbol): Remove.
14584         (new_symbol_full): Rename to new_symbol.
14585
14586 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
14587
14588         PR gdb/16577
14589         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
14590         a warning instead of throwing an error, set section size to 0 and return
14591         NULL.
14592         * gdb_bfd.h (gdb_bfd_map_section): Update description.
14593
14594 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14595
14596         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
14597         std::string.
14598         (linux_ptrace_attach_fail_reason_string): Likewise.
14599         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
14600         Likewise.
14601         (linux_ptrace_attach_fail_reason_string): Likewise.
14602         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
14603
14604 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14605
14606         * linux-nat.c (linux_nat_attach): Remove xstrdup.
14607
14608 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
14609
14610         PR gdb/21559
14611         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
14612         checking for fs_base/gs_base fields in struct user_regs_struct.
14613         * configure: Regenerate.
14614
14615 2018-01-17  Yao Qi  <yao.qi@linaro.org>
14616
14617         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
14618         function.
14619         (aarch64_linux_init_abi): Install it to gdbarch hook
14620         gcc_target_options.
14621
14622 2018-01-15  Pedro Alves  <palves@redhat.com>
14623
14624         * common/signals-state-save-restore.c
14625         (save_original_signals_state): Fix typos.
14626
14627 2017-01-12  Tom Tromey  <tom@tromey.com>
14628             Sergio Durigan Junior  <sergiodj@redhat.com>
14629
14630         * Makefile.in (install-only): Install gdb-add-index.
14631
14632 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
14633
14634         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
14635
14636 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
14637
14638         * infrun.c (keep_going_pass_signal): Clear step-over info when
14639         insert_breakpoints fails.
14640
14641 2018-01-11  Pedro Alves  <palves@redhat.com>
14642
14643         PR gdb/22583
14644         * infrun.c (resume): Rename to ...
14645         (resume_1): ... this.
14646         (resume): Reimplement as wrapper around resume_1.
14647
14648 2018-01-11  Pedro Alves  <palves@redhat.com>
14649
14650         PR remote/22597
14651         * remote.c (remote_parse_stop_reply): Default to the last-set
14652         general thread instead of to 'magic_null_ptid'.
14653
14654 2018-01-10  Pedro Alves  <palves@redhat.com>
14655
14656         * language.h (language_get_symbol_name_matcher): Rename ...
14657         (get_symbol_name_matcher): ... this.
14658         * language.c (language_get_symbol_name_matcher): Ditto.
14659         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
14660         callers adjusted.
14661
14662 2018-01-10  Pedro Alves  <palves@redhat.com>
14663
14664         PR gdb/22670
14665         * dwarf2read.c
14666         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
14667         Adjust to use language_get_symbol_name_matcher instead of
14668         language_defn::la_get_symbol_name_matcher.
14669         * language.c (language_get_symbol_name_matcher): If in Ada mode
14670         and the lookup name is a verbatim match, return Ada's matcher.
14671         * language.h (language_get_symbol_name_matcher): Adjust comment.
14672         (ada_lookup_name_info::verbatim_p):: New method.
14673
14674 2018-01-10  Pedro Alves  <palves@redhat.com>
14675
14676         PR gdb/22670
14677         * ada-lang.c (ada_collect_symbol_completion_matches): If the
14678         minsym's language is language_auto or language_cplus, pass down
14679         language_ada instead.
14680         * symtab.c (compare_symbol_name): Don't frob symbol language here.
14681
14682 2018-01-10  Pedro Alves  <palves@redhat.com>
14683
14684         PR gdb/22670
14685         * minsyms.c (linkage_name_str): New function.
14686         (iterate_over_minimal_symbols): Use it.
14687
14688 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14689
14690         * NEWS: Document that 'info proc' now works on FreeBSD.
14691
14692 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14693
14694         * configure.ac: Check for kinfo_getfile in libutil.
14695         * configure: Regenerate.
14696         * config.in: Regenerate.
14697         * fbsd-nat.c: Include "fbsd-tdep.h".
14698         (fbsd_fetch_cmdline): New.
14699         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
14700         rather than calling error.
14701         (fbsd_info_proc): New.
14702         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
14703         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
14704         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
14705
14706 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14707
14708         * fbsd-nat.c (struct free_deleter): Remove.
14709         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
14710
14711 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14712
14713         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
14714         NULL for an empty pathname.
14715
14716 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14717
14718         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
14719         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
14720         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
14721         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
14722         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
14723         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
14724         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
14725         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
14726         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
14727         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
14728         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
14729         (fbsd_core_fetch_timeval, fbsd_print_sigset)
14730         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
14731         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
14732         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
14733
14734 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
14735
14736         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
14737         (gnu_xfer_auxv): New function.
14738         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
14739         TARGET_OBJECT_AUXV.
14740
14741 2018-01-08  Yao Qi  <yao.qi@linaro.org>
14742             Simon Marchi  <simon.marchi@ericsson.com>
14743
14744         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
14745         common/selftest.c.
14746         (COMMON_OBS): Remove selftest.o.
14747         * configure.ac: Append selftest-arch.c and common/selftest.c to
14748         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
14749         * configure: Re-generated.
14750         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
14751         GDB_SELF_TEST.
14752         (maintenance_info_selftests): Likewise.
14753
14754 2018-01-08  Xavier Roirand  <roirand@adacore.com>
14755
14756         * ada-valprint.c (val_print_packed_array_elements): Use
14757         proper number of elements when printing an array indexed
14758         by an enumeration type.
14759
14760 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14761
14762         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
14763         (dw2_get_file_names_reader): Adjust.
14764         (lookup_dwo_signatured_type): Adjust.
14765         (lookup_dwp_signatured_type): Adjust.
14766         (lookup_signatured_type): Adjust.
14767         (create_type_unit_group): Adjust.
14768         (get_type_unit_group): Adjust.
14769         (process_psymtab_comp_unit_reader): Adjust.
14770         (build_type_psymtabs_reader): Adjust.
14771         (scan_partial_symbols): Adjust.
14772         (add_partial_symbol): Adjust.
14773         (add_partial_subprogram): Adjust.
14774         (peek_die_abbrev): Adjust.
14775         (fixup_go_packaging): Adjust.
14776         (process_imported_unit_die): Adjust.
14777         (dwarf2_compute_name): Adjust.
14778         (dwarf2_physname): Adjust.
14779         (read_import_statement): Adjust.
14780         (handle_DW_AT_stmt_list): Adjust.
14781         (read_file_scope): Adjust.
14782         (read_func_scope): Adjust.
14783         (read_lexical_block_scope): Adjust.
14784         (read_call_site_scope): Adjust.
14785         (read_variable): Adjust.
14786         (dwarf2_rnglists_process): Adjust.
14787         (dwarf2_ranges_process): Adjust.
14788         (dwarf2_ranges_read): Adjust.
14789         (dwarf2_get_pc_bounds): Adjust.
14790         (dwarf2_record_block_ranges): Adjust.
14791         (dwarf2_add_field): Adjust.
14792         (dwarf2_add_member_fn): Adjust.
14793         (read_structure_type): Adjust.
14794         (process_structure_scope): Adjust.
14795         (read_enumeration_type): Adjust.
14796         (read_array_type): Adjust.
14797         (mark_common_block_symbol_computed): Adjust.
14798         (read_common_block): Adjust.
14799         (read_namespace_type): Adjust.
14800         (read_namespace): Adjust.
14801         (read_module_type): Adjust.
14802         (read_tag_pointer_type): Adjust.
14803         (read_tag_ptr_to_member_type): Adjust.
14804         (read_tag_string_type): Adjust.
14805         (read_subroutine_type): Adjust.
14806         (read_typedef): Adjust.
14807         (read_base_type): Adjust.
14808         (attr_to_dynamic_prop): Adjust.
14809         (read_subrange_type): Adjust.
14810         (read_unspecified_type): Adjust.
14811         (dwarf2_read_abbrevs): Adjust.
14812         (load_partial_dies): Adjust.
14813         (read_partial_die): Adjust.
14814         (find_partial_die): Adjust.
14815         (guess_partial_die_structure_name): Adjust.
14816         (fixup_partial_die): Adjust.
14817         (read_attribute_value): Adjust.
14818         (read_addr_index): Adjust.
14819         (read_addr_index_from_leb128): Adjust.
14820         (read_str_index): Adjust.
14821         (dwarf2_string_attr): Adjust.
14822         (get_debug_line_section): Adjust.
14823         (dwarf_decode_line_header): Adjust.
14824         (lnp_state_machine::check_line_address): Adjust.
14825         (dwarf_decode_lines_1): Adjust.
14826         (dwarf_decode_lines): Adjust.
14827         (dwarf2_start_symtab): Adjust.
14828         (var_decode_location): Adjust.
14829         (new_symbol_full): Adjust.
14830         (dwarf2_const_value_data): Adjust.
14831         (dwarf2_const_value_attr): Adjust.
14832         (dwarf2_const_value): Adjust.
14833         (die_type): Adjust.
14834         (die_containing_type): Adjust.
14835         (build_error_marker_type): Adjust.
14836         (lookup_die_type): Adjust.
14837         (guess_full_die_structure_name): Adjust.
14838         (anonymous_struct_prefix): Adjust.
14839         (determine_prefix): Adjust.
14840         (dwarf2_name): Adjust.
14841         (follow_die_ref_or_sig): Adjust.
14842         (follow_die_offset): Adjust.
14843         (follow_die_ref): Adjust.
14844         (follow_die_sig_1): Adjust.
14845         (follow_die_sig): Adjust.
14846         (get_signatured_type): Adjust.
14847         (get_DW_AT_signature_type): Adjust.
14848         (decode_locdesc): Adjust.
14849         (dwarf_decode_macros): Adjust.
14850         (cu_debug_loc_section): Adjust.
14851         (fill_in_loclist_baton): Adjust.
14852         (dwarf2_symbol_mark_computed): Adjust.
14853         (init_one_comp_unit): Don't assign
14854         dwarf2_cu::dwarf2_per_objfile.
14855         (set_die_type): Adjust.
14856
14857 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14858
14859         * dwarf2read.c (struct mapped_debug_names): Add constructor.
14860         <dwarf2_per_objfile>: New field.
14861         (dwarf2_per_objfile): Remove global.
14862         (get_dwarf2_per_objfile): New function.
14863         (set_dwarf2_per_objfile): New function.
14864         (dwarf2_build_psymtabs_hard): Change objfile parameter to
14865         dwarf2_per_objfile.
14866         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
14867         (read_abbrev_offset): Likewise.
14868         (read_indirect_string): Likewise.
14869         (read_indirect_line_string): Likewise.
14870         (read_indirect_string_at_offset): Likewise.
14871         (read_indirect_string_from_dwz): Likewise.
14872         (dwarf2_find_containing_comp_unit): Change objfile parameter to
14873         dwarf2_per_objfile.
14874         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
14875         (create_all_comp_units): Change objfile parameter to
14876         dwarf2_per_objfile.
14877         (create_all_type_units): Likewise.
14878         (process_queue): Add dwarf2_per_objfile parameter.
14879         (read_and_check_comp_unit_head): Likewise.
14880         (lookup_dwo_unit_in_dwp): Likewise.
14881         (get_dwp_file): Likewise.
14882         (process_cu_includes): Likewise.
14883         (struct free_dwo_file_cleanup_data): New struct.
14884         (dwarf2_has_info): Use get_dwarf2_per_objfile and
14885         set_dwarf2_per_objfile.
14886         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
14887         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
14888         context, adjust calls.
14889         (dw2_instantiate_symtab): Likewise.
14890         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
14891         (dw2_get_cu): Likewise.
14892         (create_cu_from_index_list): Change objfile parameter to
14893         dwarf2_per_objfile.
14894         (create_cus_from_index_list): Get dwarf2_per_objfile from
14895         context, adjust calls.
14896         (create_cus_from_index): Likewise.
14897         (create_signatured_type_table_from_index): Change objfile
14898         parameter to dwarf2_per_objfile.
14899         (create_signatured_type_table_from_debug_names): Change objfile
14900         parameter to dwarf2_per_objfile.
14901         (create_addrmap_from_index): Likewise.
14902         (create_addrmap_from_aranges): Likewise.
14903         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
14904         (dw2_setup): Remove.
14905         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
14906         context.
14907         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
14908         get_dwarf2_per_objfile.
14909         (dw2_forget_cached_source_info): Likewise.
14910         (dw2_map_symtabs_matching_filename): Likewise.
14911         (struct dw2_symtab_iterator) <index>: Remove.
14912         <dwarf2_per_objfile>: New field.
14913         (dw2_symtab_iter_init): Replace index parameter with
14914         dwarf2_per_objfile.
14915         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
14916         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
14917         (dw2_print_stats): Likewise.
14918         (dw2_dump): Likewise.
14919         (dw2_expand_symtabs_for_function): Likewise.
14920         (dw2_expand_all_symtabs): Likewise.
14921         (dw2_expand_symtabs_with_fullname): Likewise.
14922         (dw2_expand_marked_cus): Replace index and objfile parameters
14923         with dwarf2_per_objfile.
14924         (dw_expand_symtabs_matching_file_matcher): Add
14925         dwarf2_per_objfile parameter and adjust calls.
14926         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
14927         adjust calls.
14928         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
14929         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
14930         adjust calls.
14931         (create_cus_from_debug_names_list): Replace objfile parameter
14932         with dwarf2_per_objfile and adjust calls.
14933         (create_cus_from_debug_names): Likewise.
14934         (dwarf2_read_debug_names): Likewise.
14935         (mapped_debug_names::namei_to_name): Adjust call.
14936         (dw2_debug_names_iterator::next): Likewise.
14937         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
14938         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
14939         (dw2_debug_names_dump): Likewise.
14940         (dw2_debug_names_expand_symtabs_for_function): Likewise.
14941         (dw2_debug_names_expand_symtabs_matching): Likewise.
14942         (dwarf2_initialize_objfile): Likewise.
14943         (dwarf2_build_psymtabs): Likewise.
14944         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
14945         this_cu.
14946         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
14947         (read_and_check_comp_unit_head): Likewise.
14948         (read_abbrev_offset): Likewise.
14949         (create_debug_type_hash_table): Likewise.
14950         (create_debug_types_hash_table): Likewise.
14951         (create_all_type_units): Replace objfile parameter with
14952         dwarf2_per_objfile.
14953         (add_type_unit): Add dwarf2_per_objfile parameter.
14954         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
14955         with dwarf2_per_objfile.
14956         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
14957         (lookup_dwp_signatured_type): Likewise.
14958         (lookup_signatured_type): Likewise.
14959         (read_cutu_die_from_dwo): Likewise.
14960         (init_tu_and_read_dwo_dies): Likewise.
14961         (init_cutu_and_read_dies): Likewise.
14962         (init_cutu_and_read_dies_no_follow): Likewise.
14963         (allocate_type_unit_groups_table): Add objfile parameter.
14964         (create_type_unit_group): Use dwarf2_per_objfile from cu.
14965         (get_type_unit_group): Likewise.
14966         (process_psymtab_comp_unit): Update call.
14967         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
14968         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
14969         (print_tu_stats): Likewise.
14970         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
14971         in void* parameter.
14972         (build_type_psymtabs): Change objfile parameter to
14973         dwarf2_per_objfile.
14974         (process_skeletonless_type_unit): Use dwarf2_per_objfile
14975         passed in void* parameter.
14976         (process_skeletonless_type_units): Change objfile parameter to
14977         dwarf2_per_objfile.
14978         (set_partial_user): Likewise.
14979         (dwarf2_build_psymtabs_hard): Likewise.
14980         (read_comp_units_from_section): Likewise.
14981         (create_all_comp_units): Likewise.
14982         (scan_partial_symbols): Update calls.
14983         (add_partial_symbol): Likewise.
14984         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
14985         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
14986         (process_queue): Add dwarf2_per_objfile parameter.
14987         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
14988         (compute_compunit_symtab_includes): Likewise.
14989         (process_cu_includes): Add dwarf2_per_objfile parameter.
14990         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
14991         (process_full_type_unit): Likewise.
14992         (process_imported_unit_die): Update call.
14993         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
14994         (read_file_scope): Likewise.
14995         (allocate_dwo_file_hash_table): Add objfile parameter.
14996         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
14997         (create_cus_hash_table): Likewise.
14998         (create_dwp_hash_table): Likewise.
14999         (create_dwo_unit_in_dwp_v1): Likewise.
15000         (create_dwp_v2_section): Likewise.
15001         (create_dwo_unit_in_dwp_v2): Likewise.
15002         (lookup_dwo_unit_in_dwp): Likewise.
15003         (try_open_dwop_file): Likewise.
15004         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
15005         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
15006         cleanup to include a reference to dwarf2_per_objfile.
15007         (open_dwp_file): Add dwarf2_per_objfile parameter.
15008         (open_and_init_dwp_file): Likewise.
15009         (get_dwp_file): Likewise.
15010         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
15011         (queue_and_load_all_dwo_tus): Update call.
15012         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
15013         data.
15014         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
15015         (dwarf2_ranges_process): Likewise.
15016         (dwarf2_get_pc_bounds): Likewise.
15017         (mark_common_block_symbol_computed): Likewise.
15018         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
15019         (dwarf2_read_abbrevs): Update call.
15020         (read_partial_die): Use dwarf2_per_objfile from cu.
15021         (find_partial_die): Likewise.
15022         (fixup_partial_die): Likewise.
15023         (read_attribute_value): Likewise.
15024         (read_indirect_string_at_offset_from): Add objfile parameter.
15025         (read_indirect_string_at_offset): Add dwarf2_per_objfile
15026         parameter.
15027         (read_indirect_string_from_dwz): Add objfile parameter.
15028         (read_indirect_string): Add objfile parameter.
15029         (read_addr_index_1): Add dwarf2_per_objfile parameter.
15030         (read_addr_index): Use dwarf2_per_objfile from cu.
15031         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
15032         call dw2_setup.
15033         (read_str_index): Use dwarf2_per_objfile from cu.
15034         (get_debug_line_section): Likewise.
15035         (read_formatted_entries): Add dwarf2_per_objfile parameter.
15036         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
15037         (new_symbol_full): Use dwarf2_per_objfile from cu.
15038         (build_error_marker_type): Likewise.
15039         (lookup_die_type): Likewise.
15040         (determine_prefix): Likewise.
15041         (follow_die_offset): Likewise.
15042         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
15043         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
15044         (dwarf2_fetch_die_type_sect_off): Likewise.
15045         (dwarf2_get_die_type): Likewise.
15046         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
15047         (get_signatured_type): Likewise.
15048         (get_DW_AT_signature_type): Likewise.
15049         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
15050         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
15051         (cu_debug_loc_section): Likewise.
15052         (fill_in_loclist_baton): Likewise.
15053         (dwarf2_symbol_mark_computed): Likewise.
15054         (dwarf2_find_containing_comp_unit): Change objfile parameter to
15055         dwarf2_per_objfile.
15056         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
15057         parameter.
15058         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
15059         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
15060         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
15061         (set_die_type): Use dwarf2_free_objfile from cu.
15062         (get_die_type_at_offset): Likewise.
15063         (dwarf2_per_objfile_free): Don't assign global variable.
15064         (debug_names) <constructor>: Add dwarf2_per_objfile
15065         parameter, update m_debugstrlookup construction.
15066         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
15067         parameter.
15068         <m_dwarf2_per_objfile>: New field.
15069         <lookup>: Use m_dwarf2_per_objfile.
15070         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
15071         (psyms_seen_size): Likewise.
15072         (write_gdbindex): Replace objfile parameter with
15073         dwarf2_per_objfile.
15074         (write_debug_names): Likewise.
15075         (write_psymtabs_to_index): Likewise.
15076         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
15077         calls.
15078
15079 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15080
15081         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
15082         <dwarf2_per_objfile>: New field.
15083         (struct dwarf2_per_cu_data) <objfile>: Remove.
15084         <dwarf2_per_objfile>: New field.
15085         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
15086         of objfile.
15087         (create_signatured_type_table_from_index): Likewise.
15088         (create_debug_type_hash_table): Likewise.
15089         (fill_in_sig_entry_from_dwo_entry): Likewise.
15090         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
15091         (create_type_unit_group): Assign dwarf2_per_objfile instead of
15092         objfile.
15093         (create_partial_symtab): Access objfile through
15094         dwarf2_per_objfile.
15095         (process_psymtab_comp_unit_reader): Likewise.
15096         (read_comp_units_from_section): Likewise.
15097         (scan_partial_symbols): Likewise.
15098         (add_partial_symbol): Likewise.
15099         (add_partial_subprogram): Likewise.
15100         (peek_die_abbrev): Likewise.
15101         (fixup_go_packaging): Likewise.
15102         (process_full_comp_unit): Likewise.
15103         (process_full_type_unit): Likewise.
15104         (process_imported_unit_die): Likewise.
15105         (dwarf2_compute_name): Likewise.
15106         (dwarf2_physname): Likewise.
15107         (read_import_statement): Likewise.
15108         (create_cus_hash_table): Assign dwarf2_physname instead of
15109         objfile.
15110         (read_func_scope): Access objfile through dwarf2_per_objfile.
15111         (read_lexical_block_scope): Likewise.
15112         (read_call_site_scope): Likewise.
15113         (read_variable): Likewise.
15114         (dwarf2_rnglists_process): Likewise.
15115         (dwarf2_ranges_process): Likewise.
15116         (dwarf2_ranges_read): Likewise.
15117         (dwarf2_record_block_ranges): Likewise.
15118         (dwarf2_add_field): Likewise.
15119         (dwarf2_add_member_fn): Likewise.
15120         (read_structure_type): Likewise.
15121         (process_structure_scope): Likewise.
15122         (read_enumeration_type): Likewise.
15123         (read_array_type): Likewise.
15124         (read_common_block): Likewise.
15125         (read_namespace_type): Likewise.
15126         (read_namespace): Likewise.
15127         (read_module_type): Likewise.
15128         (read_tag_pointer_type): Likewise.
15129         (read_tag_ptr_to_member_type): Likewise.
15130         (read_tag_string_type): Likewise.
15131         (read_subroutine_type): Likewise.
15132         (read_typedef): Likewise.
15133         (read_base_type): Likewise.
15134         (attr_to_dynamic_prop): Likewise.
15135         (read_subrange_type): Likewise.
15136         (read_unspecified_type): Likewise.
15137         (load_partial_dies): Likewise.
15138         (read_partial_die): Likewise.
15139         (find_partial_die): Likewise.
15140         (guess_partial_die_structure_name): Likewise.
15141         (fixup_partial_die): Likewise.
15142         (read_attribute_value): Likewise.
15143         (read_addr_index_from_leb128): Likewise.
15144         (dwarf2_read_addr_index): Likewise.
15145         (dwarf2_string_attr): Likewise.
15146         (lnp_state_machine::check_line_address): Likewise.
15147         (dwarf_decode_lines_1): Likewise.
15148         (dwarf_decode_lines): Likewise.
15149         (dwarf2_start_symtab): Likewise.
15150         (var_decode_location): Likewise.
15151         (new_symbol_full): Likewise.
15152         (dwarf2_const_value_data): Likewise.
15153         (dwarf2_const_value_attr): Likewise.
15154         (dwarf2_const_value): Likewise.
15155         (die_type): Likewise.
15156         (die_containing_type): Likewise.
15157         (lookup_die_type): Likewise.
15158         (guess_full_die_structure_name): Likewise.
15159         (anonymous_struct_prefix): Likewise.
15160         (dwarf2_name): Likewise.
15161         (follow_die_ref_or_sig): Likewise.
15162         (follow_die_offset): Likewise.
15163         (follow_die_ref): Likewise.
15164         (dwarf2_fetch_die_loc_sect_off): Likewise.
15165         (dwarf2_fetch_constant_bytes): Likewise.
15166         (dwarf2_fetch_die_type_sect_off): Likewise.
15167         (dwarf2_get_die_type): Likewise.
15168         (follow_die_sig): Likewise.
15169         (decode_locdesc): Likewise.
15170         (dwarf2_per_cu_objfile): Likewise.
15171         (dwarf2_per_cu_text_offset): Likewise.
15172         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
15173         objfile.
15174         (set_die_type): Access objfile through
15175         dwarf2_per_objfile.
15176
15177 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15178
15179         * valprint.c (converted_character_d): Remove typedef.
15180         (DEF_VEC_O (converted_character_d)): Remove.
15181         (count_next_character): Use std::vector.
15182         (print_converted_chars_to_obstack): Likewise.
15183         (generic_printstr): Likewise.
15184
15185 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15186
15187         * xml-support.h (struct gdb_xml_value): Add constructor.
15188         <value>: Change type to unique_xmalloc_ptr.
15189         (gdb_xml_value_s): Remove typedef.
15190         (DEF_VEC_O (gdb_xml_value_s)): Remove.
15191         (gdb_xml_element_start_handler): Change parameter type to
15192         std::vector.
15193         (xml_find_attribute): Likewise.
15194         * xml-support.c (xml_find_attribute): Change parameter type to
15195         std::vector and adjust.
15196         (gdb_xml_values_cleanup): Remove.
15197         (gdb_xml_parser::start_element): Adjust to std::vector.
15198         (xinclude_start_include): Change paraeter type to std::vector
15199         and adjust.
15200         * btrace.c (check_xml_btrace_version): Likewise.
15201         (parse_xml_btrace_block): Likewise.
15202         (parse_xml_btrace_pt_config_cpu): Likewise.
15203         (parse_xml_btrace_pt): Likewise.
15204         (parse_xml_btrace_conf_bts): Likewise.
15205         (parse_xml_btrace_conf_pt): Likewise.
15206         * memory-map.c (memory_map_start_memory): Likewise.
15207         (memory_map_start_property): Likewise.
15208         * osdata.c (osdata_start_osdata): Likewise.
15209         (osdata_start_item): Likewise.
15210         (osdata_start_column): Likewise.
15211         * remote.c (start_thread): Likewise.
15212         * solib-aix.c (library_list_start_library): Likewise.
15213         (library_list_start_list): Likewise.
15214         * solib-svr4.c (library_list_start_library): Likewise.
15215         (svr4_library_list_start_list): Likewise.
15216         * solib-target.c (library_list_start_segment): Likewise.
15217         (library_list_start_section): Likewise.
15218         (library_list_start_library): Likewise.
15219         (library_list_start_list): Likewise.
15220         * tracepoint.c (traceframe_info_start_memory): Likewise.
15221         (traceframe_info_start_tvar): Likewise.
15222         * xml-syscall.c (syscall_start_syscall): Likewise.
15223         * xml-tdesc.c (tdesc_start_target): Likewise.
15224         (tdesc_start_feature): Likewise.
15225         (tdesc_start_reg): Likewise.
15226         (tdesc_start_union): Likewise.
15227         (tdesc_start_struct): Likewise.
15228         (tdesc_start_flags): Likewise.
15229         (tdesc_start_enum): Likewise.
15230         (tdesc_start_field): Likewise.
15231         (tdesc_start_enum_value): Likewise.
15232         (tdesc_start_vector): Likewise.
15233
15234 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15235
15236         * extension.h (struct xmethod_worker) <clone>: Remove.
15237         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
15238         Remove.
15239         (python_xmethod_worker::clone): Remove.
15240         * valops.c (find_overload_match): Use std::move instead of
15241         clone.
15242
15243 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15244
15245         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
15246         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
15247         <free_xmethod_worker_data>: Remove.
15248         <get_matching_xmethod_workers>: Chance VEC to std::vector.
15249         <get_xmethod_arg_types>: Remove.
15250         <get_xmethod_result_type>: Remove.
15251         <invoke_xmethod>: Remove.
15252         * extension.c (new_xmethod_worker): Remove.
15253         (clone_xmethod_worker): Remove.
15254         (get_matching_xmethod_workers): Return void, pass std::vector by
15255         pointer.
15256         (get_xmethod_arg_types): Rename to...
15257         (xmethod_worker::get_arg_types): ... this, and adjust.
15258         (get_xmethod_result_type): Rename to...
15259         (xmethod_worker::get_result_type): ... this, and adjust.
15260         (invoke_xmethod): Remove.
15261         (free_xmethod_worker): Remove.
15262         (free_xmethod_worker_vec): Remove.
15263         * extension.h (enum ext_lang_rc): Move here from
15264         extension-priv.h.
15265         (struct xmethod_worker): Add constructor and destructor.
15266         <data>: Remove.
15267         <value>: Remove.
15268         <invoke, clone, do_get_result_type, do_get_arg_types>: New
15269         virtual pure methods.
15270         <get_arg_types, get_result_type>: New methods.
15271         (xmethod_worker_ptr): Remove typedef.
15272         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
15273         (xmethod_worker_vec): Remove typedef.
15274         (xmethod_worker_up): New typedef.
15275         (invoke_xmethod): Remove.
15276         (clone_xmethod_worker): Remove.
15277         (free_xmethod_worker): Remove.
15278         (free_xmethod_worker_vec): Remove.
15279         (get_xmethod_arg_types): Remove.
15280         (get_xmethod_result_type): Remove.
15281         * valops.c (find_method_list): Use std::vector, don't use
15282         intermediate vector.
15283         (value_find_oload_method_list): Use std::vector.
15284         (find_overload_match): Use std::vector.
15285         (find_oload_champ): Use std::vector.
15286         * value.c (value_free): Use operator delete.
15287         (value_of_xmethod): Rename to...
15288         (value_from_xmethod): ... this.  Don't assign
15289         xmethod_worker::value, take rvalue-reference.
15290         (result_type_of_xmethod): Adjust.
15291         (call_xmethod): Adjust.
15292         * value.h: Include extension.h.
15293         (struct xmethod_worker): Don't forward-declare.
15294         (value_of_xmethod): Rename to...
15295         (value_from_xmethod): ... this, take rvalue-reference.
15296         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
15297         (struct python_xmethod_worker): ... this, add constructor and
15298         destructor.
15299         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
15300         (gdbpy_free_xmethod_worker_data): Rename to...
15301         (python_xmethod_worker::~python_xmethod_worker): ... this and
15302         adjust.
15303         (gdbpy_clone_xmethod_worker_data): Rename to...
15304         (python_xmethod_worker::clone): ... this and adjust.
15305         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
15306         temporary vector.
15307         (gdbpy_get_xmethod_arg_types): Rename to...
15308         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
15309         (gdbpy_get_xmethod_result_type): Rename to...
15310         (python_xmethod_worker::do_get_result_type): ... this and
15311         adjust.
15312         (gdbpy_invoke_xmethod): Rename to...
15313         (python_xmethod_worker::invoke): ... this and adjust.
15314         (new_python_xmethod_worker): Rename to...
15315         (python_xmethod_worker::python_xmethod_worker): ... this and
15316         adjust.
15317         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
15318         Remove.
15319         (gdbpy_free_xmethod_worker_data): Remove.
15320         (gdbpy_get_matching_xmethod_workers): Use std::vector.
15321         (gdbpy_get_xmethod_arg_types): Remove.
15322         (gdbpy_get_xmethod_result_type): Remove.
15323         (gdbpy_invoke_xmethod): Remove.
15324         * python/python.c (python_extension_ops): Remove obsolete
15325         callbacks.
15326
15327 2018-01-05  Pedro Alves  <palves@redhat.com>
15328
15329         PR gdb/18653
15330         * common/signals-state-save-restore.c
15331         (save_original_signals_state): New parameter 'quiet'.  Warn if we
15332         find a custom handler preinstalled, instead of internal erroring.
15333         But only warn if !quiet.
15334         * common/signals-state-save-restore.h
15335         (save_original_signals_state): New parameter 'quiet'.
15336         * main.c (captured_main_1): Move save_original_signals_state call
15337         after option handling, and pass QUIET.
15338
15339 2018-01-05  Pedro Alves  <palves@redhat.com>
15340
15341         * spu-tdep.c (spu_catch_start): Pass
15342         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
15343
15344 2018-01-05  Pedro Alves  <palves@redhat.com>
15345
15346         PR gdb/22670
15347         * ada-lang.c (literal_symbol_name_matcher): New function.
15348         (ada_get_symbol_name_matcher): Use it for
15349         symbol_name_match_type::SEARCH_NAME.
15350         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
15351         it down instead of assuming symbol_name_match_type::FULL.
15352         * block.h (block_lookup_symbol): New parameter 'match_type'.
15353         * c-valprint.c (print_unpacked_pointer): Use
15354         lookup_symbol_search_name instead of lookup_symbol.
15355         * compile/compile-object-load.c (get_out_value_type): Pass down
15356         symbol_name_match_type::SEARCH_NAME.
15357         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
15358         symbol_name_match_type::FULL.
15359         * cp-support.c (cp_get_symbol_name_matcher): Handle
15360         symbol_name_match_type::SEARCH_NAME.
15361         * infrun.c (insert_exception_resume_breakpoint): Use
15362         lookup_symbol_search_name.
15363         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
15364         * psymtab.c (maintenance_check_psymtabs): Use
15365         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
15366         * stack.c (print_frame_args): Use lookup_symbol_search_name and
15367         SYMBOL_SEARCH_NAME.
15368         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
15369         if symbol_name_match_type::SEARCH_NAME.
15370         (lookup_symbol_in_language): Pass down
15371         symbol_name_match_type::FULL.
15372         (lookup_symbol_search_name): New.
15373         (lookup_language_this): Pass down
15374         symbol_name_match_type::SEARCH_NAME.
15375         (lookup_symbol_aux, lookup_local_symbol): New parameter
15376         'match_type'.  Pass it down.
15377         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
15378         (lookup_symbol_search_name): New declaration.
15379         (lookup_symbol_in_block): New 'match_type' parameter.
15380
15381 2018-01-05  Pedro Alves  <palves@redhat.com>
15382
15383         PR gdb/22670
15384         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
15385         ada_lookup_symbol.
15386         (ada_lookup_symbol): Reimplement in terms of
15387         ada_lookup_symbol_list, bits factored out from
15388         ada_lookup_encoded_symbol.
15389
15390 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15391
15392         * ada-exp.y (write_object_renaming): When subscripting an array
15393         using a symbol as the index, pass the block in call to
15394         ada_lookup_encoded_symbol when looking that symbol up.
15395
15396 2018-01-05  Jerome Guitton  <guitton@adacore.com>
15397
15398         * ada-lang.c (ada_array_length): Use ada_index_type instead of
15399         TYPE_INDEX_TYPE.
15400
15401 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15402
15403         * ada-lang.c (ada_to_fixed_value_create): Add handling of
15404         the case where VALUE_LVAL (val0) is not lval_memory.
15405
15406 2018-01-05  Xavier Roirand  <roirand@adacore.com>
15407
15408         * ada-valprint.c (print_optional_low_bound): Handle
15409         character-indexed array printing like boolean-indexed array
15410         printing.
15411
15412 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15413
15414         * NEWS: Create a new section for the next release branch.
15415         Rename the section of the current branch, now that it has
15416         been cut.
15417
15418 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15419
15420         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
15421         * version.in: Bump version to 8.1.50.DATE-git.
15422
15423 2018-01-03  Xavier Roirand  <roirand@adacore.com>
15424
15425         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
15426         Add field.
15427         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
15428         Add field.
15429         (default_exception_support_info) <catch_handlers_sym>: Add field.
15430         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
15431         (ada_exception_name_addr_1): Add "catch handlers" handling.
15432         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
15433         Update all callers.
15434         (create_excep_cond_exprs) <ex>: Add parameter.
15435         (re_set_exception): Update create_excep_cond_exprs call.
15436         (print_it_exception, print_one_exception, print_mention_exception)
15437         (print_recreate_exception): Add "catch handler" handling.
15438         (allocate_location_catch_handlers, re_set_catch_handlers)
15439         (check_status_catch_handlers, print_it_catch_handlers)
15440         (print_one_catch_handlers, print_mention_catch_handlers)
15441         (print_recreate_catch_handlers): New function.
15442         (catch_handlers_breakpoint_ops): New variable.
15443         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
15444         Add parameter.  Add "catch handler" handling.
15445         (ada_exception_sym_name, ada_exception_breakpoint_ops):
15446         Add "catch handler" handling.
15447         (ada_exception_catchpoint_cond_string): Add "catch handler"
15448         handling.
15449         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
15450         call.
15451         (catch_ada_handlers_command): New function.
15452         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
15453         operations structure.
15454         (_initialize_ada_language): Add "catch handlers" command entry.
15455         * NEWS: Document "catch handlers" feature.
15456
15457 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15458
15459         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
15460         account when creating the array type of the slice.
15461         (ada_value_slice): Likewise.
15462
15463 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15464
15465         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
15466         New enum value.
15467         (create_array_type_with_stride): Add byte_stride_prop parameter.
15468         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
15469         New parameter.  Update all callers in this file.
15470         (array_type_has_dynamic_stride): New function.
15471         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
15472         of arrays with dynamic byte strides.
15473         * dwarf2read.c (read_array_type): Add support for dynamic
15474         DW_AT_byte_stride attributes.
15475
15476 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15477
15478         * dwarf2read.c (read_unspecified_type): Treat
15479         DW_TAG_enumeration_type DIEs from Ada units as stubs.
15480
15481 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15482
15483         Update copyright year range in all GDB files.
15484
15485 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
15486
15487         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
15488         and gdb/testsuite/gdb.base/step-line.c.
15489
15490 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15491
15492         * copyright.py (main): Dump the contents of
15493         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
15494         even if BY_HAND is empty.
15495
15496 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15497
15498         * top.c (print_gdb_version): Update Copyright year in version
15499         message.
15500
15501 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15502
15503         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
15504
15505 For older changes see ChangeLog-2017.
15506 \f
15507 Local Variables:
15508 mode: change-log
15509 left-margin: 8
15510 fill-column: 74
15511 version-control: never
15512 coding: utf-8
15513 End: