OBVIOUS Fix a typo in ada-lang.c add_prefix_cmd for "set ada"
[external/binutils.git] / gdb / ChangeLog
1 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2
3         * ada-lang.c (_initialize_ada_language): Fix typo.
4
5 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6
7         * language.c (type): Remove.
8         (_initialize_language): Remove assignment to type.
9
10 2018-11-02  Joel Brobecker  <brobecker@adacore.com>
11
12         * aarch64-ravenscar-thread.h, aarch64-ravenscar-thread.c: New files.
13         * aarch64-tdep.c: #include "aarch64-ravenscar-thread.h".
14         (aarch64_gdbarch_init): Add call to register_aarch64_ravenscar_ops.
15         * Makefile.in (ALL_64_TARGET_OBS): Add aarch64-ravenscar-thread.o.
16         (HFILES_NO_SRCDIR): Add aarch64-ravenscar-thread.h.
17         (ALLDEPFILES): Add aarch64-ravenscar-thread.c.
18         * configure.tgt (cpu_obs) [aarch64*-*-*]: Add ravenscar-thread.o
19         and aarch64-ravenscar-thread.o.
20         * NEWS: Add entry documenting Ravenscar tasking support
21         on AArch64 ELF.
22
23 2018-11-02  Matthew Malcomson  <matthew.malcomson@arm.com>
24
25         * symtab.c (info_functions_command): Initialize quiet flag.
26         * stack.c (info_args_command): Likewise.
27
28 2018-11-01  Jim Wilson  <jimw@sifive.com>
29
30         * riscv-tdep.c (riscv_breakpoint_kind_from_pc): New local unaligned_p.
31         Set if pcptr if unaligned.  Return 2 if unaligned_p true.  Update
32         debugging messages.
33
34 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
35
36         * ada-lang.c (ada_watch_location_expression): New function.
37         (ada_language_defn): Set la_watch_location_expression to
38         ada_watch_location_expression.
39
40 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
41
42         * print-utils.c (int_string): Remove unnecessary trailing spaces.
43
44 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
45
46         * rs6000-tdep.c (skip_prologue): Fix potential negative left
47         shifting.
48
49 2018-11-01  Jerome Guitton  <guitton@adacore.com>
50             Joel Brobecker  <brobecker@adacore.com>
51
52         * defs.h (enum gdb_osabi): Add GDB_OSABI_PIKEOS.
53         * osabi.c (gdb_osabi_names): Add name for GDB_OSABI_PIKEOS.
54         * arm-pikeos-tdep.c: New file.
55         * configure.tgt: Add arm-pikeos-tdep.o to the case of ARM
56         embedded system.
57         * Makefile.in (ALL_TARGET_OBS): Add arm-pikeos-tdep.o.
58
59 2018-11-01  Simon Marchi  <simon.marchi@ericsson.com>
60
61         * common/pathstuff.c (get_standard_temp_dir): New.
62         * common/pathstuff.h (get_standard_temp_dir): New.
63         * config.in: Re-generate.
64         * configure: Re-generate.
65         * configure.ac: Don't check for mkdtemp.
66         * gnulib/aclocal-m4-deps.mk: Re-generate.
67         * gnulib/aclocal.m4: Re-generate.
68         * gnulib/config.in: Re-generate.
69         * gnulib/configure: Re-generate.
70         * gnulib/import/Makefile.am: Re-generate.
71         * gnulib/import/Makefile.in: Re-generate.
72         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
73         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
74         * gnulib/import/m4/mkdtemp.m4: New file.
75         * gnulib/import/mkdtemp.c: New file.
76         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES):
77         Add mkdtemp module.
78         * unittests/mkdir-recursive-selftests.c (test): Use
79         get_standard_temp_dir.
80         (_initialize_mkdir_recursive_selftests): Remove HAVE_MKDTEMP
81         ifdef.
82         * compile/compile.c (get_compile_file_tempdir): Likewise.
83
84 2018-11-01  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
85
86         * rs6000-aix-tdep.c: Include "trad-frame.h" and "frame-unwind.h".
87         (SIG_FRAME_LR_OFFSET64): New define.
88         (SIG_FRAME_FP_OFFSET64): New define.
89         (aix_sighandle_frame_cache): New Function.
90         (aix_sighandle_frame_this_id): New Function.
91         (aix_sighandle_frame_prev_register): New Function.
92         (aix_sighandle_frame_sniffer): New Function.
93         (aix_sighandle_frame_unwind): New global variable.
94         (rs6000_aix_init_osabi): Install new frame unwinder.
95
96 2018-10-31  Sergio Durigan Junior  <sergiodj@redhat.com>
97
98         PR gdb/23835
99         * common/common-defs.h: Don't redefine _FORTIFY_SOURCE if it's
100         already defined.
101
102 2018-10-31  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
103
104         * ppc-linux-nat.c: Include nat/linux-ptrace.h.
105
106 2018-10-31  Andrew Burgess  <andrew.burgess@embecosm.com>
107
108         * dwarf2read.c (struct dwarf2_cu): Add producer_is_icc field.
109         (producer_is_icc): New function.
110         (check_producer): Set producer_is_icc field on dwarf2_cu.
111         (dwarf2_init_integer_type): New function.
112         (read_base_type): Call dwarf2_init_integer_type instead of
113         init_integer_type in all cases.
114         (dwarf2_cu::dwarf2_cu): Initialise producer_is_icc field.
115         * valprint.c (maybe_negate_by_bytes): Add an assertion that the
116         LEN is greater than 0.
117
118 2018-10-30  Tom Tromey  <tom@tromey.com>
119
120         * main.c (captured_main_1): Check return value of bfd_init.
121
122 2018-10-29  Sergio Durigan Junior  <sergiodj@redhat.com>
123
124         * common/offset-type.h (DEFINE_OFFSET_REL_OP): Delete.
125         Adjust comments.
126
127 2018-10-29  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
128
129         * procfs.c: Include common/pathstuff.h.
130
131 2018-10-28  Andrew Burgess  <andrew.burgess@embecosm.com>
132
133         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
134         Add missing braces.  No functional change.
135
136 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
137
138         * macrocmd.c (info_macro_command): Use report_unrecognized_option_error
139         to report a bad option and fix indentation.
140         * demangle.c (demangle_command): Use report_unrecognized_option_error
141         to report a bad option and correctly report the bad option.
142
143 2018-10-27  Tom Tromey  <tom@tromey.com>
144
145         PR cli/23364:
146         * darwin-nat.c (copied_shell): New global.
147         (may_have_sip): Rename from should_disable_startup_with_shell.
148         (copy_shell_to_cache, maybe_cache_shell): New functions.
149         (darwin_nat_target::create_inferior): Update.  Use
150         copied_shell.
151
152 2018-10-27  Tom Tromey  <tom@tromey.com>
153
154         * unittests/scoped_fd-selftests.c (test_to_file): New function.
155         (run_tests): Call test_to_file.
156         * dwarf-index-write.c (write_psymtabs_to_index): Do not reopen
157         temporary files.
158         * common/scoped_fd.h (scoped_fd::to_file): New method.
159
160 2018-10-27  Tom Tromey  <tom@tromey.com>
161
162         * unittests/scoped_mmap-selftests.c (test_normal): Use
163         gdb_mkostemp_cloexec.
164         * unittests/scoped_fd-selftests.c (test_destroy, test_release):
165         Use gdb_mkostemp_cloexec.
166         * gnulib/aclocal-m4-deps.mk, gnulib/aclocal.m4,
167         gnulib/config.in, gnulib/configure,
168         gnulib/import/Makefile.am, gnulib/import/Makefile.in,
169         gnulib/import/m4/gnulib-cache.m4,
170         gnulib/import/m4/gnulib-comp.m4: Update.
171         * gnulib/import/m4/mkostemp.m4: New file.
172         * gnulib/import/m4/mkstemp.m4: Remove.
173         * gnulib/import/mkostemp.c: New file.
174         * gnulib/import/mkstemp.m4: Remove.
175         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Remove
176         mkstemp, add mkostemp.  Apply new patch.
177         * gnulib/import/stdlib.in.h: Apply patch.
178         * gnulib/patches/0002-mkostemp-mkostemps-Fix-compilation-error-in-C-mode-o.patch:
179         New file.
180         * dwarf-index-write.c (write_psymtabs_to_index): Use
181         gdb_mkostemp_cloexec.
182         * common/filestuff.h (gdb_mkostemp_cloexec): New function.
183
184 2018-10-27  Tom Tromey  <tom@tromey.com>
185
186         * unittests/mkdir-recursive-selftests.c: New file.
187         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
188         unittests/mkdir-recursive-selftests.c.
189         * dwarf-index-cache.c (mkdir_recursive): Move to
190         common/filestuff.c.
191         (index_cache::store): Check return value of mkdir_recursive.
192         (create_dir_and_check, test_mkdir_recursive): Move to new file.
193         (_initialize_index_cache): Don't register test.
194         * common/filestuff.h (mkdir_recursive): Declare.
195         * common/filestuff.c (mkdir_recursive): Move from
196         dwarf-index-cache.c.  Return bool.
197
198 2018-10-27  Tom Tromey  <tom@tromey.com>
199
200         * dwarf-index-write.c (write_psymtabs_to_index): Move
201         make_temp_filename to common/pathstuff.c.
202         * common/pathstuff.h (make_temp_filename): Declare.
203         * common/pathstuff.c (make_temp_filename): New function, moved
204         from dwarf-index-write.c.
205
206 2018-10-27  Tom Tromey  <tom@tromey.com>
207
208         * procfs.c (procfs_target::create_inferior): Use get_shell.
209         * cli/cli-cmds.c (shell_escape): Use get_shell.
210         * windows-nat.c (windows_nat_target::create_inferior): Use
211         get_shell.
212         * common/pathstuff.c (get_shell): New function.
213         * nat/fork-inferior.c (SHELL_FILE, get_startup_shell): Remove.
214         (fork_inferior): Use get_shell.
215         * common/pathstuff.h (get_shell): Declare.
216
217 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
218
219         * NEWS: Mention changes to 'info [args|functions|locals|variables]'
220
221 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
222
223         * stack.c (print_variable_and_value_data): Add preg and treg.
224         (print_frame_local_vars): Add quiet, regexp and t_regexp arguments,
225         and update callers.
226         (print_frame_arg_vars): Likewise.
227         (prepare_reg): New function.
228         (info_locals_command): Extract info print args and use them.
229         (info_args_command): Likewise.
230         (_initialize_stack): Modify on-line help.
231         * symtab.c (treg_matches_sym_type_name): New function.
232         (search_symbols): New arg t_regexp.
233         (symtab_symbol_info): New args quiet, regexp, t_regexp.
234         (info_variables_command): Extract info print args and use them.
235         (info_functions_command): Likewise.
236         (info_types_command): Update call to symtab_symbol_info.
237         (_initialize_symtab): Modify on-line help.
238         * symtab.h (treg_matches_sym_type_name): New function.
239         (search_symbols): New t_regexp arg.
240
241 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
242
243         * cli-utils.c (extract_arg_maybe_quoted): New function.
244         (extract_info_print_args): New function.
245         (info_print_args_help): New function.
246         (report_unrecognized_option_error): New function.
247         * cli-utils.h (extract_arg_maybe_quoted): New function.
248         (extract_info_print_args): New function.
249         (info_print_args_help): New function.
250         (report_unrecognized_option_error): New function.
251
252 2018-10-26  Tom Tromey  <tom@tromey.com>
253
254         * dwarf2read.c (recursively_compute_inclusions): Use std::vector.
255         (compute_compunit_symtab_includes): Update.
256         * symtab.h: (symtab_ptr): Remove typedef.  Don't define a VEC.
257         (compunit_symtab_ptr): Likewise.
258
259 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
260
261         * fbsd-tdep.c (fbsd_print_auxv_entry): Only use
262         default_print_auxv_entry for specific tag values.
263
264 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
265
266         * fbsd-tdep.c (fbsd_print_auxv_entry): Handle AT_FREEBSD_HWCAP2.
267
268 2018-10-26  Jim Wilson  <jimw@sifive.com>
269
270         * riscv-linux-tdep.c: Include tramp-frame.h and trad-frame.h.
271         (riscv_linux_sigframe_init): Declare.
272         (RISCV_INST_LI_A7_SIGRETURN, RISCV_INT_ECALL): New.
273         (riscv_linux_sigframe): New.
274         (SIGFRAME_SIGINFO_SIZE, UCONTEXT_MCONTEXT_OFFSET): New.
275         (riscv_linux_sigframe_init): Define.
276         (riscv_linux_init_abi): Call tramp_frame_prepend_unwinder.
277
278         * riscv-tdep.c (riscv_isa_xlen): Refer to riscv-tdep.h comment.
279         (riscv_isa_flen): Likewise.  Drop static.
280         * riscv-tdep.h (riscv_isa_xlen): Move riscv-tdep.c comment to here.
281         (riscv_isa_flen): Likewise.  Declare.
282
283 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
284             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
285
286         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_htm_vsx32l)
287         (tdesc_powerpc_isa207_htm_vsx64l): Declare.
288         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TM_SPRREGSET)
289         (PPC32_LINUX_SIZEOF_CGPRREGSET, PPC64_LINUX_SIZEOF_CGPRREGSET)
290         (PPC_LINUX_SIZEOF_CFPRREGSET, PPC_LINUX_SIZEOF_CVMXREGSET)
291         (PPC_LINUX_SIZEOF_CVSXREGSET, PPC_LINUX_SIZEOF_CPPRREGSET)
292         (PPC_LINUX_SIZEOF_CDSCRREGSET, PPC_LINUX_SIZEOF_CTARREGSET):
293         Define.
294         (struct ppc_linux_features) <htm>: New field.
295         (ppc_linux_no_features): Add initializer for htm field.
296         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
297         new tdescs.
298         * nat/ppc-linux.h (PPC_FEATURE2_HTM, NT_PPC_TM_CGPR)
299         (NT_PPC_TM_CFPR, NT_PPC_TM_CVMX, NT_PPC_TM_CVSX)
300         (NT_PPC_TM_SPR, NT_PPC_TM_CTAR, NT_PPC_TM_CPPR, NT_PPC_TM_CDSCR):
301         Define if not already defined.
302         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-htm-vsx32l
303         and rs6000/powerpc-isa207-htm-vsx64l.
304         (XMLTOC): Add rs6000/powerpc-isa207-htm-vsx32l.xml and
305         rs6000/powerpc-isa207-htm-vsx64l.xml.
306         * features/rs6000/power-htm-spr.xml: New file.
307         * features/rs6000/power-htm-core.xml: New file.
308         * features/rs6000/power64-htm-core.xml: New file.
309         * features/rs6000/power-htm-fpu.xml: New file.
310         * features/rs6000/power-htm-altivec.xml: New file.
311         * features/rs6000/power-htm-vsx.xml: New file.
312         * features/rs6000/power-htm-ppr.xml: New file.
313         * features/rs6000/power-htm-dscr.xml: New file.
314         * features/rs6000/power-htm-tar.xml: New file.
315         * features/rs6000/powerpc-isa207-htm-vsx32l.xml: New file.
316         * features/rs6000/powerpc-isa207-htm-vsx64l.xml: New file.
317         * features/rs6000/powerpc-isa207-htm-vsx32l.c: Generate.
318         * features/rs6000/powerpc-isa207-htm-vsx64l.c: Generate.
319         * regformats/rs6000/powerpc-isa207-htm-vsx32l.dat: Generate.
320         * regformats/rs6000/powerpc-isa207-htm-vsx64l.dat: Generate.
321         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
322         fetch_regset with HTM regsets.
323         (store_register, store_ppc_registers): Call store_regset with HTM
324         regsets.
325         (ppc_linux_nat_target::read_description): Set htm field in the
326         features struct if needed.
327         * ppc-linux-tdep.c: Include
328         features/rs6000/powerpc-isa207-htm-vsx32l.c and
329         features/rs6000/powerpc-isa207-htm-vsx64l.c.
330         (ppc32_regmap_tm_spr, ppc32_regmap_cgpr, ppc64_le_regmap_cgpr)
331         (ppc64_be_regmap_cgpr, ppc32_regmap_cfpr, ppc32_le_regmap_cvmx)
332         (ppc32_be_regmap_cvmx, ppc32_regmap_cvsx, ppc32_regmap_cppr)
333         (ppc32_regmap_cdscr, ppc32_regmap_ctar): New globals.
334         (ppc32_linux_tm_sprregset, ppc32_linux_cgprregset)
335         (ppc64_be_linux_cgprregset, ppc64_le_linux_cgprregset)
336         (ppc32_linux_cfprregset, ppc32_le_linux_cvmxregset)
337         (ppc32_be_linux_cvmxregset, ppc32_linux_cvsxregset)
338         (ppc32_linux_cpprregset, ppc32_linux_cdscrregset)
339         (ppc32_linux_ctarregset): New globals.
340         (ppc_linux_cgprregset, ppc_linux_cvmxregset): New functions.
341         (ppc_linux_collect_core_cpgrregset): New function.
342         (ppc_linux_iterate_over_regset_sections): Call back with the htm
343         regsets.
344         (ppc_linux_core_read_description): Check if the tm spr section is
345         present and set htm in the features struct.
346         (_initialize_ppc_linux_tdep): Call
347         initialize_tdesc_powerpc_isa207_htm_vsx32l and
348         initialize_tdesc_powerpc_isa207_htm_vsx64l.
349         * ppc-linux-tdep.h (ppc_linux_cgprregset, ppc_linux_cvmxregset):
350         Declare.
351         (ppc32_linux_tm_sprregset, ppc32_linux_cfprregset)
352         (ppc32_linux_cvsxregset, ppc32_linux_cpprregset)
353         (ppc32_linux_cdscrregset, ppc32_linux_ctarregset): Declare.
354         * ppc-tdep.h (struct gdbarch_tdep) <have_htm_spr, have_htm_core>:
355         New fields.
356         <have_htm_fpu, have_htm_altivec, have_htm_vsx>:
357         Likewise.
358         <ppc_cppr_regnum, ppc_cdscr_regnum, ppc_ctar_regnum>: Likewise.
359         <ppc_cdl0_regnum, ppc_cvsr0_regnum, ppc_cefpr0_regnum>: Likewise.
360         (enum) <PPC_TFHAR_REGNUM, PPC_TEXASR_REGNUM, PPC_TFIAR_REGNUM>:
361         New enum fields.
362         <PPC_CR0_REGNUM, PPC_CCR_REGNUM, PPC_CXER_REGNUM>: Likewise.
363         <PPC_CLR_REGNUM, PPC_CCTR_REGNUM, PPC_CF0_REGNUM>: Likewise.
364         <PPC_CFPSCR_REGNUM, PPC_CVR0_REGNUM, PPC_CVSCR_REGNUM>: Likewise.
365         <PPC_CVRSAVE_REGNUM, PPC_CVSR0_UPPER_REGNUM>: Likewise.
366         <PPC_CPPR_REGNUM, PPC_CDSCR_REGNUM>: Likewise.
367         <PPC_CTAR_REGNUM>: Likewise.
368         (PPC_IS_TMSPR_REGNUM, PPC_IS_CKPTGP_REGNUM, PPC_IS_CKPTFP_REGNUM)
369         (PPC_IS_CKPTVMX_REGNUM, PPC_IS_CKPTVSX_REGNUM): Define.
370         * rs6000-tdep.c (IS_CDFP_PSEUDOREG, IS_CVSX_PSEUDOREG)
371         (IS_CEFP_PSEUDOREG): Define.
372         (rs6000_register_name): Hide the upper halves of checkpointed VSX
373         registers.  Return names for the checkpointed DFP, VSX, and EFP
374         pseudo registers.
375         (rs6000_pseudo_register_type): Remove initial assert and raise an
376         internal error in the else clause instead.  Return types for the
377         checkpointed DFP, VSX, and EFP pseudo registers.
378         (dfp_pseudo_register_read, dfp_pseudo_register_write): Handle
379         checkpointed DFP pseudo registers.
380         (vsx_pseudo_register_read, vsx_pseudo_register_write): Handle
381         checkpointed VSX pseudo registers.
382         (efp_pseudo_register_read, efp_pseudo_register_write): Rename
383         from efpr_pseudo_register_read and
384         efpr_pseudo_register_write.  Handle checkpointed EFP pseudo
385         registers.
386         (rs6000_pseudo_register_read, rs6000_pseudo_register_write):
387         Handle checkpointed DFP, VSX, and EFP registers.
388         (dfp_ax_pseudo_register_collect, vsx_ax_pseudo_register_collect)
389         (efp_ax_pseudo_register_collect): New functions.
390         (rs6000_ax_pseudo_register_collect): Move DFP, VSX and EFP pseudo
391         register logic to new functions.  Handle checkpointed DFP, VSX,
392         and EFP pseudo registers.
393         (rs6000_gdbarch_init): Look for and validate the htm features.
394         Include checkpointed DFP, VSX and EFP pseudo-registers.
395         * NEWS: Mention access to PPR, DSCR, TAR, EBB/PMU registers and
396         HTM registers.
397
398 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
399
400         * rs6000-tdep.c (rs6000_gdbarch_init): Reject tdescs with vsx but
401         without altivec or fpu.
402
403 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
404             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
405
406         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_EBBREGSET)
407         (PPC_LINUX_SIZEOF_PMUREGSET): Declare.
408         * nat/ppc-linux.h (PPC_FEATURE2_EBB, NT_PPC_EBB, NT_PPC_PMU):
409         Define if not already defined.
410         * features/rs6000/power-ebb.xml: New file.
411         * features/rs6000/power-linux-pmu.xml: New file.
412         * features/rs6000/powerpc-isa207-vsx32l.xml: Include ebb and pmu
413         features.
414         * features/rs6000/powerpc-isa207-vsx64l.xml: Likewise.
415         * features/rs6000/powerpc-isa207-vsx32l.c: Re-generate.
416         * features/rs6000/powerpc-isa207-vsx64l.c: Re-generate.
417         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Re-generate.
418         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Re-generate.
419         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
420         fetch_regset with ebb and pmu regsets.
421         (store_register, store_ppc_registers): Call store_regset with ebb
422         and pmu regsets.
423         (ppc_linux_nat_target::read_description): Set isa207 field in the
424         features struct if ebb and pmu are avaiable.
425         * ppc-linux-tdep.c (ppc32_regmap_ebb, ppc32_regmap_pmu)
426         (ppc32_linux_ebbregset, ppc32_linux_pmuregset): New globals.
427         (ppc_linux_iterate_over_regset_sections): Call back with the ebb
428         and pmu regsets.
429         (ppc_linux_core_read_description): Check if the pmu section is
430         present and set isa207 in the features struct.
431         * ppc-linux-tdep.h (ppc32_linux_ebbregset)
432         (ppc32_linux_pmuregset): Declare.
433         * ppc-tdep.h (struct gdbarch_tdep) <ppc_mmcr0_regnum>: New field.
434         <ppc_mmcr2_regnum, ppc_siar_regnum, ppc_sdar_regnum>: New fields.
435         <ppc_sier_regnum>: New field.
436         (enum): <PPC_BESCR_REGNUM, PPC_EBBHR_REGNUM, PPC_EBBRR_REGNUM>:
437         New enum values.
438         <PPC_MMCR0_REGNUM, PPC_MMCR2_REGNUM, PPC_SIAR_REGNUM>: New enum
439         values.
440         <PPC_SDAR_REGNUM, PPC_SIER_REGNUM>: New enum values.
441         (PPC_IS_EBB_REGNUM, PPC_IS_PMU_REGNUM): Define.
442         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate the
443         ebb and pmu features.
444
445 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
446             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
447
448         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_vsx32l)
449         (tdesc_powerpc_isa207_vsx64l): Declare.
450         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TARREGSET): Define.
451         (struct ppc_linux_features) <isa207>: New field.
452         (ppc_linux_no_features): Add initializer for isa207 field.
453         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
454         new tdescs.
455         * nat/ppc-linux.h (PPC_FEATURE2_ARCH_2_07, PPC_FEATURE2_TAR)
456         (NT_PPC_TAR): Define if not already defined.
457         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-vsx32l and
458         rs6000/powerpc-isa207-vsx64l.
459         (XMLTOC): Add rs6000/powerpc-isa207-vsx32l.xml and
460         rs6000/powerpc-isa207-vsx64l.xml.
461         * features/rs6000/power-tar.xml: New file.
462         * features/rs6000/powerpc-isa207-vsx32l.xml: New file.
463         * features/rs6000/powerpc-isa207-vsx64l.xml: New file.
464         * features/rs6000/powerpc-isa207-vsx32l.c: Generate.
465         * features/rs6000/powerpc-isa207-vsx64l.c: Generate.
466         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Generate.
467         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Generate.
468         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
469         fetch_regset with the TAR regset.
470         (store_register, store_ppc_registers): Call store_regset with the
471         TAR regset.
472         (ppc_linux_nat_target::read_description): Set isa207 field in the
473         features struct if needed.
474         * ppc-linux-tdep.c: Include
475         features/rs6000/powerpc-isa207-vsx32l.c and
476         features/rs6000/powerpc-isa207-vsx64l.c.
477         (ppc32_regmap_tar, ppc32_linux_tarregset): New globals.
478         (ppc_linux_iterate_over_regset_sections): Call back with the tar
479         regset.
480         (ppc_linux_core_read_description): Check if the tar section is
481         present and set isa207 in the features struct.
482         (_initialize_ppc_linux_tdep): Call
483         initialize_tdesc_powerpc_isa207_vsx32l and
484         initialize_tdesc_powerpc_isa207_vsx64l.
485         * ppc-linux-tdep.h (ppc32_linux_tarregset): Declare.
486         * ppc-tdep.h (gdbarch_tdep) <ppc_tar_regnum>: New field.
487         (enum) <PPC_TAR_REGNUM>: New enum value.
488         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate tar
489         feature.
490         (ppc_process_record_op31): Record changes to TAR.
491
492 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
493             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
494
495         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa205_ppr_dscr_vsx32l)
496         (tdesc_powerpc_isa205_ppr_dscr_vsx64l): Declare.
497         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_PPRREGSET)
498         (PPC_LINUX_SIZEOF_DSCRREGSET): Define.
499         (struct ppc_linux_features) <ppr_dscr>: New field.
500         (ppc_linux_no_features): Add initializer for ppr_dscr field.
501         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
502         new tdescs.
503         * nat/ppc-linux.h (PPC_FEATURE2_DSCR, NT_PPC_PPR, NT_PPC_DSCR):
504         Define if not already defined.
505         * features/Makefile (WHICH): Add
506         rs6000/powerpc-isa205-ppr-dscr-vsx32l and
507         rs6000/powerpc-isa205-ppr-dscr-vsx64l.
508         (XMLTOC): Add rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml and
509         rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml.
510         * features/rs6000/power-dscr.xml: New file.
511         * features/rs6000/power-ppr.xml: New file.
512         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml: New file.
513         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml: New file.
514         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c: Generate.
515         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c: Generate.
516         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx32l.dat: Generate.
517         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx64l.dat: Generate.
518         * ppc-linux-nat.c: Include <sys/uio.h>.
519         (fetch_regset, store_regset, check_regset): New functions.
520         (fetch_register, fetch_ppc_registers): Call fetch_regset with
521         DSCR and PPR regsets.
522         (store_register, store_ppc_registers): Call store_regset with
523         DSCR and PPR regsets.
524         (ppc_linux_get_hwcap2): New function.
525         (ppc_linux_nat_target::read_description): Call
526         ppc_linux_get_hwcap2 and check_regset, set ppr_dscr field in the
527         features struct if needed.
528         * ppc-linux-tdep.c: Include
529         features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c and
530         features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c.
531         (ppc32_regmap_ppr, ppc32_regmap_dscr, ppc32_linux_pprregset)
532         (ppc32_linux_dscrregset): New globals.
533         (ppc_linux_iterate_over_regset_sections): Call back with the ppr
534         and dscr regsets.
535         (ppc_linux_core_read_description): Check if the ppr and dscr
536         sections are present and set ppr_dscr in the features struct.
537         (_initialize_ppc_linux_tdep): Call
538         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx32l and
539         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx64l.
540         * ppc-linux-tdep.h (ppc32_linux_pprregset)
541         (ppc32_linux_dscrregset): Declare.
542         * ppc-tdep.h (struct gdbarch_tdep) <ppc_ppr_regnum>: New field.
543         <ppc_dscr_regnum>: New field.
544         (enum) <PPC_PPR_REGNUM, PPC_DSCR_REGNUM>: New enum values.
545         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate ppr
546         and dscr features.
547         (ppc_process_record_op31): Record changes to PPR and DSCR.
548
549 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
550
551         * rs6000-tdep.c (rs6000_gdbarch_init): Replace line wrapping by a
552         second initializer line for the have_* variables.  Initialize
553         have_fpu to 0 instead of 1.
554
555 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
556
557         * arch/ppc-linux-common.c (ppc_linux_match_description):
558         Parenthesize tdesc assignements and indent them properly.
559
560 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
561
562         * ppc-linux-nat.c (fetch_register): Change if statement to else
563         if.
564         (store_register): Likewise.
565
566 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
567
568         * rs6000-tdep.c: Remove reggroups.h include.
569         (rs6000_pseudo_register_reggroup_p): Remove.
570         (rs6000_gdbarch_init): Remove call to
571         set_tdesc_pseudo_register_reggroup_p.
572
573 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
574
575         * reggroups.c (default_register_reggroup_p): Return true for
576         decfloat registers and float_reggroup.
577
578 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
579
580         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): Remove.
581         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): Replace
582         ppc_linux_collect_vrregset by regcache_collect_regset.
583
584 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
585
586         * linux-tdep.c (linux_collect_regset_section_cb): Use
587         std::vector<gdb_byte> instead of char * and malloc for buf.
588         Remove xfree.
589
590 2018-10-26  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
591
592         * xcoffread.c (read_xcoff_symtab): Pass deduced language to
593         symtab_start instead of always using language_unknown.
594
595 2018-10-26  Andrew Burgess  <andrew.burgess@embecosm.com>
596
597         * riscv-tdep.c (riscv_read_misa_reg): Update comment, remove
598         READ_P parameter, catch and ignore register access errors from
599         either the old or new MISA location.
600         (riscv_has_feature): Update call to riscv_read_misa_reg.
601
602 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
603
604         * python/py-function.c (convert_values_to_python): Return
605         gdbpy_ref<>.  Add header comment.
606         (fnpy_call): Adjust.
607
608 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
609
610         * python/py-cmd.c (cmdpy_completer_helper): Return gdbpy_ref<>.
611         (cmdpy_completer_handle_brkchars): Adjust.
612         (cmdpy_completer): Adjust.
613
614 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
615
616         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
617         Pass correct regnum to raw_supply_zeroed.
618
619 2018-10-23  Hafiz Abid Qadeer  <abidh@codesourcery.com>
620
621         * regcache.c (cooked_read_test): Add CSKY to the list of
622         architectures with a save_reggroup
623
624 2018-10-23  Simon Marchi  <simon.marchi@polymtl.ca>
625
626         PR gdb/23368
627         * infrun.c (follow_exec): In the follow_exec_mode_new case,
628         transfer terminal state from old new new inferior.
629         * terminal.h (swap_terminal_info): New function.
630         * inflow.c (swap_terminal_info): New function.
631
632 2018-10-23  Tom Tromey  <tom@tromey.com>
633
634         * record-btrace.c (get_thread_current_frame_id): Rename from
635         get_thread_current_frame.  Return a frame_id.
636         (record_btrace_start_replaying): Update.
637
638 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
639
640         * riscv-tdep.c (riscv_register_name): Use the user-friendly names
641         for CSRs.
642
643 2018-10-23  Joel Brobecker  <brobecker@adacore.com>
644
645         * riscv-tdep.c (riscv_gdbarch_init): Set the gdbarch's
646         have_nonsteppable_watchpoint attribute to 1.
647
648 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
649
650         * riscv-tdep.c (riscv_gdb_reg_names): Update comment, and all
651         register names.
652         (struct register_alias): Rename to...
653         (struct riscv_register_alias): ...this, and update comment.
654         (riscv_register_aliases): Update type, and alias names.  Remove
655         CSR names from this list.
656         (riscv_register_name): Use riscv_gdb_reg_names for int and float
657         register names.  Add an extra assertion.
658         (riscv_is_regnum_a_named_csr): New function.
659         (riscv_register_reggroup_p): Use riscv_is_regnum_a_named_csr.
660
661 2018-10-22  Jim Wilson  <jimw@sifive.com>
662
663         * riscv-tdep.c (riscv_push_dummy_call) <in_reg>: Check for value in
664         FP reg smaller than FP reg size, and fill with -1 instead of 0.
665
666         * riscv-tdep.c (riscv_fpreg_d_type, riscv_fpreg_q_type): New.
667         (riscv_register_type): Use them.
668         (riscv_print_one_register_info): Handle union of floats same as float.
669         * riscv-tdep.h (struct gdbarch_tdep): Add riscv_fpreg_d_type and
670         riscv_fpreg_q_type fields.
671
672 2018-10-21  Simon Marchi  <simon.marchi@ericsson.com>
673
674         * gdbarch.sh (gdbarch_num_cooked_regs): New.
675         * gdbarch.h: Re-generate.
676         * ax-gdb.c (gen_expr): Use gdbarch_num_cooked_regs.
677         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
678         * eval.c (evaluate_subexp_standard): Likewise.
679         * findvar.c (value_of_register): Likewise.
680         (value_of_register_lazy): Likewise.
681         (address_from_register): Likewise.
682         * frame.c (get_frame_register_bytes): Likewise.
683         * gdbarch-selftests.c (register_to_value_test): Likewise.
684         * h8300-tdep.c (h8300_register_type): Likewise.
685         * i386-tdep.c (i386_dbx_reg_to_regnum): Likewise.
686         (i386_svr4_reg_to_regnum): Likewise.
687         * infcmd.c (default_print_registers_info): Likewise.
688         (registers_info): Likewise.
689         (print_vector_info): Likewise.
690         (default_print_float_info): Likewise.
691         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
692         * mdebugread.c (mdebug_reg_to_regnum): Likewise.
693         * mi/mi-main.c (mi_cmd_data_list_register_names): Likewise.
694         (mi_cmd_data_list_changed_registers): Likewise.
695         (mi_cmd_data_list_register_values): Likewise.
696         (mi_cmd_data_write_register_values): Likewise.
697         (mi_cmd_trace_frame_collected): Likewise.
698         * mips-tdep.c (print_gp_register_row): Likewise.
699         (mips_print_registers_info): Likewise.
700         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
701         * regcache.c (init_regcache_descr): Likewise.
702         (register_size): Likewise.
703         (register_dump::dump): Likewise.
704         (cooked_read_test): Likewise.
705         (cooked_write_test): Likewise.
706         * rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
707         (rs6000_gdbarch_init): Likewise.
708         * stabsread.c (stab_reg_to_regnum): Likewise.
709         * stack.c (info_frame_command): Likewise.
710         * target-descriptions.c (tdesc_register_name): Likewise.
711         * trad-frame.c (trad_frame_alloc_saved_regs): Likewise.
712         * tui/tui-regs.c (tui_show_register_group): Likewise.
713         * user-regs.c (user_reg_map_name_to_regnum): Likewise.
714         (user_reg_map_regnum_to_name): Likewise.
715         (value_of_user_reg): Likewise.
716         (maintenance_print_user_registers): Likewise.
717         * xtensa-tdep.c (xtensa_find_register_by_name): Likewise.
718         (xtensa_register_name): Likewise.
719         (xtensa_register_type): Likewise.
720         (xtensa_reg_to_regnum): Likewise.
721         (xtensa_pseudo_register_read): Likewise.
722         (xtensa_pseudo_register_write): Likewise.
723
724 2018-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
725
726         * amd64-tdep.c (amd64_pseudo_register_read_value): Use
727         correctly-sized buffer with raw_read.
728         (amd64_pseudo_register_write): Use correctly-sized buffer for
729         raw_read/raw_write.
730
731 2018-10-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
732
733         * typeprint.c (_initialize_typeprint): Fix wrong prefixname arg
734         in add_prefix_cmd of set print type.
735
736 2018-10-19  Tom Tromey  <tom@tromey.com>
737
738         PR tui/18388:
739         * NEWS: Mention tabset deprecation.
740         * tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
741         (update_tab_width): New function.
742         (tui_set_tab_width, tui_show_tab_width): New functions.
743         (tui_set_tab_width_command): Use update_tab_width.
744         (_initialize_tui_win): Move to end of file.  Deprecate "tabset".
745         Add new "set tui tab-width" command.
746         * tui/tui-source.c (tui_set_source_content): Update.
747         * tui/tui-disasm.c (tui_set_disassem_content): Update.
748         * tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
749         Don't declare.
750         (tui_tab_width): Declare.
751         * tui/tui-data.c (default_tab_len, tui_default_tab_len)
752         (tui_set_default_tab_len): Remove.
753
754 2018-10-19  Tom Tromey  <tom@tromey.com>
755
756         * tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
757         (key_is_backspace, tui_getc): Don't declare.
758         * tui/tui-io.c (key_is_start_sequence): Now static.
759         (key_is_end_sequence, key_is_backspace): Remove.
760         (tui_getc): Now static.
761
762 2018-10-19  Tom Tromey  <tom@tromey.com>
763
764         * symfile.c (reread_symbols): Clear "static_links".
765
766 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
767
768         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
769         define.
770         (aarch64_linux_sigframe_init): Extra boundary checks.
771
772 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
773
774         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
775         the possibly non-existent tdesc type 'vec128', but the type of raw
776         register v16 instead.
777
778 2018-10-19  Gary Benson <gbenson@redhat.com>
779
780         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
781
782 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
783
784         PR cli/23785
785         * cli/cli-dump.c (restore_binary_file): Check if "file" is
786         NULL.
787
788 2018-10-17  Paul Koning  <paul_koning@dell.com>
789
790         * charset.c (convert_between_encodings): Fix unsigned overflow.
791
792 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
793
794         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
795         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
796         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
797         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
798         New functions.
799         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
800         and fbsd_info_proc_mappings_header.
801         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
802         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
803         New.
804
805 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
806
807         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
808         Solaris Maintainer.
809
810 2018-10-15  Tom Tromey  <tom@tromey.com>
811
812         * tui/tui.c (strcat_to_buf): Remove casts.
813         * tui/tui-winsource.c (tui_show_source_line)
814         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
815         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
816         * tui/tui-windata.c (tui_first_data_item_displayed)
817         (tui_delete_data_content_windows, tui_erase_data_content)
818         (tui_display_all_data, tui_display_data_from)
819         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
820         * tui/tui-win.c (tui_set_win_height)
821         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
822         casts.
823         * tui/tui-win.c (tui_resize_all): Remove casts.
824         (tui_scroll_backward_command, tui_set_focus)
825         (tui_set_tab_width_command): Likewise.
826         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
827         * tui/tui-regs.c (tui_show_register_group): Remove cast.
828         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
829         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
830         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
831         Remove casts.
832
833 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
834
835         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
836         AArch64/ARM maintainer.
837
838 2018-10-11  Gary Benson <gbenson@redhat.com>
839
840         * interps.h (interp::m_name): Make private and mutable.
841         * interps.c (interp::~interp): Free m_name.
842
843 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
844             Simon Marchi <simark@simark.ca>
845
846         * README (`configure' options): Add documentation for new
847         "--enable-unit-tests" option.
848         * acinclude.m4: Include "selftest.m4".
849         * configure: Regenerate.
850         * configure.ac: Use "GDB_AC_SELFTEST".
851         * maint.c (maintenance_selftest): Update message informing
852         that selftests have been disabled.
853         (maintenance_info_selftests): Likewise.
854         * selftest.m4: New file.
855
856 2018-10-10  Gary Benson <gbenson@redhat.com>
857
858         * remote.c (remote_target::remote_send_printf): Add
859         missing va_end found by Coverity.
860
861 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
862
863         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
864
865 2018-10-09  Tom Tromey  <tom@tromey.com>
866
867         * configure: Rebuild.
868         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
869         * NEWS: Update --enable-ubsan documentation.
870
871 2018-10-09  Gary Benson <gbenson@redhat.com>
872
873         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
874         found by Coverity.
875
876 2018-10-08  Tom Tromey  <tom@tromey.com>
877
878         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
879         variable.
880         (riscv_fbsd_init_abi): Likewise.
881
882 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
883         * valops.c (value_struct_elt_for_reference): Rename local variable
884         to work around the shadowing a previous local warning.
885
886 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
887
888         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
889         * NEWS: Mention new FreeBSD/riscv native configuration.
890         * configure.host: Add riscv*-*-freebsd*.
891         * configure.nat: Likewise.
892         * riscv-fbsd-nat.c: New file.
893
894 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
895
896         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
897         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
898         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
899         * NEWS: Mention new FreeBSD/riscv target.
900         * configure.tgt: Add riscv*-*-freebsd*.
901         * riscv-fbsd-tdep.c: New file.
902         * riscv-fbsd-tdep.h: New file.
903
904 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
905
906         * regcache.h (struct regcache_map_entry): Note that this type can
907         be used with traditional frame caches.
908         * trad-frame.c (trad_frame_set_reg_regmap): New.
909         * trad-frame.h (trad_frame_set_reg_regmap): New.
910
911 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
912
913         PR c++/16841
914         * valops.c (get_virtual_base_offset): New function.
915         (value_struct_elt_for_reference): Use it to get virtual base offset
916         and add it in calculating class member address.
917
918 2018-10-08   John Darrington <john@darrington.wattle.id.au>
919
920     * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
921       (check_producer): Check if the producer is codewarrior.
922       (producer_is_codewarrior): New function.
923       (lnp_state_machine::record_line): Ignore is_stmt flag for records
924        produced by codewarrior.
925       (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
926
927 2018-10-06  Tom Tromey  <tom@tromey.com>
928
929         PR python/19399:
930         * python/py-inferior.c: Add "architecture" entry.
931         (infpy_architecture): New function.
932
933 2018-10-06  Tom Tromey  <tom@tromey.com>
934
935         PR python/21765:
936         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
937         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
938         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
939         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
940
941 2018-10-06  Tom Tromey  <tom@tromey.com>
942
943         PR build/17077:
944         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
945         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
946         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
947         #include.
948
949 2018-10-06  Tom Tromey  <tom@tromey.com>
950
951         * python/py-breakpoint.c (bppy_get_location): Handle a
952         bp_breakpoint without a location.
953
954 2018-10-06  Tom Tromey  <tom@tromey.com>
955
956         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
957         (_RegEx): Reformat help text.
958         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
959         (AnyCallerIs, AnyCallerMatches): Reformat help text.
960         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
961         text.
962         * python/lib/gdb/command/xmethods.py (InfoXMethod)
963         (EnableXMethod, DisableXMethod): Remove help indentation.
964         Capitalize meta-syntactic variables.
965         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
966         (EnableUnwinder, DisableUnwinder): Remove help indentation.
967         Capitalize meta-syntactic variables.
968         * python/lib/gdb/command/explore.py (ExploreCommand)
969         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
970         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
971         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
972         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
973         Remove help indentation.
974         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
975         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
976         (DisableFrameFilter, SetFrameFilterPriority)
977         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
978
979 2018-10-06  Tom Tromey  <tom@tromey.com>
980
981         PR tui/28819:
982         * tui/tui-io.c (gdb_wgetch): New function.
983         (tui_mld_getc, tui_getc): Use it.
984
985 2018-10-05  Tom Tromey  <tom@tromey.com>
986
987         * sol-thread.c (sol_thread_target::wait): Rename inner
988         "save_ptid".
989
990 2018-10-04  Tom Tromey  <tom@tromey.com>
991
992         * configure: Rebuild.
993         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
994
995 2018-10-04  Tom Tromey  <tom@tromey.com>
996
997         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
998         declaration of "block".
999
1000 2018-10-04  Tom Tromey  <tom@tromey.com>
1001
1002         * common/filestuff.c (fdwalk): Remove inner declaration of
1003         "result".
1004
1005 2018-10-04  Tom Tromey  <tom@tromey.com>
1006
1007         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
1008         "structs_addr" and hoist declaration.
1009
1010 2018-10-04  Tom Tromey  <tom@tromey.com>
1011
1012         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
1013         variable "size".
1014
1015 2018-10-04  Tom Tromey  <tom@tromey.com>
1016
1017         * mdebugread.c (parse_partial_symbols): Use std::string.
1018
1019 2018-10-04  Tom Tromey  <tom@tromey.com>
1020
1021         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
1022         * p-valprint.c (pascal_val_print): Split inner "i" variable.
1023         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
1024         header.
1025         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
1026         more inner scope.
1027         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
1028         * varobj.c (varobj_update): Rename inner "newobj",
1029         "type_changed".
1030         * valprint.c (generic_emit_char): Rename inner "buf".
1031         * valops.c (find_overload_match): Rename inner "temp".
1032         (value_struct_elt_for_reference): Declare "v" in more inner
1033         scope.
1034         * v850-tdep.c (v850_push_dummy_call): Rename "len".
1035         * unittests/array-view-selftests.c (run_tests): Rename inner
1036         "vec".
1037         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
1038         header.
1039         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
1040         "tsv" in more inner scope.
1041         (print_one_static_tracepoint_marker): Rename inner
1042         "tuple_emitter".
1043         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
1044         (tic6x_push_dummy_call): Don't redeclare "addr".
1045         * target-float.c: Declare "dto" lower.
1046         * symtab.c (lookup_local_symbol): Rename inner "sym".
1047         (find_pc_sect_line): Rename inner "pc".
1048         * stack.c (print_frame): Don't redeclare "gdbarch".
1049         (return_command): Rename inner "gdbarch".
1050         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
1051         "sp".
1052         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
1053         header.
1054         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
1055         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
1056         scope.
1057         * remote.c (remote_target::update_thread_list): Don't redeclare
1058         "tp".
1059         (remote_target::process_initial_stop_replies): Rename inner
1060         "thread".
1061         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
1062         (remote_target::wait_as): Don't redeclare "stop_reply".
1063         (remote_target::get_thread_local_address): Rename inner
1064         "result".
1065         (remote_target::get_tib_address): Likewise.
1066
1067         * regcache.c (cooked_read_test): Rename "regnum".
1068         * record-btrace.c (cmd_record_btrace_start): Rename inner
1069         "exception".
1070         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
1071         loop header.
1072         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
1073         header.
1074         (ppu2spu_sniffer): Rename inner "buf".
1075         * parse.c (operator_check_standard): Rename inner "type",
1076         "objfile".
1077         * p-valprint.c (pascal_val_print): Introduce new scope for
1078         "low_bound", "high_bound".
1079         * p-exp.y (yylex): Declare "i" in loop header.
1080         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
1081         Lower declaration of "s".
1082         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
1083         header.
1084         (nios2_push_dummy_call): Rename "len".
1085         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
1086         "buf".
1087         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
1088         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
1089         (linux_xfer_osdata_modules): Likewise.
1090         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
1091         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
1092         (mips_o64_push_dummy_call): Likewise.
1093         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
1094         "op".
1095         * mi/mi-main.c (list_available_thread_groups): Rename inner
1096         "tuple_emitter".
1097         (mi_cmd_data_read_memory): Rename inner "opts".
1098         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
1099         "tuple_emitter".
1100         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
1101         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
1102         more inner scope.
1103         (parse_partial_symbols): Rename inner "pst", "p", "name"
1104         * main.c (captured_main_1): Rename inner "i"s.
1105         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
1106         "oso2".
1107         * linux-tdep.c (linux_info_proc): Rename inner "filename".
1108         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
1109         * infrun.c (handle_no_resumed): Don't redeclare "thread".
1110         (handle_signal_stop): Rename inner "gdbarch".
1111         (handle_command): Declare "signum" in loop header.
1112         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
1113         "status".
1114         (examine_prologue): Rename inner "sol" and "sof".
1115         (ia64_extract_return_value): Rename inner "val".  Declare another
1116         "val" in a more inner scope.
1117         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
1118         inner scope.
1119         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
1120         "except".
1121         * findvar.c (default_read_var_value): Don't redeclare "addr".
1122         * f-exp.y (yylex): Declare "i" in loop header.
1123         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
1124         Rename inner "type", "expect_type".
1125         (evaluate_subexp_for_sizeof): Rename inner "pc".
1126         * elfread.c (elf_symfile_read): Rename inner "abfd".
1127         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
1128         "bytes_read".
1129         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
1130         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
1131         (dwarf_decode_line_header): Rename inner "lh".
1132         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
1133         "offset".  Declare "i" in loop header.
1134         (disassemble_dwarf_expression): Rename inner "addr_size".
1135         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
1136         inner "result".
1137         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
1138         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
1139         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
1140         "inner_list_emitter".
1141         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
1142         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
1143         declaration in a block.
1144         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
1145         * cp-valprint.c (cp_print_value_fields): Don't redeclare
1146         "obstack_final_size".
1147         * cp-support.c (inspect_type): Declare "i" in loop header.
1148         * compile/compile.c (compile_instance::insert_symbol_error):
1149         Rename inner "e".
1150         * common/agent.c (agent_run_command): Remove inner "ret"
1151         declaration.
1152         * coffread.c (coff_symfile_read): Rename inner "name".
1153         (coff_symfile_read): Rename inner "abfd".
1154         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
1155         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
1156         "high".
1157         * c-exp.y (lex_one_token): Move "len" declaration lower.
1158         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
1159         "gdbarch".
1160         (create_exception_master_breakpoint): Likewise.  Don't redeclare
1161         "b".
1162         (watch_command_1): Declare "mark" later.
1163         (clear_command): Don't shadow "a" or "b".
1164         (delete_command): Rename inner "b".
1165         (delete_trace_command): Likewise.
1166         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
1167         "op".
1168         (arm_gdbarch_init): Remove inner "e_flags".
1169         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
1170         "offset" in inner blocks.
1171
1172 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
1173
1174         * dwarf-index-write.c (file_write): Don't write if the vector is
1175         empty.
1176
1177 2018-10-05  Tom de Vries  <tdevries@suse.de>
1178
1179         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
1180         PyArg_ParseTuple call.
1181
1182 2018-10-05  Tom de Vries  <tdevries@suse.de>
1183
1184         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
1185         PyArg_ParseTuple call.
1186
1187 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
1188
1189         * psymtab.c (recursively_search_psymtabs): Reformat parameters
1190         to avoid exceeding 80 characters per line limit.
1191
1192 2018-10-04  Tom Tromey  <tom@tromey.com>
1193
1194         * symfile.c (syms_from_objfile_1, finish_new_objfile)
1195         (reread_symbols): Update.
1196         * complaints.h (clear_complaints): Remove argument.
1197         * complaints.c (enum complaint_series): Remove.
1198         (series): Remove global.
1199         (complaint_internal): Update.
1200         (clear_complaints): Remove argument.
1201
1202 2018-10-04  Tom Tromey  <tom@tromey.com>
1203
1204         * symfile.c (symbol_file_add_with_addrs): Do not print "no
1205         debugging symbols" message if there is a separate debug objfile.
1206
1207 2018-10-04  Tom Tromey  <tom@tromey.com>
1208
1209         PR cli/19551:
1210         * symfile.c (symbol_file_add_with_addrs): Update output.
1211         * psymtab.c (require_partial_symbols): Update output.
1212
1213 2018-10-04  Tom Tromey  <tom@tromey.com>
1214
1215         PR cli/22234:
1216         * complaints.c: Emit \n.
1217
1218 2018-10-04  Tom Tromey  <tom@tromey.com>
1219
1220         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
1221         (separate_debug_file_exists, find_separate_debug_file)
1222         (add_symbol_file_command, reread_symbols, allocate_symtab)
1223         (allocate_compunit_symtab): Use filtered printing, not
1224         unfiltered.
1225         * psymtab.c (require_partial_symbols, dump_psymtab)
1226         (allocate_psymtab): Use filtered printing, not unfiltered.
1227
1228 2018-10-04  Tom Tromey  <tom@tromey.com>
1229
1230         * complaints.c (complaint_internal): Correctly check complaint
1231         count.
1232
1233 2018-10-04  Tom Tromey  <tom@tromey.com>
1234
1235         * complaints.h (struct complaints): Remove declaration.
1236         * complaints.c (clear_complaints): Remove an unused variable.
1237
1238 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1239
1240         * MAINTAINERS (Write After Approval): Add self.
1241
1242 2018-10-03  Tom Tromey  <tom@tromey.com>
1243
1244         * guile/scm-value.c (gdbscm_value_to_string): Initialize
1245         "buffer_contents".
1246         * coffread.c (coff_symtab_read): Initialize "newobj".
1247
1248 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
1249
1250         * dwarf2read.c (read_func_scope): Remove struct keyword in
1251         range-based for.
1252
1253 2018-10-03  Tom Tromey  <tom@tromey.com>
1254
1255         * README: Mention --enable-ubsan.
1256         * NEWS: Mention --enable-ubsan.
1257         * acinclude.m4: Include sanitize.m4.
1258         * configure: Rebuild.
1259         * configure.ac: Call AM_GDB_UBSAN.
1260         * sanitize.m4: New file.
1261
1262 2018-10-03  Tom Tromey  <tom@tromey.com>
1263
1264         * expression.h (enum exp_opcode): Use uint8_t as base type.
1265         * expprint.c (op_name): Handle invalid opcodes.
1266
1267 2018-10-03  Tom Tromey  <tom@tromey.com>
1268
1269         * parse.c (prefixify_expression): Add assert.
1270         (parse_exp_in_context_1): Throw exception if the expression is
1271         empty.
1272
1273 2018-10-03  Tom Tromey  <tom@tromey.com>
1274
1275         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
1276
1277 2018-10-03  Tom Tromey  <tom@tromey.com>
1278
1279         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
1280
1281 2018-10-03  Tom Tromey  <tom@tromey.com>
1282
1283         * dwarf2read.c (read_subrange_type): Make "negative_mask"
1284         unsigned.
1285
1286 2018-10-03  Tom Tromey  <tom@tromey.com>
1287
1288         * findvar.c (extract_integer): Do work in an unsigned type.
1289
1290 2018-10-03  Tom Tromey  <tom@tromey.com>
1291
1292         * common/enum-flags.h (enum_flags::operator~): Add static assert.
1293         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
1294         base type.
1295         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
1296         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
1297         type.
1298         * c-lang.h (enum c_string_type_values): Use unsigned as base
1299         type.
1300         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
1301
1302 2018-10-03  Tom Tromey  <tom@tromey.com>
1303
1304         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
1305         <~dwarf2_frame_state_reg_info>: Update.
1306         <dwarf2_frame_state_reg_info>: Update.
1307         <alloc_regs>: Add assertion.  Update.
1308         <reg>: Now a std::vector.
1309         <num_regs>: Remove.
1310         <swap>: Update.
1311         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
1312         (execute_cfa_program_test, dwarf2_frame_cache): Update.
1313
1314 2018-10-03  Tom Tromey  <tom@tromey.com>
1315
1316         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
1317
1318 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1319
1320         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
1321
1322 2018-10-02  Tom Tromey  <tom@tromey.com>
1323
1324         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
1325
1326 2018-10-02  John Darrington <john@darrington.wattle.id.au>
1327
1328         * NEWS: Mention changed commands.
1329         * ser-uds.c: New file.
1330         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
1331         * configure: Regenerate.
1332         * Makefile.in: Add new file.
1333         * serial.c (serial_open): Check if filename is a socket
1334           and lookup the appropriate interface accordingly.
1335
1336 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
1337
1338         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
1339         define.
1340         (AARCH64_EXTRA_MAGIC): Likewise.
1341         (AARCH64_FPSIMD_MAGIC): Likewise.
1342         (AARCH64_SVE_MAGIC): Likewise.
1343         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
1344         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
1345         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
1346         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
1347         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
1348         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
1349         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
1350         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
1351         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
1352         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
1353         (read_aarch64_ctx): Add function.
1354         (aarch64_linux_sigframe_init): Detect FP registers.
1355
1356 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
1357
1358         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
1359         (AARCH64_D0_REGNUM): Likewise.
1360         (AARCH64_S0_REGNUM): Likewise.
1361         (AARCH64_H0_REGNUM): Likewise.
1362         (AARCH64_B0_REGNUM): Likewise.
1363         (AARCH64_SVE_V0_REGNUM): Likewise.
1364         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
1365         (AARCH64_D0_REGNUM): Likewise.
1366         (AARCH64_S0_REGNUM): Likewise.
1367         (AARCH64_H0_REGNUM): Likewise.
1368         (AARCH64_B0_REGNUM): Likewise.
1369         (AARCH64_SVE_V0_REGNUM): Likewise.
1370
1371 2018-10-01  Gary Benson <gbenson@redhat.com>
1372
1373         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
1374         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
1375         prfpregset_t instead of gdb_prfpregset_t.
1376         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
1377         * configure, config.in: Rebuild.
1378
1379 2018-10-01  Gary Benson <gbenson@redhat.com>
1380
1381         * common/gdb_proc_service.h: New file, factored out from...
1382         * gdb_proc_service.h: Moved common code to the above file.
1383         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
1384
1385 2018-10-01  Gary Benson <gbenson@redhat.com>
1386
1387         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
1388         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
1389
1390 2018-10-01  Gary Benson <gbenson@redhat.com>
1391
1392         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
1393         (AC_CHECK_HEADERS): Check for linux/elf.h.
1394         * configure, config.in: Rebuild.
1395         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
1396         doesn't define elf_fpregset_t.
1397
1398 2018-10-01  Gary Benson <gbenson@redhat.com>
1399
1400         * gdb_proc_service.h: Whitespace change.
1401
1402 2018-10-01  Tom Tromey  <tom@tromey.com>
1403
1404         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
1405         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
1406         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
1407
1408 2018-10-01  Tom Tromey  <tom@tromey.com>
1409
1410         * README: Minor change.
1411
1412 2018-09-30  Pedro Alves  <palves@redhat.com>
1413
1414         * darwin-nat-info.c (darwin_debug_regions_recurse)
1415         (info_mach_exceptions_command): Remove unused local variables.
1416         * darwin-nat.c (darwin_decode_notify_message)
1417         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
1418         (darwin_stop_inferior, darwin_setup_exceptions)
1419         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
1420         (darwin_nat_target::attach, darwin_nat_target::detach)
1421         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
1422         local variables.
1423         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
1424         variables.
1425
1426 2018-09-29  Tom Tromey  <tom@tromey.com>
1427
1428         * README: Remove some leftover text.
1429
1430 2018-09-29  Tom Tromey  <tom@tromey.com>
1431
1432         * PROBLEMS: Rewrite.
1433         * README: Update.
1434
1435 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
1436
1437         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
1438         case with explicit breakpoint kind.
1439         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
1440         'additional_info' and related logic.
1441         (riscv_debug_breakpoints): New variable.
1442         (riscv_breakpoint_kind_from_pc): Use the length of the existing
1443         instruction to determine the breakpoint kind.
1444         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
1445         flag.  Update description of 'set/show riscv
1446         use-compressed-breakpoints' flag.
1447
1448 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
1449
1450         (NEWS): Mention changes to frame related commands.
1451         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
1452         (add_prefix_cmd_suppress_notification): New function.
1453         (add_com_suppress_notification): Call
1454         add_cmd_suppress_notification.
1455         * command.h (add_cmd_suppress_notification): Declare.
1456         (add_prefix_cmd_suppress_notification): Declare.
1457         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
1458         (parse_frame_specification): Moved from stack.c, with
1459         simplification to handle a single argument.
1460         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
1461         switch to the selected frame.  Add a header comment.
1462         * stack.c: Remove 'safe-ctype.h' include.
1463         (find_frame_for_function): Add declaration.
1464         (find_frame_for_address): New function.
1465         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
1466         (frame_selection_by_function_completer): New function.
1467         (info_frame_command): Rename to...
1468         (info_frame_command_core): ...this, and update parameter types.
1469         (select_frame_command): Rename to...
1470         (select_frame_command_core): ...this, and update parameter types.
1471         (frame_command): Rename to...
1472         (frame_command_core): ...this, and update parameter types.
1473         (class frame_command_helper): New class to wrap implementations of
1474         frame related sub-commands.
1475         (frame_apply_cmd_list): New static global.
1476         (frame_cmd_list): Make static.
1477         (select_frame_cmd_list): New global for sub-commands.
1478         (info_frame_cmd_list): New global for sub-commands.
1479         (_initialize_stack): Register sub-commands for 'frame',
1480         'select-frame', and 'info frame'.  Update 'frame apply' commands
1481         to use frame_apply_cmd_list.  Move function local static
1482         frame_apply_list to file static frame_apply_cmd_list for
1483         consistency.
1484         * stack.h (select_frame_command): Delete declarationn.
1485         (select_frame_for_mi): Declare new function.
1486
1487 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
1488
1489         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
1490         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
1491         and NOP.
1492
1493 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
1494
1495         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
1496
1497 2018-09-26  Tom Tromey  <tom@tromey.com>
1498
1499         * valops.c (auto_abandon): Remove dead code.
1500
1501 2018-09-26  Tom Tromey  <tom@tromey.com>
1502
1503         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
1504
1505 2018-09-24  Tom Tromey  <tom@tromey.com>
1506
1507         * common/pathstuff.c (get_standard_cache_dir): Make
1508         "xdg_cache_home" and "home" const.
1509         * top.c (init_history): Make "tmpenv" const.
1510         * main.c (get_init_files): Make "homedir" const.
1511
1512 2018-09-23  Tom Tromey  <tom@tromey.com>
1513
1514         PR python/18852:
1515         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
1516
1517 2018-09-23  Tom Tromey  <tom@tromey.com>
1518
1519         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
1520         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
1521         * python/python-internal.h (gdbpy_handle_exception): Declare.
1522         * python/py-utils.c (gdbpy_handle_exception): New function.
1523
1524 2018-09-23  Tom Tromey  <tom@tromey.com>
1525
1526         PR python/17284:
1527         * python/py-type.c (typy_template_argument): Check for negative
1528         argument number.
1529
1530 2018-09-23  Tom Tromey  <tom@tromey.com>
1531
1532         PR python/14062:
1533         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
1534
1535 2018-09-23  Tom Tromey  <tom@tromey.com>
1536
1537         PR python/18170:
1538         * python/py-value.c (valpy_int): Allow conversion from pointer
1539         type.
1540
1541 2018-09-23  Tom Tromey  <tom@tromey.com>
1542
1543         PR python/20126:
1544         * python/py-value.c (valpy_int): Respect type sign.
1545
1546 2018-09-23  Tom Tromey  <tom@tromey.com>
1547
1548         PR python/18352;
1549         * python/py-value.c (valpy_float): Allow conversions from int or
1550         char.
1551         (valpy_int, valpy_long): Allow conversions from float.
1552
1553 2018-09-23  Tom Tromey  <tom@tromey.com>
1554
1555         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
1556         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
1557
1558 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1559
1560         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
1561         __sighndlr.
1562         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
1563
1564 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
1565
1566         * windows-nat.c (windows_nat_target::wait): Remove a spurious
1567         target_terminal::ours().
1568
1569 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
1570
1571         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
1572         of vl to ULONGEST.
1573
1574 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
1575
1576         * breakpoint.c (update_inserted_breakpoint_locations): Remove
1577         redundant condition.
1578
1579 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1580
1581         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
1582
1583         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
1584         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
1585         * sol-thread.c (ps_pdmodel): Don't guard definition.
1586
1587         * procfs.c: Fix formatting.
1588
1589         * procfs.c (sysset_t_alloc): Remove.
1590         (create_procinfo): Use XNEW instead of sysset_t_alloc.
1591         (procfs_debug_inferior): Likewise.
1592         (procfs_set_exec_trap): Likewise.
1593         (proc_set_traced_sysentry): Don't allocate argp dynamically.
1594         (proc_set_traced_sysexit): Likewise.
1595
1596         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
1597         (dead_procinfo): Likewise.
1598         (proc_warn): Likewise.
1599         (proc_error): Likewise.
1600         (proc_get_LDT_entry): Likewise.
1601         (do_attach): Likewise.
1602         (procfs_target::pid_to_str): Likewise.
1603         (iterate_over_mappings): Likewise.
1604
1605         * procfs.c (create_procinfo): Fix ARI warning.
1606         (proc_get_status): Likewise.
1607         (proc_stop_process): Likewise.
1608         (proc_run_process): Likewise.
1609         (proc_kill): Likewise.
1610         (proc_get_LDT_entry): Likewise.
1611         (procfs_find_LDT_entry): Likewise.
1612         (proc_update_threads): Likewise.
1613         (proc_iterate_over_threads): Likewise.
1614         (do_attach): Likewise.
1615         (procfs_xfer_memory): Likewise.
1616         (invalidate_cache): Likewise.
1617         (procfs_target::resume): Likewise.
1618         (procfs_init_inferior): Likewise.
1619         (procfs_set_exec_trap): Likewise.
1620         (procfs_target::thread_alive): Likewise.
1621         (procfs_target::pid_to_exec_file): Likewise.
1622         (iterate_over_mappings): Likewise.
1623         (procfs_target::make_corefile_notes): Likewise.
1624         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
1625
1626         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
1627         (procfs_find_LDT_entry): Likewise.
1628         * sol-thread.c (ps_lgetLDT): Likewise.
1629
1630 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1631
1632         PR tdep/17903
1633         * procfs.c (procfs_target): Declare pid_to_exec_file.
1634         (procfs_target::pid_to_exec_file): New.
1635
1636 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1637
1638         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
1639         renaming.
1640         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
1641         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
1642
1643 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1644
1645         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
1646         (supply_fpregset, fill_fpregset): Move ...
1647         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
1648         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
1649         Remove references to ioctl-based procfs.
1650         Include <sys/reg.h>.
1651         Remove PR_MODEL_NATIVE guards.
1652         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
1653         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
1654
1655 2018-09-19  Xavier Roirand  <roirand@adacore.com>
1656
1657         PR gdb/20981:
1658         * solib-darwin.c (darwin_get_dyld_bfd): New function.
1659         (darwin_solib_get_all_image_info_addr_at_init): Update call.
1660         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
1661
1662 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
1663
1664         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
1665         (fbsd_print_sockaddr_in6): Likewise.
1666
1667 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
1668             Chris January  <chris.january@arm.com>
1669
1670         * eval.c (skip_undetermined_arglist): Skip argument list helper.
1671         (evaluate_subexp_standard): Return a dummy type when
1672         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
1673         OP_F77_UNDETERMINED_ARGLIST case.
1674         * expression.h (enum noside): Update comment.
1675
1676 2018-09-19  George Vasick <george.vasick@oracle.com>
1677
1678         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
1679
1680 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
1681             April Chin <april.chin@oracle.com>
1682             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1683
1684         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
1685         uint_t lwpid_t.
1686         (create_procinfo): Print pids in /proc without leading zeros.
1687
1688 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
1689
1690         * nios2-tdep.c (nios2_gcc_target_options): New.
1691         (nios2_gdb_arch_init): Install new hook.
1692
1693 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
1694
1695         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
1696         New file.
1697         * update-gnulib.sh: Apply patch.
1698         * configure: Re-generate.
1699
1700 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1701
1702         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
1703         description.  Make "info proc" command descriptions more
1704         consistent.
1705
1706 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1707
1708         * NEWS: Mention 'info proc files' command.
1709
1710 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1711
1712         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
1713         descriptors for IP_FILES and IP_ALL.
1714
1715 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1716
1717         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
1718         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
1719         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
1720         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
1721         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
1722         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
1723         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
1724         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
1725         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
1726         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
1727         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
1728         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
1729         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
1730         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
1731         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
1732         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
1733         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
1734         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
1735         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
1736         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
1737         (struct fbsd_sockaddr_un): New types.
1738         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
1739         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
1740         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
1741         (fbsd_core_info_proc_files): New functions.
1742         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
1743         IP_ALL.
1744         * fbsd-tdep.h (fbsd_info_proc_files_header)
1745         (fbsd_info_proc_files_entry): New.
1746
1747 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1748
1749         * defs.h (enum info_proc_what) [IP_FILES]: New value.
1750         * infcmd.c (info_proc_cmd_files): New function.
1751         (_initialize_infcmd): Register 'info proc files' command.
1752
1753 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1754
1755         * gnulib/aclocal-m4-deps.mk: Re-generate.
1756         * gnulib/aclocal.m4: Re-generate.
1757         * gnulib/config.in: Re-generate.
1758         * gnulib/configure: Re-generate.
1759         * gnulib/import/Makefile.am: Re-generate.
1760         * gnulib/import/Makefile.in: Re-generate.
1761         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
1762         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
1763         * gnulib/import/arpa_inet.in.h: New file.
1764         * gnulib/import/inet_ntop.c: New file.
1765         * gnulib/import/m4/arpa_inet_h.m4: New file.
1766         * gnulib/import/m4/inet_ntop.m4: New file.
1767         * gnulib/import/m4/netinet_in_h.m4: New file.
1768         * gnulib/import/m4/socklen.m4: New file.
1769         * gnulib/import/m4/sockpfaf.m4: New file.
1770         * gnulib/import/m4/stdalign.m4: New file.
1771         * gnulib/import/m4/sys_uio_h.m4: New file.
1772         * gnulib/import/netinet_in.in.h: New file.
1773         * gnulib/import/stdalign.in.h: New file.
1774         * gnulib/import/sys_socket.c: New file.
1775         * gnulib/import/sys_socket.in.h: New file.
1776         * gnulib/import/sys_uio.in.h: New file.
1777         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
1778         module.
1779
1780 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1781
1782         * gnulib/aclocal-m4-deps.mk: New file.
1783         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
1784         deterministically.
1785
1786 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1787
1788         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
1789         KVE_PATH.
1790
1791 2018-09-18  Tom Tromey  <tom@tromey.com>
1792
1793         * compile/compile-object-load.c (struct
1794         link_hash_table_cleanup_data): Add constructor and destructor.
1795         Use DISABLE_COPY_AND_ASSIGN.
1796         (~link_hash_table_cleanup_data): Rename from
1797         link_hash_table_free.  Now a destructor.
1798         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
1799
1800 2018-09-18  Tom Tromey  <tom@tromey.com>
1801
1802         * compile/compile-object-run.c (do_module_cleanup): Use delete.
1803         * compile/compile-object-load.c (struct munmap_list): Move to
1804         header file.
1805         (munmap_list::add): Rename from munmap_list_add; rewrite.
1806         (munmap_list::~munmap_list): Rename from munmap_list_free.
1807         (munmap_listp_free_cleanup): Remove.
1808         (compile_object_load): Update.
1809         * compile/compile-object-load.h (struct munmap_list): Move from
1810         compile-object-load.c.  Rewrite.
1811
1812 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
1813
1814         * aarch64-tdep.c (pass_in_v): Use register size.
1815         (aarch64_extract_return_value): Likewise.
1816         (aarch64_store_return_value): Likewise.
1817
1818 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1819
1820         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
1821         rlim_t.
1822
1823 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1824
1825         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
1826         Fix short help line.
1827
1828 2018-09-17  Tom Tromey  <tom@tromey.com>
1829
1830         PR python/20445:
1831         * configure: Rebuild.
1832         * configure.ac: Conditionally use -DNDEBUG for Python.
1833
1834 2018-09-17  Tom Tromey  <tom@tromey.com>
1835
1836         * configure: Rebuild.
1837         * configure.ac: Use gmp as a library dependency when checking for
1838         mpfr.
1839
1840 2018-09-17  Pedro Alves  <palves@redhat.com>
1841
1842         * python/py-inferior.c (find_inferior_object): Delete.
1843
1844 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
1845
1846         * compile/compile-cplus-types.c
1847         (compile_cplus_instance::enter_scope): Don't use new_scope after
1848         std::move.
1849
1850 2018-09-17  Tom Tromey  <tom@tromey.com>
1851
1852         * common/pathstuff.c (get_standard_cache_dir): Use
1853         ~/Library/Caches on macOS.
1854         * common/pathstuff.h (get_standard_cache_dir): Update comment.
1855
1856 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
1857
1858         PR python/23669
1859         * breakpoint.c (commands_cmd_element): New.
1860         (_initialize_breakpoint): Assign commands_cmd_element.
1861         * breakpoint.h (commands_cmd_element): New.
1862         * cli/cli-script.c (while_cmd_element, if_command,
1863         define_cmd_element): New.
1864         (command_name_equals): Remove.
1865         (process_next_line): Compare commands by pointer, not by name.
1866         (_initialize_cli_script): Assign the various cmd_list_element
1867         variables.
1868         * compile/compile.c (compile_cmd_element): New.
1869         (_initialize_compile): Assign compile_cmd_element.
1870         * compile/compile.h (compile_cmd_element): New.
1871         * guile/guile.c (guile_cmd_element): New.
1872         (install_gdb_commands): Assign guile_cmd_element.
1873         * guile/guile.h (guile_cmd_element): New.
1874         * python/python.c (python_cmd_element): New.
1875         (_initialize_python): Assign python_cmd_element.
1876         * python/python.h (python_cmd_element): New.
1877         * tracepoint.c (while_stepping_cmd_element): New.
1878         (_initialize_tracepoint): Assign while_stepping_cmd_element.
1879         * tracepoint.h (while_stepping_cmd_element): New.
1880
1881 2018-09-17  Tom Tromey  <tom@tromey.com>
1882
1883         * infrun.c (save_infcall_suspend_state): Return
1884         infcall_suspend_state_up.
1885         (save_infcall_control_state): Return infcall_control_state_up.
1886         * inferior.h (save_infcall_suspend_state)
1887         (save_infcall_control_state): Declare later.  Return unique
1888         pointers.
1889
1890 2018-09-17  Tom Tromey  <tom@tromey.com>
1891
1892         * infrun.c (struct stop_context): Declare constructor,
1893         destructor, "changed" method.
1894         (stop_context::stop_context): Rename from save_stop_context.
1895         (stop_context::~stop_context): Rename from
1896         release_stop_context_cleanup.
1897         (normal_stop): Update.
1898         (stop_context::changed): Rename from stop_context_changed.  Return
1899         bool.
1900
1901 2018-09-17  Tom Tromey  <tom@tromey.com>
1902
1903         * inferior.h (struct infcall_suspend_state_deleter): New.
1904         (infcall_suspend_state_up): New typedef.
1905         (struct infcall_control_state_deleter): New.
1906         (infcall_control_state_up): New typedef.
1907         (make_cleanup_restore_infcall_suspend_state)
1908         (make_cleanup_restore_infcall_control_state): Don't declare.
1909         * infcall.c (call_function_by_hand_dummy): Update.
1910         * infrun.c (do_restore_infcall_suspend_state_cleanup)
1911         (make_cleanup_restore_infcall_suspend_state): Remove.
1912         (do_restore_infcall_control_state_cleanup)
1913         (make_cleanup_restore_infcall_control_state): Remove.
1914
1915 2018-09-17  Tom Tromey  <tom@tromey.com>
1916
1917         * gdbthread.h (struct thread_control_state): Add initializer.
1918         (class thread_info) <control>: Remove initializer.
1919         * inferior.h (struct inferior_control_state): Add initializer.
1920         (class inferior) <control>: Remove initializer.
1921         (exit_inferior_1): Update.
1922         * infrun.c (struct infcall_control_state): Add constructors.
1923         (save_infcall_control_state): Use new.
1924         (restore_infcall_control_state, discard_infcall_control_state):
1925         Use delete.
1926
1927 2018-09-17  Tom Tromey  <tom@tromey.com>
1928
1929         * infrun.c (struct infcall_suspend_state) <registers>: Now a
1930         unique_ptr.
1931         <siginfo_data>: Now a unique_xmalloc_ptr.
1932         (save_infcall_suspend_state, restore_infcall_suspend_state)
1933         (discard_infcall_suspend_state)
1934         (get_infcall_suspend_state_regcache): Update.
1935
1936 2018-09-17  Tom Tromey  <tom@tromey.com>
1937
1938         * gdbthread.h (struct thread_suspend_state): Add initializers.
1939         (class thread_info) <suspend>: Remove initializer.
1940         * infrun.c (struct infcall_suspend_state): Add initializers.
1941         (save_infcall_suspend_state): Use new.
1942         (discard_infcall_suspend_state): Use delete.
1943
1944 2018-09-16  Tom Tromey  <tom@tromey.com>
1945
1946         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
1947         Remove.
1948         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
1949         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
1950         (py_varobj_iter_new): Likewise.
1951         (py_varobj_get_iterator): Use gdbpy_ref.
1952
1953 2018-09-16  Tom Tromey  <tom@tromey.com>
1954
1955         * python/py-threadevent.c (py_get_event_thread): Simplify.
1956         * python/py-inferior.c (infpy_thread_from_thread_handle):
1957         Return immediately after calling thread_to_thread_object.  Use
1958         Py_RETURN_NONE.
1959         (thread_to_thread_object): Set the exception on a NULL return.
1960
1961 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
1962
1963         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
1964
1965 2018-09-16  Tom Tromey  <tom@tromey.com>
1966
1967         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
1968         Remove.
1969
1970 2018-09-16  Tom Tromey  <tom@tromey.com>
1971
1972         * python/python-internal.h (thread_to_thread_object): Change
1973         return type.
1974         * python/py-inferior.c (thread_to_thread_object): Return a new
1975         reference.
1976         (infpy_thread_from_thread_handle): Update.
1977         * python/py-infthread.c (gdbpy_selected_thread): Update.
1978         * python/py-stopevent.c (create_stop_event_object): Update.
1979         * python/py-threadevent.c (py_get_event_thread): Return a new
1980         reference.
1981         (py_get_event_thread): Update.
1982         * python/py-event.h (py_get_event_thread): Change return type.
1983         * python/py-continueevent.c (create_continue_event_object):
1984         Update.
1985
1986 2018-09-16  Tom Tromey  <tom@tromey.com>
1987
1988         * python/py-progspace.c (pspy_get_objfiles): Update.
1989         * python/python-internal.h (objfile_to_objfile_object): Change
1990         return type.
1991         * python/py-newobjfileevent.c (create_new_objfile_event_object):
1992         Update.
1993         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
1994         Update.
1995         * python/python.c (gdbpy_get_current_objfile): Update.
1996         (gdbpy_objfiles): Update.
1997         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
1998         Update.
1999         (objfile_to_objfile_object): Return a new reference.
2000         * python/py-symtab.c (stpy_get_objfile): Update.
2001         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
2002         Update.
2003
2004 2018-09-16  Tom Tromey  <tom@tromey.com>
2005
2006         * python/py-inferior.c (infpy_get_progspace): Update.
2007         * python/python-internal.h (pspace_to_pspace_object): Change
2008         return type.
2009         * python/py-newobjfileevent.c
2010         (create_clear_objfiles_event_object): Update.
2011         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
2012         Update.
2013         * python/python.c (gdbpy_get_current_progspace): Update.
2014         (gdbpy_progspaces): Update.
2015         * python/py-progspace.c (pspace_to_pspace_object): Return a new
2016         reference.
2017         * python/py-objfile.c (objfpy_get_progspace): Update.
2018         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
2019         Update.
2020
2021 2018-09-16  Tom Tromey  <tom@tromey.com>
2022
2023         * python/lib/gdb/__init__.py (current_progspace, objfiles)
2024         (solib_name, block_for_pc, find_pc_line): New functions.
2025         (execute_unwinders): Update.
2026         * python/py-block.c (gdbpy_block_for_pc): Remove.
2027         * python/py-inferior.c (infpy_get_progspace): New function.
2028         (inferior_object_getset) <progspace>: Add.
2029         * python/py-progspace.c (pspy_objfiles): Rewrite.
2030         (pspy_solib_name, pspy_block_for_pc)
2031         (pspy_find_pc_line, pspy_is_valid): New functions.
2032         (progspace_object_methods): Add entries for solib_name,
2033         block_for_pc, find_pc_line, is_valid.
2034         * python/python-internal.h (gdbpy_block_for_pc)
2035         (build_objfiles_list): Don't declare.
2036         * python/python.c: Don't include solib.h.
2037         (gdbpy_solib_name, gdbpy_find_pc_line)
2038         (gdbpy_get_current_progspace, build_objfiles_list)
2039         (gdbpy_objfiles): Remove.
2040         (GdbMethods) <current_progspace, objfiles, block_for_pc,
2041         solib_name, find_pc_line>: Remove entries.
2042
2043 2018-09-16  Tom Tromey  <tom@tromey.com>
2044
2045         * top.c (new_ui_command): Use GNU style for metasyntactic
2046         variables.
2047         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
2048         variables.
2049         * maint.c (maintenance_translate_address): Remove "<>" around
2050         text.
2051         * interps.c (interpreter_exec_cmd): Use GNU style for
2052         metasyntactic variables.
2053         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
2054         metasyntactic variables.
2055         * tracepoint.c (tfind_range_command): Use GNU style for
2056         metasyntactic variables.
2057         (tfind_outside_command): Likewise.
2058         (_initialize_tracepoint): Likewise.
2059         * remote.c (extended_remote_target::create_inferior): Use GNU
2060         style for metasyntactic variables.
2061         * sparc64-tdep.c (adi_examine_command): Use GNU style for
2062         metasyntactic variables.
2063         (adi_assign_command): Likewise.
2064
2065 2018-09-16  Tom Tromey  <tom@tromey.com>
2066
2067         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
2068         metasyntactic variables.  Print message if no disassembler options
2069         are available.
2070
2071 2018-09-15  Tom Tromey  <tom@tromey.com>
2072
2073         * infcmd.c (get_inferior_args): Return const char *.
2074         * inferior.h (get_inferior_args): Return type now const.
2075         * linux-tdep.c (linux_fill_prpsinfo): Update.
2076         * procfs.c (procfs_target::make_corefile_notes): Update.
2077
2078 2018-09-07  Tom Tromey  <tom@tromey.com>
2079
2080         * python/python.c (execute_gdb_command): Call bpstat_do_actions
2081         inside the TRY.
2082
2083 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
2084
2085         * nios2-tdep.c (nios2_type_align): New.
2086         (nios2_gdb_arch_init): Install type_align hook.
2087
2088 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
2089
2090         * eval.c (fake_method::fake_method): Call xzalloc directly for a
2091         type that is neither object file owned, nor gdbarch owned.
2092         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
2093         gdbarch is non-NULL.
2094         (alloc_type_instance): Allocate non-objfile owned types on the
2095         gdbarch obstack.
2096         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
2097         using TYPE_ALLOC to ensure memory is allocated on the correct
2098         obstack.
2099         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
2100         obstack, or the gdbarch obstack.
2101         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
2102
2103 2018-09-14  Tom Tromey  <tom@tromey.com>
2104
2105         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
2106         block.
2107
2108 2018-09-14  Tom Tromey  <tom@tromey.com>
2109
2110         * nat/fork-inferior.c (get_startup_shell): Remove "static".
2111
2112 2018-09-13  Tom Tromey  <tom@tromey.com>
2113
2114         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
2115         static.
2116
2117 2018-09-13  Tom Tromey  <tom@tromey.com>
2118
2119         * exec.c (try_open_exec_file): Use std::string.
2120
2121 2018-09-13  Tom Tromey  <tom@tromey.com>
2122
2123         * utils.h (gdb_bfd_errmsg): Return std::string.
2124         * exec.c (exec_file_attach): Update.
2125         * compile/compile-object-load.c (compile_object_load): Update.
2126         * utils.c (gdb_bfd_errmsg): Return std::string.
2127
2128 2018-09-13  Tom Tromey  <tom@tromey.com>
2129
2130         * procfs.c (struct procinfo_deleter): New.
2131         (procinfo_up): New typedef.
2132         (do_destroy_procinfo_cleanup): Remove.
2133         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
2134
2135 2018-09-13  Tom Tromey  <tom@tromey.com>
2136
2137         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
2138
2139 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2140 2018-09-13  Tom Tromey  <tom@tromey.com>
2141
2142         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
2143         (pspy_get_objfiles): New function.
2144         (progspace_object_methods): New.
2145         (pspace_object_type): Add tp_methods callback.
2146         * python/python-internal.h (build_objfiles_list): New
2147         declaration.
2148         * python/python.c (build_objfiles_list): New function.
2149         (gdbpy_objfiles): Implement using build_objfiles_list.
2150         * NEWS: Mention the Progspace.objfiles method.
2151
2152 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2153
2154         * python/py-inferior.c (infpy_get_progspace): New function.
2155         (inferior_object_getset): Add progspace property.
2156         * NEWS: Mention the new property.
2157
2158 2018-09-13  Tom Tromey  <tom@tromey.com>
2159
2160         PR rust/23650:
2161         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
2162
2163 2018-09-13  Tom Tromey  <tom@tromey.com>
2164
2165         PR rust/23626:
2166         * rust-lang.c (rust_enum_variant): Now static.
2167         (rust_empty_enum_p): New function.
2168         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
2169         Handle empty enum.
2170
2171 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2172
2173         * python/py-inferior.c (infpy_repr): New.
2174         (inferior_object_type): Register infpy_repr.
2175         * python/py-objfile.c (objfpy_repr): New.
2176         (objfile_object_type): Register objfpy_repr.
2177
2178 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
2179
2180         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
2181
2182 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
2183
2184         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
2185         typo.
2186
2187 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
2188
2189         * common/common-utils.c: Don't include '<sys/stat.h>'.
2190         (is_regular_file): Move to...
2191         * common/filestuff.c (is_regular_file): ... here.
2192         * common/common-utils.h (is_regular_file): Move to...
2193         * common/filestuff.h (is_regular_file): ... here.
2194
2195 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
2196
2197         * skip.c (debug_skip): New variable.
2198         (skiplist_entry::do_skip_file_p): Add debug output.
2199         (skiplist_entry::do_skip_gfile_p): Likewise.
2200         (skiplist_entry::skip_function_p): Likewise.
2201         (_initialize_step_skip): Create debug command.
2202         * NEWS: Mention set/show debug skip.
2203
2204 2018-09-11  Xavier Roirand  <roirand@adacore.com>
2205
2206         * darwin-nat.c (should_disable_startup_with_shell):
2207         New function.
2208         (darwin_nat_target::create_inferior): Add call.
2209
2210 2018-09-11  Xavier Roirand  <roirand@adacore.com>
2211
2212         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
2213         inf_port, msg_state>: Initialize.
2214         (struct darwin_thread_info) <signaled, single_step>: Change
2215         type and initialize.
2216         (struct darwin_thread_info) <event>: Initialize.
2217
2218 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2219
2220         PR gdb/23555
2221         PR gdb/23558
2222         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
2223         guesses.
2224
2225 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2226
2227         Revert:
2228         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
2229
2230         PR gdb/23555
2231         PR gdb/23558
2232         * gnulib/aclocal.m4: Regenerate.
2233         * gnulib/config.in: Regenerate.
2234         * gnulib/configure: Regenerate.
2235         * gnulib/import/Makefile.am: Update.
2236         * gnulib/import/Makefile.in: Update.
2237         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
2238         * gnulib/import/_Noreturn.h: ... this.
2239         * gnulib/import/alloca.in.h: Update.
2240         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
2241         * gnulib/import/arg-nonnull.h: ... this.
2242         * gnulib/import/assure.h: Update.
2243         * gnulib/import/at-func.c: Update.
2244         * gnulib/import/basename-lgpl.c: Update.
2245         * gnulib/import/extra/snippet/c++defs.h: Rename to...
2246         * gnulib/import/c++defs.h: ... this.
2247         * gnulib/import/canonicalize-lgpl.c: Update.
2248         * gnulib/import/cdefs.h: Update.
2249         * gnulib/import/chdir-long.c: Update.
2250         * gnulib/import/chdir-long.h: Update.
2251         * gnulib/import/cloexec.c: Update.
2252         * gnulib/import/cloexec.h: Update.
2253         * gnulib/import/close.c: Update.
2254         * gnulib/import/closedir.c: Update.
2255         * gnulib/import/config.charset: Update.
2256         * gnulib/import/dirent-private.h: Update.
2257         * gnulib/import/dirent.in.h: Update.
2258         * gnulib/import/dirfd.c: Update.
2259         * gnulib/import/dirname-lgpl.c: Update.
2260         * gnulib/import/dirname.h: Update.
2261         * gnulib/import/dosname.h: Update.
2262         * gnulib/import/dup-safer-flag.c: Update.
2263         * gnulib/import/dup-safer.c: Update.
2264         * gnulib/import/dup.c: Update.
2265         * gnulib/import/dup2.c: Update.
2266         * gnulib/import/errno.in.h: Update.
2267         * gnulib/import/error.c: Update.
2268         * gnulib/import/error.h: Update.
2269         * gnulib/import/exitfail.c: Update.
2270         * gnulib/import/exitfail.h: Update.
2271         * gnulib/import/extra/update-copyright: Update.
2272         * gnulib/import/fchdir.c: Update.
2273         * gnulib/import/fcntl.c: Update.
2274         * gnulib/import/fcntl.in.h: Update.
2275         * gnulib/import/fd-hook.c: Update.
2276         * gnulib/import/fd-hook.h: Update.
2277         * gnulib/import/fd-safer-flag.c: Update.
2278         * gnulib/import/fd-safer.c: Update.
2279         * gnulib/import/fdopendir.c: Update.
2280         * gnulib/import/filename.h: Update.
2281         * gnulib/import/filenamecat-lgpl.c: Update.
2282         * gnulib/import/filenamecat.h: Update.
2283         * gnulib/import/flexmember.h: Update.
2284         * gnulib/import/float+.h: Update.
2285         * gnulib/import/float.c: Update.
2286         * gnulib/import/float.in.h: Update.
2287         * gnulib/import/fnmatch.c: Update.
2288         * gnulib/import/fnmatch.in.h: Update.
2289         * gnulib/import/fnmatch_loop.c: Update.
2290         * gnulib/import/fpucw.h: Update.
2291         * gnulib/import/frexp.c: Update.
2292         * gnulib/import/frexpl.c: Update.
2293         * gnulib/import/fstat.c: Update.
2294         * gnulib/import/fstatat.c: Update.
2295         * gnulib/import/getcwd-lgpl.c: Update.
2296         * gnulib/import/getcwd.c: Update.
2297         * gnulib/import/getdtablesize.c: Update.
2298         * gnulib/import/getlogin_r.c: Update.
2299         * gnulib/import/getprogname.c: Update.
2300         * gnulib/import/getprogname.h: Update.
2301         * gnulib/import/gettext.h: Update.
2302         * gnulib/import/gettimeofday.c: Update.
2303         * gnulib/import/glob-libc.h: Update.
2304         * gnulib/import/glob.c: Update.
2305         * gnulib/import/glob.in.h: Update.
2306         * gnulib/import/glob_internal.h: Update.
2307         * gnulib/import/glob_pattern_p.c: Update.
2308         * gnulib/import/globfree.c: Update.
2309         * gnulib/import/hard-locale.c: Update.
2310         * gnulib/import/hard-locale.h: Update.
2311         * gnulib/import/intprops.h: Update.
2312         * gnulib/import/inttypes.in.h: Update.
2313         * gnulib/import/isnan.c: Update.
2314         * gnulib/import/isnand-nolibm.h: Update.
2315         * gnulib/import/isnand.c: Update.
2316         * gnulib/import/isnanl-nolibm.h: Update.
2317         * gnulib/import/isnanl.c: Update.
2318         * gnulib/import/itold.c: Update.
2319         * gnulib/import/libc-config.h: Update.
2320         * gnulib/import/limits.in.h: Update.
2321         * gnulib/import/localcharset.c: Update.
2322         * gnulib/import/localcharset.h: Update.
2323         * gnulib/import/localtime-buffer.c: Update.
2324         * gnulib/import/localtime-buffer.h: Update.
2325         * gnulib/import/lstat.c: Update.
2326         * gnulib/import/m4/00gnulib.m4: Update.
2327         * gnulib/import/m4/__inline.m4: Update.
2328         * gnulib/import/m4/absolute-header.m4: Update.
2329         * gnulib/import/m4/alloca.m4: Update.
2330         * gnulib/import/m4/builtin-expect.m4: Update.
2331         * gnulib/import/m4/canonicalize.m4: Update.
2332         * gnulib/import/m4/chdir-long.m4: Update.
2333         * gnulib/import/m4/close.m4: Update.
2334         * gnulib/import/m4/closedir.m4: Update.
2335         * gnulib/import/m4/configmake.m4: Update.
2336         * gnulib/import/m4/d-ino.m4: Update.
2337         * gnulib/import/m4/d-type.m4: Update.
2338         * gnulib/import/m4/dirent_h.m4: Update.
2339         * gnulib/import/m4/dirfd.m4: Update.
2340         * gnulib/import/m4/dirname.m4: Update.
2341         * gnulib/import/m4/double-slash-root.m4: Update.
2342         * gnulib/import/m4/dup.m4: Update.
2343         * gnulib/import/m4/dup2.m4: Update.
2344         * gnulib/import/m4/eealloc.m4: Update.
2345         * gnulib/import/m4/environ.m4: Update.
2346         * gnulib/import/m4/errno_h.m4: Update.
2347         * gnulib/import/m4/error.m4: Update.
2348         * gnulib/import/m4/exponentd.m4: Update.
2349         * gnulib/import/m4/exponentl.m4: Update.
2350         * gnulib/import/m4/extensions.m4: Update.
2351         * gnulib/import/m4/extern-inline.m4: Update.
2352         * gnulib/import/m4/fchdir.m4: Update.
2353         * gnulib/import/m4/fcntl-o.m4: Update.
2354         * gnulib/import/m4/fcntl.m4: Update.
2355         * gnulib/import/m4/fcntl_h.m4: Update.
2356         * gnulib/import/m4/fdopendir.m4: Update.
2357         * gnulib/import/m4/filenamecat.m4: Update.
2358         * gnulib/import/m4/flexmember.m4: Update.
2359         * gnulib/import/m4/float_h.m4: Update.
2360         * gnulib/import/m4/fnmatch.m4: Update.
2361         * gnulib/import/m4/fnmatch_h.m4: Update.
2362         * gnulib/import/m4/fpieee.m4: Update.
2363         * gnulib/import/m4/frexp.m4: Update.
2364         * gnulib/import/m4/frexpl.m4: Update.
2365         * gnulib/import/m4/fstat.m4: Update.
2366         * gnulib/import/m4/fstatat.m4: Update.
2367         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
2368         * gnulib/import/m4/getcwd-path-max.m4: Update.
2369         * gnulib/import/m4/getcwd.m4: Update.
2370         * gnulib/import/m4/getdtablesize.m4: Update.
2371         * gnulib/import/m4/getlogin.m4: Update.
2372         * gnulib/import/m4/getlogin_r.m4: Update.
2373         * gnulib/import/m4/getpagesize.m4: Update.
2374         * gnulib/import/m4/getprogname.m4: Update.
2375         * gnulib/import/m4/gettimeofday.m4: Update.
2376         * gnulib/import/m4/glibc21.m4: Update.
2377         * gnulib/import/m4/glob.m4: Update.
2378         * gnulib/import/m4/glob_h.m4: Update.
2379         * gnulib/import/m4/gnulib-cache.m4: Update.
2380         * gnulib/import/m4/gnulib-common.m4: Update.
2381         * gnulib/import/m4/gnulib-comp.m4: Update.
2382         * gnulib/import/m4/gnulib-tool.m4: Update.
2383         * gnulib/import/m4/hard-locale.m4: Update.
2384         * gnulib/import/m4/include_next.m4: Update.
2385         * gnulib/import/m4/inttypes-pri.m4: Update.
2386         * gnulib/import/m4/inttypes.m4: Update.
2387         * gnulib/import/m4/isnand.m4: Update.
2388         * gnulib/import/m4/isnanl.m4: Update.
2389         * gnulib/import/m4/largefile.m4: Update.
2390         * gnulib/import/m4/limits-h.m4: Update.
2391         * gnulib/import/m4/localcharset.m4: Update.
2392         * gnulib/import/m4/locale-fr.m4: Update.
2393         * gnulib/import/m4/locale-ja.m4: Update.
2394         * gnulib/import/m4/locale-zh.m4: Update.
2395         * gnulib/import/m4/localtime-buffer.m4: Update.
2396         * gnulib/import/m4/longlong.m4: Update.
2397         * gnulib/import/m4/lstat.m4: Update.
2398         * gnulib/import/m4/malloc.m4: Update.
2399         * gnulib/import/m4/malloca.m4: Update.
2400         * gnulib/import/m4/math_h.m4: Update.
2401         * gnulib/import/m4/mbrtowc.m4: Update.
2402         * gnulib/import/m4/mbsinit.m4: Update.
2403         * gnulib/import/m4/mbsrtowcs.m4: Update.
2404         * gnulib/import/m4/mbstate_t.m4: Update.
2405         * gnulib/import/m4/memchr.m4: Update.
2406         * gnulib/import/m4/memmem.m4: Update.
2407         * gnulib/import/m4/mempcpy.m4: Update.
2408         * gnulib/import/m4/memrchr.m4: Update.
2409         * gnulib/import/m4/mkdir.m4: Update.
2410         * gnulib/import/m4/mkstemp.m4: Update.
2411         * gnulib/import/m4/mmap-anon.m4: Update.
2412         * gnulib/import/m4/mode_t.m4: Update.
2413         * gnulib/import/m4/msvc-inval.m4: Update.
2414         * gnulib/import/m4/msvc-nothrow.m4: Update.
2415         * gnulib/import/m4/multiarch.m4: Update.
2416         * gnulib/import/m4/nocrash.m4: Update.
2417         * gnulib/import/m4/off_t.m4: Update.
2418         * gnulib/import/m4/onceonly.m4: Update.
2419         * gnulib/import/m4/open-cloexec.m4: Update.
2420         * gnulib/import/m4/open.m4: Update.
2421         * gnulib/import/m4/openat.m4: Update.
2422         * gnulib/import/m4/opendir.m4: Update.
2423         * gnulib/import/m4/pathmax.m4: Update.
2424         * gnulib/import/m4/rawmemchr.m4: Update.
2425         * gnulib/import/m4/readdir.m4: Update.
2426         * gnulib/import/m4/readlink.m4: Update.
2427         * gnulib/import/m4/realloc.m4: Update.
2428         * gnulib/import/m4/rename.m4: Update.
2429         * gnulib/import/m4/rewinddir.m4: Update.
2430         * gnulib/import/m4/rmdir.m4: Update.
2431         * gnulib/import/m4/save-cwd.m4: Update.
2432         * gnulib/import/m4/secure_getenv.m4: Update.
2433         * gnulib/import/m4/setenv.m4: Update.
2434         * gnulib/import/m4/signal_h.m4: Update.
2435         * gnulib/import/m4/ssize_t.m4: Update.
2436         * gnulib/import/m4/stat-time.m4: Update.
2437         * gnulib/import/m4/stat.m4: Update.
2438         * gnulib/import/m4/std-gnu11.m4: Update.
2439         * gnulib/import/m4/stdbool.m4: Update.
2440         * gnulib/import/m4/stddef_h.m4: Update.
2441         * gnulib/import/m4/stdint.m4: Update.
2442         * gnulib/import/m4/stdio_h.m4: Update.
2443         * gnulib/import/m4/stdlib_h.m4: Update.
2444         * gnulib/import/m4/strchrnul.m4: Update.
2445         * gnulib/import/m4/strdup.m4: Update.
2446         * gnulib/import/m4/strerror.m4: Update.
2447         * gnulib/import/m4/string_h.m4: Update.
2448         * gnulib/import/m4/strstr.m4: Update.
2449         * gnulib/import/m4/strtok_r.m4: Update.
2450         * gnulib/import/m4/sys_socket_h.m4: Update.
2451         * gnulib/import/m4/sys_stat_h.m4: Update.
2452         * gnulib/import/m4/sys_time_h.m4: Update.
2453         * gnulib/import/m4/sys_types_h.m4: Update.
2454         * gnulib/import/m4/tempname.m4: Update.
2455         * gnulib/import/m4/time_h.m4: Update.
2456         * gnulib/import/m4/unistd-safer.m4: Update.
2457         * gnulib/import/m4/unistd_h.m4: Update.
2458         * gnulib/import/m4/warn-on-use.m4: Update.
2459         * gnulib/import/m4/wchar_h.m4: Update.
2460         * gnulib/import/m4/wchar_t.m4: Update.
2461         * gnulib/import/m4/wctype_h.m4: Update.
2462         * gnulib/import/m4/wint_t.m4: Update.
2463         * gnulib/import/malloc.c: Update.
2464         * gnulib/import/malloc/scratch_buffer.h: Update.
2465         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
2466         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
2467         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
2468         * gnulib/import/malloca.c: Update.
2469         * gnulib/import/malloca.h: Update.
2470         * gnulib/import/malloca.valgrind: Update.
2471         * gnulib/import/math.in.h: Update.
2472         * gnulib/import/mbrtowc.c: Update.
2473         * gnulib/import/mbsinit.c: Update.
2474         * gnulib/import/mbsrtowcs-impl.h: Update.
2475         * gnulib/import/mbsrtowcs-state.c: Update.
2476         * gnulib/import/mbsrtowcs.c: Update.
2477         * gnulib/import/memchr.c: Update.
2478         * gnulib/import/memmem.c: Update.
2479         * gnulib/import/mempcpy.c: Update.
2480         * gnulib/import/memrchr.c: Update.
2481         * gnulib/import/mkdir.c: Update.
2482         * gnulib/import/mkstemp.c: Update.
2483         * gnulib/import/msvc-inval.c: Update.
2484         * gnulib/import/msvc-inval.h: Update.
2485         * gnulib/import/msvc-nothrow.c: Update.
2486         * gnulib/import/msvc-nothrow.h: Update.
2487         * gnulib/import/open.c: Update.
2488         * gnulib/import/openat-die.c: Update.
2489         * gnulib/import/openat-priv.h: Update.
2490         * gnulib/import/openat-proc.c: Update.
2491         * gnulib/import/openat.c: Update.
2492         * gnulib/import/openat.h: Update.
2493         * gnulib/import/opendir.c: Update.
2494         * gnulib/import/pathmax.h: Update.
2495         * gnulib/import/pipe-safer.c: Update.
2496         * gnulib/import/rawmemchr.c: Update.
2497         * gnulib/import/readdir.c: Update.
2498         * gnulib/import/readlink.c: Update.
2499         * gnulib/import/realloc.c: Update.
2500         * gnulib/import/ref-add.sin: Update.
2501         * gnulib/import/ref-del.sin: Update.
2502         * gnulib/import/rename.c: Update.
2503         * gnulib/import/rewinddir.c: Update.
2504         * gnulib/import/rmdir.c: Update.
2505         * gnulib/import/same-inode.h: Update.
2506         * gnulib/import/save-cwd.c: Update.
2507         * gnulib/import/save-cwd.h: Update.
2508         * gnulib/import/scratch_buffer.h: Update.
2509         * gnulib/import/secure_getenv.c: Update.
2510         * gnulib/import/setenv.c: Update.
2511         * gnulib/import/signal.in.h: Update.
2512         * gnulib/import/stat-time.c: Update.
2513         * gnulib/import/stat-time.h: Update.
2514         * gnulib/import/stat-w32.c: Update.
2515         * gnulib/import/stat-w32.h: Update.
2516         * gnulib/import/stat.c: Update.
2517         * gnulib/import/stdbool.in.h: Update.
2518         * gnulib/import/stddef.in.h: Update.
2519         * gnulib/import/stdint.in.h: Update.
2520         * gnulib/import/stdio.in.h: Update.
2521         * gnulib/import/stdlib.in.h: Update.
2522         * gnulib/import/str-two-way.h: Update.
2523         * gnulib/import/strchrnul.c: Update.
2524         * gnulib/import/strdup.c: Update.
2525         * gnulib/import/streq.h: Update.
2526         * gnulib/import/strerror-override.c: Update.
2527         * gnulib/import/strerror-override.h: Update.
2528         * gnulib/import/strerror.c: Update.
2529         * gnulib/import/string.in.h: Update.
2530         * gnulib/import/stripslash.c: Update.
2531         * gnulib/import/strnlen1.c: Update.
2532         * gnulib/import/strnlen1.h: Update.
2533         * gnulib/import/strstr.c: Update.
2534         * gnulib/import/strtok_r.c: Update.
2535         * gnulib/import/sys_stat.in.h: Update.
2536         * gnulib/import/sys_time.in.h: Update.
2537         * gnulib/import/sys_types.in.h: Update.
2538         * gnulib/import/tempname.c: Update.
2539         * gnulib/import/tempname.h: Update.
2540         * gnulib/import/time.in.h: Update.
2541         * gnulib/import/unistd--.h: Update.
2542         * gnulib/import/unistd-safer.h: Update.
2543         * gnulib/import/unistd.in.h: Update.
2544         * gnulib/import/unsetenv.c: Update.
2545         * gnulib/import/verify.h: Update.
2546         * gnulib/import/extra/snippet/warn-on-use.h: Update.
2547         * gnulib/import/wchar.in.h: Update.
2548         * gnulib/import/wctype.in.h: Update.
2549         * gnulib/import/xalloc-oversized.h: Update.
2550         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
2551         "53e2c179f26a890fa6685af4b6c1397ee370433b".
2552
2553 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
2554
2555         * record-btrace.c (get_thread_current_frame): Remove
2556         old_inferior_ptid.
2557
2558 2018-09-10  Jerome Guitton  <guitton@adacore.com>
2559
2560         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
2561         with check_tag to 1 if and only if the type is tagged and the
2562         component being searched cannot been found in the current
2563         view. Otherwise, always call ada_to_fixed_type with
2564         check_tag to 0.
2565
2566 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2567
2568         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
2569         declaration.
2570         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
2571         * ada-varobj.c (ada_varobj_get_number_of_children,
2572         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
2573
2574 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2575
2576         * ada-valprint.c (ada_value_print): Use type instead of
2577         enclosing type.
2578
2579 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2580
2581         * ada-lang.c (ada_value_subscript): Handle case when parameter is
2582         an array of access to unconstrained array.
2583
2584 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2585
2586         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
2587         (ada_check_typedef): Use it.
2588
2589 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2590
2591         * ada-varobj.c (ada_varobj_describe_struct_child)
2592         (ada_varobj_describe_child): Handle union case like struct one.
2593
2594 2018-09-10  Tom Tromey  <tom@tromey.com>
2595
2596         PR python/18380:
2597         * python/python.c (_initialize_python): Make example in "python"
2598         help work in Python 3.
2599
2600 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
2601
2602         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
2603         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
2604         $(EXEEXT) to the script, as it is not a program.
2605
2606 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
2607
2608         * python/py-prettyprint.c (pretty_print_one_value): Return
2609         gdbpy_ref<>.
2610         (print_string_repr): Adjust.
2611         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
2612         * python/python-internal.h (apply_varobj_pretty_printer): Return
2613         gdbpy_ref<>.
2614         * varobj.c (varobj_value_get_print_value): Adjust.
2615
2616 2018-09-08  Tom Tromey  <tom@tromey.com>
2617
2618         PR python/16047:
2619         * python/py-prettyprint.c (pretty_print_one_value): Check for
2620         to_string method.
2621
2622 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2623
2624         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
2625         replace_operator_with_call.
2626
2627 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2628
2629         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
2630
2631 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2632
2633         * ada-typeprint.c (print_range): Print the bounds using TYPE
2634         rather than its TYPE_TARGET_TYPE.
2635
2636 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2637
2638         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
2639         call to ada_to_fixed_value_create.
2640
2641 2018-09-08  Jerome Guitton  <guitton@adacore.com>
2642
2643         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
2644
2645 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2646
2647         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
2648         by calls to error.
2649
2650 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2651
2652         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
2653         Move update of loop variable "fi".
2654
2655 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2656
2657         * ada-lang.c (value_assign_to_component): In the case of
2658         big-endian targets, extract the bits of the given VAL
2659         using an src_offset of zero if container is not a scalar.
2660
2661 2018-09-06  Simon Ser  <contact@emersion.fr>
2662
2663         PR gdb/23105
2664         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
2665         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
2666         * fbsd-tdep.c (fbsd_make_note_desc): New.
2667         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
2668         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
2669         * target.h (enum target_object) Add FreeBSD-specific
2670         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
2671
2672 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2673
2674         * compile/compile-c.h (generate_c_for_variable_locations):
2675         Change reference to pointer.
2676         * compile/compile-c-support.c (compile_program) <compute>:
2677         Likewise.
2678         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
2679         (generate_c_for_for_one_variable): Likewise
2680         (generate_c_for_variable_locations): Likewise
2681         * compile/compile-c-types.c (compile_c_instance::convert_type):
2682         Likewise
2683         * compile/compile-cplus-symbols.c (convert_one_symbol):
2684         std::move the scope passed to enter_scope.
2685         * compile/compile-cplus-types.c
2686         (compile_cplus_instance::enter_scope): Make parameter
2687         rvalue-reference.
2688         (compile_cplus_instance::new_scope): Change reference to
2689         pointer.
2690         (compile_cplus_instance::convert_type): Likewise
2691         (compile_cplus_convert_typedef): std::move the scope passed to
2692         enter_scope.
2693         (compile_cplus_convert_struct_or_union): Likewise.
2694         (compile_cplus_convert_enum): Likewise.
2695         (compile_cplus_convert_namespace): Likewise.
2696         * compile/compile-cplus.h (compile_cplus_instance)
2697         <enter_scope>: Make parameter rvalue-reference.
2698         * compile/compile-internal.h (compile_instance)
2699         <get_cached_type>: Likewise
2700         * compile/compile-loc2c.c (push): Likewise
2701         (pushf): Likewise
2702         (unary): Likewise
2703         (binary): Likewise
2704         (print_label): Likewise
2705         (pushf_register_address): Likewise
2706         (pushf_register): Likewise
2707         (do_compile_dwarf_expr_to_c): Likewise
2708         (compile_dwarf_expr_to_c): Likewise
2709         (compile_dwarf_bounds_to_c): Likewise
2710         * compile/compile.c (compile_instance::get_cached_type):
2711         Likewise
2712         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
2713         (compile_dwarf_bounds_to_c): Likewise
2714         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
2715         (dwarf2_compile_property_to_c): Likewise
2716         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
2717         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
2718         Likewise
2719
2720 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2721
2722         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
2723         * tui/tui-data.c (init_content_element): Don't initialize it.
2724
2725 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2726
2727         * tui/tui-data.h (struct tui_win_info)
2728         <detail::opaque>: Remove.
2729         * tui/tui-data.c (init_win_info): Remove assignment.
2730
2731 2018-09-05  Tom Tromey  <tom@tromey.com>
2732
2733         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
2734         -Wformat-nonliteral.
2735         * target-float.c (host_float_ops<T>::to_string)
2736         (host_float_ops<T>::from_string): Use
2737         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
2738         * configure: Rebuild.
2739
2740 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
2741
2742         * printcmd.c (printf_c_string): Use
2743         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
2744         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
2745
2746 2018-09-05  Tom Tromey  <tom@tromey.com>
2747
2748         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
2749
2750 2018-09-05  Tom de Vries  <tdevries@suse.de>
2751
2752         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
2753         with resolve_abstract_p == true.
2754         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
2755         defaulting to false. Propagate resolve_abstract_p to
2756         dwarf2_fetch_die_loc_sect_off.
2757         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
2758         parameter, defaulting to false.
2759         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
2760         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
2761         parameter.
2762         * dwarf2read.h (struct die_info): Forward-declare.
2763         (die_info_ptr): New typedef.
2764         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
2765
2766 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
2767
2768         GDB 8.2 released.
2769
2770 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
2771             Pedro Alves  <palves@redhat.com>
2772
2773         * gnulib/Makefile.in (aclocal_m4_deps): Move to
2774         "aclocal-m4-deps.mk".  Include file here.
2775         $(srcdir)/aclocal.m4: Add "configure.ac".
2776         * gnulib/aclocal-m4-deps.mk: New file.
2777         * gnulib/update-gnulib.sh: Automatically update
2778         "aclocal-m4-deps.mk".
2779
2780 2018-09-04  Tom Tromey  <tom@tromey.com>
2781
2782         * configure: Rebuild.
2783         * configure.ac: Remove multi-ice code.
2784
2785 2018-09-04  Tom Tromey  <tom@tromey.com>
2786
2787         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
2788         (ada-exp.o): Update.
2789
2790 2018-09-04  Tom Tromey  <tom@tromey.com>
2791
2792         * Makefile.in (printcmd.o, target-float.o): Remove.
2793         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
2794
2795 2018-09-04  Tom Tromey  <tom@tromey.com>
2796
2797         * gnulib/Makefile.in: Remove obsolete comment.
2798         * Makefile.in: Remove obsolete comment.
2799
2800 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
2801
2802         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
2803         line with '+'.
2804
2805 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2806
2807         * riscv-tdep.c: Add 'prologue-value.h' include.
2808         (struct riscv_unwind_cache): New struct.
2809         (riscv_debug_unwinder): New global.
2810         (riscv_scan_prologue): Update arguments, capture register details
2811         from prologue scan.
2812         (riscv_skip_prologue): Reformat arguments line, move end of
2813         prologue calculation into riscv_scan_prologue.
2814         (riscv_frame_cache): Update return type, create
2815         riscv_unwind_cache, scan the prologue, and fill in remaining cache
2816         details.
2817         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
2818         (riscv_frame_prev_register): Use the trad_frame within the
2819         riscv_unwind_cache.
2820         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
2821         flag.
2822
2823 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2824
2825         * trad-frame.h (trad_frame_set_realreg): Declare.
2826         (trad_frame_set_addr): Declare.
2827         * trad-frame.c (trad_frame_set_realreg): Define new function.
2828         (trad_frame_set_addr): Define new function.
2829         (trad_frame_set_reg_realreg): Use new function.
2830         (trad_frame_set_reg_addr): Use new function.
2831
2832 2018-09-01  Keith Seitz  <keiths@redhat.com>
2833
2834         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
2835         pulongest instead of "%lld".
2836         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
2837         ATTRIBUTE_UNUSED.
2838
2839 2018-08-31  Tom Tromey  <tom@tromey.com>
2840
2841         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
2842         variant part type.
2843
2844 2018-08-31  Pedro Alves  <palves@redhat.com>
2845
2846         * gdbarch.h: Regenerate.
2847
2848 2018-08-31  Pedro Alves  <palves@redhat.com>
2849
2850         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
2851         * target.h (Hardware watchpoint interfaces): Describe
2852         continuable/steppable/non-steppable watchpoints.
2853         * gdbarch.h, gdbarch.c: Regenerate.
2854
2855 2018-08-31  Pedro Alves  <palves@redhat.com>
2856
2857         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
2858         Delete.
2859         * s390-linux-nat.c
2860         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
2861         * target.h (target_ops::have_continuable_watchpoint): Delete.
2862         (target_have_continuable_watchpoint): Delete.
2863         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
2864         * target-delegates.c: Regenerate.
2865
2866 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
2867
2868         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
2869         the files present in "gnulib/import/m4/".
2870
2871 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2872
2873         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
2874         c.sw, c.swsp, and c.sdsp.
2875
2876 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2877
2878         * riscv-tdep.c (struct riscv_inferior_data): Delete.
2879         (riscv_read_misa_reg): Don't cache value read into inferior data.
2880         (riscv_new_inferior_data): Delete.
2881         (riscv_inferior_data_cleanup): Delete.
2882         (riscv_inferior_data): Delete.
2883         (riscv_invalidate_inferior_data): Delete.
2884         (_initialize_riscv_tdep): Remove initialisation of inferior data.
2885
2886 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
2887
2888         * compile/compile-cplus-types.c
2889         (compile_cplus_instance::leave_scope): Take the address of scope
2890         object.
2891         (compile_cplus_instance::convert_qualified_base): Compare quals
2892         to 0.
2893
2894 2018-08-30  Keith Seitz  <keiths@redhat.com>
2895
2896         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
2897         Use "%s" and host_address_to_string instead of "%p" in printf.
2898
2899 2018-08-29  Keith Seitz  <keiths@redhat.com>
2900
2901         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
2902         and compile-cplus-types.c.
2903         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
2904         * c-lang.c (cplus_language_defn): Set C++ compile functions.
2905         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
2906         Declare.
2907         * compile/compile-c-support.c: Include compile-cplus.h.
2908         (load_libcompile): Templatize.
2909         (get_compile_context): "New" function.
2910         (c_get_compile_context): Use get_compile_context.
2911         (cplus_get_compile_context): New function.
2912         (cplus_push_user_expression, cplus_pop_user_expression)
2913         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
2914         (cplus_compute_program): Define new structs/functions.
2915         * compile/compile-cplus-symmbols.c: New file.
2916         * compile/compile-cplus-types.c: New file.
2917         * compile/compile-cplus.h: New file.
2918         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
2919         Declare.
2920         * compile/compile-object-load.c (get_out_value_type): Use
2921         strncmp_iw when comparing symbol names.
2922         (compile_object_load): Add mst_bss and mst_data.
2923         * compile/compile.c (_initialize_compile): Remove
2924         -Wno-implicit-function-declaration from `compile_args'.
2925         * compile/gcc-cp-plugin.h: New file.
2926         * NEWS: Mention C++ compile support and new debug options.
2927
2928 2018-08-29  Keith Seitz  <keiths@redhat.com>
2929
2930         * linespec.c (collect_info::add_symbol): Make virtual.
2931         (struct symbol_searcher_collect_info): New struct.
2932         (symbol_searcher::find_all_symbols): New method.
2933         * symtab.h (class symbol_searcher): New class.
2934
2935 2018-08-29  Keith Seitz  <keiths@redhat.com>
2936
2937         * linespec.c (struct linespec) <function_symbols, label_symbols>:
2938         Change to vector of block_symbol.  Update all users.
2939         (struct collect_info) <symbols>: Likewise.
2940         (collect_info::add_symbol): Take block_symbol as argument.
2941         Update all callers.
2942         (decode_compound_collector) <m_symbols>: Change type to vector
2943         of block_symbol.  Update all users.
2944         (decode_compound_collector::operator ()): Change parameter type
2945         to block_symbol.
2946         (find_method, find_function_symbols, find_linespec_symbols)
2947         (find_label_symbols_in_block, find_label_symbols): Change symbol
2948         vectors to block_symbol vectors.
2949         * symtab.h (symbol_found_callback_ftype): Change parameter type to
2950         block_symbol.
2951
2952 2018-08-29  Keith Seitz  <keiths@redhat.com>
2953
2954         * linespec.c (symbolp): Remove typedef and VEC definitions.
2955         (bound_minimal_symbol_d): Likewise.
2956
2957 2018-08-29  Keith Seitz  <keiths@redhat.com>
2958
2959         * linespec.c (decode_compound_collector::decode_compound_collector):
2960         Remove initialization for `m_symtabs'.
2961         (decode_compound_collector::release_symbols): Change return type
2962         to std::vector.  Update all callers.
2963         (class decode_compound_collector) <m_symbols>: Change type to
2964         std::vector.
2965         (lookup_prefix_sym): Change return type to std::vector.  Update all
2966         callers.
2967         (compare_symbols): Remove.
2968         (std_compare_symbols): Rename to `compare_symbols'.
2969         (find_method): Change `sym_classes' parameter to std::vector.
2970         Update all callers.  Use std::sort to sort sym_classes.
2971         (find_linespec_symbols): Remove cleanup.
2972
2973 2018-08-29  Keith Seitz  <keiths@redhat.com>
2974
2975         * linespec.c (struct linespec) <minimal_symbols>: Change type to
2976         std::vector.  Update all users.
2977         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
2978         (struct collect_info) <minimal_symbols>: Likewise.
2979         (compare_msymbols): Return bool.  Change parameters to const
2980         bound_minimal_symbol references.
2981         (find_method, find_function_symbols, find_linespec_symbols): Change
2982         `minsyms' parameter to std::vector.  Update all callers.
2983
2984 2018-08-29  Keith Seitz  <keiths@redhat.com>
2985
2986         * linespec.c (struct linespec) <label_symbols>: Change type to
2987         std::vector.  Update all users.
2988         (find_label_symbols_in_block): Change `result' parameter to
2989         std::vector.  Update all callers.
2990         (find_label_symbols): Return std::vector.  Update all callers.
2991
2992 2018-08-29  Keith Seitz  <keiths@redhat.com>
2993
2994         * linespec.c (struct linespec) <function_symbols>: Change type to
2995         std::vector.  Update all users.
2996         (struct collect_info) <function_symbols>: Likewise.
2997         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
2998         (std_compare_symbols): New function.
2999         (find_method, find_function_symbols, find_linespec_symbols)
3000         (find_label_symbols_in_block): Change `symbols' parameter to
3001         std::vector.  Update all callers.
3002         (find_label_symbols): Likewise for `function_symbols' and
3003         `label_funcs_ret'.
3004
3005 2018-08-29  Keith Seitz  <keiths@redhat.com>
3006
3007         * linespec.c (symtab_vector_up): Define.
3008         (struct linespec) <file_symtabs>: Change type to std::vector *.
3009         Update all uses.
3010         (struct collect_info) <file_symtabs>: Likewise.
3011         (collect_symtabs_from_filename): Return symtab_vector_up.
3012         Update all callers.
3013         (decode_objc): Remove cleanup.
3014         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
3015         (symtab_collector::release_symtabs): Return symtab_vector_up.
3016         Update all callers.
3017         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
3018         Update all users.
3019         (collect_symtabs_from_filename, symtabs_from_filename): Return
3020         symtab_vector_up.  Update all callers.
3021
3022 2018-08-29  Tom Tromey  <tom@tromey.com>
3023
3024         * csky-tdep.c (csky_analyze_prologue): Use
3025         core_addr_to_string_nz.
3026
3027 2018-08-29  Tom Tromey  <tom@tromey.com>
3028
3029         * windows-nat.c (struct xlate_exception) <them>: Change type to
3030         DWORD.
3031         (xlate): Fix formatting.  Remove last entry.
3032         (struct xlate_exception, xlate): Comment out.
3033         (windows_nat_target::resume): Use ranged for.
3034
3035 2018-08-29  Jim Wilson  <jimw@sifive.com>
3036
3037         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
3038         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
3039         of NT_PRFPREG.
3040         (riscv_linux_nat_target::store_registers): Likewise.
3041
3042 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
3043
3044         PR gdb/23555
3045         PR gdb/23558
3046         * gnulib/aclocal.m4: Regenerate.
3047         * gnulib/config.in: Regenerate.
3048         * gnulib/configure: Regenerate.
3049         * gnulib/import/Makefile.am: Update.
3050         * gnulib/import/Makefile.in: Update.
3051         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
3052         * gnulib/import/_Noreturn.h: ... this.
3053         * gnulib/import/alloca.in.h: Update.
3054         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
3055         * gnulib/import/arg-nonnull.h: ... this.
3056         * gnulib/import/assure.h: Update.
3057         * gnulib/import/at-func.c: Update.
3058         * gnulib/import/basename-lgpl.c: Update.
3059         * gnulib/import/extra/snippet/c++defs.h: Rename to...
3060         * gnulib/import/c++defs.h: ... this.
3061         * gnulib/import/canonicalize-lgpl.c: Update.
3062         * gnulib/import/cdefs.h: Update.
3063         * gnulib/import/chdir-long.c: Update.
3064         * gnulib/import/chdir-long.h: Update.
3065         * gnulib/import/cloexec.c: Update.
3066         * gnulib/import/cloexec.h: Update.
3067         * gnulib/import/close.c: Update.
3068         * gnulib/import/closedir.c: Update.
3069         * gnulib/import/config.charset: Update.
3070         * gnulib/import/dirent-private.h: Update.
3071         * gnulib/import/dirent.in.h: Update.
3072         * gnulib/import/dirfd.c: Update.
3073         * gnulib/import/dirname-lgpl.c: Update.
3074         * gnulib/import/dirname.h: Update.
3075         * gnulib/import/dosname.h: Update.
3076         * gnulib/import/dup-safer-flag.c: Update.
3077         * gnulib/import/dup-safer.c: Update.
3078         * gnulib/import/dup.c: Update.
3079         * gnulib/import/dup2.c: Update.
3080         * gnulib/import/errno.in.h: Update.
3081         * gnulib/import/error.c: Update.
3082         * gnulib/import/error.h: Update.
3083         * gnulib/import/exitfail.c: Update.
3084         * gnulib/import/exitfail.h: Update.
3085         * gnulib/import/extra/update-copyright: Update.
3086         * gnulib/import/fchdir.c: Update.
3087         * gnulib/import/fcntl.c: Update.
3088         * gnulib/import/fcntl.in.h: Update.
3089         * gnulib/import/fd-hook.c: Update.
3090         * gnulib/import/fd-hook.h: Update.
3091         * gnulib/import/fd-safer-flag.c: Update.
3092         * gnulib/import/fd-safer.c: Update.
3093         * gnulib/import/fdopendir.c: Update.
3094         * gnulib/import/filename.h: Update.
3095         * gnulib/import/filenamecat-lgpl.c: Update.
3096         * gnulib/import/filenamecat.h: Update.
3097         * gnulib/import/flexmember.h: Update.
3098         * gnulib/import/float+.h: Update.
3099         * gnulib/import/float.c: Update.
3100         * gnulib/import/float.in.h: Update.
3101         * gnulib/import/fnmatch.c: Update.
3102         * gnulib/import/fnmatch.in.h: Update.
3103         * gnulib/import/fnmatch_loop.c: Update.
3104         * gnulib/import/fpucw.h: Update.
3105         * gnulib/import/frexp.c: Update.
3106         * gnulib/import/frexpl.c: Update.
3107         * gnulib/import/fstat.c: Update.
3108         * gnulib/import/fstatat.c: Update.
3109         * gnulib/import/getcwd-lgpl.c: Update.
3110         * gnulib/import/getcwd.c: Update.
3111         * gnulib/import/getdtablesize.c: Update.
3112         * gnulib/import/getlogin_r.c: Update.
3113         * gnulib/import/getprogname.c: Update.
3114         * gnulib/import/getprogname.h: Update.
3115         * gnulib/import/gettext.h: Update.
3116         * gnulib/import/gettimeofday.c: Update.
3117         * gnulib/import/glob-libc.h: Update.
3118         * gnulib/import/glob.c: Update.
3119         * gnulib/import/glob.in.h: Update.
3120         * gnulib/import/glob_internal.h: Update.
3121         * gnulib/import/glob_pattern_p.c: Update.
3122         * gnulib/import/globfree.c: Update.
3123         * gnulib/import/hard-locale.c: Update.
3124         * gnulib/import/hard-locale.h: Update.
3125         * gnulib/import/intprops.h: Update.
3126         * gnulib/import/inttypes.in.h: Update.
3127         * gnulib/import/isnan.c: Update.
3128         * gnulib/import/isnand-nolibm.h: Update.
3129         * gnulib/import/isnand.c: Update.
3130         * gnulib/import/isnanl-nolibm.h: Update.
3131         * gnulib/import/isnanl.c: Update.
3132         * gnulib/import/itold.c: Update.
3133         * gnulib/import/libc-config.h: Update.
3134         * gnulib/import/limits.in.h: Update.
3135         * gnulib/import/localcharset.c: Update.
3136         * gnulib/import/localcharset.h: Update.
3137         * gnulib/import/localtime-buffer.c: Update.
3138         * gnulib/import/localtime-buffer.h: Update.
3139         * gnulib/import/lstat.c: Update.
3140         * gnulib/import/m4/00gnulib.m4: Update.
3141         * gnulib/import/m4/__inline.m4: Update.
3142         * gnulib/import/m4/absolute-header.m4: Update.
3143         * gnulib/import/m4/alloca.m4: Update.
3144         * gnulib/import/m4/builtin-expect.m4: Update.
3145         * gnulib/import/m4/canonicalize.m4: Update.
3146         * gnulib/import/m4/chdir-long.m4: Update.
3147         * gnulib/import/m4/close.m4: Update.
3148         * gnulib/import/m4/closedir.m4: Update.
3149         * gnulib/import/m4/configmake.m4: Update.
3150         * gnulib/import/m4/d-ino.m4: Update.
3151         * gnulib/import/m4/d-type.m4: Update.
3152         * gnulib/import/m4/dirent_h.m4: Update.
3153         * gnulib/import/m4/dirfd.m4: Update.
3154         * gnulib/import/m4/dirname.m4: Update.
3155         * gnulib/import/m4/double-slash-root.m4: Update.
3156         * gnulib/import/m4/dup.m4: Update.
3157         * gnulib/import/m4/dup2.m4: Update.
3158         * gnulib/import/m4/eealloc.m4: Update.
3159         * gnulib/import/m4/environ.m4: Update.
3160         * gnulib/import/m4/errno_h.m4: Update.
3161         * gnulib/import/m4/error.m4: Update.
3162         * gnulib/import/m4/exponentd.m4: Update.
3163         * gnulib/import/m4/exponentl.m4: Update.
3164         * gnulib/import/m4/extensions.m4: Update.
3165         * gnulib/import/m4/extern-inline.m4: Update.
3166         * gnulib/import/m4/fchdir.m4: Update.
3167         * gnulib/import/m4/fcntl-o.m4: Update.
3168         * gnulib/import/m4/fcntl.m4: Update.
3169         * gnulib/import/m4/fcntl_h.m4: Update.
3170         * gnulib/import/m4/fdopendir.m4: Update.
3171         * gnulib/import/m4/filenamecat.m4: Update.
3172         * gnulib/import/m4/flexmember.m4: Update.
3173         * gnulib/import/m4/float_h.m4: Update.
3174         * gnulib/import/m4/fnmatch.m4: Update.
3175         * gnulib/import/m4/fnmatch_h.m4: Update.
3176         * gnulib/import/m4/fpieee.m4: Update.
3177         * gnulib/import/m4/frexp.m4: Update.
3178         * gnulib/import/m4/frexpl.m4: Update.
3179         * gnulib/import/m4/fstat.m4: Update.
3180         * gnulib/import/m4/fstatat.m4: Update.
3181         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
3182         * gnulib/import/m4/getcwd-path-max.m4: Update.
3183         * gnulib/import/m4/getcwd.m4: Update.
3184         * gnulib/import/m4/getdtablesize.m4: Update.
3185         * gnulib/import/m4/getlogin.m4: Update.
3186         * gnulib/import/m4/getlogin_r.m4: Update.
3187         * gnulib/import/m4/getpagesize.m4: Update.
3188         * gnulib/import/m4/getprogname.m4: Update.
3189         * gnulib/import/m4/gettimeofday.m4: Update.
3190         * gnulib/import/m4/glibc21.m4: Update.
3191         * gnulib/import/m4/glob.m4: Update.
3192         * gnulib/import/m4/glob_h.m4: Update.
3193         * gnulib/import/m4/gnulib-cache.m4: Update.
3194         * gnulib/import/m4/gnulib-common.m4: Update.
3195         * gnulib/import/m4/gnulib-comp.m4: Update.
3196         * gnulib/import/m4/gnulib-tool.m4: Update.
3197         * gnulib/import/m4/hard-locale.m4: Update.
3198         * gnulib/import/m4/include_next.m4: Update.
3199         * gnulib/import/m4/inttypes-pri.m4: Update.
3200         * gnulib/import/m4/inttypes.m4: Update.
3201         * gnulib/import/m4/isnand.m4: Update.
3202         * gnulib/import/m4/isnanl.m4: Update.
3203         * gnulib/import/m4/largefile.m4: Update.
3204         * gnulib/import/m4/limits-h.m4: Update.
3205         * gnulib/import/m4/localcharset.m4: Update.
3206         * gnulib/import/m4/locale-fr.m4: Update.
3207         * gnulib/import/m4/locale-ja.m4: Update.
3208         * gnulib/import/m4/locale-zh.m4: Update.
3209         * gnulib/import/m4/localtime-buffer.m4: Update.
3210         * gnulib/import/m4/longlong.m4: Update.
3211         * gnulib/import/m4/lstat.m4: Update.
3212         * gnulib/import/m4/malloc.m4: Update.
3213         * gnulib/import/m4/malloca.m4: Update.
3214         * gnulib/import/m4/math_h.m4: Update.
3215         * gnulib/import/m4/mbrtowc.m4: Update.
3216         * gnulib/import/m4/mbsinit.m4: Update.
3217         * gnulib/import/m4/mbsrtowcs.m4: Update.
3218         * gnulib/import/m4/mbstate_t.m4: Update.
3219         * gnulib/import/m4/memchr.m4: Update.
3220         * gnulib/import/m4/memmem.m4: Update.
3221         * gnulib/import/m4/mempcpy.m4: Update.
3222         * gnulib/import/m4/memrchr.m4: Update.
3223         * gnulib/import/m4/mkdir.m4: Update.
3224         * gnulib/import/m4/mkstemp.m4: Update.
3225         * gnulib/import/m4/mmap-anon.m4: Update.
3226         * gnulib/import/m4/mode_t.m4: Update.
3227         * gnulib/import/m4/msvc-inval.m4: Update.
3228         * gnulib/import/m4/msvc-nothrow.m4: Update.
3229         * gnulib/import/m4/multiarch.m4: Update.
3230         * gnulib/import/m4/nocrash.m4: Update.
3231         * gnulib/import/m4/off_t.m4: Update.
3232         * gnulib/import/m4/onceonly.m4: Update.
3233         * gnulib/import/m4/open-cloexec.m4: Update.
3234         * gnulib/import/m4/open.m4: Update.
3235         * gnulib/import/m4/openat.m4: Update.
3236         * gnulib/import/m4/opendir.m4: Update.
3237         * gnulib/import/m4/pathmax.m4: Update.
3238         * gnulib/import/m4/rawmemchr.m4: Update.
3239         * gnulib/import/m4/readdir.m4: Update.
3240         * gnulib/import/m4/readlink.m4: Update.
3241         * gnulib/import/m4/realloc.m4: Update.
3242         * gnulib/import/m4/rename.m4: Update.
3243         * gnulib/import/m4/rewinddir.m4: Update.
3244         * gnulib/import/m4/rmdir.m4: Update.
3245         * gnulib/import/m4/save-cwd.m4: Update.
3246         * gnulib/import/m4/secure_getenv.m4: Update.
3247         * gnulib/import/m4/setenv.m4: Update.
3248         * gnulib/import/m4/signal_h.m4: Update.
3249         * gnulib/import/m4/ssize_t.m4: Update.
3250         * gnulib/import/m4/stat-time.m4: Update.
3251         * gnulib/import/m4/stat.m4: Update.
3252         * gnulib/import/m4/std-gnu11.m4: Update.
3253         * gnulib/import/m4/stdbool.m4: Update.
3254         * gnulib/import/m4/stddef_h.m4: Update.
3255         * gnulib/import/m4/stdint.m4: Update.
3256         * gnulib/import/m4/stdio_h.m4: Update.
3257         * gnulib/import/m4/stdlib_h.m4: Update.
3258         * gnulib/import/m4/strchrnul.m4: Update.
3259         * gnulib/import/m4/strdup.m4: Update.
3260         * gnulib/import/m4/strerror.m4: Update.
3261         * gnulib/import/m4/string_h.m4: Update.
3262         * gnulib/import/m4/strstr.m4: Update.
3263         * gnulib/import/m4/strtok_r.m4: Update.
3264         * gnulib/import/m4/sys_socket_h.m4: Update.
3265         * gnulib/import/m4/sys_stat_h.m4: Update.
3266         * gnulib/import/m4/sys_time_h.m4: Update.
3267         * gnulib/import/m4/sys_types_h.m4: Update.
3268         * gnulib/import/m4/tempname.m4: Update.
3269         * gnulib/import/m4/time_h.m4: Update.
3270         * gnulib/import/m4/unistd-safer.m4: Update.
3271         * gnulib/import/m4/unistd_h.m4: Update.
3272         * gnulib/import/m4/warn-on-use.m4: Update.
3273         * gnulib/import/m4/wchar_h.m4: Update.
3274         * gnulib/import/m4/wchar_t.m4: Update.
3275         * gnulib/import/m4/wctype_h.m4: Update.
3276         * gnulib/import/m4/wint_t.m4: Update.
3277         * gnulib/import/malloc.c: Update.
3278         * gnulib/import/malloc/scratch_buffer.h: Update.
3279         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
3280         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
3281         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
3282         * gnulib/import/malloca.c: Update.
3283         * gnulib/import/malloca.h: Update.
3284         * gnulib/import/malloca.valgrind: Update.
3285         * gnulib/import/math.in.h: Update.
3286         * gnulib/import/mbrtowc.c: Update.
3287         * gnulib/import/mbsinit.c: Update.
3288         * gnulib/import/mbsrtowcs-impl.h: Update.
3289         * gnulib/import/mbsrtowcs-state.c: Update.
3290         * gnulib/import/mbsrtowcs.c: Update.
3291         * gnulib/import/memchr.c: Update.
3292         * gnulib/import/memmem.c: Update.
3293         * gnulib/import/mempcpy.c: Update.
3294         * gnulib/import/memrchr.c: Update.
3295         * gnulib/import/mkdir.c: Update.
3296         * gnulib/import/mkstemp.c: Update.
3297         * gnulib/import/msvc-inval.c: Update.
3298         * gnulib/import/msvc-inval.h: Update.
3299         * gnulib/import/msvc-nothrow.c: Update.
3300         * gnulib/import/msvc-nothrow.h: Update.
3301         * gnulib/import/open.c: Update.
3302         * gnulib/import/openat-die.c: Update.
3303         * gnulib/import/openat-priv.h: Update.
3304         * gnulib/import/openat-proc.c: Update.
3305         * gnulib/import/openat.c: Update.
3306         * gnulib/import/openat.h: Update.
3307         * gnulib/import/opendir.c: Update.
3308         * gnulib/import/pathmax.h: Update.
3309         * gnulib/import/pipe-safer.c: Update.
3310         * gnulib/import/rawmemchr.c: Update.
3311         * gnulib/import/readdir.c: Update.
3312         * gnulib/import/readlink.c: Update.
3313         * gnulib/import/realloc.c: Update.
3314         * gnulib/import/ref-add.sin: Update.
3315         * gnulib/import/ref-del.sin: Update.
3316         * gnulib/import/rename.c: Update.
3317         * gnulib/import/rewinddir.c: Update.
3318         * gnulib/import/rmdir.c: Update.
3319         * gnulib/import/same-inode.h: Update.
3320         * gnulib/import/save-cwd.c: Update.
3321         * gnulib/import/save-cwd.h: Update.
3322         * gnulib/import/scratch_buffer.h: Update.
3323         * gnulib/import/secure_getenv.c: Update.
3324         * gnulib/import/setenv.c: Update.
3325         * gnulib/import/signal.in.h: Update.
3326         * gnulib/import/stat-time.c: Update.
3327         * gnulib/import/stat-time.h: Update.
3328         * gnulib/import/stat-w32.c: Update.
3329         * gnulib/import/stat-w32.h: Update.
3330         * gnulib/import/stat.c: Update.
3331         * gnulib/import/stdbool.in.h: Update.
3332         * gnulib/import/stddef.in.h: Update.
3333         * gnulib/import/stdint.in.h: Update.
3334         * gnulib/import/stdio.in.h: Update.
3335         * gnulib/import/stdlib.in.h: Update.
3336         * gnulib/import/str-two-way.h: Update.
3337         * gnulib/import/strchrnul.c: Update.
3338         * gnulib/import/strdup.c: Update.
3339         * gnulib/import/streq.h: Update.
3340         * gnulib/import/strerror-override.c: Update.
3341         * gnulib/import/strerror-override.h: Update.
3342         * gnulib/import/strerror.c: Update.
3343         * gnulib/import/string.in.h: Update.
3344         * gnulib/import/stripslash.c: Update.
3345         * gnulib/import/strnlen1.c: Update.
3346         * gnulib/import/strnlen1.h: Update.
3347         * gnulib/import/strstr.c: Update.
3348         * gnulib/import/strtok_r.c: Update.
3349         * gnulib/import/sys_stat.in.h: Update.
3350         * gnulib/import/sys_time.in.h: Update.
3351         * gnulib/import/sys_types.in.h: Update.
3352         * gnulib/import/tempname.c: Update.
3353         * gnulib/import/tempname.h: Update.
3354         * gnulib/import/time.in.h: Update.
3355         * gnulib/import/unistd--.h: Update.
3356         * gnulib/import/unistd-safer.h: Update.
3357         * gnulib/import/unistd.in.h: Update.
3358         * gnulib/import/unsetenv.c: Update.
3359         * gnulib/import/verify.h: Update.
3360         * gnulib/import/extra/snippet/warn-on-use.h: Update.
3361         * gnulib/import/wchar.in.h: Update.
3362         * gnulib/import/wctype.in.h: Update.
3363         * gnulib/import/xalloc-oversized.h: Update.
3364         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
3365         "53e2c179f26a890fa6685af4b6c1397ee370433b".
3366
3367 2018-08-16  Gary Benson <gbenson@redhat.com>
3368
3369         PR gdb/13000:
3370         * gdb/main.c (captured_main_1): Exit with nonzero status
3371         in batch mode if the last command to be executed failed.
3372         * NEWS: Mention the above.
3373
3374 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
3375
3376         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
3377         end of warning message.
3378
3379 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3380
3381         PR gdb/22943:
3382         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
3383         (aarch64_extract_return_value): Use
3384         aapcs_is_vfp_call_or_return_candidate.
3385         (aarch64_return_in_memory): Likewise.
3386         (aarch64_store_return_value): Likewise.
3387
3388 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3389
3390         * aarch64-tdep.c
3391         (aapcs_is_vfp_call_or_return_candidate): Make static
3392         (pass_in_v_or_stack): Remove function.
3393         (pass_in_v_vfp_candidate): New function.
3394         (aarch64_push_dummy_call): Check for float register candidates.
3395
3396 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3397
3398         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
3399         (aapcs_is_vfp_call_or_return_candidate_1): New function.
3400         (aapcs_is_vfp_call_or_return_candidate): Likewise.
3401
3402 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
3403
3404         PR build/23399
3405         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
3406         (struct ipa_sym_addresses): Rename to...
3407         (struct ipa_sym_addresses_common): ... this.
3408         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
3409
3410 2018-08-28  Tom Tromey  <tom@tromey.com>
3411
3412         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3413         (token_fifo): Now a std::vector.
3414         (yylex, c_parse): Update.
3415         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3416         (token_fifo): Now a std::vector.
3417         (yylex, d_parse): Update.
3418         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3419         (token_fifo): Now a std::vector.
3420         (yylex, go_parse): Update.
3421
3422 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
3423
3424         * parser-defs.h (struct type_stack) <elements>: Change type to
3425         std::vector<union type_stack_elt>.
3426         <depth, size>: Remove.
3427         * parse.c (parse_exp_in_context_1): Adjust.
3428         (type_stack_reserve): Remove.
3429         (check_type_stack_depth): Remove.
3430         (insert_into_type_stack): Adjust to std::vector.
3431         (insert_type): Likewise.
3432         (push_type): Likewise.
3433         (push_type_int): Likewise.
3434         (insert_type_address_space): Likewise.
3435         (pop_type): Likewise.
3436         (pop_type_int): Likewise.
3437         (pop_typelist): Likewise.
3438         (pop_type_stack): Likewise.
3439         (append_type_stack): Likewise.
3440         (push_type_stack): Likewise.
3441         (get_type_stack): Likewise.
3442         (type_stack_cleanup): Likewise.
3443         (push_typelist): Likewise.
3444         (follow_types): Likewise.
3445         (_initialize_parse): Likewise.
3446
3447 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
3448
3449         * NEWS: Mention csky target.
3450
3451 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
3452             Hafiz Abid Qadeer  <abidh@codesourcery.com>
3453             Don Breazeal  <donb@codesourcery.com>
3454
3455         * csky-linux-tdep.c: New file.
3456         * csky-tdep.c: Likewise.
3457         * csky-tdep.h: Likewise.
3458         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
3459         csky-tdep.o.
3460         (HFILES_NO_SRCDIR): Add csky-tdep.h.
3461         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
3462         * configure.tgt: Add csky support.
3463
3464 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
3465
3466         * python/py-framefilter.c (py_print_frame): Print frame architecture
3467         when printing on an MI output.
3468
3469 2018-08-27  Tom Tromey  <tom@tromey.com>
3470
3471         PR build/23087:
3472         * configure: Rebuild.
3473         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
3474
3475 2018-08-27  Tom Tromey  <tom@tromey.com>
3476
3477         * aarch64-linux-tdep.c
3478         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
3479         casts to int.
3480
3481 2018-08-27  Tom Tromey  <tom@tromey.com>
3482
3483         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
3484         unsigned.
3485         (ppc64_standard_linkage1, ppc64_standard_linkage2)
3486         (ppc64_standard_linkage3, ppc64_standard_linkage4)
3487         (ppc64_standard_linkage5, ppc64_standard_linkage6)
3488         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
3489         unsigned.
3490
3491 2018-08-27  Tom Tromey  <tom@tromey.com>
3492
3493         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
3494         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
3495
3496 2018-08-27  Tom Tromey  <tom@tromey.com>
3497
3498         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
3499         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
3500         ULONGEST_MAX.
3501         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
3502         ULONGEST_MAX.
3503         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
3504         ULONGEST_MAX.
3505         * sparc-linux-tdep.c (sparc32_linux_sigframe)
3506         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
3507         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
3508         ULONGEST_MAX.
3509         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
3510         (ppc64_linux_sigaction_tramp_frame)
3511         (ppc32_linux_sighandler_tramp_frame)
3512         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
3513         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
3514         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
3515         * mn10300-linux-tdep.c (am33_linux_sigframe)
3516         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
3517         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
3518         * mips-linux-tdep.c (mips_linux_o32_sigframe)
3519         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
3520         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
3521         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
3522         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
3523         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
3524         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
3525         * microblaze-linux-tdep.c
3526         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
3527         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
3528         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
3529         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
3530         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
3531         * common/common-types.h (ULONGEST_MAX): New define.
3532         (CORE_ADDR_MAX): Fix formatting.
3533         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
3534         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
3535         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
3536         (arm_linux_rt_sigreturn_tramp_frame)
3537         (arm_eabi_linux_sigreturn_tramp_frame)
3538         (arm_eabi_linux_rt_sigreturn_tramp_frame)
3539         (thumb2_eabi_linux_sigreturn_tramp_frame)
3540         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
3541         (arm_linux_restart_syscall_tramp_frame)
3542         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
3543         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
3544         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
3545         ULONGEST_MAX.
3546         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
3547
3548 2018-08-27  Tom Tromey  <tom@tromey.com>
3549
3550         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
3551         CORE_ADDR_MAX.
3552         * mips-tdep.c (mips_deal_with_atomic_sequence)
3553         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
3554         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
3555         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
3556         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
3557         CORE_ADDR_MAX.
3558         * aarch64-tdep.c (aarch64_software_single_step): Use
3559         CORE_ADDR_MAX.
3560
3561 2018-08-27  Tom Tromey  <tom@tromey.com>
3562
3563         * linespec.c (complete_linespec_component): Add cast to "char".
3564         * completer.c (completion_tracker::build_completion_result): Add
3565         cast to "char".
3566
3567 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3568
3569         * solist.h (struct solist, struct target_so_ops): Fix
3570         indentation.
3571
3572 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3573
3574         * ada-tasks.c (ada_task_info_s): Remove typedef.
3575         (DEF_VEC_O(ada_task_info_s)): Remove.
3576         (struct ada_tasks_inferior_data): Initialize fields.
3577         <task_list>: Make an std::vector.
3578         (get_ada_tasks_inferior_data): Allocate with new.
3579         (ada_get_task_number): Adjust.
3580         (get_task_number_from_id): Likewise.
3581         (valid_task_id): Likewise.
3582         (ada_get_task_info_from_ptid): Likewise.
3583         (iterate_over_live_ada_tasks): Likewise.
3584         (add_ada_task): Likewise.
3585         (read_known_tasks): Likewise.
3586         (ada_build_task_list): Likewise.
3587         (print_ada_task_info): Likewise.
3588         (info_task): Likewise.
3589         (task_command_1): Likewise.
3590
3591 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3592
3593         * ada-lang.c (add_angle_brackets): Return std::string.
3594
3595 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
3596
3597         * python/py-threadevent.c (py_get_event_thread): Initialize
3598         pythread.
3599
3600 2018-08-24  Pedro Alves  <palves@redhat.com>
3601
3602         * python/py-bpevent.c (create_breakpoint_event_object): Use
3603         copy-initialization.
3604         * python/py-continueevent.c (emit_continue_event): Use
3605         copy-initialization.
3606         * python/py-exitedevent.c (create_exited_event_object): Return a
3607         gdbpy_ref<>.
3608         (emit_exited_event): Use copy-initialization.
3609         * python/py-inferior.c (python_new_inferior)
3610         (python_inferior_deleted, add_thread_object): Use
3611         copy-initialization.
3612         * python/py-infevents.c (create_inferior_call_event_object)
3613         (create_register_changed_event_object)
3614         (create_memory_changed_event_object): Return a gdbpy_ref<>.
3615         (emit_inferior_call_event, emit_memory_changed_event)
3616         (emit_register_changed_event): Use copy-initialization.
3617         * python/py-newobjfileevent.c (create_new_objfile_event_object):
3618         Return a gdbpy_ref<>.
3619         (emit_new_objfile_event): Use copy-initialization.
3620         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
3621         (emit_clear_objfiles_event): Use copy-initialization.
3622         * python/py-signalevent.c (create_signal_event_object): Use
3623         copy-initialization.
3624         * python/py-threadevent.c (create_thread_event_object): Use
3625         copy-initialization.
3626
3627 2018-08-24  Pedro Alves  <palves@redhat.com>
3628             Simon Marchi  <simon.marchi@ericsson.com>
3629
3630         PR gdb/23379
3631         * python/py-continueevent.c: Include "gdbthread.h".
3632         (create_continue_event_object): Add intro comment.  Add 'ptid'
3633         parameter.  Use it to find thread to pass to
3634         create_thread_event_object.
3635         (emit_continue_event): Pass PTID down to
3636         create_continue_event_object.
3637         * python/py-event.h (py_get_event_thread): Declare.
3638         (create_thread_event_object): Remove default from 'thread'
3639         parameter.
3640         * python/py-stopevent.c (create_stop_event_object): Use
3641         py_get_event_thread.
3642         * python/py-threadevent.c (get_event_thread): Rename to ...
3643         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
3644         and use it to find the thread.
3645         (create_thread_event_object): Assert that THREAD isn't null.
3646         Don't find the event thread here.
3647
3648 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
3649
3650         * block.h (blockrange, blockranges): New struct declarations.
3651         (struct block): Add new field named `ranges'.
3652         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
3653         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
3654         macros for accessing ranges in struct block.
3655         (make_blockranges): New declaration.
3656         block.c (make_blockranges): New function.
3657         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
3658         for block.
3659         * symtab.h (find_pc_partial_function): Add new parameter `block'.
3660         * blockframe.c (cache_pc_function_block): New static global.
3661         (clear_pc_function_cache): Clear cache_pc_function_block.
3662         (find_pc_partial_function): Move comment to symtab.h.  Add
3663         support for non-contiguous blocks.
3664         * cli/cli-cmds.c (block.h): Include.
3665         (print_disassembly): Handle printing of non-contiguous blocks.
3666         (disassemble_current_function): Likewise.
3667         (disassemble_command): Likewise.
3668
3669         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
3670         BLOCK_START.
3671         * blockframe.c (get_pc_function_start): Likewise.
3672         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
3673         (gcc_symbol_address): Likewise.
3674         * compile/compile-object-run.c (compile_object_run): Likewise.
3675         * compile/compile.c (get_expr_block_and_pc): Likewise.
3676         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
3677         (func_addr_to_tail_call_list): Likewise.
3678         * findvar.c (default_read_var_value): Likewise.
3679         * inline-frame.c (inline_frame_this_id): Likewise.
3680         (skip-inline_frames): Likewise.
3681         * infcmd.c (until_next_command): Likewise.
3682         * linespec.c (convert_linespec_to_sals): Likewise.
3683         * parse.c (parse_exp_in_context_1): Likewise.
3684         * printcmd.c (build_address_symbolic): likewise.
3685         (info_address_command): Likewise.
3686         symtab.c (find_function_start_sal): Likewise.
3687         (skip_prologue_sal): Likewise.
3688         (find_function_alias_target): Likewise.
3689         (find_gnu_ifunc): Likewise.
3690         * stack.c (find_frame_funname): Likewise.
3691         * symtab.c (fixup_symbol_section): Likewise.
3692         (find_function_start_sal): Likewise.
3693         (skip_prologue_sal): Likewsie.
3694         (find_function_alias_target): Likewise.
3695         (find_gnu_ifunc): Likewise.
3696         * tracepoint.c (info_scope_command): Likewise.
3697         * value.c (value_fn_field): Likewise.
3698
3699         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
3700         in place of find_pc_partial_function.
3701         * blockframe.c (find_function_entry_range_from_pc): New function.
3702         * symtab.h (find_function_entry_range_from_pc): Declare and document.
3703         * objfiles.c (objfile_relocate1): Relocate start and end addresses
3704         for each range in a block.
3705
3706
3707 2018-08-23  Xavier Roirand  <roirand@adacore.com>
3708
3709         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
3710         incrementation.
3711
3712 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3713
3714         * solib-svr4.c (read_program_headers_from_bfd): Return
3715         gdb::optional<gdb::byte_vector>.
3716         (svr4_exec_displacement): Adjust.
3717
3718 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3719
3720         * solib-svr4.c (read_program_header): Return
3721         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
3722         (find_program_interpreter): Return
3723         gdb::optional<gdb::byte_vector>.
3724         (scan_dyntag_auxv): Adjust.
3725         (enable_break): Adjust.
3726         (svr4_exec_displacement): Adjust.
3727
3728 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3729
3730         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
3731         * inf-child.c (inf_child_target::terminal_save_inferior): New.
3732
3733 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3734
3735         * guile/scm-string.c (gdbscm_scm_from_printf): Use
3736         string_vprintf.
3737         * guile/scm-utils.c (gdbscm_printf): Likewise.
3738         * serial.c (serial_printf): Likewise.
3739         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
3740
3741 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
3742
3743         * stack.c (print_frame): Print frame architecture when printing on
3744         an MI output.
3745         * NEWS: Mention new "arch" attribute in frame output.
3746
3747 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
3748
3749         * arch/aarch64.h (aarch64_regnum): Update comment.
3750
3751 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
3752
3753         * NEWS: Add SVE to 8.2 section.
3754
3755 2018-08-21  Pedro Alves  <palves@redhat.com>
3756
3757         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
3758         out from gdbscm_parse_function_args.
3759         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
3760         gdbscm_parse_function_args_1.
3761
3762 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
3763
3764         PR gdb/17816
3765         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
3766         operator.
3767
3768 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
3769
3770         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
3771
3772 2018-08-19  Michael Spang  <spang@google.com>
3773
3774         PR gdb/11786
3775         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
3776         for PT_TLS segments.
3777
3778 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
3779
3780         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
3781         dwarf_variable_value.
3782         * dwarf2-frame.c (class dwarf_expr_executor):
3783         Add override for dwarf_variable_value.
3784         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
3785         (class symbol_needs_eval_context): Likewise.
3786         (indirect_synthetic_pointer): Add forward declaration.
3787         (sect_variable_value): New function.
3788         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
3789         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
3790         for DW_OP_GNU_variable_value.
3791
3792 2018-08-16  Tom Tromey  <tom@tromey.com>
3793
3794         * top.c (read_command_file): Update.
3795         (command_line_input): Remove "repeat" argument.
3796         * ada-lang.c (get_selections): Update.
3797         * linespec.c (decode_line_2): Update.
3798         * defs.h (command_line_input): Remove argument.
3799         * cli/cli-script.c (read_next_line): Update.
3800         * python/py-gdb-readline.c: Update.
3801
3802 2018-08-17  Tom Tromey  <tom@tromey.com>
3803
3804         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
3805         command_line_input.
3806
3807 2018-08-15  Tom Tromey  <tom@tromey.com>
3808
3809         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
3810
3811 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
3812
3813         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
3814         If used, use find_pc_partial_function to find address range
3815         to disassemble.
3816         * mi/mi-main.c (mi_cmd_list_features): Report
3817         "data-disassemble-a-option" feature.
3818         * NEWS: Mention new -data-disassemble option -a.
3819
3820 2018-08-13  Tom Tromey  <tom@tromey.com>
3821
3822         * common/common-defs.h (_FORTIFY_SOURCE): Define.
3823
3824 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3825
3826         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
3827         (aarch64_linux_collect_sve_regset): Likewise.
3828         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
3829         * regcache.h (regcache_map_entry_size): New function.
3830
3831 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3832
3833         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
3834         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
3835         (SVE_HEADER_VL_LENGTH): Likewise.
3836         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
3837         (SVE_HEADER_FLAGS_LENGTH): Likewise.
3838         (SVE_HEADER_RESERVED_LENGTH): Likewise.
3839         (SVE_HEADER_SIZE_OFFSET): Likewise.
3840         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
3841         (SVE_HEADER_VL_OFFSET): Likewise.
3842         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
3843         (SVE_HEADER_FLAGS_OFFSET): Likewise.
3844         (SVE_HEADER_RESERVED_OFFSET): Likewise.
3845         (SVE_HEADER_SIZE): Likewise.
3846         (aarch64_linux_core_read_vq): Add function.
3847         (aarch64_linux_core_read_description): Check for SVE section.
3848
3849 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3850
3851         * aarch64-fbsd-tdep.c
3852         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
3853         collect_size.
3854         * aarch64-linux-tdep.c
3855         (aarch64_linux_iterate_over_regset_sections): Likewise.
3856         * alpha-linux-tdep.c
3857         (alpha_linux_iterate_over_regset_sections):
3858         * alpha-nbsd-tdep.c
3859         (alphanbsd_iterate_over_regset_sections): Likewise.
3860         * amd64-fbsd-tdep.c
3861         (amd64fbsd_iterate_over_regset_sections): Likewise.
3862         * amd64-linux-tdep.c
3863         (amd64_linux_iterate_over_regset_sections): Likewise.
3864         * arm-bsd-tdep.c
3865         (armbsd_iterate_over_regset_sections): Likewise.
3866         * arm-fbsd-tdep.c
3867         (arm_fbsd_iterate_over_regset_sections): Likewise.
3868         * arm-linux-tdep.c
3869         (arm_linux_iterate_over_regset_sections): Likewise.
3870         * corelow.c (get_core_registers_cb): Likewise.
3871         (core_target::fetch_registers): Likewise.
3872         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
3873         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
3874         * gdbarch.h (void): Regenerate.
3875         * gdbarch.sh: Add supply_size and collect_size.
3876         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
3877         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
3878         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
3879         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
3880         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
3881         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
3882         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
3883         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
3884         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
3885         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
3886         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
3887         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
3888         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
3889         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
3890         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections): Likewise.
3891         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
3892         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
3893         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
3894         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
3895         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
3896         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
3897         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections): Likewise.
3898         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
3899         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
3900         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
3901         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
3902         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
3903         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
3904         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
3905         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
3906
3907 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
3908
3909         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
3910         with string_printf.
3911
3912 2018-08-10  Keith Seitz  <keiths@redhat.com>
3913
3914         * compile/compile-c-support.c (add_code_header, add_code_footer):
3915         Move into policy class.
3916         (c_push_user_expression, pop_user_expression_nop)
3917         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
3918         (compile_program): New host class.
3919         (c_compile_program): New typedef.
3920         (c_compute_porgram): Use c_compile_program.
3921
3922 2018-08-10  Keith Seitz  <keiths@redhat.com>
3923
3924         * compile/compile-internal.h (compile_instance::~compile_instance):
3925         Remove calls to htab_delete.
3926         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
3927         * compile.c (compile_instance::compile_instance): Initialize
3928         htab unique pointers.
3929         (compile_instance::get_cached_type, compile_instance::insert_type)
3930         (compile_instance::error_symbol_once): Update for unique_ptr.
3931
3932 2018-08-10  Keith Seitz  <keiths@redhat.com>
3933
3934         * compile/compile-c-symbols.c (struct symbol_error)
3935         (hash_symbol_error, eq_symbol_error, del_symbol_error)
3936         (compile_instance::insert_symbol_error)
3937         (compile_instance::error_symbol_once): Move to ...
3938         * compile/compile.c: ... here.
3939
3940 2018-08-10  Keith Seitz  <keiths@redhat.com>
3941
3942         * compile/compile-c-support.c (c_get_compile_context): Use `new'
3943         instead of `new_compile_instance'.
3944         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
3945         Update description.
3946         If the symbol error map is not initialized, create it.
3947         (generate_c_for_for_one_symbol): Do not check/initialize
3948         the symbol error map.
3949         * compile/compile-c-types.c (compile_c_instance): Make a class.
3950         Update all callers.
3951         (compile_instance::compile_instance): Initialize the type cache.
3952         (get_cached_type): New function.
3953         (insert_type): Update description.
3954         (compile_c_instance::m_default_cflags): Define.
3955         (convert_type): Update description.  Use get_cached_type.
3956         (delete_instance): Moved to destructor.
3957         (new_compile_instance): Moved to constructor.
3958         * compile/compile-c.h (compile_c_instance): Make class inheriting
3959         from compile_instance.
3960         <base>: Remove field.
3961         <type_map, symbol_err_map>: Move to base class.
3962         <c_plugin>: Rename to `m_plugin' and remove pointer type.
3963         * compile/compile-internal.h (compile_instance): Make class.
3964         <type_map_t, symbol_err_map_t>: Define.
3965         <fe>: Rename to `m_gcc_fe'.
3966         <scope, block, gcc_target_options>: Add `m_' prefix.
3967         <m_type_map, m_symbol_err_map>: New fields, moved from
3968         compile_c_instance.
3969         <destroy>: Remove.
3970         (convert_type, new_compile_instance): Remove.
3971         * compile/compile.c (cleanup_compile_instance): Remove.
3972         (compile_to_object): Use unique_ptr to eliminate cleanups.
3973         (compile_instance::set_print_callback, compile_instance::version)
3974         (compile_instance::set_verbose)
3975         (compile_instance::set_driver_filename)
3976         (compile_instance::set_triplet_regexp)
3977         (compile_instance::set_arguments)
3978         (compile_instance::set_source_file)
3979         (compile_instance::compile): Define.
3980
3981 2018-08-10  Keith Seitz  <keiths@redhat.com>
3982
3983         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
3984         * compile/compile-c-types.c: Define GCC_METHODN macros and include
3985         gcc-c-fe.def to define C plugin.
3986         (delete_instance): Delete `c_plugin'.
3987         (new_compile_instance): Initialize `c_plugin'.
3988         * compile/compile-c.h: Include gcc_c_plugin.h.
3989         (struct compile_c_instance) <c_plugin>: New member.
3990         * gcc-c-plugin.h: New file.
3991         Update all callers with API change.
3992
3993 2018-08-10  Keith Seitz  <keiths@redhat.com>
3994
3995         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
3996         (HFILES_NO_SRCDIR): ... to here.
3997         Add compile-internal.h and compile-c.h.
3998         * compile/compile-c-support.c: Include compile-c.h.
3999         * compile/compile-c-symbols.c: Include compile-c.h.
4000         (generate_c_for_variable_locations): Update comment.
4001         * compile/compile-c-types.c: Include compile-c.h.
4002         * compile/compile-c.h: New file -- moved C language declarations
4003         from other files here.
4004         * compile/compile-internal.h: Do not include hashtab.h or
4005         common/enum-flags.h.
4006         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
4007         (gcc_convert_symbol, gcc_symbol_address)
4008         (generate_c_for_variable_locations, c_get_mode_for_size)
4009         (c_get_range_decl_name): Definitions moved to compile-c.h.
4010         * compile/compile-loc2c.c: Include compile-c.h.
4011
4012 2018-08-10  Keith Seitz  <keiths@redhat.com>
4013
4014         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
4015         (c_symbol_substitution_name): ... this.
4016         Update all callers.
4017
4018 2018-08-10  Keith Seitz  <keiths@redhat.com>
4019
4020         * compile/compile-c-support.c (c_compute_program): Use
4021         unique_xmalloc_ptr to eliminate cleanup.
4022         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
4023         Return a unique_xmalloc_ptr and eliminate cleanup.
4024         * compile/compile-internal.h (generate_c_for_variable_locations):
4025         Return unique_xmalloc_ptr and update description.
4026
4027 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
4028
4029         * corelow.c (core_target::get_core_register_section): Rename
4030         min_size to section_min_size.
4031
4032 2018-08-09  Jim Wilson  <jimw@sifive.com>
4033
4034         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
4035         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
4036         * NEWS: Mention new GNU/Linux RISC-V target.
4037         * configure.host: Add riscv*-*-linux*.
4038         * configure.nat: Add riscv*.
4039         * configure.tgt: Add riscv*-*-linux*.
4040         * riscv-linux-nat.c: New file.
4041         * riscv-linux-tdep.c: New file.
4042
4043 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4044
4045         * infrun.c (resume): Make static, add forward declaration.
4046         (proceed): Update header comment.
4047         * infrun.h (resume): Delete declaration.
4048
4049 2018-08-09  Tom Tromey  <tom@tromey.com>
4050
4051         * riscv-tdep.h: Minor formatting fixes.
4052
4053 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
4054
4055         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
4056         * dwarf-index-cache.c (create_dir_and_check): Likewise.
4057         (test_mkdir_recursive): Likewise.
4058         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
4059
4060 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4061
4062         * valarith.c (value_subscripted_rvalue): If an array is not in
4063         memory, and we don't know the upper bound, then we can't know that
4064         the requested element exists or not.
4065
4066 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
4067
4068         * target.c (str_comma_list_concat_elem): Fix typo in comment.
4069         (target_options_to_string): Add comment.
4070
4071 2018-08-08  Tom Tromey  <tom@tromey.com>
4072
4073         * unittests/scoped_mmap-selftests.c: Check result of "write".
4074
4075 2018-08-08  Jim Wilson  <jimw@sifive.com>
4076
4077         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
4078         (decode_register_index_short): New.
4079         (decode_j_type_insn, decode_cj_type_insn): New.
4080         (decode_b_type_insn, decode_cb_type_insn): New.
4081         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
4082         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
4083         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
4084         is_c_sw_insn instead of is_sw_insn.
4085         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
4086         (riscv_software_single_step): New.
4087         * riscv-tdep.h (riscv_software_single_step): Declare.
4088
4089         * riscv-tdep.c (riscv_isa_xlen): Drop static.
4090         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
4091
4092 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
4093
4094         PR gdb/18050:
4095         * target.c (dispose_inferior): Don't dispose of inferiors that are
4096         already killed.
4097
4098 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
4099
4100         * remote.c (remote_target::download_tracepoint): Change char* to
4101         const char*.
4102
4103 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
4104
4105         * target.h (target_options_to_string): Return an std::string.
4106         * target.c (str_comma_list_concat_elem): Return void, use
4107         std::string.
4108         (do_option): Likewise.
4109         (target_options_to_string): Return an std::string.
4110         * linux-nat.c (linux_nat_target::wait): Adjust.
4111         * target-debug.h (target_debug_print_options): Adjust.
4112
4113 2018-08-07  Tom Tromey  <tom@tromey.com>
4114
4115         * Makefile.in (CPPFLAGS): New variable.
4116         (INTERNAL_CPPFLAGS): Use it.
4117
4118 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4119
4120         * NEWS: Mention the index cache.
4121
4122 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4123
4124         * common/pathstuff.h (get_standard_cache_dir): New.
4125         * common/pathstuff.c (get_standard_cache_dir): New.
4126         * build-id.h (build_id_to_string): New.
4127         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
4128         DEBUG_STR_SUFFIX): Move to here.
4129         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
4130         DEBUG_STR_SUFFIX): Move from there.
4131         (write_psymtabs_to_index): Make non-static, add basename
4132         parameter.  Write to temporary files, rename when done.
4133         (save_gdb_index_command): Adjust call to
4134         write_psymtabs_to_index.
4135         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
4136         field.
4137         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
4138         (get_gdb_index_contents_from_cache): New.
4139         (get_gdb_index_contents_from_cache_dwz): New.
4140         (dwarf2_initialize_objfile): Read index from cache.
4141         (dwarf2_build_psymtabs): Save to index.
4142         * dwarf-index-cache.h: New file.
4143         * dwarf-index-cache.c: New file.
4144         * dwarf-index-write.h: New file.
4145
4146 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4147
4148         * gnulib/aclocal.m4: Re-generate.
4149         * gnulib/config.in: Re-generate.
4150         * gnulib/configure: Re-generate.
4151         * gnulib/import/Makefile.am: Re-generate.
4152         * gnulib/import/Makefile.in: Re-generate.
4153         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
4154         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
4155         * gnulib/import/m4/mkdir.m4: New file.
4156         * gnulib/import/mkdir.c: New file.
4157         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
4158         module.
4159
4160 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4161
4162         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
4163         * common/scoped_mmap.c: New file.
4164         * common/scoped_mmap.h (destroy): New method.
4165         (~scoped_mmap, reset): Use destroy.
4166         (scoped_mmap): New move constructor.
4167         (mmap_file): New declaration.
4168         * unittests/scoped_mmap-selftests.c (test_normal,
4169         test_invalid_filename, run_tests): New functions.
4170         (_initialize_scoped_mmap_selftests): Register selftest.
4171
4172 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4173
4174         * dwarf2read.c (read_gdb_index_from_section): Rename to...
4175         (read_gdb_index_from_buffer): ... this.  Remove section
4176         parameter, add buffer parameter.
4177         (get_gdb_index_contents_ftype,
4178         get_gdb_index_contents_dwz_ftype): New typedefs.
4179         (dwarf2_read_gdb_index): Add callback parameters to get the
4180         index contents.
4181         (get_gdb_index_contents_from_section): New.
4182         (dwarf2_initialize_objfile): Update call to
4183         dwarf2_read_gdb_index.
4184
4185 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4186
4187         * common/filestuff.h (gdb_fopen_cloexec): New overload.
4188         (gdb_open_cloexec): Likewise.
4189         * nat/linux-osdata.c (command_from_pid): Use string_printf.
4190         (commandline_from_pid): Likewise.
4191         (linux_xfer_osdata_threads): Likewise.
4192         (linux_xfer_osdata_fds): Likewise.
4193         * ada-lang.c (is_package_name): Likewise.
4194         * auxv.c (procfs_xfer_auxv): Likewise.
4195         * breakpoint.c (print_one_breakpoint_location): Use
4196         uiout::field_fmt.
4197         (print_one_catch_solib): Use string_printf.
4198         * coff-pe-read.c (add_pe_exported_sym): Likewise.
4199         (add_pe_forwarded_sym): Likewise.
4200         * dwarf2read.c (create_type_unit_group): Likewise.
4201         (build_error_marker_type): Likewise.
4202         * infcall.c (get_function_name): Likewise.
4203         * valprint.c (print_converted_chars_to_obstack): Likewise.
4204         * xtensa-tdep.c (xtensa_register_type): Likewise.
4205
4206 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
4207
4208         * remote.c (remote_target::download_tracepoint): Fix format
4209         string errors.
4210
4211 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4212
4213         * tracefile.c: Include common/byte-vector.h.
4214         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
4215         with trace_regblock_size if needed.  Update uses of buf.
4216
4217 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4218
4219         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
4220         std::vector<unsigned char>.
4221         * tracepoint.c (collection_list::collection_list): Remove
4222         m_regs_mask initializer from initializer list.  Resize
4223         m_regs_mask using the largest remote register number.
4224         (collection_list::add_remote_register): Remove size check on
4225         m_regs_mask.  Use at to access element.
4226         (collection_list::stringify): Change type of temp_buf to
4227         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
4228         stringify the register mask.  Use pack_hex_byte for the register
4229         mask.
4230
4231 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4232
4233         * tracepoint.h (class collection_list) <add_register>: Remove.
4234         <add_remote_register, add_ax_registers, add_local_register>:
4235         Declare.
4236         <add_memrange>: Add scope parameter.
4237         * tracepoint.c (encode_actions_1): Likewise.
4238         (collection_list::add_register): Rename to ...
4239         (collection_list::add_remote_register): ... this.  Update
4240         comment.
4241         (collection_list::add_ax_registers, add_local_register): New
4242         methods.
4243         (collection_list::add_memrange): Add scope parameter.  Call
4244         add_local_register instead of add_register.
4245         (finalize_tracepoint_aexpr): New function.
4246         (collection_list::collect_symbol): Update calls to add_memrange.
4247         Call add_local_register instead of add_register.  Call
4248         add_ax_registers.  Call finalize_tracepoint_aexpr.
4249         (encode_actions_1): Get remote regnos for $reg action.  Call
4250         add_remote_register, add_ax_registers, and add_local_register.
4251         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
4252         (validate_actionline): Call finalize_tracepoint_aexpr.
4253
4254 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4255
4256         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
4257         Replace array buf with gdb::char_vector buf, of size
4258         get_remote_packet_size ().  Replace references to buf and
4259         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
4260         and xsnprintf with snprintf.  Raise errors if the buffer is too
4261         small.
4262
4263 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4264
4265         * remote.c (remote_target::download_tracepoint): Fix the has_more
4266         predicate in the QTDP action list iteration.
4267
4268 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4269
4270         * remote.c (remote_target::download_tracepoint): Fix indentation
4271         in for block.
4272
4273 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4274
4275         * proc-api.c (_initialize_proc_api): Remove c, unused.
4276         * procfs.c (procfs_init_inferior): Remove signals, unused.
4277         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
4278         unused.
4279
4280 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
4281             Andrew Burgess  <andrew.burgess@embecosm.com>
4282
4283         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
4284         'W_STOPCODE (0)' as this could be ambiguous.
4285
4286 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
4287
4288         * ser-tcp.c (net_open): Fix thinko when deciding whether to
4289         disable TCP's Nagle algorithm (use "ai_protocol" instead of
4290         "ai_socktype").
4291
4292 2018-08-02  Tom Tromey  <tom@tromey.com>
4293
4294         PR symtab/16842.
4295         * dwarf2read.c (read_func_scope): Set symtab on template parameter
4296         symbols.
4297         (process_structure_scope): Likewise.
4298
4299 2018-08-02  Xavier Roirand  <roirand@adacore.com>
4300
4301         PR gdb/22629:
4302         * darwin-nat.c (darwin_kill_inferior): Fix handling of
4303         kill inferior.
4304
4305 2018-08-02  Tom Tromey  <tom@tromey.com>
4306
4307         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
4308         (darwin_suspend_inferior, darwin_resume_inferior)
4309         (darwin_decode_notify_message, darwin_resume_inferior_threads)
4310         (darwin_check_new_threads): Check result of get_darwin_inferior.
4311
4312 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
4313
4314         GDB 8.1.1 released.
4315
4316 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
4317
4318         * varobj.c (varobj_get_path_expr_parent): Report an error if
4319         parent is a dynamic varobj.
4320
4321 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
4322
4323         * gnulib/aclocal.m4: Re-generate.
4324         * gnulib/config.in: Re-generate.
4325         * gnulib/configure: Re-generate.
4326         * gnulib/import/Makefile.in: Re-generate.
4327         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
4328         * gnulib/import/m4/onceonly.m4: Re-generate.
4329
4330 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
4331
4332         * target-descriptions.c (struct xml_test_tdesc): New.
4333         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
4334         (record_xml_tdesc): Update.
4335         (maintenance_check_xml_descriptions): Update.
4336         * target-descriptions.h (record_xml_tdesc): Update comment.
4337
4338 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
4339
4340         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
4341         checking array bounds are defined.
4342
4343 2018-07-30  Tom Tromey  <tom@tromey.com>
4344
4345         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
4346         irreflexivity violation.
4347
4348 2018-07-30  Tom Tromey  <tom@tromey.com>
4349
4350         * cli/cli-decode.c (lookup_cmd): Remove lint code.
4351         * value.c (unpack_long): Remove lint code.
4352         * valops.c (value_ind): Remove lint code.
4353         * valarith.c (value_x_binop, value_x_unop, value_equal)
4354         (value_pos): Remove lint code.
4355
4356 2018-07-28  Tom de Vries  <tdevries@suse.de>
4357
4358         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
4359         with undefined upper bound as <optimized out>.
4360
4361 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
4362
4363         * gcore.in: Rename variable "name" to "prefix".  Expand
4364         "usage" text.
4365
4366 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
4367
4368         * windows-nat.c (windows_nat_target::create_inferior): Update to
4369         call close() in global namespace.
4370
4371 2018-07-26  Tom Tromey  <tom@tromey.com>
4372
4373         * dwarf-index-write.c (add_address_entry): Don't add objfile
4374         offsets.
4375         * dbxread.c (find_stab_function): Rename from
4376         find_stab_function_addr.  Return a bound_minimal_symbol.
4377         (read_dbx_symtab): Use raw_text_low, raw_text_high.
4378         Don't add objfile offsets.
4379         (end_psymtab): Use raw_text_low, raw_text_high,
4380         MSYMBOL_VALUE_RAW_ADDRESS.
4381         (read_ofile_symtab): Update.
4382         (process_one_symbol): Update.
4383         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
4384         offsets.
4385         (dw2_relocate): Remove.
4386         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
4387         searching addrmap.
4388         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
4389         Update.
4390         (process_psymtab_comp_unit_reader, add_partial_symbol)
4391         (add_partial_subprogram, dwarf2_ranges_read): Update.
4392         (load_partial_dies): Update.
4393         (add_address_entry): Don't add objfile offsets.
4394         (dwarf2_build_include_psymtabs): Update.
4395         (create_addrmap_from_aranges): Don't add objfile offsets.
4396         (dw2_find_pc_sect_compunit_symtab): Update.
4397         * mdebugread.c (parse_symbol): Don't add objfile offsets.
4398         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
4399         Update.
4400         (parse_partial_symbols): Don't add objfile offsets.  Use
4401         raw_text_low, raw_text_high.  Update.
4402         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
4403         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
4404         or call 'relocate' quick function.  Clear psymbol_map.
4405         * psympriv.h (struct partial_symbol) <address>: Add section
4406         offset.
4407         <set_unrelocated_address>: Rename from set_address.
4408         <raw_text_low, raw_text_high>: New methods.
4409         <text_low, text_high>: Add objfile parameter.
4410         (add_psymbol_to_bcache): Add 'section' parameter.  Call
4411         set_unrelocated_address.
4412         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4413         (find_pc_psymbol): Update.
4414         (fixup_psymbol_section, relocate_psymtabs): Remove.
4415         (dump_psymtab, psym_functions): Update.
4416         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
4417         parameter.
4418         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
4419         (start_psymtab_common): Update.
4420         * symfile-debug.c (debug_qf_relocate): Remove.
4421         (debug_sym_quick_functions): Update.
4422         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
4423         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
4424         Update.
4425
4426 2018-07-26  Tom Tromey  <tromey@redhat.com>
4427
4428         * dbxread.c (end_psymtab): Use text_high_valid and
4429         text_low_valid.
4430         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
4431         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
4432         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
4433         Update comment.
4434         <text_low_valid, text_high_valid>: New fields.
4435         <set_text_low, set_text_high>: Update.
4436         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
4437
4438 2018-07-26  Tom Tromey  <tom@tromey.com>
4439
4440         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
4441         Update.
4442         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
4443         textlow and texthigh fields.
4444         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
4445         Update.
4446         * mdebugread.c (parse_lines, parse_partial_symbols)
4447         (psymtab_to_symtab_1): Update.
4448         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
4449         Rename fields.  Update comment.  Now private.
4450         <text_low, text_high, set_text_low, set_text_high>: New methods.
4451         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4452         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
4453         (start_psymtab_common, maintenance_info_psymtabs)
4454         (maintenance_check_psymtabs): Update.
4455         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
4456         texthigh fields.
4457         (scan_xcoff_symtab): Update.
4458
4459 2018-07-26  Tom Tromey  <tromey@redhat.com>
4460
4461         * psympriv.h (struct partial_symbol) <unrelocated_address,
4462         address, set_address>: New methods.
4463         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
4464         (fixup_psymbol_section, relocate_psymtabs): Update.
4465         (print_partial_symbols): Add 'objfile' parameter.  Update.
4466         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
4467         Update.
4468
4469 2018-07-26  Tom Tromey  <tom@tromey.com>
4470
4471         * dwarf-index-write.c (write_psymbols, debug_names::insert)
4472         (debug_names::write_psymbols): Update.
4473         * psympriv.h (struct partial_symbol): Derive from
4474         general_symbol_info.
4475         <obj_section>: New method.
4476         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
4477         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4478         (find_pc_sect_psymbol, fixup_psymbol_section)
4479         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
4480         (print_partial_symbols, recursively_search_psymtabs)
4481         (compare_psymbols, psymbol_hash, psymbol_compare)
4482         (add_psymbol_to_bcache, maintenance_check_psymtabs)
4483         (psymbol_name_matches, psym_fill_psymbol_map): Update.
4484
4485 2018-07-26  Tom Tromey  <tromey@redhat.com>
4486
4487         * dbxread.c (end_psymtab): Remove dead code.
4488
4489 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
4490
4491         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
4492         DWARF unwinders are disabled.
4493         * dwarf2-frame.c: Add dwarf2read.h include.
4494         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
4495         disabled.
4496         (dwarf2_frame_unwinders_enabled_p): Define.
4497         (show_dwarf_unwinders_enabled_p): New function.
4498         (_initialize_dwarf2_frame): Register switch to control DWARF
4499         unwinder use.
4500         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
4501         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
4502         (show_dwarf_cmdlist): Remove static keyword.
4503         * dwarf2read.h (set_dwarf_cmdlist): Declare.
4504         (show_dwarf_cmdlist): Declare.
4505         * NEWS: Document new feature.
4506
4507 2018-07-26  Tom de Vries  <tdevries@suse.de>
4508
4509         PR breakpoints/23366
4510         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
4511
4512 2018-07-26  Tom de Vries  <tdevries@suse.de>
4513
4514         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
4515         DW_AT_count can't be translated to a dynamic prop.
4516
4517 2018-07-25  Tom de Vries  <tdevries@suse.de>
4518
4519         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
4520         try/catch.
4521
4522 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
4523
4524         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
4525
4526 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
4527
4528         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
4529
4530 2018-07-24  Keith Seitz  <keiths@redhat.comt
4531
4532         PR symtab/23010
4533         * dwarf2read.c (dw2_add_symbol_to_list): New function.
4534         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
4535         instead of add_symbol_to_list.
4536         (read_file_scope): Call prepare_one_comp_unit before reading
4537         any other DIEs.
4538
4539 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
4540
4541         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
4542
4543 2018-07-24  Tom Tromey  <tom@tromey.com>
4544
4545         * utils.c (malloc, realloc, free): Don't declare.
4546         * configure, config.in: Rebuild.
4547         * configure.ac: Don't check for declarations of free, malloc, or
4548         realloc.
4549
4550 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
4551
4552         * aarch64-linux-nat.c
4553         (aarch64_linux_nat_target::stopped_data_address): Remove unused
4554         variable.
4555         * arm-linux-nat.c (fetch_regs): Likewise.
4556         (store_regs): Likewise.
4557         (fetch_vfp_regs): Likewise.
4558         (store_vfp_regs): Likewise.
4559         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
4560         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
4561         (arm_linux_nat_target::insert_watchpoint): Likewise.
4562         (arm_linux_nat_target::remove_watchpoint): Likewise.
4563         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
4564         Likewise.
4565         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
4566         Likewise.
4567         * ppc-linux-nat.c (fetch_register): Likewise.
4568         (fetch_all_gp_regs): Likewise.
4569         (fetch_ppc_registers): Likewise.
4570         (store_all_gp_regs): Likewise.
4571         (store_ppc_registers): Likewise.
4572         (hwdebug_insert_point): Likewise.
4573         (can_use_watchpoint_cond_accel): Likewise.
4574         * remote-sim.c (gdb_os_write_stdout): Likewise.
4575
4576 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
4577             Tom Tromey  <tom@tromey.com>
4578
4579         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
4580         test for it.
4581         * configure: Rebuild.
4582
4583 2018-07-22  Tom Tromey  <tom@tromey.com>
4584
4585         * regformats/regdat.sh: Define xmltarget_${name} inside
4586         #ifndef IN_PROCESS_AGENT.
4587
4588 2018-07-22  Tom Tromey  <tom@tromey.com>
4589
4590         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
4591
4592 2018-07-22  Tom Tromey  <tom@tromey.com>
4593
4594         * symfile.c (reread_symbols): Notify iter, not objfile.
4595
4596 2018-07-22  Tom Tromey  <tom@tromey.com>
4597
4598         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
4599         Use arch_ops.
4600         (ravenscar_thread_target::prepare_to_store): Likewise.
4601
4602 2018-07-22  Tom Tromey  <tom@tromey.com>
4603
4604         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
4605         unused variable.  Call value_fetch_lazy when needed.
4606         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
4607         Remove unused variable.  Call value_fetch_lazy when needed.
4608
4609 2018-07-22  Tom Tromey  <tom@tromey.com>
4610
4611         * m32c-tdep.c (mark_dma): Return void.
4612         (make_regs): Remove unused declarations.
4613
4614 2018-07-22  Tom Tromey  <tom@tromey.com>
4615
4616         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
4617         cmdscm_get_valid_command_smob_arg_unsafe for effect.
4618         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
4619         bkscm_get_valid_block_smob_arg_unsafe for effect.
4620
4621 2018-07-22  Tom Tromey  <tom@tromey.com>
4622
4623         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
4624         value_type.
4625
4626 2018-07-22  Tom Tromey  <tom@tromey.com>
4627
4628         * windows-nat.c (saved_context): Conditionally define.
4629         * remote.c (remote_target::remote_btrace_maybe_reopen):
4630         Conditionally declare "warned".
4631         * inflow.c (sigquit_ours): Conditionally define.
4632         (new_tty): Move "tty" declaration inside #if.
4633         * guile/guile.c (guile_datadir): Conditionally define.
4634         * charset.c (set_be_le_names): Move some declarations inside #if.
4635         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
4636         #if.
4637         (parse_xml_btrace_conf): Likewise.
4638
4639 2018-07-22  Tom Tromey  <tom@tromey.com>
4640
4641         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
4642
4643 2018-07-22  Tom Tromey  <tom@tromey.com>
4644
4645         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
4646         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
4647         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
4648         * buildsym-legacy.c (get_macro_table): Remove unused variable.
4649         * stack.c (frame_apply_level_command): Remove unused variable.
4650         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
4651         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
4652         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
4653         unused variable.
4654         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
4655         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
4656         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
4657         variable.
4658         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
4659         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
4660         variable.
4661         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
4662         Remove unused variable.
4663         * cli/cli-script.c (recurse_read_control_structure): Remove unused
4664         variable.
4665         * common/tdesc.c (print_xml_feature::visit): Remove unused
4666         variable.
4667         * compile/compile-object-load.c (store_regs): Remove unused
4668         variables.
4669         * complaints.c (clear_complaints): Remove unused variable.
4670         * corelow.c (core_target_open): Remove unused variable.
4671         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
4672         variable.
4673         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
4674         variable.
4675         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
4676         variable.
4677         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
4678         variable.
4679         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
4680         variable.
4681         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
4682         variable.
4683         * ia64-tdep.c (examine_prologue): Remove unused variable.
4684         * infcall.c (run_inferior_call): Remove unused variable.
4685         * inferior.c (exit_inferior): Remove unused variable.
4686         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
4687         * linespec.c (decode_line_2): Remove unused variable.
4688         * linux-nat.c (super_close): Remove.
4689         * linux-tdep.c (linux_info_proc): Remove unused variable.
4690         * mi/mi-main.c (mi_execute_command): Remove unused variable.
4691         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
4692         Remove unused variable.
4693         * parse.c (find_minsym_type_and_address): Remove unused variable.
4694         * printcmd.c (info_symbol_command, printf_floating): Remove unused
4695         variable.
4696         * python/py-breakpoint.c (bppy_set_commands): Remove unused
4697         variable.
4698         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
4699         variables.
4700         * record-btrace.c (record_btrace_target::store_registers): Remove
4701         unused variable.
4702         (cmd_show_record_btrace_cpu): Remove unused variable.
4703         * riscv-tdep.c (riscv_register_reggroup_p)
4704         (riscv_push_dummy_call, riscv_return_value): Remove unused
4705         variable.
4706         * rust-exp.y (literal): Remove unused variable.
4707         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
4708         unused variable.
4709         <STRUCTOP_ANONYMOUS>: Likewise.
4710         * s390-linux-tdep.c (s390_linux_init_abi_31)
4711         (s390_linux_init_abi_64): Remove unused variable.
4712         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
4713         (file_select_thread, net_windows_open, _initialize_ser_windows):
4714         Remove unused variables.
4715         * symtab.c (find_pc_sect_line): Remove unused variable.
4716         * target-memory.c (compute_garbled_blocks): Remove unused
4717         variable.
4718         (target_write_memory_blocks): Remove unused variable.
4719         * target.c (target_stack::unpush): Remove unused variables.
4720         * tracepoint.c (start_tracing, all_tracepoint_actions)
4721         (merge_uploaded_trace_state_variables)
4722         (print_one_static_tracepoint_marker): Remove unused variable.
4723         * unittests/basic_string_view/element_access/char/1.cc (test01):
4724         Remove unused variable.
4725         * windows-nat.c (windows_continue, windows_add_all_dlls)
4726         (do_initial_windows_stuff, windows_nat_target::create_inferior):
4727         Remove unused variables.
4728
4729 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
4730
4731         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
4732         attr_profile in HAVE_ELF.
4733         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
4734         HAVE_ELF.
4735
4736 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
4737
4738         * frame.c (frame_register_unwind): Change parameter name.
4739         (frame_unwind_register): Likewise.
4740         (frame_unwind_register_value): Likewise.
4741         (frame_unwind_register_signed): Likewise.
4742         (frame_unwind_register_unsigned): Likewise.
4743         * frame.h (frame_register_unwind): Likewise.
4744         (frame_unwind_register): Likewise.
4745         (frame_unwind_register_value): Likewise.
4746         (frame_unwind_register_signed): Likewise.
4747         (frame_unwind_register_unsigned): Likewise.
4748         (frame_unwind_arch): Likewise.
4749
4750 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
4751
4752         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
4753         ISA maintenance.
4754
4755 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
4756
4757         * mips-linux-nat.c (mips_linux_nat_target::read_description):
4758         Call `get_ptrace_pid' rather than extracting the ptrace PID by
4759         hand.
4760
4761 2018-07-20  Keith Seitz  <keiths@redhat.com>
4762
4763         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
4764         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
4765         m_compunit_symtab, m_language>: Add "m_" prefix.
4766         Update all uses.
4767         * buildsym.c: Update all uses.
4768
4769 2018-07-20  Tom Tromey  <tom@tromey.com>
4770
4771         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
4772         * buildsym.h (record_line_ftype): Remove typedef.
4773
4774 2018-07-20  Tom Tromey  <tom@tromey.com>
4775
4776         * buildsym-legacy.h (augment_type_symtab): Don't declare.
4777         (end_expandable_symtab): Likewise.
4778         (end_symtab_get_static_block): Likewise.
4779         (end_symtab_from_static_block): Likewise.
4780         * buildsym-legacy.c (augment_type_symtab): Remove.
4781         (end_expandable_symtab): Remove.
4782         (end_symtab_get_static_block): Remove.
4783         (end_symtab_from_static_block): Remove.
4784
4785 2018-07-20  Tom Tromey  <tom@tromey.com>
4786
4787         * dwarf2read.c: Include buildsym.h.
4788         (struct dwarf2_cu) <builder>: New method.
4789         (fixup_go_packaging): Update.
4790         (process_full_comp_unit, process_full_type_unit): Update.  Don't
4791         use scoped_free_pendings.
4792         (using_directives): Add "cu" parameter, remove "language".
4793         (read_import_statement, setup_type_unit_groups, )
4794         (read_func_scope, read_lexical_block_scope)
4795         (dwarf2_record_block_ranges, read_namespace): Update.
4796         (lnp_state_machine::lnp_state_machine): Add cu parameter.
4797         (lnp_state_machine::handle_end_sequence): Update.
4798         (class lnp_state_machine) <m_cu>: New member.
4799         <m_record_line_callback>: Remove.
4800         <m_currently_recording_lines>: New member.
4801         (lnp_state_machine::handle_set_file): Update.
4802         (noop_record_line): Remove.
4803         (dwarf_record_line_p): Add cu parameter.
4804         (dwarf_record_line_1, dwarf_finish_line): Likewise.
4805         (lnp_state_machine::record_line)
4806         (lnp_state_machine::lnp_state_machine)
4807         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
4808         (dwarf_decode_lines): Update.
4809         (dwarf2_start_subfile): Add cu parameter.
4810         (dwarf2_start_symtab, new_symbol): Update.
4811         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
4812         Remove dwarf2_per_objfile parameter.
4813         (dwarf_decode_macros): Update.
4814
4815 2018-07-20  Tom Tromey  <tom@tromey.com>
4816
4817         * stabsread.c (define_symbol): Update.
4818         * buildsym-legacy.h (get_buildsym_compunit): Declare.
4819         * dwarf2read.c (new_symbol): Update.
4820         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
4821         * cp-namespace.c: Include buildsym.h.
4822         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
4823         * buildsym-legacy.c (get_buildsym_compunit): New function.
4824
4825 2018-07-20  Tom Tromey  <tom@tromey.com>
4826
4827         * xcoffread.c: Include buildsym-legacy.h.
4828         * windows-nat.c: Include buildsym-legacy.h.
4829         * stabsread.c: Include buildsym-legacy.h.
4830         * mdebugread.c: Include buildsym-legacy.h.
4831         * buildsym-legacy.h: New file.
4832         * buildsym-legacy.c: New file, from buildsym.c.
4833         * go32-nat.c: Include buildsym-legacy.h.
4834         * dwarf2read.c: Include buildsym-legacy.h.
4835         * dbxread.c: Include buildsym-legacy.h.
4836         * cp-namespace.c: Include buildsym-legacy.h.
4837         * coffread.c: Include buildsym-legacy.h.
4838         * buildsym.h: Move some contents to buildsym-legacy.h.
4839         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
4840         buildsym-legacy.c.
4841         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
4842
4843 2018-07-20  Tom Tromey  <tom@tromey.com>
4844
4845         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
4846         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
4847         (buildsym_compunit::buildsym_compunit)
4848         (buildsym_compunit::~buildsym_compunit)
4849         (buildsym_compunit::get_macro_table): Define.
4850
4851 2018-07-20  Tom Tromey  <tom@tromey.com>
4852
4853         * buildsym.c (reset_symtab_globals): Remove.
4854         (buildsym_compunit::end_symtab_from_static_block): Update.
4855         (buildsym_compunit::augment_type_symtab): Update.
4856         (end_symtab_from_static_block): Call free_buildsym_compunit.
4857         (augment_type_symtab, end_symtab, end_expandable_symtab):
4858         Likewise.
4859
4860 2018-07-20  Tom Tromey  <tom@tromey.com>
4861
4862         * arch-utils.c: Do not include buildsym.h.
4863         * mipsread.c: Do not include buildsym.h.
4864         * machoread.c: Do not include buildsym.h.
4865         * elfread.c: Do not include buildsym.h.
4866
4867 2018-07-20  Tom Tromey  <tom@tromey.com>
4868
4869         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
4870         initialization.
4871         (buildsym_compunit): Add new constructor.
4872         (struct buildsym_compunit) <get_last_source_file, finish_block,
4873         record_block_range, start_subfile, patch_subfile_names,
4874         push_subfile, pop_subfile, record_line, get_compunit_symtab,
4875         set_last_source_start_addr, get_last_source_start_addr,
4876         get_local_using_directives, set_local_using_directives,
4877         get_global_using_directives, outermost_context_p,
4878         get_current_context_stack, get_context_stack_depth,
4879         get_current_subfile, get_local_symbols, get_file_symbols,
4880         get_global_symbols, record_debugformat, record_producer,
4881         push_context, pop_context, end_symtab_get_static_block,
4882         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
4883         New public methods.
4884         <record_pending_block, finish_block_internal, make_blockvector,
4885         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
4886         private methods.
4887         Update all users.
4888
4889 2018-05-22  Tom Tromey  <tom@tromey.com>
4890
4891         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
4892         parameter.
4893         (finish_block_internal): Update.
4894
4895 2018-07-20  Tom Tromey  <tom@tromey.com>
4896
4897         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
4898         parameter.
4899         (finish_block_internal): Update.
4900
4901 2018-07-20  Tom Tromey  <tom@tromey.com>
4902
4903         * buildsym.h (EXTERN): Don't define or undef.
4904         * buildsym.c (EXTERN): Don't define.
4905
4906 2018-07-20  Tom Tromey  <tom@tromey.com>
4907
4908         * buildsym.c: Remove TODO comment.
4909
4910 2018-07-20  Tom Tromey  <tom@tromey.com>
4911
4912         * coffread.c (coff_symtab_read): Update.
4913         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
4914         (xcoff_new_init): Update.
4915         * mipsread.c (mipscoff_new_init): Update.
4916         * mdebugread.c (mdebug_build_psymtabs): Update.
4917         * elfread.c (elf_new_init): Update.
4918         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
4919         Update.
4920         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
4921         (coffstab_build_psymtabs, elfstab_build_psymtabs)
4922         (stabsect_build_psymtabs): Update.
4923         * buildsym.h (buildsym_init): Don't declare.
4924         * buildsym.c: Update comment.
4925         (prepare_for_building): Remove.
4926         (start_symtab, restart_symtab): Update.
4927         (reset_symtab_globals): Update comment.
4928         (buildsym_init): Remove.
4929
4930 2018-07-20  Tom Tromey  <tom@tromey.com>
4931
4932         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
4933         * stabsread.c (patch_block_stabs, define_symbol, read_type)
4934         (read_enum_type, common_block_start, common_block_end)
4935         (cleanup_undefined_types_1, finish_global_stabs): Update.
4936         * mdebugread.c (psymtab_to_symtab_1): Update.
4937         * dwarf2read.c (fixup_go_packaging, read_func_scope)
4938         (read_lexical_block_scope, new_symbol): Update.
4939         * dbxread.c (process_one_symbol): Update.
4940         * coffread.c (coff_symtab_read, process_coff_symbol)
4941         (coff_read_enum_type): Update.
4942         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
4943         declare.
4944         (get_local_symbols, get_file_symbols, get_global_symbols): New
4945         functions.
4946         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
4947         m_global_symbols.
4948         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
4949         (~scoped_free_pendings): Update.
4950         (finish_block, prepare_for_building, reset_symtab_globals)
4951         (end_symtab_get_static_block, end_symtab_with_blockvector)
4952         (augment_type_symtab, push_context): Update.
4953         (get_local_symbols, get_file_symbols, get_global_symbols): New
4954         functions.
4955         (buildsym_init): Update.
4956
4957 2018-07-20  Tom Tromey  <tom@tromey.com>
4958
4959         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
4960         (process_full_type_unit): Likewise.
4961         (dwarf2_start_symtab): Set list_in_scope.
4962
4963 2018-07-20  Tom Tromey  <tom@tromey.com>
4964
4965         * dwarf2read.c (process_psymtab_comp_unit_reader)
4966         (build_type_psymtabs_reader): Do not set list_in_scope.
4967
4968 2018-07-20  Tom Tromey  <tom@tromey.com>
4969
4970         * buildsym.c (free_pendings): Remove.
4971         (add_symbol_to_list, scoped_free_pendings)
4972         (finish_block_internal, buildsym_init): Update.
4973
4974 2018-07-20  Tom Tromey  <tom@tromey.com>
4975
4976         * xcoffread.c (read_xcoff_symtab): Update.
4977         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
4978         Update.
4979         * dbxread.c (process_one_symbol): Update.
4980         * coffread.c (coff_symtab_read): Update.
4981         * buildsym.h (finish_block): Update.
4982         * buildsym.c (finish_block): Remove "listhead" argument.
4983         (end_symtab_get_static_block): Update.
4984
4985 2018-07-20  Tom Tromey  <tom@tromey.com>
4986
4987         * buildsym.h (class scoped_free_pendings): Remove constructor.
4988         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
4989         method.
4990         <m_pending_block_obstack, m_pending_blocks>: New members.
4991         (pending_block_obstack, pending_blocks): Remove.
4992         (scoped_free_pendings::scoped_free_pendings): Default.
4993         (~scoped_free_pendings): Update.
4994         (free_pending_blocks): Remove.
4995         (finish_block_internal, record_pending_block, make_blockvector)
4996         (end_symtab_get_static_block, augment_type_symtab, push_context)
4997         (buildsym_init): Update.
4998
4999 2018-07-20  Tom Tromey  <tom@tromey.com>
5000
5001         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
5002         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
5003         members.
5004         (pending_addrmap, pending_addrmap_obstack)
5005         (pending_addrmap_interesting): Remove.
5006         (scoped_free_pendings, record_block_range, make_blockvector)
5007         (prepare_for_building, reset_symtab_globals, buildsym_init):
5008         Update.
5009
5010 2018-07-20  Tom Tromey  <tom@tromey.com>
5011
5012         * xcoffread.c (process_linenos): Update.
5013         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
5014         * mdebugread.c (psymtab_to_symtab_1): Update.
5015         * dwarf2read.c (setup_type_unit_groups)
5016         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
5017         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
5018         * dbxread.c (process_one_symbol): Update.
5019         * coffread.c (coff_symtab_read, enter_linenos)
5020         (process_coff_symbol): Update.
5021         * buildsym.h (current_subfile): Don't declare.
5022         (get_current_subfile): Declare.
5023         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
5024         member.
5025         (start_subfile, free_buildsym_compunit, push_subfile)
5026         (prepare_for_building, start_symtab): Update.
5027         (get_current_subfile): New function.
5028
5029 2018-07-20  Tom Tromey  <tom@tromey.com>
5030
5031         * coffread.c (coff_symtab_read): Update.
5032         * xcoffread.c (read_xcoff_symtab): Update.
5033         * dwarf2read.c (new_symbol): Update.
5034         (read_func_scope, read_lexical_block_scope): Update.
5035         * dbxread.c (process_one_symbol): Update.
5036         * buildsym.h (context_stack, context_stack_depth): Don't declare.
5037         (outermost_context_p): Remove macro.
5038         (outermost_context_p, get_current_context_stack)
5039         (get_context_stack_depth): Declare.
5040         (pop_context): Return struct context_stack.
5041         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
5042         member.
5043         (context_stack_size): Remove.
5044         (INITIAL_CONTEXT_STACK_SIZE): Remove.
5045         (prepare_for_building, end_symtab_get_static_block)
5046         (augment_type_symtab, push_context): Update.
5047         (pop_context): Return struct context_stack.
5048         (outermost_context_p, get_current_context_stack)
5049         (get_context_stack_depth): New functions.
5050         (buildsym_init): Update.
5051
5052 2018-07-20  Tom Tromey  <tom@tromey.com>
5053
5054         * rust-exp.y: Now a pure parser.  Update all rules.
5055         (%union): Move earlier.
5056         (current_parser, work_obstack): Remove globals.
5057         (rust_parser, ~rust_parser): Update.
5058         (class rust_parser) <copy_name, concat3, crate_name, super_name,
5059         lex_character, lex_number, lex_string, lex_identifier,
5060         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
5061         convert_name, convert_params_to_expression,
5062         convert_ast_to_expression, ast_basic_type, ast_operation,
5063         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
5064         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
5065         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
5066         ast_array_type, ast_slice_type, ast_reference_type,
5067         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
5068         (rust_parse): Update.
5069         (rustyyerror, rustyylex): Add parser parameter.
5070         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
5071         (rust_lex_stringish_test, rust_lex_test_sequence)
5072         (rust_lex_test_trailing_dot, rust_lex_test_completion)
5073         (rust_lex_test_push_back, rust_lex_tests): Update.
5074
5075 2018-07-19  Pedro Alves  <palves@redhat.com>
5076
5077         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
5078         gdb::unique_xmalloc_ptr.
5079         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
5080         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
5081         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
5082         copy-initialization.
5083         * guile/scm-pretty-print.c (ppscm_print_children): Use
5084         gdb::unique_xmalloc_ptr instead of cleanups.
5085         (gdbscm_apply_val_pretty_printer): Remove cleanups.
5086         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
5087         gdb::unique_xmalloc_ptr.
5088         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
5089         Adjust to use gdb::unique_xmalloc_ptr.
5090         * guile/scm-utils.c (extract_arg): Adjust.
5091         * guile/scm-value.c (gdbscm_value_field): Adjust to use
5092         gdb::unique_xmalloc_ptr instead of a cleanup.
5093
5094 2018-07-19  Tom Tromey  <tom@tromey.com>
5095
5096         * utils.c (do_value_free_to_mark)
5097         (make_cleanup_value_free_to_mark): Remove.
5098         * utils.h (make_cleanup_value_free_to_mark): Remove.
5099
5100 2018-07-19  Pedro Alves  <palves@redhat.com>
5101
5102         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
5103         forwarding reference.
5104
5105 2018-07-18  Pedro Alves  <palves@redhat.com>
5106
5107         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
5108         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
5109         cleanup.
5110
5111 2018-07-18  Pedro Alves  <palves@redhat.com>
5112
5113         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
5114         exceptions.
5115         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
5116         (gdbscm_wrap): New.
5117         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
5118         directly instead of a cleanup.
5119         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
5120         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
5121         (vlscm_binop_gdbthrow): New, factored out from ...
5122         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
5123         (vlscm_rich_compare): Use gdbscm_wrap.
5124         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
5125         instead of a cleanup.
5126         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
5127         cleanup.
5128         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
5129         Use xfree directly instead of a cleanup.
5130         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
5131         Adjust to use gdbscm_wrap and scoped_value_mark.
5132         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
5133         (gdbscm_value_address, gdbscm_value_dereference)
5134         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
5135         scoped_value_mark.
5136         (gdbscm_value_dynamic_type): Use scoped_value_mark.
5137         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
5138         scoped_value_mark.
5139         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
5140         gdbscm_wrap and scoped_value_mark.
5141         (gdbscm_value_to_string): Use xfree directly instead of a
5142         cleanup.  Move 'buffer' unique_ptr to TRY scope.
5143         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
5144         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
5145         scoped_value_mark.
5146         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
5147         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
5148         scoped_value_mark.
5149         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
5150         gdbscm_wrap.
5151
5152 2018-07-18  Tom de Vries  <tdevries@suse.de>
5153
5154         * findvar.c (default_read_var_value): Also resolve dynamic type for
5155         LOC_OPTIMIZED_OUT vars.
5156
5157 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
5158
5159         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
5160         decoding.
5161
5162 2018-07-17  Tom Tromey  <tom@tromey.com>
5163
5164         * guile/scm-param.c (pascm_set_func, pascm_show_func)
5165         (compute_enum_list, pascm_set_param_value_x)
5166         (gdbscm_parameter_value): Update.
5167         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
5168         (gdbscm_scm_to_host_string): Update.
5169         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
5170         Update.
5171         * guile/scm-cmd.c (cmdscm_add_completion): Update.
5172         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
5173         * guile/scm-string.c (gdbscm_scm_to_string): Return
5174         unique_xmalloc_ptr.
5175         (gdbscm_scm_to_host_string): Likewise.
5176
5177 2018-07-17  Tom Tromey  <tom@tromey.com>
5178
5179         * guile/guile.c (gdbscm_eval_from_control_command): Update.
5180         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
5181         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
5182         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
5183         unique_xmalloc_ptr.
5184
5185 2018-07-17  Tom Tromey  <tom@tromey.com>
5186
5187         * guile/scm-param.c (pascm_signal_setshow_error): Update.
5188         * guile/guile-internal.h (gdbscm_exception_message_to_string):
5189         Update.
5190         * guile/scm-cmd.c (cmdscm_function): Update.
5191         * guile/scm-pretty-print.c
5192         (ppscm_print_exception_unless_memory_error): Update.
5193         * guile/scm-exception.c (gdbscm_exception_message_to_string):
5194         Return unique_xmalloc_ptr.
5195
5196 2018-07-17  Tom Tromey  <tom@tromey.com>
5197
5198         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
5199         Use string_printf.
5200
5201 2018-07-17  Jim Wilson  <jimw@sifive.com>
5202
5203         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
5204         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
5205         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
5206         unecessary braces after EF_RISCV_RVC test.  Delete call to
5207         set_gdbarch_decr_pc_after_break.
5208
5209         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
5210         RISCV_LAST_FP_REGNUM + 1.
5211         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
5212
5213 2018-07-17  Tom Tromey  <tom@tromey.com>
5214
5215         * configure.ac: Remove --disable-gdbcli.
5216         * configure: Rebuild.
5217         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
5218         (SUBDIR_CLI_CFLAGS): Remove.
5219         (SFILES): Use SUBDIR_CLI_SRCS.
5220         (COMMON_OBS): Use SUBDIR_CLI_OBS.
5221
5222 2018-07-17  Tom Tromey  <tom@tromey.com>
5223
5224         PR gdb/18624:
5225         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
5226
5227 2018-07-16  Jim Wilson  <jimw@sifive.com>
5228
5229         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
5230
5231 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5232
5233         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
5234         variable.
5235         (libunwind_frame_sniffer): Likewise.
5236         (libunwind_frame_prev_register): Likewise.
5237         (libunwind_sigtramp_frame_sniffer): Likewise.
5238         * ia64-tdep.c (ia64_access_reg): Likewise.
5239         (ia64_access_rse_reg): Likewise.
5240         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
5241         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
5242
5243 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5244
5245         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
5246
5247 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5248
5249         * remote-sim.c (gdbsim_target::close,
5250         gdbsim_target::mourn_inferior): Remove unused variables.
5251
5252 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
5253
5254         * ia64-tdep.c (ktab_buf): New global.
5255         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
5256         (get_kernel_table): Adjust.
5257
5258 2018-07-16  Tom Tromey  <tom@tromey.com>
5259
5260         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
5261         * dwarf2read.c (using_directives, new_symbol): Use
5262         outermost_context_p.
5263         * dbxread.c (process_one_symbol): Use outermost_context_p.
5264         * coffread.c (coff_symtab_read): Use outermost_context_p.
5265
5266 2018-07-16  Tom Tromey  <tom@tromey.com>
5267
5268         * dwarf2read.c (using_directives, read_func_scope)
5269         (read_lexical_block_scope): Update.
5270         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
5271         * buildsym.h (local_using_directives, global_using_directives):
5272         Don't declare.
5273         (get_local_using_directives, set_local_using_directives)
5274         (get_global_using_directives): Declare.
5275         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
5276         m_global_using_directives>: New members.
5277         (finish_block_internal, prepare_for_building)
5278         (reset_symtab_globals, end_symtab_get_static_block)
5279         (push_context): Update.
5280         (get_local_using_directives, set_local_using_directives)
5281         (get_global_using_directives): New functions.
5282         (buildsym_init): Update.
5283
5284 2018-07-16  Tom Tromey  <tom@tromey.com>
5285
5286         * xcoffread.c (xcoff_initial_scan): Don't call
5287         free_pending_blocks.
5288         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
5289         * buildsym.h (class scoped_free_pendings): Add constructor.
5290         (free_pending_blocks): Don't declare.
5291         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
5292         (free_pending_blocks): Now static.
5293
5294 2018-07-16  Tom Tromey  <tom@tromey.com>
5295
5296         * buildsym.h (push_subfile, pop_subfile): Update declarations.
5297         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
5298         member.
5299         (struct subfile_stack): Remove.
5300         (subfile_stack): Remove.
5301         (push_subfile, pop_subfile, buildsym_init): Update.
5302
5303 2018-07-16  Tom Tromey  <tom@tromey.com>
5304
5305         * buildsym.c (push_subfile): Use gdb_assert.
5306         (pop_subfile): Use gdb_assert.
5307
5308 2018-07-16  Tom Tromey  <tom@tromey.com>
5309
5310         * buildsym.h (merge_symbol_lists): Remove.
5311         * buildsym.c (merge_symbol_lists): Remove.
5312
5313 2018-07-16  Tom Tromey  <tom@tromey.com>
5314
5315         * stabsread.c (scan_file_globals): Update comment.
5316         * stabsread.h (scan_file_globals): Move from buildsym.h.
5317         * buildsym.h (scan_file_globals): Move to stabsread.h.
5318
5319 2018-07-16  Tom Tromey  <tom@tromey.com>
5320
5321         * xcoffread.c (xcoff_new_init): Update.
5322         * mipsread.c (mipscoff_new_init): Update.
5323         * mdebugread.c (mdebug_build_psymtabs): Update.
5324         * elfread.c (elf_new_init): Update.
5325         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
5326         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
5327         * buildsym.h (buildsym_new_init): Don't declare.
5328         * buildsym.c (buildsym_new_init): Remove.
5329
5330 2018-07-16  Tom Tromey  <tom@tromey.com>
5331
5332         * stabsread.h (within_function): Move from buildsym.h.
5333         * stabsread.c (start_stabs): Clear within_function.
5334         * coffread.c (coff_start_symtab): Clear within_function.
5335         * buildsym.h (within_function): Move to stabsread.h.
5336         * buildsym.c (prepare_for_building): Update.
5337
5338 2018-07-16  Tom Tromey  <tom@tromey.com>
5339
5340         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
5341         * dwarf2read.c (dwarf2_start_symtab): Don't set
5342         processing_gcc_compilation.
5343         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
5344
5345 2018-07-16  Tom Tromey  <tom@tromey.com>
5346
5347         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
5348         (next_symbol_text_func): Move from buildsym.h.
5349         * stabsread.c (hashname): Move from buildsym.c.
5350         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
5351         (next_symbol_text_func, hashname): Move to stabsread.h.
5352         * buildsym.c: Don't include bcache.h
5353         (hashname): Move to stasbread.c.
5354
5355 2018-07-16  Tom Tromey  <tom@tromey.com>
5356
5357         * buildsym.h (context_stack_size): Don't declare.
5358         * buildsym.c (context_stack_size): New global.
5359
5360 2018-07-16  Tom Tromey  <tom@tromey.com>
5361
5362         * dbxread.c (processing_acc_compilation): New global.
5363         * buildsym.h (processing_acc_compilation): Don't declare.
5364
5365 2018-07-16  Tom Tromey  <tom@tromey.com>
5366
5367         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
5368         * dbxread.c (read_ofile_symtab): Update.
5369         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
5370         * buildsym.h (last_source_start_addr): Remove.
5371         (set_last_source_start_addr, get_last_source_start_addr):
5372         Declare.
5373         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
5374         parameter.
5375         (struct buildsym_compunit) <m_last_source_start_addr>: New
5376         member.
5377         (prepare_for_building): Remove start_addr parameter.
5378         (start_symtab, restart_symtab, end_symtab_get_static_block)
5379         (end_symtab_with_blockvector): Update.
5380         (set_last_source_start_addr, get_last_source_start_addr): New
5381         functions.
5382
5383 2018-07-16  Tom Tromey  <tom@tromey.com>
5384
5385         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
5386         member.
5387         (have_line_numbers): Remove.
5388         (record_line, prepare_for_building, end_symtab_get_static_block)
5389         (augment_type_symtab): Update.
5390
5391 2018-07-16  Tom Tromey  <tom@tromey.com>
5392
5393         * buildsym.c (~buildsym_compunit): Free the macro table.
5394         (struct buildsym_compunit) <get_macro_table, release_macros>: New
5395         methods.
5396         <m_pending_macros>: New member.
5397         (pending_macros): Remove.
5398         (~scoped_free_pendings, get_macro_table, prepare_for_building)
5399         (reset_symtab_globals, end_symtab_get_static_block)
5400         (end_symtab_with_blockvector, augment_type_symtab)
5401         (buildsym_init): Update.
5402
5403 2018-07-16  Tom Tromey  <tom@tromey.com>
5404
5405         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
5406         parameter.
5407         (buildsym_compunit::set_last_source_file): New method.
5408         <m_last_source_file>: New member.
5409         (prepare_for_building): Remove "name" parameter.
5410         (start_symtab, restart_symtab, reset_symtab_globals): Update.
5411         (last_source_file): Remove.
5412         (set_last_source_file, get_last_source_file): Update.
5413
5414 2018-07-16  Tom Tromey  <tom@tromey.com>
5415
5416         * buildsym.c (prepare_for_building): Add assert.
5417
5418 2018-07-16  Tom Tromey  <tom@tromey.com>
5419
5420         * buildsym.c (~buildsym_compunit): Update.
5421         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
5422         (start_subfile, patch_subfile_names)
5423         (end_symtab_with_blockvector): Update.
5424
5425 2018-07-16  Tom Tromey  <tom@tromey.com>
5426
5427         * buildsym.c (struct buildsym_compunit): Add constructor,
5428         destructor, initializers.
5429         (start_buildsym_compunit): Remove.
5430         (free_buildsym_compunit): Use "delete".
5431         (start_symtab, restart_symtab): Use "new".
5432
5433 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
5434
5435         * symfile.c (set_objfile_default_section_offset): Remove struct
5436         keyword.
5437
5438 2018-07-14  Stafford Horne  <shorne@gmail.com>
5439
5440         * (Responsible Maintainers): Add myself as or1k maintainer.
5441
5442 2018-07-13  Tom Tromey  <tom@tromey.com>
5443
5444         * symfile.c (set_objfile_default_section_offset): Use extra braces
5445         around initializer.
5446
5447 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
5448
5449         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
5450         non-branching basr.
5451
5452 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5453
5454         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5455         unittests/cli-utils-selftests.c
5456         * unittests/cli-utils-selftests.c: New file.
5457
5458 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5459
5460         * NEWS: Mention new commands. Mention change to 'thread apply'.
5461
5462 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5463
5464         * thread.c (thr_try_catch_cmd): New function.
5465         (thread_apply_all_command): Handle qcs flags.
5466         (thread_apply_command): Handle qcs flags.
5467         (taas_command): New function.
5468         (tfaas_command): New function.
5469         (_initialize_thread): Update to setup the new commands 'taas
5470         and 'tfaas'. Change doc string for 'thread apply'.
5471
5472 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5473
5474         * stack.c: (trailing_outermost_frame): New function, mostly
5475         extracted from backtrace_command_1.
5476         (leading_innermost_frame): New function.
5477         (backtrace_command_1): Update to call trailing_outermost_frame.
5478         (frame_apply_command_count): New function.
5479         (frame_apply_level_command): New function.
5480         (frame_apply_all_command): New function.
5481         (frame_apply_command): New function.
5482         (faas_command): New function.
5483         (frame_cmd_list): New variable.
5484         (_initialize_stack): Update to setup the new commands 'frame apply'
5485         and 'faas'.
5486
5487 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5488
5489         * cli-utils.c (number_or_range_parser::get_number): Only handle
5490         numbers or convenience var as numbers.
5491         (parse_flags): New function.
5492         (parse_flags_qcs): New function.
5493         (number_or_range_parser::finished): Ensure parsing end is detected
5494         before end of string.
5495         * cli-utils.h (parse_flags): New function.
5496         (parse_flags_qcs): New function.
5497         (number_or_range_parser): Remove m_finished bool.
5498         (number_or_range_parser::skip_range): Set m_in_range to false.
5499
5500 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
5501
5502         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
5503         on Windows.
5504
5505 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
5506             Jan Kratochvil  <jan.kratochvil@redhat.com>
5507             Paul Fertser  <fercerpav@gmail.com>
5508             Tsutomu Seki  <sekiriki@gmail.com>
5509             Pedro Alves  <palves@redhat.com>
5510
5511         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5512         'unittests/parse-connection-spec-selftests.c'.
5513         (COMMON_SFILES): Add 'common/netstuff.c'.
5514         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
5515         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
5516         * common/netstuff.c: New file.
5517         * common/netstuff.h: New file.
5518         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
5519         (wait_for_connect): Update comment.  New parameter
5520         'gdb::optional<int> sock' instead of 'struct serial *scb'.
5521         Use 'sock' directly instead of 'scb->fd'.
5522         (try_connect): New function, with code from 'net_open'.
5523         (net_open): Rewrite main loop to deal with multiple
5524         sockets/addresses.  Handle IPv6-style hostnames; implement
5525         support for IPv6 connections.
5526         * unittests/parse-connection-spec-selftests.c: New file.
5527
5528 2018-07-11  Pedro Alves  <palves@redhat.com>
5529
5530         PR gdb/23377
5531         * remote.c (remote_target::remote_detach_pid): Call
5532         set_current_process.
5533
5534 2018-07-11  Pedro Alves  <palves@redhat.com>
5535
5536         * h8300-tdep.c (h8300_gdbarch_init): Remove
5537         set_gdbarch_ecoff_reg_to_regnum calls.
5538
5539 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
5540
5541         PR c++/23373
5542         * c-typeprint.c (c_type_print_base_struct_union): Don't print
5543         offsets/sizes for static members of a class/struct.
5544
5545 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
5546
5547         * target-descriptions.c (tdesc_register_bitsize): Rename.
5548         * target-descriptions.h (tdesc_register_bitsize): Likewise.
5549         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
5550         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
5551
5552 2018-07-10  Tom Tromey  <tom@tromey.com>
5553
5554         * breakpoint.c (moribund_locations): Now static and a
5555         std::vector.
5556         (breakpoint_init_inferior, moribund_breakpoint_here_p)
5557         (build_bpstat_chain, update_global_location_list)
5558         (breakpoint_retire_moribund): Update.
5559         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
5560         VEC.
5561
5562 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
5563
5564         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
5565         (riscv_register_reggroup_p): Use new function, remove unneeded
5566         parenthesis.
5567         (riscv_push_dummy_call): Extend assert to compare against xlen or
5568         flen based on register type.
5569
5570 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
5571
5572         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
5573
5574 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5575
5576         * remote.c (show_hardware_watchpoint_limit): New function.
5577         (show_hardware_watchpoint_length_limit): New function.
5578         (show_hardware_breakpoint_limit): New function.
5579         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
5580         where appropriate, update help text.
5581
5582 2018-07-09  Tom Tromey  <tom@tromey.com>
5583
5584         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
5585         (CLIBS): Don't mention NAT_CLIBS.
5586
5587 2018-07-09  Tom Tromey  <tom@tromey.com>
5588
5589         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
5590         (LIBGDB_OBS, clean mostlyclean): Update.
5591         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
5592
5593 2018-07-09  Tom Tromey  <tom@tromey.com>
5594
5595         * Makefile.in (%.c: %.y): Use ECHO_YACC.
5596         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
5597         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
5598
5599 2018-07-09  Tom Tromey  <tom@tromey.com>
5600
5601         * Makefile.in (ALLDEPFILES): Remove exec.c.
5602         (COMMON_OBS): Remove exec.o.
5603         (COMMON_SFILES): Add exec.c.
5604
5605 2018-07-09  Tom Tromey  <tom@tromey.com>
5606
5607         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
5608
5609 2018-07-09  Tom Tromey  <tom@tromey.com>
5610
5611         * Makefile.in (clean mostlyclean): Remove stamp-version.
5612         (version.c): Depend on stamp-version.
5613         (stamp-version): New rule, from version.c rule.
5614
5615 2018-07-09  Tom Tromey  <tom@tromey.com>
5616
5617         * Makefile.in (init.c): Depend on stamp-init.
5618         (stamp-init): New rule, from init.c rule.
5619         (clean mostlyclean): Remove stamp-init.
5620
5621 2018-07-09  Tom Tromey  <tom@tromey.com>
5622
5623         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
5624         SUBDIR_GCC_COMPILE_SRCS.
5625
5626 2018-07-09  Tom Tromey  <tom@tromey.com>
5627
5628         * Makefile.in (init.c): Remove some unused sed rules.
5629
5630 2018-07-09  Tom Tromey  <tom@tromey.com>
5631
5632         * Makefile.in (TSOBS): Remove.
5633         (INIT_FILES): Update.
5634         (LIBGDB_OBS): Update.
5635         (COMMON_SFILES): Add inflow.c.
5636         (SFILES): Remove inflow.c.
5637
5638 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
5639
5640         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
5641
5642 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
5643
5644         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
5645         get_saveloc_name, is_signal_frame_name, step_name,
5646         init_remote_name, create_addr_space_name,
5647         destroy_addr_space_name, search_unwind_table_name,
5648         find_dyn_list_name): Constify.
5649
5650 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
5651
5652         * darwin-nat.c (darwin_pthread_kill): New function.
5653         (darwin_resume_thread): Use darwin_pthread_kill.
5654
5655 2018-07-05  Tom de Vries  <tdevries@suse.de>
5656
5657         * macroexp.c (macro_buffer) <operator=>: New member function.
5658
5659 2018-07-04  Tom Tromey  <tom@tromey.com>
5660
5661         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
5662
5663 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
5664
5665         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
5666         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
5667         * maint.c: Likewise.
5668         * top.c: Likewise.
5669
5670 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
5671
5672         * NEWS: Create a new section for the next release branch.
5673         Rename the section of the current branch, now that it has
5674         been cut.
5675
5676 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
5677
5678         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
5679         * version.in: Bump version to 8.2.50.DATE-git.
5680
5681 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
5682             Pedro Alves  <palves@redhat.com>
5683
5684         * linux-nat.c (linux_init_ptrace): Rename to ...
5685         (linux_init_ptrace_procfs): ... this.  Call
5686         linux_proc_init_warnings.
5687         (linux_nat_target::post_attach)
5688         (linux_nat_target::post_startup_inferior): Adjust.
5689         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
5690         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
5691
5692 2018-07-04  Tom de Vries  <tdevries@suse.de>
5693
5694         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
5695         check ...
5696         (read_comp_unit_head): ... here.
5697
5698 2018-07-03  Tom Tromey  <tom@tromey.com>
5699
5700         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
5701         (stop_tracing, tstatus_command)
5702         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
5703         (print_one_static_tracepoint_marker): Update.
5704         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
5705         std::vector.
5706         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
5707         VEC.
5708         (all_tracepoints, static_tracepoints_here): Return std::vector.
5709
5710 2018-07-03  Tom Tromey  <tom@tromey.com>
5711
5712         * common/ptid.c (ptid_equal): Remove.
5713         * common/ptid.h (ptid_equal): Don't declare.
5714         * ada-tasks.c: Update.
5715         * breakpoint.c: Update.
5716         * common/agent.c: Update.
5717         * corelow.c: Update.
5718         * darwin-nat-info.c: Update.
5719         * darwin-nat.c: Update.
5720         * dcache.c: Update.
5721         * dtrace-probe.c: Update.
5722         * dummy-frame.c: Update.
5723         * fbsd-nat.c: Update.
5724         * frame.c: Update.
5725         * gdbthread.h: Update.
5726         * gnu-nat.c: Update.
5727         * go32-nat.c: Update.
5728         * inf-loop.c: Update.
5729         * inf-ptrace.c: Update.
5730         * infcall.c: Update.
5731         * infcmd.c: Update.
5732         * inflow.c: Update.
5733         * infrun.c: Update.
5734         * linux-fork.c: Update.
5735         * linux-nat.c: Update.
5736         * linux-thread-db.c: Update.
5737         * mi/mi-cmd-var.c: Update.
5738         * mi/mi-interp.c: Update.
5739         * mi/mi-main.c: Update.
5740         * nto-procfs.c: Update.
5741         * ppc-linux-tdep.c: Update.
5742         * procfs.c: Update.
5743         * python/py-inferior.c: Update.
5744         * python/py-record-btrace.c: Update.
5745         * python/py-record.c: Update.
5746         * ravenscar-thread.c: Update.
5747         * regcache.c: Update.
5748         * remote-sim.c: Update.
5749         * remote.c: Update.
5750         * sol-thread.c: Update.
5751         * solib.c: Update.
5752         * target.c: Update.
5753         * tui/tui-stack.c: Update.
5754         * varobj.c: Update.
5755         * windows-nat.c: Update.
5756         * windows-tdep.c: Update.
5757
5758 2018-07-03  Tom Tromey  <tom@tromey.com>
5759
5760         * common/ptid.c (ptid_match): Remove.
5761         * common/ptid.h (ptid_match): Don't declare.
5762         * fbsd-nat.c: Update.
5763         * infcmd.c: Update.
5764         * infrun.c: Update.
5765         * linux-nat.c: Update.
5766         * record-btrace.c: Update.
5767         * regcache.c: Update.
5768         * remote.c: Update.
5769
5770 2018-07-03  Tom Tromey  <tom@tromey.com>
5771
5772         * common/ptid.c (ptid_tid_p): Remove.
5773         * common/ptid.h (ptid_tid_p): Don't declare.
5774         * sol-thread.c: Update.
5775
5776 2018-07-03  Tom Tromey  <tom@tromey.com>
5777
5778         * common/ptid.c (ptid_lwp_p): Remove.
5779         * common/ptid.h (ptid_lwp_p): Don't declare.
5780         * fbsd-nat.c: Update.
5781         * linux-nat.c: Update.
5782         * nat/linux-procfs.c: Update.
5783         * nat/x86-linux-dregs.c: Update.
5784         * sol-thread.c: Update.
5785
5786 2018-07-03  Tom Tromey  <tom@tromey.com>
5787
5788         * common/ptid.c (ptid_is_pid): Remove.
5789         * common/ptid.h (ptid_is_pid): Don't declare.
5790         * infrun.c: Update.
5791         * linux-nat.c: Update.
5792         * mi/mi-interp.c: Update.
5793         * remote.c: Update.
5794         * thread.c: Update.
5795
5796 2018-07-03  Tom Tromey  <tom@tromey.com>
5797
5798         * common/ptid.c (ptid_get_tid): Remove.
5799         * common/ptid.h (ptid_get_tid): Don't declare.
5800         * ada-tasks.c: Update.
5801         * aix-thread.c: Update.
5802         * bsd-uthread.c: Update.
5803         * darwin-nat.c: Update.
5804         * fbsd-nat.c: Update.
5805         * i386-darwin-nat.c: Update.
5806         * infrun.c: Update.
5807         * linux-tdep.c: Update.
5808         * nto-procfs.c: Update.
5809         * ppc-ravenscar-thread.c: Update.
5810         * python/py-infthread.c: Update.
5811         * ravenscar-thread.c: Update.
5812         * sol-thread.c: Update.
5813         * sparc-ravenscar-thread.c: Update.
5814         * windows-nat.c: Update.
5815
5816 2018-07-03  Tom Tromey  <tom@tromey.com>
5817
5818         * common/ptid.c (ptid_get_lwp): Remove.
5819         * common/ptid.h (ptid_get_lwp): Don't declare.
5820         * aarch64-linux-nat.c: Update.
5821         * ada-tasks.c: Update.
5822         * aix-thread.c: Update.
5823         * amd64-linux-nat.c: Update.
5824         * arm-linux-nat.c: Update.
5825         * corelow.c: Update.
5826         * fbsd-nat.c: Update.
5827         * fbsd-tdep.c: Update.
5828         * gnu-nat.c: Update.
5829         * i386-cygwin-tdep.c: Update.
5830         * i386-gnu-nat.c: Update.
5831         * i386-linux-nat.c: Update.
5832         * ia64-linux-nat.c: Update.
5833         * inf-ptrace.c: Update.
5834         * infrun.c: Update.
5835         * linux-fork.c: Update.
5836         * linux-nat.c: Update.
5837         * linux-tdep.c: Update.
5838         * linux-thread-db.c: Update.
5839         * mips-linux-nat.c: Update.
5840         * nat/aarch64-linux-hw-point.c: Update.
5841         * nat/aarch64-linux.c: Update.
5842         * nat/linux-btrace.c: Update.
5843         * nat/linux-osdata.c: Update.
5844         * nat/linux-procfs.c: Update.
5845         * nat/x86-linux-dregs.c: Update.
5846         * obsd-nat.c: Update.
5847         * ppc-fbsd-nat.c: Update.
5848         * ppc-linux-nat.c: Update.
5849         * procfs.c: Update.
5850         * python/py-infthread.c: Update.
5851         * ravenscar-thread.c: Update.
5852         * remote.c: Update.
5853         * s390-linux-nat.c: Update.
5854         * sol-thread.c: Update.
5855         * sol2-tdep.c: Update.
5856         * spu-linux-nat.c: Update.
5857         * x86-linux-nat.c: Update.
5858         * xtensa-linux-nat.c: Update.
5859
5860 2018-07-03  Tom Tromey  <tom@tromey.com>
5861
5862         * common/ptid.c (ptid_get_pid): Remove.
5863         * common/ptid.h (ptid_get_pid): Don't declare.
5864         * aarch64-linux-nat.c: Update.
5865         * ada-lang.c: Update.
5866         * aix-thread.c: Update.
5867         * alpha-bsd-nat.c: Update.
5868         * amd64-fbsd-nat.c: Update.
5869         * amd64-linux-nat.c: Update.
5870         * arm-linux-nat.c: Update.
5871         * arm-nbsd-nat.c: Update.
5872         * auxv.c: Update.
5873         * break-catch-syscall.c: Update.
5874         * breakpoint.c: Update.
5875         * bsd-uthread.c: Update.
5876         * corelow.c: Update.
5877         * ctf.c: Update.
5878         * darwin-nat.c: Update.
5879         * fbsd-nat.c: Update.
5880         * fbsd-tdep.c: Update.
5881         * gcore.c: Update.
5882         * gnu-nat.c: Update.
5883         * hppa-nbsd-nat.c: Update.
5884         * hppa-obsd-nat.c: Update.
5885         * i386-fbsd-nat.c: Update.
5886         * ia64-linux-nat.c: Update.
5887         * inf-ptrace.c: Update.
5888         * infcmd.c: Update.
5889         * inferior.c: Update.
5890         * inferior.h: Update.
5891         * inflow.c: Update.
5892         * infrun.c: Update.
5893         * linux-fork.c: Update.
5894         * linux-nat.c: Update.
5895         * linux-tdep.c: Update.
5896         * linux-thread-db.c: Update.
5897         * m68k-bsd-nat.c: Update.
5898         * mi/mi-interp.c: Update.
5899         * mi/mi-main.c: Update.
5900         * mips-linux-nat.c: Update.
5901         * mips-nbsd-nat.c: Update.
5902         * mips64-obsd-nat.c: Update.
5903         * nat/aarch64-linux-hw-point.c: Update.
5904         * nat/aarch64-linux.c: Update.
5905         * nat/linux-btrace.c: Update.
5906         * nat/linux-osdata.c: Update.
5907         * nat/linux-procfs.c: Update.
5908         * nat/x86-linux-dregs.c: Update.
5909         * nto-procfs.c: Update.
5910         * obsd-nat.c: Update.
5911         * ppc-linux-nat.c: Update.
5912         * ppc-nbsd-nat.c: Update.
5913         * ppc-obsd-nat.c: Update.
5914         * proc-service.c: Update.
5915         * procfs.c: Update.
5916         * python/py-inferior.c: Update.
5917         * python/py-infthread.c: Update.
5918         * ravenscar-thread.c: Update.
5919         * record.c: Update.
5920         * remote-sim.c: Update.
5921         * remote.c: Update.
5922         * rs6000-nat.c: Update.
5923         * s390-linux-nat.c: Update.
5924         * sh-nbsd-nat.c: Update.
5925         * sol-thread.c: Update.
5926         * sparc-nat.c: Update.
5927         * sparc64-tdep.c: Update.
5928         * spu-linux-nat.c: Update.
5929         * spu-tdep.c: Update.
5930         * target-debug.h: Update.
5931         * target.c: Update.
5932         * thread.c: Update.
5933         * tid-parse.c: Update.
5934         * tracefile-tfile.c: Update.
5935         * vax-bsd-nat.c: Update.
5936         * windows-nat.c: Update.
5937         * x86-linux-nat.c: Update.
5938         * x86-nat.c: Update.
5939
5940 2018-07-03  Tom Tromey  <tom@tromey.com>
5941
5942         * common/ptid.c (pid_to_ptid): Remove.
5943         * common/ptid.h (pid_to_ptid): Don't declare.
5944         * aix-thread.c: Update.
5945         * arm-linux-nat.c: Update.
5946         * common/ptid.c: Update.
5947         * common/ptid.h: Update.
5948         * corelow.c: Update.
5949         * ctf.c: Update.
5950         * darwin-nat.c: Update.
5951         * fbsd-nat.c: Update.
5952         * fork-child.c: Update.
5953         * gnu-nat.c: Update.
5954         * go32-nat.c: Update.
5955         * inf-ptrace.c: Update.
5956         * infcmd.c: Update.
5957         * inferior.c: Update.
5958         * infrun.c: Update.
5959         * linux-fork.c: Update.
5960         * linux-nat.c: Update.
5961         * nat/aarch64-linux-hw-point.c: Update.
5962         * nat/fork-inferior.c: Update.
5963         * nat/x86-linux-dregs.c: Update.
5964         * nto-procfs.c: Update.
5965         * obsd-nat.c: Update.
5966         * procfs.c: Update.
5967         * progspace.c: Update.
5968         * remote.c: Update.
5969         * rs6000-nat.c: Update.
5970         * s390-linux-nat.c: Update.
5971         * sol-thread.c: Update.
5972         * spu-linux-nat.c: Update.
5973         * target.c: Update.
5974         * top.c: Update.
5975         * tracefile-tfile.c: Update.
5976         * windows-nat.c: Update.
5977
5978 2018-07-03  Tom Tromey  <tom@tromey.com>
5979
5980         * common/ptid.h (ptid_build): Don't declare.
5981         * common/ptid.c (ptid_build): Remove.
5982         * aix-thread.c: Update.
5983         * bsd-kvm.c: Update.
5984         * bsd-uthread.c: Update.
5985         * common/agent.c: Update.
5986         * common/ptid.c: Update.
5987         * common/ptid.h: Update.
5988         * corelow.c: Update.
5989         * darwin-nat.c: Update.
5990         * fbsd-nat.c: Update.
5991         * gnu-nat.c: Update.
5992         * linux-fork.c: Update.
5993         * linux-nat.c: Update.
5994         * linux-thread-db.c: Update.
5995         * nat/linux-osdata.c: Update.
5996         * nat/linux-procfs.c: Update.
5997         * nto-procfs.c: Update.
5998         * obsd-nat.c: Update.
5999         * proc-service.c: Update.
6000         * procfs.c: Update.
6001         * ravenscar-thread.c: Update.
6002         * remote-sim.c: Update.
6003         * remote.c: Update.
6004         * sol-thread.c: Update.
6005         * target.c: Update.
6006         * windows-nat.c: Update.
6007
6008 2018-07-03  Tom Tromey  <tom@tromey.com>
6009
6010         * infrun.c (follow_exec): Use exit_inferior_silent.
6011         * inferior.c (exit_inferior_num_silent): Remove.
6012         * inferior.h (exit_inferior_num_silent): Don't declare.
6013
6014 2018-07-03  Tom Tromey  <tom@tromey.com>
6015
6016         PR cli/23340:
6017         * darwin-nat.c (darwin_attach_pid): Reset inferior and
6018         inferior_ptid on error.
6019
6020 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
6021             Simon Marchi  <simon.marchi@polymtl.ca>
6022
6023         PR tdep/8282
6024         * disasm.h (gdb_disassembler): Add
6025         `m_disassembler_options_holder'. member
6026         * disasm.c (get_all_disassembler_options): New function.
6027         (gdb_disassembler::gdb_disassembler): Use it.
6028         (gdb_buffered_insn_length_init_dis): Likewise.
6029         (gdb_buffered_insn_length): Adjust accordingly.
6030         (set_disassembler_options): Handle options with arguments.
6031         (show_disassembler_options_sfunc): Likewise.  Add a leading new
6032         line if showing options with descriptions.
6033         (disassembler_options_completer): Adapt to using the
6034         `disasm_options_and_args_t' structure.
6035         * mips-tdep.c (mips_disassembler_options): New variable.
6036         (mips_disassembler_options_o32): Likewise.
6037         (mips_disassembler_options_n32): Likewise.
6038         (mips_disassembler_options_n64): Likewise.
6039         (gdb_print_insn_mips): Don't set `disassembler_options'.
6040         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
6041         functions.
6042         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
6043         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
6044         `gdbarch_disassembler_options_implicit' and
6045         `gdbarch_valid_disassembler_options'.
6046         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
6047         `disasm_options_and_args_t' structure.
6048         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
6049         method.
6050         (valid_disassembler_options): Switch from `disasm_options_t' to
6051         the `disasm_options_and_args_t' structure.
6052         * NEWS: Document `set disassembler-options' support for the MIPS
6053         target.
6054         * gdbarch.h: Regenerate.
6055         * gdbarch.c: Regenerate.
6056
6057 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
6058
6059         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
6060
6061 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
6062
6063         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
6064         parameter in call to amd64_target_description.
6065         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
6066         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
6067         (amd64fbsd_init_abi): Likewise.
6068         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
6069         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
6070         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
6071         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
6072
6073 2018-06-29  Pedro Alves  <palves@redhat.com>
6074
6075         * gdb/amd64-tdep.h (amd64_create_target_description): Add
6076         "segments" parameter.
6077         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
6078         (_initialize_amd64_tdep): Update call to
6079         amd64_create_target_description.
6080         (amd64_target_description): Add "segments" parameter.  Adjust
6081         the implementation to use it.
6082         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
6083         call to amd64_create_target_description.
6084         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
6085         * gdb/arch/amd64.h (amd64_create_target_description): Add
6086         "segments" register.
6087         * gdb/arch/amd64.c (amd64_create_target_description): Add
6088         "segments" parameter.  Call create_feature_i386_64bit_segments
6089         only if SEGMENTS is true.
6090         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
6091         call to amd64_create_target_description.
6092
6093 2018-06-29  Pedro Alves  <palves@redhat.com>
6094
6095         * thread.c (thread_target_id_str): New, factored out from ...
6096         (print_thread_info_1): ... here.  Use it to compute the max
6097         "Target Id" column width.
6098
6099 2018-06-29  Pedro Alves  <palves@redhat.com>
6100
6101         * remote.c (remote_target::extra_thread_info): Delete
6102         'display_buf' and 'n' locals.  from the cache, regardless of
6103         packet mechanims is in use.  Use cache for qThreadExtra and qP
6104         methods too.
6105
6106 2018-06-29  Pedro Alves  <palves@redhat.com>
6107
6108         * blockframe.c (find_pc_sect_containing_function): New function.
6109         * breakpoint.c (print_breakpoint_location): Don't call
6110         find_pc_sect_function.
6111         * linespec.c (create_sals_line_offset): Record the location's
6112         symbol in the sal.
6113         * linespec.c (convert_address_location_to_sals): Fill in sal's
6114         symbol with find_pc_sect_containing_function.
6115         * symtab.c (find_function_start_sal): Rename to ...
6116         (find_function_start_sal_1): ... this.
6117         (find_function_start_sal): Reimplement as wrapper around
6118         find_function_start_sal_1, and use
6119         find_pc_sect_containing_function to fill in the sal's symbol.
6120         (find_function_start_sal(symbol*, bool)): Adjust.
6121         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
6122         comments.
6123         (find_pc_sect_containing_function): Declare.
6124
6125 2018-06-29  Pedro Alves  <palves@redhat.com>
6126
6127         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
6128         true if the the location has no symbol.
6129
6130 2018-06-28  Tom Tromey  <tom@tromey.com>
6131
6132         * NEWS: Mention --enable-codesign.
6133         * silent-rules.mk (ECHO_SIGN): New variable.
6134         * configure.ac: Add --enable-codesign.
6135         * configure: Rebuild.
6136         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
6137         (gdb$(EXEEXT)): Optionally invoke codesign.
6138
6139 2018-06-28  Pedro Alves  <palves@redhat.com>
6140
6141         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
6142         comments.
6143         (switch_to_thread_no_regs): Adjust comment.
6144         * infcmd.c (stop_pc): Delete.
6145         (post_create_inferior, info_program_command): Replace references
6146         to stop_pc with references to thread_info->suspend.stop_pc.
6147         * inferior.h (stop_pc): Delete declaration.
6148         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
6149         (handle_inferior_event_1, handle_signal_stop)
6150         (process_event_stop_test, keep_going_stepped_thread)
6151         (handle_step_into_function, handle_step_into_function_backward)
6152         (print_stop_location): Replace references to stop_pc with
6153         references to thread_info->suspend.stop_pc.
6154         (struct infcall_suspend_state) <stop_pc>: Delete field.
6155         (save_infcall_suspend_state, restore_infcall_suspend_state):
6156         Remove references to inf_stat->stop_pc.
6157         * linux-fork.c (fork_load_infrun_state): Likewise.
6158         * record-btrace.c (record_btrace_set_replay): Likewise.
6159         * record-full.c (record_full_goto_entry): Likewise.
6160         * remote.c (print_one_stopped_thread): Likewise.
6161         * target.c (target_resume): Extend comment.
6162         * thread.c (set_executing_thread): New.
6163         (set_executing): Use it.
6164         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
6165         Remove references to stop_pc.
6166
6167 2018-06-28  Pedro Alves  <palves@redhat.com>
6168
6169         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
6170         Moving fetching stop_pc until after ecs->event_thread is refreshed.
6171
6172 2018-06-28  Tom Tromey  <tom@tromey.com>
6173
6174         * coffread.c (coff_symfile_finish): Update.
6175         * xcoffread.c (xcoff_symfile_finish): Update.
6176         * elfread.c (elf_symfile_finish): Update.
6177         * symfile.h (dwarf2_free_objfile): Don't declare.
6178         * dwarf2read.c (_initialize_dwarf2_read): Use
6179         register_objfile_data_with_cleanup.
6180         (dwarf2_free_objfile): Now static.  Change signature.
6181
6182 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6183
6184         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
6185         option "-o" to add-symbol-file-load to add an offset to each
6186         section's load address.
6187         * symfile.c (set_objfile_default_section_offset): New function.
6188
6189 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6190
6191         * symfile.c (add_symbol_file_command): Make sure that sections
6192         with the same name are sorted in the same order.
6193
6194 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6195
6196         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
6197         require the second argument.  If omitted, load sections at the
6198         addresses specified in the file.
6199
6200 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6201
6202         * symfile.c (symbol_file_command, symbol_file_add_main_1)
6203         (_initialize_symfile): Add option "-o" to symbol-file to add an
6204         offset to each section of the symbol file.
6205
6206 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6207
6208         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
6209
6210 2018-06-27  Tom Tromey  <tom@tromey.com>
6211
6212         * stack.c (_initialize_stack): Update "func" help text.
6213
6214 2018-06-27  Tom Tromey  <tom@tromey.com>
6215
6216         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
6217         std::vector.
6218         (unwind_infopy_str, pyuw_create_unwind_info)
6219         (unwind_infopy_add_saved_register, pyuw_sniffer)
6220         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
6221         Update.
6222         (struct saved_reg): Add constructor.
6223         <value>: Now a gdbpy_ref<>.
6224
6225 2018-06-27  Tom Tromey  <tom@tromey.com>
6226
6227         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
6228
6229 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6230
6231         * gdb-gdb.py.in: Format using autopep8.
6232
6233 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6234
6235         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
6236         (type_lookup_function): Recognize CORE_ADDR values.
6237
6238 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6239
6240         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
6241         print tag_name.
6242
6243 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6244
6245         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
6246         <__lt__>: Add.
6247
6248 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6249
6250         * gdb-gdb.py: Move to...
6251         * gdb-gdb.py.in: ... here.
6252         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
6253         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
6254         dependencies.
6255         (distclean): Remove gdb-gdb.py when cleaning.
6256         (gdb-gdb.py, gdb-gdb.gdb): New rules.
6257         * configure: Re-generate.
6258
6259 2018-06-27  Pedro Alves  <palves@redhat.com>
6260
6261         * proc-service.c (get_ps_regcache): New.
6262         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
6263         (ps_lsetfpregs): Use it.
6264
6265 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
6266
6267         PR gdb/21695
6268         * dwarf2read.c (lnp_state_machine::check_line_address): Update declaration.
6269         (dwarf_decode_lines_1): Adjust.
6270
6271 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6272
6273         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
6274         override.
6275         <info_proc>: Likewise.
6276
6277 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
6278
6279         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
6280         to windows_fetch_one_register, and only handle the case of
6281         fetching one register.  Move the code that reloads the context
6282         and iterates over all registers if R is negative to...
6283         (windows_nat_target::fetch_registers): ... here.
6284         (do_windows_store_inferior_registers): Rename to
6285         windows_store_one_register, and only handle the case of storing
6286         one register.  Move the code that handles the case where r is
6287         negative to...
6288         (windows_nat_target::store_registers) ... here.
6289
6290 2018-06-26  Tom Tromey  <tom@tromey.com>
6291
6292         PR rust/22574:
6293         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
6294         * rust-lang.c (rust_print_struct_def): Add podata parameter.
6295         Update.
6296         (rust_internal_print_type): Add podata parameter.
6297         (rust_print_type): Update.
6298
6299 2018-06-26  Tom Tromey  <tom@tromey.com>
6300
6301         * typeprint.h (struct print_offset_data) <update, finish,
6302         maybe_print_hole>: New methods.
6303         <indentation>: New constant.
6304         * typeprint.c (print_offset_data::indentation): Define.
6305         (print_offset_data::maybe_print_hole, print_offset_data::update)
6306         (print_offset_data::finish): Move from c-typeprint.c and rename.
6307         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
6308         (print_spaces_filtered_with_print_options): Update.
6309         (c_print_type_union_field_offset, maybe_print_hole)
6310         (c_print_type_struct_field_offset): Move to typeprint.c and
6311         rename.
6312         (c_type_print_base_struct_union): Update.
6313
6314 2018-06-25  Pedro Alves  <palves@redhat.com>
6315
6316         * gdbthread.h (thread_info_ref, delete_thread)
6317         (delete_thread_silent, first_thread_of_inferior)
6318         (any_thread_of_inferior, switch_to_thread)
6319         (enable_thread_stack_temporaries)
6320         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6321         (get_last_thread_stack_temporary)
6322         (value_in_thread_stack_temporaries, can_access_registers_thread):
6323         Spell out "struct thread_info" instead of just "thread_info".
6324         * inferior.h (notice_new_inferior): Likewise.
6325
6326 2018-06-25  Pedro Alves  <palves@redhat.com>
6327
6328         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
6329         pass thread_info pointer to delete_thread.
6330         (windows_nat_target::detach): Pass inferior pointer to
6331         detach_inferior.
6332         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
6333         delete_thread.
6334         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
6335         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
6336         and pass a thread_info pointer to delete_thread.
6337         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
6338         pass thread_info pointer to delete_thread.
6339         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
6340         delete_thread_silent call.
6341         * procfs.c (procfs_target::detach): Pass inferior pointer to
6342         detach_inferior.
6343         (procfs_target::wait): Pass thread_info pointer to delete_thread.
6344         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
6345         delete_thread_silent call.
6346         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
6347         pass thread_info pointer to delete_thread.
6348         (windows_nat_target::detach): Pass inferior pointer to
6349         delete_inferior.
6350
6351 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
6352
6353         * regcache.c (readable_regcache::read_part): Fix asserts.
6354         (reg_buffer::raw_collect_part): New function.
6355         (regcache::write_part): Fix asserts.
6356         (reg_buffer::raw_supply_part): New function.
6357         (regcache::transfer_regset_register): New helper function.
6358         (regcache::transfer_regset): Call new functions.
6359         (regcache_supply_regset): Use gdb_byte*.
6360         (regcache::supply_regset): Likewise.
6361         (regcache_collect_regset): Likewise.
6362         (regcache::collect_regset): Likewise.
6363         * regcache.h (reg_buffer::raw_collect_part): New declaration.
6364         (reg_buffer::raw_supply_part): Likewise.
6365         (regcache::transfer_regset_register): Likewise.
6366         (regcache::transfer_regset): Use gdb_byte*.
6367
6368 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
6369
6370         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
6371
6372 2018-06-21  Pedro Alves  <palves@redhat.com>
6373
6374         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
6375         instead of a ptid_t.  All callers adjusted.
6376         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
6377         adjusted.
6378         (print_ada_task_info, display_current_task_id, task_command_1):
6379         Adjust.
6380         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
6381         inferior_thread.
6382         (breakpoint_kind): Adjust.
6383         (remove_breakpoints_pid): Rename to ...
6384         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
6385         pointer.  All callers adjusted.
6386         (bpstat_clear_actions): Use inferior_thread.
6387         (get_bpstat_thread): New.
6388         (bpstat_do_actions): Use it.
6389         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
6390         to take a thread_info pointer.  All callers adjusted.
6391         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
6392         (breakpoint_re_set_thread): Use inferior_thread.
6393         * breakpoint.h (struct inferior): Forward declare.
6394         (bpstat_stop_status): Update.
6395         (remove_breakpoints_pid): Delete.
6396         (remove_breakpoints_inf): New.
6397         * bsd-uthread.c (bsd_uthread_target::wait)
6398         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
6399         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
6400         (maint_btrace_packet_history_cmd)
6401         (maint_btrace_clear_packet_history_cmd): Adjust.
6402         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
6403         inferior_thread.
6404         * cli/cli-interp.c: Include "inferior.h".
6405         * common/refcounted-object.h (struct
6406         refcounted_object_ref_policy): New.
6407         * compile/compile-object-load.c: Include gdbthread.h.
6408         (store_regs): Use inferior_thread.
6409         * corelow.c (core_target::close): Use current_inferior.
6410         (core_target_open): Adjust to use first_thread_of_inferior and use
6411         the current inferior.
6412         * ctf.c (ctf_target::close): Adjust to use current_inferior.
6413         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
6414         <thread>: ... this new field.  All references adjusted.
6415         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
6416         Take a thread_info pointer instead of a ptid_t.
6417         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
6418         (dummy_frame_discard, register_dummy_frame_dtor): Take a
6419         thread_info pointer instead of a ptid_t.
6420         * elfread.c: Include "inferior.h".
6421         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
6422         Use inferior_thread.
6423         * eval.c (evaluate_subexp): Likewise.
6424         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
6425         inferior_thread.
6426         * gdb_proc_service.h (struct thread_info): Forward declare.
6427         (struct ps_prochandle) <ptid>: Delete, replaced by ...
6428         <thread>: ... this new field.  All references adjusted.
6429         * gdbarch.h, gdbarch.c: Regenerate.
6430         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
6431         'thread' parameter.  All implementations and callers adjusted.
6432         * gdbthread.h (thread_info) <set_running>: New method.
6433         (delete_thread, delete_thread_silent): Take a thread_info pointer
6434         instead of a ptid.
6435         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
6436         (first_thread_of_process): Delete, replaced by ...
6437         (first_thread_of_inferior): ... this new function.  All callers
6438         adjusted.
6439         (any_live_thread_of_process): Delete, replaced by ...
6440         (any_live_thread_of_inferior): ... this new function.  All callers
6441         adjusted.
6442         (switch_to_thread, switch_to_no_thread): Declare.
6443         (is_executing): Delete.
6444         (enable_thread_stack_temporaries): Update comment.
6445         <enable_thread_stack_temporaries>: Take a thread_info pointer
6446         instead of a ptid_t.  Incref the thread.
6447         <~enable_thread_stack_temporaries>: Decref the thread.
6448         <m_ptid>: Delete
6449         <m_thr>: New.
6450         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6451         (get_last_thread_stack_temporary)
6452         (value_in_thread_stack_temporaries, can_access_registers_thread):
6453         Take a thread_info pointer instead of a ptid_t.  All callers
6454         adjusted.
6455         * infcall.c (get_call_return_value): Use inferior_thread.
6456         (run_inferior_call): Work with thread pointers instead of ptid_t.
6457         (call_function_by_hand_dummy): Work with thread pointers instead
6458         of ptid_t.  Use thread_info_ref.
6459         * infcmd.c (proceed_thread_callback): Access thread's state
6460         directly.
6461         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
6462         access thread's state directly.
6463         (continue_command): Use inferior_thread.
6464         (info_program_command): Use find_thread_ptid and access thread
6465         state directly.
6466         (proceed_after_attach_callback): Use thread state directly.
6467         (notice_new_inferior): Take a thread_info pointer instead of a
6468         ptid_t.  All callers adjusted.
6469         (exit_inferior): Take an inferior pointer instead of a pid.  All
6470         callers adjusted.
6471         (exit_inferior_silent): New.
6472         (detach_inferior): Delete.
6473         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
6474         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
6475         (detach_inferior_command, kill_inferior_command): Use
6476         find_inferior_id instead of valid_gdb_inferior_id and
6477         gdb_inferior_id_to_pid.
6478         (inferior_command): Use inferior and thread pointers.
6479         * inferior.h (struct thread_info): Forward declare.
6480         (notice_new_inferior): Take a thread_info pointer instead of a
6481         ptid_t.  All callers adjusted.
6482         (detach_inferior): Delete declaration.
6483         (exit_inferior, exit_inferior_silent): Take an inferior pointer
6484         instead of a pid.  All callers adjusted.
6485         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
6486         (valid_gdb_inferior_id): Delete.
6487         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
6488         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
6489         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
6490         ...
6491         <inf>: ... this new field.
6492         <step_ptid>: Delete, replaced by ...
6493         <step_thread>: ... this new field.
6494         (get_displaced_stepping_state): Take an inferior pointer instead
6495         of a pid.  All callers adjusted.
6496         (displaced_step_in_progress_any_inferior): Adjust.
6497         (displaced_step_in_progress_thread): Take a thread pointer instead
6498         of a ptid_t.  All callers adjusted.
6499         (displaced_step_in_progress, add_displaced_stepping_state): Take
6500         an inferior pointer instead of a pid.  All callers adjusted.
6501         (get_displaced_step_closure_by_addr): Adjust.
6502         (remove_displaced_stepping_state): Take an inferior pointer
6503         instead of a pid.  All callers adjusted.
6504         (displaced_step_prepare_throw, displaced_step_prepare)
6505         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
6506         All callers adjusted.
6507         (start_step_over): Adjust.
6508         (infrun_thread_ptid_changed): Remove bit updating ptids in the
6509         displaced step queue.
6510         (do_target_resume): Adjust.
6511         (fetch_inferior_event): Use inferior_thread.
6512         (context_switch, get_inferior_stop_soon): Take an
6513         execution_control_state pointer instead of a ptid_t.  All callers
6514         adjusted.
6515         (switch_to_thread_cleanup): Delete.
6516         (stop_all_threads): Use scoped_restore_current_thread.
6517         * inline-frame.c: Include "gdbthread.h".
6518         (inline_state) <inline_state>: Take a thread pointer instead of a
6519         ptid_t.  All callers adjusted.
6520         <ptid>: Delete, replaced by ...
6521         <thread>: ... this new field.
6522         (find_inline_frame_state): Take a thread pointer instead of a
6523         ptid_t.  All callers adjusted.
6524         (skip_inline_frames, step_into_inline_frame)
6525         (inline_skipped_frames, inline_skipped_symbol): Take a thread
6526         pointer instead of a ptid_t.  All callers adjusted.
6527         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
6528         (inline_skipped_frames, inline_skipped_symbol): Likewise.
6529         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
6530         pointers directly.
6531         * linux-nat.c (get_detach_signal): Likewise.
6532         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
6533         (thread_db_notice_clone): Adjust.
6534         (thread_db_find_new_threads_silently)
6535         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
6536         a thread pointer instead of a ptid_t.  All callers adjusted.
6537         * mi/mi-cmd-var.c: Include "inferior.h".
6538         (mi_cmd_var_update_iter): Update to use thread pointers.
6539         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
6540         inferior directly.
6541         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
6542         out to ...
6543         (mi_output_running): ... this new function.
6544         (mi_on_resume_1): Adjust to use it.
6545         (mi_user_selected_context_changed): Adjust to use inferior_thread.
6546         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
6547         directly.
6548         (interrupt_thread_callback): : Adjust to use thread and inferior
6549         pointers.
6550         * proc-service.c: Include "gdbthread.h".
6551         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
6552         * progspace-and-thread.c: Include "inferior.h".
6553         * progspace.c: Include "inferior.h".
6554         * python/py-exitedevent.c (create_exited_event_object): Adjust to
6555         hold a reference to an inferior_object.
6556         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
6557         inferior_thread.
6558         * python/py-inferior.c (struct inferior_object): Give the type a
6559         tag name instead of a typedef.
6560         (python_on_normal_stop): No need to check if the current thread is
6561         listed.
6562         (inferior_to_inferior_object): Change return type to
6563         inferior_object.  All callers adjusted.
6564         (find_thread_object): Delete, bits factored out to ...
6565         (thread_to_thread_object): ... this new function.
6566         * python/py-infthread.c (create_thread_object): Use
6567         inferior_to_inferior_object.
6568         (thpy_is_stopped): Use thread pointer directly.
6569         (gdbpy_selected_thread): Use inferior_thread.
6570         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
6571         field, replaced with ...
6572         <thread>: ... this new field.  All users adjusted.
6573         (btpy_insn_or_gap_new): Drop const.
6574         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
6575         callers adjusted.
6576         * python/py-record.c: Include "gdbthread.h".
6577         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6578         a ptid_t.  All callers adjusted.
6579         (gdbpy_current_recording): Use inferior_thread.
6580         * python/py-record.h (recpy_record_object) <ptid>: Delete
6581         field, replaced with ...
6582         <thread>: ... this new field.  All users adjusted.
6583         (recpy_element_object) <ptid>: Delete
6584         field, replaced with ...
6585         <thread>: ... this new field.  All users adjusted.
6586         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6587         a ptid_t.  All callers adjusted.
6588         * python/py-threadevent.c: Include "gdbthread.h".
6589         (get_event_thread): Use thread_to_thread_object.
6590         * python/python-internal.h (struct inferior_object): Forward
6591         declare.
6592         (find_thread_object, find_inferior_object): Delete declarations.
6593         (thread_to_thread_object, inferior_to_inferior_object): New
6594         declarations.
6595         * record-btrace.c: Include "inferior.h".
6596         (require_btrace_thread): Use inferior_thread.
6597         (record_btrace_frame_sniffer)
6598         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
6599         (get_thread_current_frame): Use scoped_restore_current_thread and
6600         switch_to_thread.
6601         (get_thread_current_frame): Use thread pointer directly.
6602         (record_btrace_replay_at_breakpoint): Use thread's inferior
6603         pointer directly.
6604         * record-full.c: Include "inferior.h".
6605         * regcache.c: Include "gdbthread.h".
6606         (get_thread_arch_regcache): Use the inferior's address space
6607         directly.
6608         (get_thread_regcache, registers_changed_thread): New.
6609         * regcache.h (get_thread_regcache(thread_info *thread)): New
6610         overload.
6611         (registers_changed_thread): New.
6612         (remote_target) <remote_detach_1>: Swap order of parameters.
6613         (remote_add_thread): <remote_add_thread>: Return the new thread.
6614         (get_remote_thread_info(ptid_t)): New overload.
6615         (remote_target::remote_notice_new_inferior): Use thread pointers
6616         directly.
6617         (remote_target::process_initial_stop_replies): Use
6618         thread_info::set_running.
6619         (remote_target::remote_detach_1, remote_target::detach)
6620         (extended_remote_target::detach): Adjust.
6621         * stack.c (frame_show_address): Use inferior_thread.
6622         * target-debug.h (target_debug_print_thread_info_pp): New.
6623         * target-delegates.c: Regenerate.
6624         * target.c (default_thread_address_space): Delete.
6625         (memory_xfer_partial_1): Use current_inferior.
6626         (target_detach): Use current_inferior.
6627         (target_thread_address_space): Delete.
6628         (generic_mourn_inferior): Use current_inferior.
6629         * target.h (struct target_ops) <thread_address_space>: Delete.
6630         (target_thread_address_space): Delete.
6631         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
6632         pointers directly.
6633         (delete_thread_1, delete_thread, delete_thread_silent): Take a
6634         thread pointer instead of a ptid_t.  Adjust all callers.
6635         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
6636         (first_thread_of_process): Delete, replaced by ...
6637         (first_thread_of_inferior): ... this new function.  All callers
6638         adjusted.
6639         (any_thread_of_process): Rename to ...
6640         (any_thread_of_inferior): ... this, and take an inferior pointer.
6641         (any_live_thread_of_process): Rename to ...
6642         (any_live_thread_of_inferior): ... this, and take an inferior
6643         pointer.
6644         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6645         (value_in_thread_stack_temporaries)
6646         (get_last_thread_stack_temporary): Take a thread pointer instead
6647         of a ptid_t.  Adjust all callers.
6648         (thread_info::set_running): New.
6649         (validate_registers_access): Use inferior_thread.
6650         (can_access_registers_ptid): Rename to ...
6651         (can_access_registers_thread): ... this, and take a thread
6652         pointer.
6653         (print_thread_info_1): Adjust to compare thread pointers instead
6654         of ptids.
6655         (switch_to_no_thread, switch_to_thread): Make extern.
6656         (scoped_restore_current_thread::~scoped_restore_current_thread):
6657         Use m_thread pointer directly.
6658         (scoped_restore_current_thread::scoped_restore_current_thread):
6659         Use inferior_thread.
6660         (thread_command): Use thread pointer directly.
6661         (thread_num_make_value_helper): Use inferior_thread.
6662         * top.c (execute_command): Use inferior_thread.
6663         * tui/tui-interp.c: Include "inferior.h".
6664         * varobj.c (varobj_create): Use inferior_thread.
6665         (value_of_root_1): Use find_thread_global_id instead of
6666         global_thread_id_to_ptid.
6667
6668 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
6669
6670         * regcache.c (readable_regcache::read_part): Avoid memcpy when
6671         possible.
6672         (regcache::write_part): Likewise.
6673         (readable_regcache::cooked_read_part): Update comment.
6674         (readable_regcache::cooked_write_part): Likewise.
6675         * regcache.h: (readable_regcache::read_part): Likewise.
6676         (regcache::write_part): Likewise.
6677
6678 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
6679             Dirk Schubert  <dirk.schubert@arm.com>
6680
6681         * aarch64-linux-nat.c (post_attach): New.
6682         (aarch64_linux_nat_target::post_attach): Override post_attach to
6683         record the number of hardware debug registers.
6684
6685 2018-06-20  Tom Tromey  <tom@tromey.com>
6686
6687         * python/py-param.c (add_setshow_generic): Make parameters const.
6688         (parmpy_init): Update.
6689
6690 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
6691
6692         * regcache.h (regcache_cooked_read_ftype): Rename to...
6693         (register_read_ftype): ...this, change type to function_view.
6694         (class reg_buffer) <save>: Remove src parameter.
6695         (readonly_detached_regcache) <readonly_detached_regcache>: Make
6696         parameter non-const in first overload.  Remove src parameter in
6697         second overload.
6698         * regcache.c (do_cooked_read): Remove.
6699         (readonly_detached_regcache::readonly_detached_regcache): Make
6700         parameter non-const, adjust call to other constructor.
6701         (reg_buffer::save): Remove src parameter.
6702         * frame.c (do_frame_register_read): Remove.
6703         (frame_save_as_regcache): Use lambda function.
6704         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
6705         parameter to ppu2spu_data *.
6706         (ppu2spu_sniffer): Use lambda function.
6707
6708 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
6709
6710         * record-full.c (record_full_target::insert_breakpoint): Remove
6711         "struct" keyword, add const.
6712
6713 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
6714
6715         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
6716         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
6717         * configure.ac: Remove AC_PREREQ, add missing quoting.
6718         * gnulib/configure.ac: Modernize usage of
6719         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
6720         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
6721         (AUTOMAKE_VERSION): Bump to 1.15.1.
6722         * configure: Re-generate.
6723         * config.in: Re-generate.
6724         * aclocal.m4: Re-generate.
6725         * gnulib/aclocal.m4: Re-generate.
6726         * gnulib/config.in: Re-generate.
6727         * gnulib/configure: Re-generate.
6728         * gnulib/import/Makefile.in: Re-generate.
6729
6730 2018-06-19  Pedro Alves  <palves@redhat.com>
6731
6732         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
6733         (lookup_minimal_symbol_by_pc_section): ... here with
6734         gdb_assert_not_reached added.
6735
6736 2018-06-19  Pedro Alves  <palves@redhat.com>
6737
6738         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
6739         parameter with a block parameter.  Compare location's block symbol
6740         with the frame's block instead of addresses.
6741         (skip_inline_frames): Pass the current block instead of the
6742         frame's address.  Break out as soon as we determine the frame
6743         should not be skipped.
6744
6745 2018-06-18  Tom Tromey  <tom@tromey.com>
6746
6747         * solib-aix.c (solib_aix_get_section_offsets): Return
6748         unique_xmalloc_ptr.
6749         (solib_aix_solib_create_inferior_hook): Update.
6750
6751 2018-06-18  Tom Tromey  <tom@tromey.com>
6752
6753         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
6754
6755 2018-06-18  Tom Tromey  <tom@tromey.com>
6756
6757         * solib-frv.c (frv_relocate_main_executable): Use
6758         unique_xmalloc_ptr.
6759         * solib-dsbt.c (dsbt_relocate_main_executable): Use
6760         unique_xmalloc_ptr.
6761
6762 2018-06-18  Tom Tromey  <tom@tromey.com>
6763
6764         * objfiles.h (inhibit_section_map_updates): Update.
6765         (resume_section_map_updates, resume_section_map_updates_cleanup):
6766         Remove.
6767         * solib-svr4.c (svr4_handle_solib_event): Update.
6768         * objfiles.c (inhibit_section_map_updates): Return
6769         scoped_restore_tmpl<int>.
6770         (resume_section_map_updates, resume_section_map_updates_cleanup):
6771         Remove.
6772
6773 2018-06-18  Tom Tromey  <tom@tromey.com>
6774
6775         * valprint.h (read_string): Update.
6776         * valprint.c (read_string): Change type of "buffer".
6777         (val_print_string): Update.
6778         * python/py-value.c (valpy_string): Update.
6779         * language.h (struct language_defn) <la_get_string>: Change
6780         type of "buffer".
6781         (default_get_string, c_get_string): Update.
6782         * language.c (default_get_string): Change type of "buffer".
6783         * guile/scm-value.c (gdbscm_value_to_string): Update.
6784         * c-lang.c (c_get_string): Change type of "buffer".
6785
6786 2018-06-18  Tom Tromey  <tom@tromey.com>
6787
6788         * ser-mingw.c (struct pipe_state_destroyer): New.
6789         (pipe_state_up): New typedef.
6790         (cleanup_pipe_state): Remove.
6791         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
6792
6793 2018-06-18  Tom Tromey  <tom@tromey.com>
6794
6795         * rust-lang.h (rust_yyerror): Don't declare.
6796         * rust-lang.c (rust_language_defn): Update.
6797         * rust-exp.y (yyerror): Now static.
6798         * parse.c (parse_exp_in_context_1): Update.
6799         * p-lang.h (p_yyerror): Don't declare.
6800         * p-lang.c (p_language_defn): Update.
6801         * p-exp.y (yyerror): Now static.
6802         * opencl-lang.c (opencl_language_defn): Update.
6803         * objc-lang.c (objc_language_defn): Update.
6804         * m2-lang.h (m2_yyerror): Don't declare.
6805         * m2-lang.c (m2_language_defn): Update.
6806         * m2-exp.y (yyerror): Now static.
6807         * language.h (struct language_defn) <la_error>: Remove.
6808         * language.c (unk_lang_error): Remove.
6809         (unknown_language_defn, auto_language_defn): Remove.
6810         * go-lang.h (go_yyerror): Don't declare.
6811         * go-lang.c (go_language_defn): Update.
6812         * go-exp.y (yyerror): Now static.
6813         * f-lang.h (f_yyerror): Don't declare.
6814         * f-lang.c (f_language_defn): Update.
6815         * f-exp.y (yyerror): Now static.
6816         * d-lang.h (d_yyerror): Don't declare.
6817         * d-lang.c (d_language_defn): Update.
6818         * d-exp.y (yyerror): Now static.
6819         * c-lang.h (c_yyerror): Don't declare.
6820         * c-lang.c (c_language_defn, cplus_language_defn)
6821         (asm_language_defn, minimal_language_defn): Update.
6822         * c-exp.y (yyerror): Now static.
6823         * ada-lang.h (ada_yyerror): Don't declare.
6824         * ada-lang.c (ada_language_defn): Update.
6825         * ada-exp.y (yyerror): Now static.
6826
6827 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
6828
6829         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
6830         (store_sveregs_to_thread): Likewise.
6831         (aarch64_linux_fetch_inferior_registers): Check for SVE.
6832         (aarch64_linux_store_inferior_registers): Likewise.
6833         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
6834         function.
6835         (aarch64_sve_regs_copy_to_regcache): Likewise.
6836         (aarch64_sve_regs_copy_from_regcache): Likewise.
6837         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
6838         declaration.
6839         (aarch64_sve_regs_copy_to_regcache): Likewise.
6840         (aarch64_sve_regs_copy_from_regcache): Likewise.
6841         (sve_context): Structure from Linux headers.
6842         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
6843         (SVE_SIG_ZREG_SIZE): Likewise.
6844         (SVE_SIG_PREG_SIZE): Likewise.
6845         (SVE_SIG_FFR_SIZE): Likewise.
6846         (SVE_SIG_REGS_OFFSET): Likewise.
6847         (SVE_SIG_ZREGS_OFFSET): Likewise.
6848         (SVE_SIG_ZREG_OFFSET): Likewise.
6849         (SVE_SIG_ZREGS_SIZE): Likewise.
6850         (SVE_SIG_PREGS_OFFSET): Likewise.
6851         (SVE_SIG_PREG_OFFSET): Likewise.
6852         (SVE_SIG_PREGS_SIZE): Likewise.
6853         (SVE_SIG_FFR_OFFSET): Likewise.
6854         (SVE_SIG_REGS_SIZE): Likewise.
6855         (SVE_SIG_CONTEXT_SIZE): Likewise.
6856         (SVE_PT_REGS_MASK): Likewise.
6857         (SVE_PT_REGS_FPSIMD): Likewise.
6858         (SVE_PT_REGS_SVE): Likewise.
6859         (SVE_PT_VL_INHERIT): Likewise.
6860         (SVE_PT_VL_ONEXEC): Likewise.
6861         (SVE_PT_REGS_OFFSET): Likewise.
6862         (SVE_PT_FPSIMD_OFFSET): Likewise.
6863         (SVE_PT_FPSIMD_SIZE): Likewise.
6864         (SVE_PT_SVE_ZREG_SIZE): Likewise.
6865         (SVE_PT_SVE_PREG_SIZE): Likewise.
6866         (SVE_PT_SVE_FFR_SIZE): Likewise.
6867         (SVE_PT_SVE_FPSR_SIZE): Likewise.
6868         (SVE_PT_SVE_FPCR_SIZE): Likewise.
6869         (__SVE_SIG_TO_PT): Likewise.
6870         (SVE_PT_SVE_OFFSET): Likewise.
6871         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
6872         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
6873         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
6874         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
6875         (SVE_PT_SVE_PREG_OFFSET): Likewise.
6876         (SVE_PT_SVE_PREGS_SIZE): Likewise.
6877         (SVE_PT_SVE_FFR_OFFSET): Likewise.
6878         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
6879         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
6880         (SVE_PT_SVE_SIZE): Likewise.
6881         (SVE_PT_SIZE): Likewise.
6882         (HAS_SVE_STATE): New define.
6883
6884 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
6885
6886         * nat/aarch64-sve-linux-sigcontext.h: New file.
6887         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
6888         new files.
6889         (SVE_VQ_MIN): Likewise.
6890         (SVE_VQ_MAX): Likewise.
6891         (SVE_VL_MIN): Likewise.
6892         (SVE_VL_MAX): Likewise.
6893         (SVE_NUM_ZREGS): Likewise.
6894         (SVE_NUM_PREGS): Likewise.
6895         (sve_vl_valid): Likewise.
6896         (struct user_sve_header): Likewise.
6897
6898 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
6899             Richard Bunt <Richard.Bunt@arm.com>
6900
6901         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
6902         was requested by GDB.
6903
6904 2018-06-15  Tom de Vries  <tdevries@suse.de>
6905
6906         * MAINTAINERS (Write After Approval): Add Tom de Vries.
6907
6908 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
6909
6910         * gnulib/update-gnulib.sh: Print expected versions of
6911         autoconf/aclocal.
6912
6913 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
6914
6915         * arch-utils.c (default_type_align): Use type_length_units.
6916         * gdbtypes.c (type_align): Use type_length_units.
6917
6918 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6919
6920         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
6921         of 'define' command.
6922
6923 2018-06-14  Tom de Vries  <tdevries@suse.de>
6924
6925         PR cli/22573
6926         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
6927         get_no_prettyformat_print_options.
6928
6929 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
6930
6931         * sparc-nat.h: Include target.h.
6932         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
6933         <fetch_registers>: Remove this argument in function call.
6934         <store_registers>: Remove this argument in function call, remove
6935         extra semicolon.
6936         <low_forget_process>: Call sparc64_forget_process instead of
6937         sparc_forget_process.
6938
6939 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
6940
6941         * procfs.c (_initialize_procfs): Use add_inf_child_target.
6942         (procfs_target::make_corefile_notes): Adjust to new
6943         target_read_alloc return type.
6944
6945 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6946             Stephen Roberts  <stephen.roberts@arm.com>
6947
6948         PR gdb/22882
6949         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
6950         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
6951         Move should_notify_stop local into more inner scope.
6952
6953 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6954             Stephen Roberts  <stephen.roberts@arm.com>
6955
6956         PR gdb/22882
6957         * infrun.c (resume_1): Add call to mark_async_event_handler.
6958
6959 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6960
6961         * infrun.c (do_target_wait): Change old version of $pc printed.
6962
6963 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
6964
6965         * dwarf2read.c (read_index_from_section): Rename to...
6966         (read_gdb_index_from_section): ... this, update all callers.
6967         (dwarf2_read_index): Rename to...
6968         (dwarf2_read_gdb_index): ... this, update all callers.
6969
6970 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
6971
6972         * gdb/hppa-linux-nat.c
6973         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
6974         hppa_linux_nat_target::fetch_registers.
6975
6976 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6977
6978         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
6979         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
6980         (AARCH64_DWARF_SVE_FFR): Likewise.
6981         (AARCH64_DWARF_SVE_P0): Likewise.
6982         (AARCH64_DWARF_SVE_Z0): Likewise.
6983
6984 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6985
6986         * common/common-regcache.h (raw_compare): New function.
6987         * regcache.c (regcache::raw_compare): Likewise.
6988         * regcache.h (regcache::raw_compare): New declaration.
6989
6990 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6991
6992         * common/common-regcache.h (reg_buffer_common): New structure.
6993         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
6994         (reg_buffer::raw_supply): Likewise.
6995         (reg_buffer::raw_supply_integer): Likewise.
6996         (reg_buffer::raw_supply_zeroed): Likewise.
6997         (reg_buffer::raw_collect): Likewise.
6998         (reg_buffer::raw_collect_integer): Likewise.
6999         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
7000         (reg_buffer::raw_supply): Likewise.
7001         (reg_buffer::raw_supply_integer): Likewise.
7002         (reg_buffer::raw_supply_zeroed): Likewise.
7003         (reg_buffer::raw_collect): Likewise.
7004         (reg_buffer::raw_collect_integer): Likewise.
7005
7006 2018-06-10  Tom Tromey  <tom@tromey.com>
7007
7008         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
7009         (class remote_state) <stop_reply_queue>: Now std::vector.
7010         (remote_state::~remote_state)
7011         (remote_target::stop_reply_queue_length): Update.
7012         (struct queue_iter_param, remove_child_of_pending_fork)
7013         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
7014         (check_pending_event_prevents_wildcard_vcont_callback)
7015         (remove_stop_reply_for_inferior)
7016         (remove_stop_reply_of_remote_state)
7017         (remote_notif_remove_once_on_match)
7018         (stop_reply_match_ptid_and_ws)
7019         (remote_kill_child_of_pending_fork): Remove.
7020         (remote_target::remove_new_fork_children)
7021         (remote_target::check_pending_events_prevent_wildcard_vcont)
7022         (remote_target::discard_pending_stop_replies)
7023         (remote_target::discard_pending_stop_replies_in_queue)
7024         (remote_target::remote_notif_remove_queued_reply)
7025         (remote_target::queued_stop_reply)
7026         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
7027         (remote_target::wait, remote_target::kill_new_fork_children)
7028         (remote_target::async): Update.
7029
7030 2018-06-10  Tom Tromey  <tom@tromey.com>
7031
7032         * record-full.c (record_full_arch_list_cleanups): Remove.
7033         (record_full_message): Use try/catch.
7034         (record_full_wait_cleanups): Remove.
7035         (record_full_wait_1): Use try/catch.
7036         (record_full_restore): Likewise.
7037
7038 2018-06-10  Tom Tromey  <tom@tromey.com>
7039
7040         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
7041         declare VEC.  Add constructor.
7042         <in_target_beneath>: Now bool.
7043         (record_full_breakpoints): Now a std::vector, static.
7044         (record_full_sync_record_breakpoints)
7045         (record_full_init_record_breakpoints)
7046         (record_full_target::insert_breakpoint)
7047         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
7048
7049 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
7050
7051         * dwarf2read.c (process_cu_includes): Remove struct keyword.
7052         * serial.c (serial_interface_lookup): Remove struct keyword.
7053
7054 2018-06-10  Tom Tromey  <tom@tromey.com>
7055
7056         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
7057         method.
7058         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
7059         a method.
7060         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
7061         method.
7062         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
7063         "beneath" as a method.
7064         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
7065         Use "beneath" as a method.
7066
7067 2018-06-10  Tom Tromey  <tom@tromey.com>
7068
7069         * tracefile.c (struct trace_file_writer_deleter): New.
7070         <operator()>: Rename from trace_file_writer_xfree.
7071         (trace_file_writer_up): New typedef.
7072         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
7073
7074 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
7075
7076         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
7077         <m_registers, m_register_status>: Change type to
7078         std::unique_ptr.
7079         * regcache.c (reg_buffer::reg_buffer): Use new instead of
7080         XCNEWVEC.
7081
7082 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
7083
7084         * common/common-regcache.h (enum register_status): Add
7085         underlying type "signed char".
7086         * regcache.h (reg_buffer) <m_register_status>: Change type to
7087         register_status *.
7088         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
7089         register_status instead of signed char.
7090         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
7091         (reg_buffer::get_register_status): Remove cast.
7092         (readable_regcache::raw_read): Remove cast.
7093         (readable_regcache::cooked_read): Remove cast.
7094
7095 2018-06-09  Tom Tromey  <tom@tromey.com>
7096
7097         * source.c (reverse_search_command, forward_search_command): Use
7098         scoped_fd.
7099
7100 2018-06-09  Tom Tromey  <tom@tromey.com>
7101
7102         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
7103         (serial_ops_list): Now static, std::vector.
7104         (serial_interface_lookup, serial_add_interface): Update.
7105
7106 2018-06-09  Tom Tromey  <tom@tromey.com>
7107
7108         * dwarf2read.c (process_cu_includes): Update.
7109         (process_full_comp_unit): Update.
7110         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
7111         std::vector.
7112
7113 2018-06-08  Paul Koning  <paul_koning@dell.com>
7114
7115         PR gdb/23252
7116
7117         * python/python.c (do_start_initialization):
7118         Avoid call to internal Python API.
7119         (init__gdb_module): New function.
7120
7121 2018-06-08  Gary Benson <gbenson@redhat.com>
7122
7123         * linux-thread-db.c (valprint.h): New include.
7124         (struct check_thread_db_info): New structure.
7125         (check_thread_db_on_load, tdb_testinfo): New static globals.
7126         (check_thread_db, check_thread_db_callback): New functions.
7127         (try_thread_db_load_1): Run integrity checks if requested.
7128         (maintenance_check_libthread_db): New function.
7129         (_initialize_thread_db): Register "maint check libthread-db"
7130         and "maint set/show check-libthread-db".
7131         * NEWS: Mention the above new commands.
7132
7133 2018-06-08  Tom Tromey  <tom@tromey.com>
7134
7135         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
7136         now a method.
7137
7138 2018-06-08  Tom Tromey  <tom@tromey.com>
7139
7140         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
7141
7142 2018-06-08  Tom Tromey  <tom@tromey.com>
7143
7144         * common/btrace-common.h (struct btrace_data): Add constructor,
7145         destructor, move assignment operator.
7146         <empty, clear, fini>: New methods.
7147         <format>: Initialize.
7148         (btrace_data_init, btrace_data_fini, btrace_data_clear)
7149         (btrace_data_empty): Don't declare.
7150         * common/btrace-common.c (btrace_data_init): Remove.
7151         (btrace_data::fini): Rename from btrace_data_fini.
7152         (btrace_data::empty): Rename from btrace_data_empty.
7153         (btrace_data::clear): Rename from btrace_data_clear.  Return
7154         bool.
7155         * btrace.h (make_cleanup_btrace_data): Don't declare.
7156         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
7157         (parse_xml_btrace): Update.
7158         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
7159         (maint_btrace_clear_packet_history_cmd): Update.
7160
7161 2018-06-07  Pedro Alves  <palves@redhat.com>
7162
7163         * target.h (target_ops) <beneath>: Now a method.  All references
7164         updated.
7165         (class target_stack): New.
7166         * target.c (g_target_stack): New.
7167         (g_current_top_target): Delete.
7168         (current_top_target): Get the top target out of g_target_stack.
7169         (target_stack::push, target_stack::unpush): New.
7170         (push_target, unpush_target): Reimplement.
7171         (target_is_pushed): Reimplement in terms of g_target_stack.
7172         (target_ops::beneath, target_stack::find_beneath): New.
7173
7174 2018-06-07  Pedro Alves  <palves@redhat.com>
7175
7176         * target.h (find_target_beneath): Delete declaration.
7177         * target.c (find_target_beneath): Delete definition.
7178         * aix-thread.c: All callers of find_target_beneath adjusted to
7179         call target_ops::beneath instead.
7180         * bsd-uthread.c: Likewise.
7181         * linux-thread-db.c: Likewise.
7182         * ravenscar-thread.c: Likewise.
7183         * sol-thread.c: Likewise.
7184         * spu-multiarch.c: Likewise.
7185
7186 2018-06-07  Pedro Alves  <palves@redhat.com>
7187
7188         * target.h (target_ops) <beneath>: Now a method.  All references
7189         updated.
7190         (target_ops) <m_beneath>: New.
7191         * target.c (target_ops::beneath): New.
7192         * corelow.c: Adjust all references to target_ops::beneath.
7193         * linux-thread-db.c: Likewise.
7194         * make-target-delegates: Likewise.
7195         * record-btrace.c: Likewise.
7196         * record-full.c: Likewise.
7197         * remote.c: Likewise.
7198         * target.c: Likewise.
7199         * target-delegates.c: Regenerate.
7200
7201 2018-06-07  Pedro Alves  <palves@redhat.com>
7202
7203         * target.h (target_stack): Delete.
7204         (current_top_target): Declare function.
7205         * target.c (target_stack): Delete.
7206         (g_current_top_target): New.
7207         (current_top_target): New function.
7208         * auxv.c: Use current_top_target instead of target_stack
7209         throughout.
7210         * avr-tdep.c: Likewise.
7211         * breakpoint.c: Likewise.
7212         * corefile.c: Likewise.
7213         * elfread.c: Likewise.
7214         * eval.c: Likewise.
7215         * exceptions.c: Likewise.
7216         * frame.c: Likewise.
7217         * gdbarch-selftests.c: Likewise.
7218         * gnu-v3-abi.c: Likewise.
7219         * ia64-tdep.c: Likewise.
7220         * ia64-vms-tdep.c: Likewise.
7221         * infcall.c: Likewise.
7222         * infcmd.c: Likewise.
7223         * infrun.c: Likewise.
7224         * linespec.c: Likewise.
7225         * linux-tdep.c: Likewise.
7226         * minsyms.c: Likewise.
7227         * ppc-linux-nat.c: Likewise.
7228         * ppc-linux-tdep.c: Likewise.
7229         * procfs.c: Likewise.
7230         * regcache.c: Likewise.
7231         * remote.c: Likewise.
7232         * rs6000-tdep.c: Likewise.
7233         * s390-linux-nat.c: Likewise.
7234         * s390-tdep.c: Likewise.
7235         * solib-aix.c: Likewise.
7236         * solib-darwin.c: Likewise.
7237         * solib-dsbt.c: Likewise.
7238         * solib-spu.c: Likewise.
7239         * solib-svr4.c: Likewise.
7240         * solib-target.c: Likewise.
7241         * sparc-tdep.c: Likewise.
7242         * sparc64-tdep.c: Likewise.
7243         * spu-tdep.c: Likewise.
7244         * symfile.c: Likewise.
7245         * symtab.c: Likewise.
7246         * target-descriptions.c: Likewise.
7247         * target-memory.c: Likewise.
7248         * target.c: Likewise.
7249         * target.h: Likewise.
7250         * tracefile-tfile.c: Likewise.
7251         * tracepoint.c: Likewise.
7252         * valops.c: Likewise.
7253         * valprint.c: Likewise.
7254         * value.c: Likewise.
7255         * windows-tdep.c: Likewise.
7256         * mi/mi-main.c: Likewise.
7257
7258 2018-06-07  Tom Tromey  <tom@tromey.com>
7259
7260         * valprint.h (build_address_symbolic): Declare.
7261         * printcmd.c (print_address_symbolic): Update.
7262         (build_address_symbolic): Change "name" and "filename" to
7263         std::string.
7264         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
7265         Update.
7266         * defs.h (build_address_symbolic): Remove declaration.
7267
7268 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
7269
7270         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
7271         (aarch64_vnv_type): Add function.
7272         (aarch64_pseudo_register_name): Add V regs for SVE.
7273         (aarch64_pseudo_register_type): Likewise.
7274         (aarch64_pseudo_register_reggroup_p): Likewise.
7275         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
7276         (aarch64_pseudo_read_value): Add V regs for SVE.
7277         (aarch64_pseudo_write_2): Use V0 offset for SVE
7278         (aarch64_pseudo_write): Add V regs for SVE.
7279         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
7280
7281 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
7282
7283         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
7284         (sve_vl_from_vq): Likewise.
7285
7286 2018-06-05  Tom Tromey  <tom@tromey.com>
7287
7288         * cli/cli-cmds.c (show_version): Update.
7289         * top.c (print_gdb_version): Add "interactive" parameter.
7290         Update.
7291         * main.c (captured_main_1): Update.
7292         * top.h (print_gdb_version): Add "interactive" parameter and a
7293         comment.
7294
7295 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
7296
7297         * common/enum-flags.h: Add trailing semicolon to example in
7298         comment.
7299
7300 2018-06-05  Tom Tromey  <tom@tromey.com>
7301
7302         PR cli/12326:
7303         * NEWS: Add entry about pager.
7304         * utils.c (pagination_disabled_for_command): New global.
7305         (prompt_for_continue): Allow "c" response to prompt.
7306         (reinitialize_more_filter): Clear
7307         pagination_disabled_for_command.
7308         (fputs_maybe_filtered): Check pagination_disabled_for_command.
7309
7310 2018-06-04  Tom Tromey  <tom@tromey.com>
7311
7312         * ada-lang.h (ada_lookup_symbol_list): Update.
7313         * ada-lang.c (resolve_subexp): Update.
7314         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
7315         parameter.
7316         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
7317         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
7318         results parameter to std::vector.
7319         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
7320         Update.
7321         * ada-exp.y (block_lookup): Update.
7322         (select_possible_type_sym): Change type of syms.  Remove nsyms
7323         parameter.
7324         (write_var_or_type, write_name_assoc): Update.
7325
7326 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
7327
7328         * windows-nat.c (windows_nat_target::xfer_partial): Return
7329         TARGET_XFER_E_IO if we need to delegate to the target beneath
7330         but BENEATH is NULL.
7331
7332 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
7333
7334         * Makefile.in (config.status): Add configure.nat as a
7335         dependency.
7336
7337 2018-06-04  Tom Tromey  <tom@tromey.com>
7338
7339         * cp-name-parser.y (cpname_state): Add method declarations.
7340         (HANDLE_QUAL): Update.
7341         (cpname_state::d_grab, cpname_state::fill_comp)
7342         (cpname_state::make_operator, cpname_state::make_dtor)
7343         (cpname_state::make_builtin_type, cpname_state::make_name)
7344         (cpname_state::d_qualify, cpname_state::d_int_type)
7345         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
7346         (%union): Move earlier.
7347
7348 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7349
7350         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
7351
7352 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7353
7354         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
7355         (aarch64_pseudo_write_1): Likewise.
7356         (aarch64_pseudo_read_value): Use helper.
7357         (aarch64_pseudo_write): Likewise.
7358
7359 2018-06-04  Pedro Alves  <palves@redhat.com>
7360
7361         * darwin-nat.c (darwin_ops): Delete.
7362         (darwin_attach_pid): Use get_native_target.
7363
7364 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7365
7366         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
7367         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
7368
7369 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7370
7371         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
7372         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
7373         (aarch64_gdbarch_init): Check for SVE.
7374         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
7375
7376 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7377
7378         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
7379         * aarch64-tdep.h (aarch64_read_description): Likewise.
7380         * arch/aarch64.c (aarch64_create_target_description): Likewise.
7381         * arch/aarch64.h (aarch64_create_target_description): Likewise.
7382         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
7383         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
7384         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
7385
7386 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
7387
7388         * value.c (value_fetch_lazy_bitfield): New.
7389         (value_fetch_lazy_memory): New.
7390         (value_fetch_lazy_register): New.
7391         (value_fetch_lazy): Factor out to smaller functions.
7392
7393 2018-06-01  Tom Tromey  <tom@tromey.com>
7394
7395         * cp-name-parser.y (backslashable, represented): Now const.
7396
7397 2018-06-01  Tom Tromey  <tom@tromey.com>
7398
7399         * cp-name-parser.y: Include parser-defs.h.
7400         (parser_fprintf): Remove declaration.
7401
7402 2018-06-01  Tom Tromey  <tom@tromey.com>
7403
7404         * cp-name-parser.y: Use %pure-parser, %lex-param, and
7405         %parse-param.
7406         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
7407         (global_result): Remove globals.
7408         (struct cpname_state): New.
7409         (yyparse): Don't declare.
7410         (yylex, yyerror): Move declarations after %union.
7411         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
7412         (make_name): Add state parameter.
7413         Update all callers.
7414         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
7415         parameter.
7416         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
7417         Update.
7418         (yylex): Add lvalp, state parameters.
7419         (yyerror): Add state parameter.
7420         (cp_demangled_name_to_comp): Update.
7421
7422 2018-06-01  Tom Tromey  <tom@tromey.com>
7423
7424         * cp-name-parser.y (parser_fprintf): Declare.
7425         (GDB_YY_REMAP_PREFIX): Define.
7426         Include yy-remap.h.  Don't redefine yy* identifiers.
7427
7428 2018-06-01  Tom Tromey  <tom@tromey.com>
7429
7430         * python/py-type.c (typy_legacy_template_argument): Update.
7431         * cp-support.h (cp_demangled_name_to_comp): Update.
7432         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
7433         parameter to be a "std::string *".
7434         (main): Update.
7435
7436 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
7437
7438         * ada-lex.l: Include "diagnostics.h" instead of
7439         "common/diagnostics.h".
7440         * unittests/environ-selftests.c: Likewise.
7441         * common/diagnostics.h: Moved to ../include.
7442
7443 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
7444
7445         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
7446         to language_mode_manual while calling breakpoint_re_set_one.
7447
7448 2018-06-01  Tom Tromey  <tom@tromey.com>
7449
7450         * valops.c (value_cast_structs, destructor_name_p): Update.
7451         * symtab.c (gdb_mangle_name): Update.
7452         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
7453         Update.
7454         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
7455         (pascal_object_print_value_fields, pascal_object_print_value):
7456         Update.
7457         * p-typeprint.c (pascal_type_print_derivation_info): Update.
7458         * linespec.c (find_methods): Update.
7459         * gdbtypes.h (type_name_no_tag): Remove.
7460         (type_name_or_error): Rename from type_name_no_tag_or_error.
7461         * gdbtypes.c (type_name_no_tag): Remove.
7462         (type_name_or_error): Rename from type_name_no_tag_or_error.
7463         (lookup_struct_elt_type, check_typedef): Update.
7464         * expprint.c (print_subexp_standard): Update.
7465         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
7466         * d-namespace.c (d_lookup_nested_symbol): Update.
7467         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
7468         (cp_print_class_member): Update.
7469         * cp-namespace.c (cp_lookup_nested_symbol): Update.
7470         * completer.c (add_struct_fields): Update.
7471         * c-typeprint.c (cp_type_print_derivation_info)
7472         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
7473         Update.
7474         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
7475         (ada_prefer_type, ada_is_exception_sym): Update.
7476
7477 2018-06-01  Tom Tromey  <tom@tromey.com>
7478
7479         * valops.c (enum_constant_from_type, value_namespace_elt)
7480         (value_maybe_namespace_elt): Update.
7481         * valarith.c (find_size_for_pointer_math): Update.
7482         * target-descriptions.c (make_gdb_type): Update.
7483         * symmisc.c (print_symbol): Update.
7484         * stabsread.c (define_symbol, read_type)
7485         (complain_about_struct_wipeout, add_undefined_type)
7486         (cleanup_undefined_types_1): Update.
7487         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
7488         (rust_range_type_p, val_print_struct, rust_print_struct_def)
7489         (rust_internal_print_type, rust_composite_type)
7490         (rust_evaluate_funcall, rust_evaluate_subexp)
7491         (rust_inclusive_range_type_p): Update.
7492         * python/py-type.c (typy_get_tag): Update.
7493         * p-typeprint.c (pascal_type_print_base): Update.
7494         * mdebugread.c (parse_symbol, parse_type): Update.
7495         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
7496         Update.
7497         * guile/scm-type.c (gdbscm_type_tag): Update.
7498         * go-lang.c (sixg_string_p): Update.
7499         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
7500         Update.
7501         * gdbtypes.h (struct main_type) <tag_name>: Remove.
7502         (TYPE_TAG_NAME): Remove.
7503         * gdbtypes.c (type_name_no_tag): Simplify.
7504         (check_typedef, check_types_equal, recursive_dump_type)
7505         (copy_type_recursive, arch_composite_type): Update.
7506         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
7507         in summary mode when needed.
7508         * eval.c (evaluate_funcall): Update.
7509         * dwarf2read.c (fixup_go_packaging, read_structure_type)
7510         (process_structure_scope, read_enumeration_type)
7511         (read_namespace_type, read_module_type, determine_prefix): Update.
7512         * cp-support.c (inspect_type): Update.
7513         * coffread.c (process_coff_symbol, decode_base_type): Update.
7514         * c-varobj.c (c_is_path_expr_parent): Update.
7515         * c-typeprint.c (c_type_print_base_struct_union): Update.
7516         (c_type_print_base_1): Update.  Print struct/class/union/enum in
7517         summary when using C language.
7518         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
7519         (gen_maybe_namespace_elt): Update.
7520         * ada-lang.c (ada_type_name): Simplify.
7521         (empty_record, ada_template_to_fixed_record_type_1)
7522         (template_to_static_fixed_type)
7523         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
7524
7525 2018-06-01  Tom Tromey  <tom@tromey.com>
7526
7527         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
7528         c_print_type.
7529         * c-typeprint.c (c_print_type_1): Add "language" parameter.
7530         (c_print_type): Update.
7531         (c_print_type): New overload.
7532         (c_type_print_varspec_prefix, c_type_print_args)
7533         (c_type_print_varspec_suffix, c_print_type_no_offsets)
7534         (c_type_print_base_struct_union, c_type_print_base_1)
7535         (cp_type_print_method_args): Add "language" parameter.
7536         (c_type_print_base): Update.
7537         * c-lang.h (c_print_type): Add new overload.
7538
7539 2018-06-01  Tom Tromey  <tom@tromey.com>
7540
7541         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
7542         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
7543
7544 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
7545
7546         * aarch64-tdep.c (aarch64_sve_register_names): New const
7547         var.
7548         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
7549         (AARCH64_SVE_Z_REGS_NUM): New define.
7550         (AARCH64_SVE_P_REGS_NUM): Likewise.
7551         (AARCH64_SVE_NUM_REGS): Likewise.
7552
7553 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
7554
7555         * nat/linux-ptrace.h [__alpha__]
7556         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
7557         definitions.
7558
7559 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
7560
7561         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
7562         the endianness selected.
7563         * NEWS: Document `set endian auto' mode operation update.
7564
7565 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7566
7567         * Makefile.in: Add new header.
7568         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
7569         (sve_vl_from_vg): Likewise.
7570         (sve_vq_from_vl): Likewise.
7571         (sve_vl_from_vq): Likewise.
7572         (sve_vq_from_vg): Likewise.
7573         (sve_vg_from_vq): Likewise.
7574         * configure.nat: Add new c file.
7575         * nat/aarch64-sve-linux-ptrace.c: New file.
7576         * nat/aarch64-sve-linux-ptrace.h: New file.
7577
7578 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7579
7580         * aarch64-linux-nat.c (aarch64_linux_read_description):
7581         Add parmeter zero.
7582         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
7583         Likewise.
7584         * aarch64-tdep.c (tdesc_aarch64_list): Add.
7585         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
7586         (aarch64_gdbarch_init): Add parmeter zero.
7587         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
7588         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
7589         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
7590         parmeter.
7591         * doc/gdb.texinfo: Describe SVE feature
7592         * features/aarch64-sve.c: New file.
7593
7594 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
7595
7596         PR gdb/23210
7597         * gdbarch.sh (significant_addr_bit): Default to zero when
7598         not set by target architecture.
7599         * gdbarch.c: Re-generated.
7600         * utils.c (address_significant): Update.
7601
7602 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
7603
7604         * stack.c (func_command): Remove trailing newline in call to error.
7605
7606 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7607
7608         * regcache.h (regcache_raw_collect): Remove, update callers to
7609         use regcache::raw_collect.
7610         * regcache.c (regcache_raw_collect): Remove.
7611
7612 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7613
7614         * regcache.h (regcache_raw_supply): Remove, update callers to
7615         use detached_regcache::raw_supply.
7616         * regcache.c (regcache_raw_supply): Remove.
7617
7618 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7619
7620         * regcache.h (regcache_cooked_write_part): Remove, update
7621         callers to use regcache::cooked_write_part.
7622         * regcache.c (regcache_cooked_write_part): Remove.
7623
7624 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7625
7626         * regcache.h (regcache_cooked_read_part): Remove, update callers
7627         to use readable_regcache::cooked_read_part.
7628         * regcache.c (regcache_cooked_read_part): Remove.
7629
7630 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7631
7632         * regcache.h (regcache_cooked_read_value): Remove, update
7633         callers to use readable_regcache::cooked_read_value.
7634         * regcache.c (regcache_cooked_read_value): Remove.
7635
7636 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7637
7638         * regcache.h (regcache_cooked_write): Remove, update callers to
7639         use regcache::cooked_write.
7640         * regcache.c (regcache_cooked_write): Remove.
7641
7642 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7643
7644         * regcache.h (regcache_invalidate): Remove, update callers to
7645         use detached_regcache::invalidate instead.
7646         * regcache.c (regcache_invalidate): Remove.
7647
7648 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7649
7650         * regcache.h (regcache_raw_write_part): Remove, update callers
7651         to use regcache::raw_write_part instead.
7652         * regcache.c (regcache_raw_write_part): Remove.
7653
7654 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7655
7656         * regcache.h (regcache_raw_read_part): Remove, update callers to
7657         use readable_regcache::raw_read_part instead.
7658         * regcache.c (regcache_raw_read_part): Remove.
7659
7660 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7661
7662         * regcache.h (regcache_cooked_read): Remove, update callers to
7663         use readable_regcache::cooked_read instead.
7664         * regcache.c (regcache_cooked_read): Remove.
7665
7666 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7667
7668         * regcache.h (regcache_raw_write): Remove, update callers to use
7669         regcache::raw_write instead.
7670         * regcache.c (regcache_raw_write): Remove.
7671
7672 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7673
7674         * regcache.h (regcache_raw_read): Remove, update callers to use
7675         readable_regcache::raw_read instead.
7676         * regcache.c (regcache_raw_read): Remove.
7677
7678 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7679
7680         * regcache.h (regcache_raw_update): Remove, update callers to
7681         use readable_regcache::raw_update instead.
7682         * regcache.c (regcache_raw_update): Remove.
7683
7684 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7685
7686         * regcache.h (regcache_register_status): Remove, update callers
7687         to use reg_buffer::get_register_status directly instead.
7688         * regcache.c (regcache_register_status): Remove.
7689
7690 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7691
7692         * regcache.h (regcache_get_ptid): Remove, update all callers to
7693         call regcache::ptid instead.
7694         * regcache.c (regcache_get_ptid): Remove.
7695
7696 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7697
7698         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
7699
7700 2018-05-30  Pedro Alves  <palves@redhat.com>
7701
7702         * common/common-exceptions.h (exception_rethrow): Use
7703         ATTRIBUTE_NORETURN.
7704
7705 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
7706
7707         * breakpoint.c (print_solib_event, check_status_catch_solib):
7708         Remove struct keyword in range-based for loops.
7709         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
7710         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
7711         Likewise.
7712         * linespec.c (find_superclass_methods, search_minsyms_for_name):
7713         Likewise.
7714         * symfile.c (addr_info_make_relative): Likewise.
7715         * thread.c (value_in_thread_stack_temporaries): Likewise.
7716
7717 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
7718
7719         PR gdb/16841
7720         * valops.c (value_struct_elt_for_reference): Call check_typedef on
7721         aggregate type to get its real type before accessing it.
7722
7723 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
7724
7725         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
7726         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
7727         * coff-pe-read.c (add_pe_forwarded_sym): Replace
7728         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
7729         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
7730         * jit.c (jit_breakpoint_re_set_internal): Likewise.
7731         * printcmd.c (info_address_command): Likewise.
7732
7733 2018-05-29  Tom Tromey  <tom@tromey.com>
7734
7735         * windows-nat.c (handle_exception): Update fall-through comment.
7736
7737 2018-05-29  Tom Tromey  <tom@tromey.com>
7738
7739         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
7740         (struct program_space) <added_solibs>: Now a std::vector.
7741         * breakpoint.c (print_solib_event): Update.
7742         (check_status_catch_solib): Update.
7743         * progspace.c (clear_program_space_solib_cache): Update.
7744         * solib.c (update_solib_list): Update.
7745
7746 2018-05-29  Tom Tromey  <tom@tromey.com>
7747
7748         * python/py-type.c (typy_richcompare): Update.
7749         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
7750         * gdbtypes.h (types_deeply_equal): Return bool.
7751         (types_equal): Likewise.
7752         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
7753         declare VEC.
7754         (check_types_equal): Change worklist to std::vector.  Return
7755         bool.
7756         (struct type_equality_entry): Add constructor.
7757         (compare_maybe_null_strings): Return bool.
7758         (check_types_worklist): Return bool.  Change worklist to
7759         std::vector.
7760         (types_deeply_equal): Use std::vector.
7761         (types_equal): Return bool.
7762         (compare_maybe_null_strings): Simplify.
7763
7764 2018-05-29  Tom Tromey  <tom@tromey.com>
7765
7766         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
7767
7768 2018-05-29  Tom Tromey  <tom@tromey.com>
7769
7770         * objc-lang.h: Don't include cp-support.h.
7771         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
7772         declare VEC.
7773
7774 2018-05-27  Tom Tromey  <tom@tromey.com>
7775
7776         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
7777
7778 2018-05-25  Tom Tromey  <tom@tromey.com>
7779
7780         * value.c (value::location): Initialize.
7781
7782 2018-05-25  Tom Tromey  <tom@tromey.com>
7783
7784         * dbxread.c (init_bincl_list): Remove.
7785         (bincl_list): Now a std::vector.
7786         (bincls_allocated, next_bincl): Remove.
7787         (free_bincl_list, do_free_bincl_list_cleanup)
7788         (make_cleanup_free_bincl_list): Remove.
7789         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
7790         unique_xmalloc_ptr.
7791         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
7792         (struct header_file_location): Add constructor.
7793         (add_bincl_to_list): Remove.
7794
7795 2018-05-25  Tom Tromey  <tom@tromey.com>
7796
7797         * tui/tui.c (tui_enable): Update.
7798         * mi/mi-interp.c (mi_interp::init): Update.
7799         * interps.h (class interp) <name>: New method.
7800         <m_name>: Rename from name.
7801         (~scoped_restore_interp): Update.
7802         * interps.c (interp::interp): Update.
7803         (interp_add, interp_set, interp_lookup_existing)
7804         (current_interp_named_p): Update.
7805
7806 2018-05-25  Tom Tromey  <tom@tromey.com>
7807
7808         * interps.c (interp_name): Remove.
7809         * mi/mi-interp.c (mi_interp::init): Update.
7810         * interps.h (interp_name): Remove.
7811         (~scoped_restore_interp): Update.
7812         * tui/tui.c (tui_enable): Update.
7813
7814 2018-05-25  Tom Tromey  <tom@tromey.com>
7815
7816         * utils.c (fputs_maybe_filtered): Update.
7817         * linespec.c (decode_line_full): Update.
7818         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
7819         (mi_print_breakpoint_for_event, mi_solib_loaded)
7820         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
7821         (mi_user_selected_context_changed): Update.
7822         * mi/mi-main.c (mi_execute_command): Update.
7823         * cli/cli-script.c (execute_control_command): Update.
7824         * python/python.c (execute_gdb_command): Update.
7825         * solib.c (info_sharedlibrary_command): Update.
7826         * interps.c (interp_ui_out): Remove.
7827         * interps.h (interp_ui_out): Remove.
7828
7829 2018-05-25  Tom Tromey  <tom@tromey.com>
7830
7831         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
7832         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
7833         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
7834
7835 2018-05-25  Tom Tromey  <tom@tromey.com>
7836
7837         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
7838         * interps.c (interp_exec): Use scoped_restore.
7839
7840 2018-05-25  Tom Tromey  <tom@tromey.com>
7841
7842         * remote.c (remote_target::remote_file_get): Use
7843         gdb::byte_vector.
7844         (remote_target::remote_file_put): Likewise.
7845
7846 2018-05-25  Tom Tromey  <tom@tromey.com>
7847
7848         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
7849         a std::string.
7850         (get_pe_section_index, add_pe_exported_sym): Update.
7851         (read_pe_exported_syms): Use gdb::def_vector.
7852
7853 2018-05-25  Tom Tromey  <tom@tromey.com>
7854
7855         * frame.c (remove_prev_frame): Remove.
7856         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
7857
7858 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
7859
7860         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
7861         Remove prototypes.
7862         * mips-linux-nat.c (supply_fpregset): Always call
7863         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
7864         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
7865         `mips_fill_fpregset'.
7866         * mips-linux-tdep.c (mips_supply_fpregset)
7867         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
7868         (mips_fill_fpregset_wrapper): Remove functions.
7869         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
7870         (mips_linux_fpregset): Remove variable.
7871         (mips_linux_iterate_over_regset_sections): Use
7872         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
7873         (mips_linux_o32_sigframe_init): Remove comment.
7874
7875 2018-05-25  Pedro Alves  <palves@redhat.com>
7876
7877         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
7878         (struct readahead_cache, struct packet_reg, struct
7879         remote_arch_state, class remote_state): Move higher up in the
7880         file.
7881         (remote_target::m_remote_state): Now an object instead of a pointer.
7882         (remote_target::get_remote_state): Adjust.
7883
7884 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
7885
7886         * stack.c (select_and_print_frame): Delete.
7887         (struct function_bounds): Move struct within function.
7888         (func_command): Most content moved into new function
7889         find_frame_for_function, use new function, print result, add
7890         function comment.
7891         (find_frame_for_function): New function, now returns a result.
7892
7893 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7894
7895         * stack.c (iterate_over_block_arg_vars): Fix comment.
7896         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
7897
7898 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
7899
7900         PR gdb/23203
7901         * frame.c
7902         (scoped_restore_selected_frame::scoped_restore_selected_frame):
7903         Define.
7904         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
7905         Define.
7906         * frame.h (class scoped_restore_selected_frame): New class.
7907         * stack.c (print_frame_local_vars): Remove catching and rethrowing
7908         of any exception, use scoped_restore_selected_frame to restore the
7909         frame instead.
7910
7911 2018-05-24  Pedro Alves  <palves@redhat.com>
7912
7913         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
7914         override.
7915
7916 2018-05-23  Tom Tromey  <tom@tromey.com>
7917
7918         * complaints.c (struct complaints): Remove.
7919         (symfile_complaint_book): Remove.
7920         (series): New global.
7921         (complaint_internal): Update.
7922         (clear_complaints): Update.
7923
7924 2018-05-23  Tom Tromey  <tom@tromey.com>
7925
7926         * complaints.c (counters): New global.
7927         (struct complain): Remove.
7928         (struct complaints) <root>: Remove.
7929         (complaint_sentinel): Remove.
7930         (symfile_complaint_book): Update.
7931         (find_complaint) Remove.
7932         (complaint_internal, clear_complaints): Update.
7933
7934 2018-05-23  Tom Tromey  <tom@tromey.com>
7935
7936         * complaints.c (struct complain) <file, line>: Remove.
7937         (find_complaint): Remove file, line parameters.
7938         (complaint_internal): Update.
7939
7940 2018-05-23  Tom Tromey  <tom@tromey.com>
7941
7942         * complaints.c (vcomplaint): Remove.
7943         (complaint_internal) Merge in contents of vcomplaint.
7944
7945 2018-05-23  Tom Tromey  <tom@tromey.com>
7946
7947         * complaints.c (struct complaints) <explanation>: Remove.
7948         (symfile_explanations): Remove.
7949         (symfile_complaint_book): Update.
7950         (vcomplaint): Update.
7951         (struct explanation): Remove.
7952
7953 2018-05-23  Tom Tromey  <tom@tromey.com>
7954
7955         * complaints.c (symfile_complaints): Remove.
7956         (complaint_internal): Remove "complaints" parameter.
7957         (clear_complaints, vcomplaint): Remove "c" parameter.
7958         (get_complaints): Remove.
7959         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
7960         (dwarf2_debug_line_missing_file_complaint)
7961         (dwarf2_debug_line_missing_end_sequence_complaint)
7962         (dwarf2_complex_location_expr_complaint)
7963         (dwarf2_const_value_length_mismatch_complaint)
7964         (dwarf2_section_buffer_overflow_complaint)
7965         (dwarf2_macro_malformed_definition_complaint)
7966         (dwarf2_invalid_attrib_class_complaint)
7967         (create_addrmap_from_index, dw2_symtab_iter_next)
7968         (dw2_expand_marked_cus)
7969         (dw2_debug_names_iterator::find_vec_in_debug_names)
7970         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
7971         (create_debug_type_hash_table, init_cutu_and_read_dies)
7972         (partial_die_parent_scope, add_partial_enumeration)
7973         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
7974         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
7975         (read_import_statement, read_file_scope, create_dwo_cu_reader)
7976         (create_cus_hash_table, create_dwp_hash_table)
7977         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
7978         (dwarf2_rnglists_process, dwarf2_ranges_process)
7979         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
7980         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
7981         (handle_struct_member_die, process_structure_scope)
7982         (read_array_type, read_common_block, read_module_type)
7983         (read_tag_pointer_type, read_typedef, read_base_type)
7984         (read_subrange_type, load_partial_dies, partial_die_info::read)
7985         (partial_die_info::read, partial_die_info::read)
7986         (partial_die_info::read, read_checked_initial_length_and_offset)
7987         (dwarf2_string_attr, read_formatted_entries)
7988         (dwarf_decode_line_header)
7989         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
7990         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
7991         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
7992         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
7993         (get_signatured_type, get_DW_AT_signature_type)
7994         (decode_locdesc, file_file_name, consume_improper_spaces)
7995         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
7996         (dwarf_decode_macro_bytes, dwarf_decode_macros)
7997         (dwarf2_symbol_mark_computed, set_die_type)
7998         (read_attribute_value): Update.
7999         * stap-probe.c (handle_stap_probe, get_stap_base_address):
8000         Update.
8001         * dbxread.c (unknown_symtype_complaint)
8002         (lbrac_mismatch_complaint, repeated_header_complaint)
8003         (set_namestring, function_outside_compilation_unit_complaint)
8004         (read_dbx_symtab, process_one_symbol): Update.
8005         * gdbtypes.c (stub_noname_complaint): Update.
8006         * windows-nat.c (handle_unload_dll): Update.
8007         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
8008         (decode_base_type): Update.
8009         * xcoffread.c (bf_notfound_complaint, ef_complaint)
8010         (eb_complaint, record_include_begin, record_include_end)
8011         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
8012         (process_xcoff_symbol, read_symbol)
8013         (function_outside_compilation_unit_complaint)
8014         (scan_xcoff_symtab): Update.
8015         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
8016         * buildsym.c (finish_block_internal, make_blockvector)
8017         (end_symtab_get_static_block, augment_type_symtab): Update.
8018         * dtrace-probe.c (dtrace_process_dof)
8019         (dtrace_static_probe_ops::get_probes): Update.
8020         * complaints.h (struct complaint): Don't declare.
8021         (symfile_complaints): Remove.
8022         (complaint_internal): Remove "complaints" parameter.
8023         (complaint): Likewise.
8024         (clear_complaints): Likewise.
8025         * symfile.c (syms_from_objfile_1, finish_new_objfile)
8026         (reread_symbols): Update.
8027         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
8028         (dwarf2_frame_cache, decode_frame_entry): Update.
8029         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
8030         * objc-lang.c (lookup_objc_class, lookup_child_selector)
8031         (info_selectors_command): Update.
8032         * macrotab.c (macro_include, check_for_redefinition)
8033         (macro_undef): Update.
8034         * objfiles.c (filter_overlapping_sections): Update.
8035         * stabsread.c (invalid_cpp_abbrev_complaint)
8036         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
8037         (define_symbol, error_type, read_type, rs6000_builtin_type)
8038         (stabs_method_name_from_physname, read_member_functions)
8039         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
8040         (attach_fields_to_type, complain_about_struct_wipeout)
8041         (read_range_type, read_args, common_block_start)
8042         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
8043         Update.
8044         * mdebugread.c (index_complaint, unknown_ext_complaint)
8045         (basic_type_complaint, bad_tag_guess_complaint)
8046         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
8047         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
8048         (parse_procedure, parse_lines)
8049         (function_outside_compilation_unit_complaint)
8050         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
8051         (bad_tag_guess_complaint, reg_value_complaint): Update.
8052         * cp-support.c (demangled_name_complaint): Update.
8053         * macroscope.c (sal_macro_scope): Update.
8054         * dwarf-index-write.c (class debug_names): Update.
8055
8056 2018-05-23  Tom Tromey  <tom@tromey.com>
8057
8058         * complaints.c (clear_complaints): Remove "noisy" parameter.
8059         * complaints.h (clear_complaints): Update.
8060         * symfile.c (syms_from_objfile_1, finish_new_objfile)
8061         (reread_symbols): Update.
8062
8063 2018-05-23  Tom Tromey  <tom@tromey.com>
8064
8065         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
8066         SUBSEQUENT_MESSAGE.
8067         (vcomplaint, clear_complaints): Update.
8068         (symfile_explanations): Remove some messages.
8069
8070 2018-05-23  Tom Tromey  <tom@tromey.com>
8071
8072         * complaints.c (internal_complaint): Remove.
8073         * complaints.h (internal_complaint): Remove.
8074
8075 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
8076
8077         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
8078
8079 2018-05-22  Pedro Alves  <palves@redhat.com>
8080
8081         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
8082         (remote_fileio_badfd, remote_fileio_return_errno)
8083         (remote_fileio_return_success, remote_fileio_func_open)
8084         (remote_fileio_func_open, remote_fileio_func_close)
8085         (remote_fileio_func_read, remote_fileio_func_write)
8086         (remote_fileio_func_lseek, remote_fileio_func_rename)
8087         (remote_fileio_func_unlink, remote_fileio_func_stat)
8088         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
8089         (remote_fileio_func_isatty, remote_fileio_func_system): Add
8090         remote_target parameter.
8091         (remote_fio_func_map) <func>: Add remote_target parameter.
8092         (do_remote_fileio_request, remote_fileio_request):
8093         * remote-fileio.h (remote_fileio_request):
8094         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
8095         remote_target parameter.
8096         (remote_notif_process, handle_notification): Adjust to pass down
8097         the remote.
8098         (remote_notif_state_allocate): Add remote_target parameter.  Save
8099         it.
8100         * remote-notif.h (struct remote_target): Forward declare.
8101         (struct notif_client) <parse, ack, can_get_pending_events>: Add
8102         remote_target parameter.
8103         (struct remote_notif_state) <remote>: New field.
8104         (remote_notif_ack, remote_notif_parse): Add remote_target
8105         parameter.
8106         (remote_notif_state_allocate, remote_notif_state_allocate): Add
8107         remote_target parameter.
8108         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
8109         (threads_listing_context, rmt_thread_action, protocol_feature)
8110         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
8111         (packet_result, struct threads_listing_context, remote_state):
8112         Move definitions and declarations higher up.
8113         (remote_target) <~remote_target>: Declare.
8114         (remote_download_command_source, remote_file_put, remote_file_get)
8115         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
8116         (remote_hostio_pread_vFile, remote_hostio_send_command)
8117         (remote_hostio_set_filesystem, remote_hostio_open)
8118         (remote_hostio_close, remote_hostio_unlink, remote_state)
8119         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
8120         (get_memory_write_packet_size, get_memory_read_packet_size)
8121         (append_pending_thread_resumptions, remote_detach_1)
8122         (append_resumption, remote_resume_with_vcont)
8123         (add_current_inferior_and_thread, wait_ns, wait_as)
8124         (process_stop_reply, remote_notice_new_inferior)
8125         (process_initial_stop_replies, remote_add_thread)
8126         (btrace_sync_conf, remote_btrace_maybe_reopen)
8127         (remove_new_fork_children, kill_new_fork_children)
8128         (discard_pending_stop_replies, stop_reply_queue_length)
8129         (check_pending_events_prevent_wildcard_vcont)
8130         (discard_pending_stop_replies_in_queue, stop_reply)
8131         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
8132         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
8133         (remote_interrupt_as, remote_interrupt_ns)
8134         (remote_get_noisy_reply, remote_query_attached)
8135         (remote_add_inferior, remote_current_thread, get_current_thread)
8136         (set_thread, set_general_thread, set_continue_thread)
8137         (set_general_process, write_ptid)
8138         (remote_unpack_thread_info_response, remote_get_threadinfo)
8139         (parse_threadlist_response, remote_get_threadlist)
8140         (remote_threadlist_iterator, remote_get_threads_with_ql)
8141         (remote_get_threads_with_qxfer)
8142         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
8143         (get_offsets, remote_check_symbols, remote_supported_packet)
8144         (remote_query_supported, remote_packet_size)
8145         (remote_serial_quit_handler, remote_detach_pid)
8146         (remote_vcont_probe, remote_resume_with_hc)
8147         (send_interrupt_sequence, interrupt_query)
8148         (remote_notif_get_pending_events, fetch_register_using_p)
8149         (send_g_packet, process_g_packet, fetch_registers_using_g)
8150         (store_register_using_P, store_registers_using_G)
8151         (set_remote_traceframe, check_binary_download)
8152         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
8153         (remote_xfer_live_readonly_partial, remote_read_bytes)
8154         (remote_send_printf, remote_flash_write, readchar)
8155         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
8156         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
8157         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
8158         (extended_remote_disable_randomization, extended_remote_run)
8159         (send_environment_packet, extended_remote_environment_support)
8160         (extended_remote_set_inferior_cwd, remote_write_qxfer)
8161         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
8162         (packet_command): Now methods of ...
8163         (remote_target): ... this class.
8164         (m_remote_state) <remote_target>: New field.
8165         (struct remote_state) <stop_reply_queue,
8166         remote_async_inferior_event_token, wait_forever_enabled_p>: New
8167         fields.
8168         (remote_state::remote_state): Allocate stop_reply_queue.
8169         (remote_state): Delete global.
8170         (get_remote_state_raw): Delete.
8171         (remote_target::get_remote_state): Allocate m_remote_state on
8172         demand.
8173         (get_current_remote_target): New.
8174         (remote_ops, extended_remote_ops): Delete.
8175         (wait_forever_enabled_p, remote_async_inferior_event_token):
8176         Delete, moved to struct remote_state.
8177         (remote_target::close): Delete self.  Destruction bits split to
8178         ...
8179         (remote_target::~remote_target): ... this.
8180         (show_memory_packet_size): Adjust to use
8181         get_current_remote_target.
8182         (struct protocol_feature) <func>: Add remote_target parameter.
8183         All callers adjusted.
8184         (curr_quit_handler_target): New.
8185         (remote_serial_quit_handler): Reimplement.
8186         (remote_target::open_1): Adjust to use get_current_remote_target.
8187         Heap-allocate remote_target/extended_remote_target instances.
8188         (vcont_builder::vcont_builder): Add remote_target parameter, and
8189         save it in m_remote.  All callers adjusted.
8190         (vcont_builder::m_remote): New field.
8191         (vcont_builder::restart, vcont_builder::flush)
8192         (vcont_builder::push_action): Use it.
8193         (remote_target::commit_resume): Use it.
8194         (struct queue_iter_param) <remote>: New field.
8195         (remote_target::remove_new_fork_children): Fill in 'remote' field.
8196         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
8197         (check_pending_event_prevents_wildcard_vcont_callback)
8198         (remote_target::check_pending_events_prevent_wildcard_vcont)
8199         (remote_target::discard_pending_stop_replies)
8200         (remote_target::discard_pending_stop_replies_in_queue)
8201         (remote_target::remote_notif_remove_queued_reply): Fill in
8202         'remote' field.
8203         (remote_notif_get_pending_events): New.
8204         (remote_target::readchar, remote_target::remote_serial_write):
8205         Save/restore curr_quit_handler_target.
8206         (putpkt): New.
8207         (kill_new_fork_children): Fill in 'remote' field.
8208         (packet_command): Use get_current_remote_target, defer to
8209         remote_target method of same name.
8210         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
8211         parameter, and save it in m_remote.  All callers adjusted.
8212         (scoped_remote_fd::release): Use m_remote.
8213         (scoped_remote_fd::m_remote): New field.
8214         (remote_file_put, remote_file_get, remote_file_delete): Use
8215         get_current_remote_target, defer to remote_target method of same
8216         name.
8217         (remote_btrace_reset): Add remote_state paremeter.  Update all
8218         callers.
8219         (remote_async_inferior_event_handler). Pass down 'data'.
8220         (remote_new_objfile): Use get_current_remote_target.
8221         (remote_target::vcont_r_supported): New.
8222         (set_range_stepping): Use get_current_remote_target and
8223         remote_target::vcont_r_supported.
8224         (_initialize_remote): Don't allocate 'remote_state' and
8225         'stop_reply_queue' globals.
8226         * remote.h (struct remote_target): Forward declare.
8227         (getpkt, putpkt, remote_notif_get_pending_events): Add
8228         'remote_target' parameter.
8229
8230 2018-05-22  Pedro Alves  <palves@redhat.com>
8231
8232         * remote.c (vcont_builder): Now a class.  Make all data members
8233         private.
8234         (vcont_builder) <vcont_builder, restart, flush, push_action>:
8235         Declare methods.
8236         (vcont_builder_restart): Rename to ...
8237         (vcont_builder::restart): ... this.
8238         (vcont_builder_flush): Rename to ...
8239         (vcont_builder::flush): ... this.
8240         (vcont_builder_push_action): Rename to ...
8241         (vcont_builder::push_action): ... this.
8242         (remote_target::commit_resume): Adjust.
8243
8244 2018-05-22  Pedro Alves  <palves@redhat.com>
8245
8246         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
8247         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
8248         (get_fixed_memory_packet_size): New.
8249         (get_memory_packet_size): Use it.
8250         (set_memory_packet_size): Don't override the config size with
8251         DEFAULT_MAX_MEMORY_PACKET_SIZE.
8252         (show_memory_packet_size): Use get_fixed_memory_packet_size.
8253         Don't refer to get_memory_packet_size if not connected to a remote
8254         target.  Show "(default)" if configured size is 0.
8255
8256 2018-05-22  Pedro Alves  <palves@redhat.com>
8257
8258         * remote.c (remote_target::mourn_inferior): Move
8259         discard_pending_stop_replies call here from ...
8260         (_initialize_remote): ... here.
8261
8262 2018-05-22  Pedro Alves  <palves@redhat.com>
8263
8264         * remote.c (compare_section_command): Remove set_general_process
8265         call.
8266
8267 2018-05-22  Pedro Alves  <palves@redhat.com>
8268
8269         * remote.c (struct packet_reg, struct remote_arch_state):
8270         Move higher up in the file.
8271         (remote_state) <m_arch_states>: Store remote_arch_state values
8272         instead of remote_arch_state pointers.
8273         (remote_state::get_remote_arch_state): Adjust.
8274
8275 2018-05-22  Pedro Alves  <palves@redhat.com>
8276
8277         * remote.c: Include <unordered_map>.
8278         (remote_state): Now a class.
8279         (remote_state) <get_remote_arch_state>: Declare method.
8280         <get_remote_arch_state>: New field.
8281         (remote_arch_state) <remote_arch_state>: Declare ctor.
8282         <regs>: Now a unique_ptr.
8283         (remote_gdbarch_data_handle): Delete.
8284         (get_remote_arch_state): Delete.
8285         (remote_state::get_remote_arch_state): New.
8286         (get_remote_state): Adjust to call remote_state's
8287         get_remote_arch_state method.
8288         (init_remote_state): Delete, bits factored out to ...
8289         (remote_arch_state::remote_arch_state): ... this new method.
8290         (get_remote_packet_size, get_memory_packet_size)
8291         (process_g_packet, remote_target::fetch_registers)
8292         (remote_target::prepare_to_store, store_registers_using_G)
8293         (remote_target::store_registers, remote_target::get_trace_status):
8294         Adjust to call remote_state's method.
8295         (_initialize_remote): Remove reference to
8296         remote_gdbarch_data_handle.
8297
8298 2018-05-22  Pedro Alves  <palves@redhat.com>
8299
8300         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
8301         pread>: New method declarations.
8302         (remote_target::open_1): Adjust.
8303         (readahead_cache_invalidate): Rename to ...
8304         (readahead_cache::invalidate): ... this, and adjust to be a class
8305         method.
8306         (readahead_cache_invalidate_fd): Rename to ...
8307         (readahead_cache::invalidate_fd): ... this, and adjust to be a
8308         class method.
8309         (remote_hostio_pwrite): Adjust.
8310         (remote_hostio_pread_from_cache): Rename to ...
8311         (readahead_cache::pread): ... this, and adjust to be a class
8312         method.
8313         (remote_hostio_close): Adjust.
8314
8315 2018-05-22  Pedro Alves  <palves@redhat.com>
8316
8317         * remote.c (remote_hostio_close_cleanup): Delete.
8318         (class scoped_remote_fd): New.
8319         (remote_file_put, remote_file_get): Use it.
8320
8321 2018-05-22  Pedro Alves  <palves@redhat.com>
8322
8323         (struct vCont_action_support): Use bool and initialize all fields.
8324         (struct readahead_cache): Initialize all fields.
8325         (remote_state): Use bool and initialize all fields.
8326         (remote_state::remote_state, remote_state::~remote_state): New.
8327         (new_remote_state): Delete.
8328         (_initialize_remote): Use new to allocate remote_state.
8329
8330 2018-05-22  Pedro Alves  <palves@redhat.com>
8331             張俊芝  <zjz@zjz.name>
8332
8333         PR gdb/22973
8334         * c-exp.y: Include "c-support.h".
8335         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
8336         of tolower.  Use c_ident_is_alpha to scan names.
8337         * c-lang.c: Include "c-support.h".
8338         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
8339         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
8340         * c-support.h: New file, with bits factored out from ...
8341         * cp-name-parser.y: ... this file.
8342         Include "c-support.h".
8343         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
8344         c-support.h and renamed.
8345         (symbol_end, yylex): Adjust.
8346
8347 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8348
8349         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
8350         parameter type to CORE_ADDR.
8351         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
8352         parameter type in declaration to CORE_ADDR.
8353         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
8354         target_auxv_search to get AT_HWCAP and use the result to get the
8355         target description.
8356         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
8357         to CORE_ADDR. Remove the cast of the return value to unsigned
8358         long. Fix error predicate of target_auxv_search.
8359         (ppc_linux_nat_target::read_description): Change the type of the
8360         hwcap variable to CORE_ADDR.
8361
8362 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8363
8364         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
8365         if the size of fpscr is larger than 32 bits.
8366
8367 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8368
8369         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
8370         (ppc32_linux_vsxregmap): New global.
8371         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
8372         regcache_supply_regset, and regcache_collect_regset.
8373         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
8374         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
8375         (fetch_vsx_register, store_vsx_register): Remove.
8376         (fetch_vsx_registers): Add regno parameter. Get regset using
8377         ppc_linux_vsxregset. Use regset to supply registers.
8378         (store_vsx_registers): Add regno parameter. Get regset using
8379         ppc_linux_vsxregset. Use regset to collect registers.
8380         (fetch_register): Call fetch_vsx_registers instead of
8381         fetch_vsx_register.
8382         (store_register): Call store_vsx_registers instead of
8383         store_vsx_register.
8384         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
8385         new regno parameter.
8386         (store_ppc_registers): Call store_vsx_registers with -1 for the
8387         new regno parameter.
8388         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
8389         (ppc_collect_vsxregset): Remove.
8390
8391 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8392
8393         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
8394         offset fields.
8395         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
8396         for vector register offset fields.
8397         (ppc64_fbsd_reg_offsets): Likewise.
8398         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
8399         to vector register offset fields.
8400         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
8401         to vector register offset fields.
8402         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
8403         vector register offset fields.
8404         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
8405         initializers for vector register offset fields.
8406         (rs6000_aix64_reg_offsets): Likewise.
8407         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
8408         (ppc_supply_vrregset): Remove.
8409         (ppc_collect_vrregset): Remove.
8410         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
8411         (ppc_linux_vrregset) : New function.
8412         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
8413         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
8414         (ppc32_linux_vrregset): Remove.
8415         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
8416         and use result instead of ppc32_linux_vrregset.
8417         (ppc32_linux_reg_offsets): Remove initializers for vector register
8418         offset fields.
8419         (ppc64_linux_reg_offsets): Likewise.
8420         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
8421         * ppc-linux-nat.c: Include regset.h.
8422         (gdb_vrregset_t): Adjust comment to account for little-endian
8423         mode.
8424         (supply_vrregset, fill_vrregset): Remove.
8425         (fetch_altivec_register, store_altivec_register): Remove.
8426         (fetch_altivec_registers): Add regno parameter. Get regset using
8427         ppc_linux_vrregset. Use regset to supply registers.
8428         (store_altivec_registers): Add regno parameter. Get regset using
8429         ppc_linux_vrregset. Use regset to collect registers.
8430         (fetch_register): Call fetch_altivec_registers instead of
8431         fetch_altivec_register.
8432         (store_register): Call store_altivec_registers instead of
8433         store_altivec_register.
8434         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
8435         the new regno parameter.
8436         (store_ppc_registers): Call store_altivec_registers with -1 for
8437         the new regno parameter.
8438
8439 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8440
8441         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
8442         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
8443         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
8444         (gdb_vrregset_t): Change array type size to
8445         PPC_LINUX_SIZEOF_VRREGSET.
8446         (gdb_vsxregset_t): Change array type size to
8447         PPC_LINUX_SIZEOF_VSXREGSET.
8448         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
8449         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
8450         PPC_LINUX_SIZEOF_VSXREGSET.
8451
8452 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8453
8454         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
8455         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
8456         nat/ppc-linux.c.
8457         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
8458         ppc_linux_target_wordsize with tid.
8459         (ppc_linux_nat_target::read_description): Call ppc_linux_target
8460         wordsize with tid.
8461         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
8462         (ppc64_64bit_inferior_p): Add static and inline specifiers.
8463         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
8464         tid parameter. Remove static specifier.
8465         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
8466         (ppc_linux_target_wordsize): New declaration.
8467
8468 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8469
8470         * arch/ppc-linux-common.c: New file.
8471         * arch/ppc-linux-common.h: New file.
8472         * arch/ppc-linux-tdesc.h: New file.
8473         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
8474         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
8475         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
8476         arch/ppc-linux-tdesc.h.
8477         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
8478         arch/ppc-linux-tdesc.h.
8479         (ppc_linux_nat_target::read_description): Remove target
8480         description matching code. Fill a ppc_linux_features struct and
8481         call ppc_linux_match_description with it. Move comment about ISA
8482         2.05 to ppc-linux-common.c.
8483         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
8484         arch/ppc-linux-tdesc.h.
8485         (ppc_linux_core_read_description): Remove target description
8486         matching code. Fill a ppc_linux_features struct and call
8487         ppc_linux_match_description with it.
8488         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
8489         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
8490         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
8491         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
8492         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
8493         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
8494         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
8495         (tdesc_powerpc_e500l): Remove.
8496
8497 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
8498
8499         * ada-lang.c (catch_assert_command): Pass empty string instead
8500         of NULL for excep_string argument.
8501
8502 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
8503
8504         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
8505         the width of the requested register exceeds the width of the
8506         `ptrace' data type.
8507
8508 2018-05-21  Tom Tromey  <tom@tromey.com>
8509
8510         * printcmd.c (output_command): Remove.
8511         (output_command_const): Rename to output_command.
8512         * valprint.h (output_command): Rename from output_command_const.
8513         * tracepoint.c (trace_dump_actions): Call output_command.
8514
8515 2018-05-21  Tom Tromey  <tom@tromey.com>
8516
8517         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
8518         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
8519         * ada-lang.h (create_ada_exception_catchpoint): Update.
8520         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
8521         std::string.
8522         (create_excep_cond_exprs, ~ada_catchpoint)
8523         (should_stop_exception, print_one_exception)
8524         (print_mention_exception, print_recreate_exception): Update.
8525         (ada_get_next_arg): Remove.
8526         (catch_ada_exception_command_split): Use std::string.  Change type
8527         of "excep_string", "cond_string".
8528         (catch_ada_exception_command): Update.
8529         (create_ada_exception_catchpoint): Change type of excep_string.
8530         (ada_exception_sal): Remove excep_string parameter.
8531         (~ada_catchpoint): Remove.
8532
8533 2018-05-21  Tom Tromey  <tom@tromey.com>
8534
8535         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
8536         cleanup.
8537
8538 2018-05-21  Tom Tromey  <tom@tromey.com>
8539
8540         * ada-lang.c (ada_exception_message_1, ada_exception_message):
8541         Return unique_xmalloc_ptr.
8542         (print_it_exception): Update.
8543
8544 2018-05-21  Tom Tromey  <tom@tromey.com>
8545
8546         * tracepoint.c (trace_dump_actions): Use std::string.
8547
8548 2018-05-21  Tom Tromey  <tom@tromey.com>
8549
8550         * symfile.c (reread_symbols): Use std::string for original_name.
8551
8552 2018-05-21  Tom Tromey  <tom@tromey.com>
8553
8554         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
8555         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
8556         constructor.
8557
8558 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
8559
8560         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
8561         instance to...
8562         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
8563         * objfiles.c (get_objfile_bfd_data): Allocate
8564         objfile_per_bfd_storage with obstack_new when allocating on
8565         obstack.
8566
8567 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8568
8569         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
8570         OBSTACK_ZALLOC.
8571         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
8572         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
8573         * mdebugread.c (mdebug_build_psymtabs): Likewise.
8574         (add_pending): Likewise.
8575         (parse_symbol): Likewise.
8576         (parse_partial_symbols): Likewise.
8577         (psymtab_to_symtab_1): Likewise.
8578         (new_psymtab): Likewise.
8579         (elfmdebug_build_psymtabs): Likewise.
8580         * minsyms.c (terminate_minimal_symbol_table): Likewise.
8581         * objfiles.c (get_objfile_bfd_data): Likewise.
8582         (objfile_register_static_link): Likewise.
8583         * psymtab.c (allocate_psymtab): Likewise.
8584         * stabsread.c (read_member_functions): Likewise.
8585         * xcoffread.c (xcoff_end_psymtab): Likewise.
8586
8587 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8588
8589         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
8590         compiler supports std::is_trivially_constructible.
8591         * common/poison.h: Include obstack.h.
8592         (IsMallocable): Define to is_trivially_constructible if the
8593         compiler supports it, define to true_type otherwise.
8594         (xobnew): New.
8595         (XOBNEW): Redefine.
8596         (xobnewvec): New.
8597         (XOBNEWVEC): Redefine.
8598         * gdb_obstack.h (obstack_zalloc): New.
8599         (OBSTACK_ZALLOC): Redefine.
8600         (obstack_calloc): New.
8601         (OBSTACK_CALLOC): Redefine.
8602         (obstack_new): New.
8603         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
8604         (gdbarch_obstack): New declaration in gdbarch.h, definition in
8605         gdbarch.c.
8606         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
8607         obstack_calloc/obstack_zalloc.
8608         (gdbarch_obstack_zalloc): Remove.
8609         * target-descriptions.c (tdesc_data_init): Use obstack_new.
8610
8611 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8612
8613         * stack.c (backtrace_command_1): Remove useless variable int i.
8614
8615 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8616
8617         * stack.c (print_frame_info): Fix comment.
8618
8619 2018-05-18  Tom Tromey  <tom@tromey.com>
8620
8621         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
8622         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
8623         (~dwarf2_per_objfile): Update
8624         (dwarf2_get_dwz_file): Use new.
8625         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
8626         unique_ptr.
8627
8628 2018-05-18  Tom Tromey  <tom@tromey.com>
8629
8630         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
8631         unique_ptr.
8632         * dwarf2read.c (struct dwp_file): Add constructor and
8633         initializers.
8634         (open_and_init_dwp_file): Return a unique_ptr.
8635         (dwarf2_per_objfile, create_dwp_hash_table)
8636         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
8637         (lookup_dwo_unit_in_dwp): Update.
8638         (open_and_init_dwp_file, get_dwp_file): Update.
8639
8640 2018-05-18  Tom Tromey  <tom@tromey.com>
8641
8642         * dwarf2read.c (dwarf2_per_objfile): Update.
8643         (struct mapped_index): Add initializers.
8644         (dwarf2_read_index): Use new.
8645         (dw2_symtab_iter_init): Update.
8646         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
8647         unique_ptr.
8648
8649 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8650
8651         * dwarf2read.c (mapped_index) <total_size>: Remove.
8652
8653 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8654
8655         * unittests/format_pieces-selftests.c (test_format_specifier):
8656         Add ARI comments.
8657
8658 2018-05-18  Tom Tromey  <tom@tromey.com>
8659
8660         * c-typeprint.c (maybe_print_hole): New function.
8661         (c_print_type_struct_field_offset): Update.
8662         (c_type_print_base_struct_union): Call maybe_print_hole.
8663
8664 2018-05-17  Keith Seitz  <keiths@redhat.com>
8665
8666         * breakpoint.c (build_bpstat_chain): New function, moved from
8667         bpstat_stop_status.
8668         (bpstat_stop_status): Add optional parameter, `stop_chain'.
8669         If no stop chain is passed, call build_bpstat_chain to build it.
8670         * breakpoint.h (build_bpstat_chain): Declare.
8671         (bpstat_stop_status): Move documentation here from breakpoint.c.
8672         * infrun.c (handle_signal_stop): Before eliding inlined frames,
8673         build the stop chain and pass it to skip_inline_frames.
8674         Pass this stop chain to bpstat_stop_status.
8675         * inline-frame.c: Include breakpoint.h.
8676         (stopped_by_user_bp_inline_frame): New function.
8677         (skip_inline_frames): Add parameter `stop_chain'.
8678         Move documention to inline-frame.h.
8679         If non-NULL, use stopped_by_user_bp_inline_frame to determine
8680         whether the frame should be elided.
8681         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
8682         Add moved documentation and update for new parameter.
8683
8684 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
8685
8686         PR cli/14975
8687         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
8688         unittests/format_pieces-selftests.c.
8689         * common/format.h (format_piece) <operator==>: New.
8690         (format_pieces) <operator[]>: Remove.
8691         * common/format.c (format_pieces::format_pieces): Handle \e.
8692         * unittests/format_pieces-selftests.c: New.
8693
8694 2018-05-17  Tom Tromey  <tom@tromey.com>
8695
8696         PR symtab/23010:
8697         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
8698         (dw2_instantiate_symtab): Add skip_partial parameter.
8699         (dw2_find_last_source_symtab, dw2_map_expand_apply)
8700         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
8701         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
8702         (dw2_expand_symtabs_matching_one)
8703         (dw2_find_pc_sect_compunit_symtab)
8704         (dw2_debug_names_lookup_symbol)
8705         (dw2_debug_names_expand_symtabs_for_function): Update.
8706         (init_cutu_and_read_dies): Add skip_partial parameter.
8707         (process_psymtab_comp_unit, build_type_psymtabs_1)
8708         (process_skeletonless_type_unit, load_partial_comp_unit)
8709         (psymtab_to_symtab_1): Update.
8710         (load_full_comp_unit): Add skip_partial parameter.
8711         (process_imported_unit_die, dwarf2_read_addr_index)
8712         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
8713         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
8714         (read_signatured_type): Update.
8715
8716 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
8717
8718         * value.c (release_value): Remove unused variable.
8719         (record_latest_value): Likewise.
8720         (access_value_history): Likewise.
8721         (preserve_values): Likewise.
8722
8723 2018-05-17  Tom Tromey  <tom@tromey.com>
8724
8725         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
8726         Initialize.
8727
8728 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
8729
8730         PR gdb/22286
8731         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
8732         Also handle registers whose width is not a multiple of
8733         PTRACE_TYPE_RET.
8734         (linux_nat_trad_target::store_register): Likewise.
8735
8736 2018-05-16  Tom Tromey  <tom@tromey.com>
8737
8738         * gdbcore.h (core_bfd): Redefine.
8739         * corelow.c (core_target::close): Update.
8740         (core_target_open): Update.
8741         * progspace.h (struct program_space) <cbfd>: Now a
8742         gdb_bfd_ref_ptr.
8743
8744 2018-05-16  Tom Tromey  <tom@tromey.com>
8745
8746         PR cli/19551:
8747         * symfile-add-flags.h (enum symfile_add_flags)
8748         <SYMFILE_NOT_FILENAME>: New constant.
8749         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
8750         objfile name from BFD.
8751         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
8752         * minidebug.c (find_separate_debug_file_in_section): Put
8753         ".gnu_debugdata" into BFD's file name.
8754
8755 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
8756
8757         * regcache.c (regcache_read_ftype, regcache_write_ftype):
8758         Remove.
8759
8760 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
8761
8762         PR binutils/21446
8763         * aarch64-tdep.c (aarch64_analyze_prologue,
8764         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
8765         Indicate not interested in errors.
8766
8767 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
8768
8769         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
8770         Supply the MIPS_ZERO_REGNUM register.
8771
8772 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
8773
8774         * mips-tdep.c (mask_address_var): Make variable static.
8775
8776 2018-05-14  Tom Tromey  <tom@tromey.com>
8777
8778         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
8779
8780 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
8781
8782         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
8783         FXSAVE_ADDR for the mxcsr register.
8784
8785 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
8786
8787         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
8788
8789 2018-05-11  Pedro Alves  <palves@redhat.com>
8790
8791         * corelow.c (core_target) <core_target>: No longer inline.
8792         Initialize m_core_gdbarch, m_core_vec and build the section table
8793         here.
8794         <~core_target>: New.
8795         <core_gdbarch, get_core_register_section>: New methods.
8796         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
8797         factored out from ...
8798         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
8799         (core_ops): Delete.
8800         (sniff_core_bfd): Add gdbarch parameter.
8801         (core_close): Delete, merged into ...
8802         (core_target::close): ... here.  Delete self.
8803         (core_close_cleanup): Delete.
8804         (core_target_open): Allocate a core_target on the heap.  Use a
8805         unique_ptr instead of a cleanup.  Bits moved into the core_target
8806         ctor.  Adjust to use core_target methods instead of globals.
8807         (get_core_register_section): Rename to ...
8808         (core_target::get_core_register_section): ... this and adjust.
8809         (struct get_core_registers_cb_data): New.
8810         (get_core_registers_cb): Use it.  Use bool.
8811         (core_target::fetch_registers, core_target::files_info)
8812         (core_target::xfer_partial, core_target::read_description)
8813         (core_target::pid_to, core_target::thread_name): Adjust to
8814         reference class fields instead of globals.
8815         * target.h (struct target_ops_deleter, target_ops_up): New.
8816
8817 2018-05-11  Pedro Alves  <palves@redhat.com>
8818
8819         * corefile.c (core_file_command): Move to corelow.c.
8820         * corelow.c (the_core_target): Delete.
8821         (core_file_command): Moved from corefile.c.  Check exec_bfd
8822         instead of the_core_target.  Use target_detach instead of calling
8823         into the_core_target directly.
8824         (maybe_say_no_core_file_now): New.
8825         (core_target::detach): Use it.
8826         (_initialize_corelow): Remove references to the_core_target.
8827         * gdbcore.h (the_core_target): Delete.
8828
8829 2018-05-11  Tom Tromey  <tromey@redhat.com>
8830             Pedro Alves  <palves@redhat.com>
8831
8832         * corefile.c (core_bfd): Remove.
8833         * gdbcore.h (core_bfd): Now a macro.
8834         * progspace.h (struct program_space) <cbfd>: New field.
8835
8836 2018-05-11  Tom Tromey  <tom@tromey.com>
8837
8838         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
8839         gdb::def_vector.
8840
8841 2018-05-10  Tom Tromey  <tom@tromey.com>
8842
8843         * configure: Rebuild.
8844         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
8845
8846 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
8847
8848         PR server/23158:
8849         * regformats/regdat.sh: Adjust script, following the addition
8850         of the new expedite_regs parameter to init_target_desc.
8851
8852 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
8853     
8854         PR gdb/23127
8855         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
8856         set_gdbarch_significant_addr_bit.
8857         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
8858         set_gdbarch_significant_addr_bit.
8859         * utils.c (address_significant): Update to sign extend addr.
8860
8861 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
8862
8863         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
8864         (xtensa_linux_init_abi): Limit tdep->num_regs by
8865         tdep->num_nopriv_regs.
8866         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
8867         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
8868         not initialized.
8869
8870 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
8871
8872         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
8873
8874 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
8875
8876         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
8877         (I387_MXCSR_INIT_VAL): New constant.
8878         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
8879         buffer if it was supplied by the inferior.
8880         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
8881         (i387_xsave_get_clear_bv): New function.
8882         (i387_supply_xsave): Only read x87 control registers from the
8883         xsave buffer if the feature is enabled, and the state will have
8884         been written, otherwise, provide a suitable default.
8885         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
8886         including x87 control registers.  Update control registers if they
8887         have changed from the default value, and mark features as enabled
8888         as required.
8889         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
8890
8891 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
8892
8893         * spu-tdep.c (info_spu_event_command): Fix output formatting.
8894
8895 2018-05-07  Tom Tromey  <tom@tromey.com>
8896
8897         * configure: Rebuild.
8898         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
8899
8900 2018-05-07  Tom Tromey  <tom@tromey.com>
8901
8902         PR tdep/20362:
8903         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
8904         bit.  Use correct value for VDIV.
8905
8906 2018-05-04  Tom Tromey  <tom@tromey.com>
8907
8908         * configure: Rebuild.
8909         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
8910
8911 2018-05-04  Tom Tromey  <tom@tromey.com>
8912
8913         * linux-record.c (record_linux_system_call) <case
8914         RECORD_SYS_RECVFROM>: Add "break".
8915
8916 2018-05-04  Tom Tromey  <tom@tromey.com>
8917
8918         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
8919         Add missing "break".
8920         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
8921         Add missing "break".
8922
8923 2018-05-04  Tom Tromey  <tom@tromey.com>
8924
8925         * rs6000-tdep.c (ppc_process_record_op4)
8926         (ppc_process_record_op63): Add fall-through comment.
8927
8928 2018-05-04  Tom Tromey  <tom@tromey.com>
8929
8930         * i386-tdep.c (i386_process_record): Add fall-through comment.
8931
8932 2018-05-04  Tom Tromey  <tom@tromey.com>
8933
8934         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
8935         comment.
8936
8937 2018-05-04  Tom Tromey  <tom@tromey.com>
8938
8939         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
8940         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
8941         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
8942         comment.
8943         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
8944         comment.
8945         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
8946         comment.
8947
8948 2018-05-04  Tom Tromey  <tom@tromey.com>
8949
8950         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
8951
8952 2018-05-04  Tom Tromey  <tom@tromey.com>
8953
8954         * s390-tdep.c (s390_process_record): Fix fall-through comments.
8955         * xcoffread.c (scan_xcoff_symtab): Move comment later.
8956         * symfile.c (section_is_mapped): Fix fall-through comment.
8957         * stabsread.c (define_symbol, read_member_functions): Fix
8958         fall-through comment.
8959         * s390-linux-tdep.c (s390_process_record): Fix fall-through
8960         comment.
8961         * remote.c (remote_wait_as): Fix fall-through comment.
8962         * p-exp.y (yylex): Fix fall-through comment.
8963         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
8964         comment.
8965         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
8966         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
8967         * jv-exp.y (yylex): Fix fall-through comment.
8968         * go-exp.y (lex_one_token): Fix fall-through comment.
8969         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
8970         fall-through comment.
8971         * f-exp.y (yylex): Fix fall-through comment.
8972         * dwarf2read.c (process_die): Fix fall-through comments.
8973         * dbxread.c (process_one_symbol): Fix fall-through comment.
8974         * d-exp.y (lex_one_token): Fix fall-through comment.
8975         * cp-name-parser.y (yylex): Fix fall-through comment.
8976         * coffread.c (coff_symtab_read): Fix fall-through comment.
8977         * c-exp.y (lex_one_token): Fix fall-through comment.
8978         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
8979         comment.
8980         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
8981         comment.
8982
8983 2018-05-04  Tom Tromey  <tom@tromey.com>
8984
8985         PR python/22730:
8986         * NEWS: Mention gdb.execute change.
8987         * gdbcmd.h (execute_control_command): Don't declare.
8988         * python/python.c (execute_gdb_command): Use read_command_lines_1,
8989         execute_control_commands, execute_control_commands_to_string.
8990         * cli/cli-script.h (execute_control_commands)
8991         (execute_control_commands_to_string): Declare.
8992         (execute_control_command): Add from_tty parameter.
8993         * cli/cli-script.c (execute_control_commands)
8994         (execute_control_commands_to_string): New functions.
8995         (execute_user_command): Use execute_control_commands.
8996         (execute_control_command_1): Add "from_tty" parameter.  Update.
8997         (execute_control_command): Likewise.
8998
8999 2018-05-04  Tom Tromey  <tom@tromey.com>
9000
9001         PR python/22731:
9002         * NEWS: Mention that breakpoint commands are writable.
9003         * python/py-breakpoint.c (bppy_set_commands): New function.
9004         (breakpoint_object_getset) <"commands">: Use it.
9005
9006 2018-05-04  Tom Tromey  <tom@tromey.com>
9007
9008         * tracepoint.c (actions_command): Update.
9009         * mi/mi-cmd-break.c (mi_command_line_array)
9010         (mi_command_line_array_cnt, mi_command_line_array_ptr)
9011         (mi_read_next_line): Remove.
9012         (mi_cmd_break_commands): Update.
9013         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
9014         function_view.
9015         * cli/cli-script.c (get_command_line): Update.
9016         (process_next_line): Use function_view.  Constify.
9017         (recurse_read_control_structure, read_command_lines)
9018         (read_command_lines_1): Change argument types to function_view.
9019         (do_define_command, document_command): Update.
9020         * breakpoint.h (check_tracepoint_command): Don't declare.
9021         * breakpoint.c (check_tracepoint_command): Remove.
9022         (commands_command_1, create_tracepoint_from_upload): Update.
9023
9024 2018-05-04  Tom Tromey  <tom@tromey.com>
9025
9026         PR gdb/11750:
9027         * cli/cli-script.h (enum command_control_type) <define_control>:
9028         New constant.
9029         * cli/cli-script.c (multi_line_command_p): Handle define_control.
9030         (build_command_line, execute_control_command_1)
9031         (process_next_line): Likewise.
9032         (do_define_command): New function, extracted from define_command.
9033         (define_command): Use it.
9034
9035 2018-05-04  Tom Tromey  <tom@tromey.com>
9036
9037         * tracepoint.c (actions_command): Update.
9038         * cli/cli-script.h (read_command_lines): Update.
9039         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
9040         (MAX_TMPBUF): Remove define.
9041         (define_command): Use string_printf.
9042         (document_command): Likewise.
9043         * breakpoint.c (commands_command_1): Update.
9044
9045 2018-05-04  Tom Tromey  <tom@tromey.com>
9046
9047         * top.c (execute_command): Update.
9048         * cli/cli-script.h (print_command_lines): Now varargs.
9049         * cli/cli-script.c (print_command_lines): Now varargs.
9050         (execute_control_command_1) <case while_control, case if_control>:
9051         Update.
9052
9053 2018-05-04  Tom Tromey  <tom@tromey.com>
9054
9055         * tracepoint.c (all_tracepoint_actions): Rename from
9056         all_tracepoint_actions_and_cleanup.  Change return type.
9057         (actions_command, encode_actions_1, encode_actions)
9058         (trace_dump_actions, tdump_command): Update.
9059         * remote.c (remote_download_command_source): Update.
9060         * python/python.c (gdbpy_eval_from_control_command)
9061         (python_command, python_interactive_command): Update.
9062         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
9063         * guile/guile.c (guile_command)
9064         (gdbscm_eval_from_control_command, guile_command): Update.
9065         * compile/compile.c (compile_code_command)
9066         (compile_print_command, compile_to_object): Update.
9067         * cli/cli-script.h (struct command_lines_deleter): New.
9068         (counted_command_line): New typedef.
9069         (struct command_line): Add constructor, destructor.
9070         <body_list>: Remove.
9071         <body_list_0, body_list_1>: New members.
9072         (command_line_up): Remove typedef.
9073         (read_command_lines, read_command_lines_1, get_command_line):
9074         Update.
9075         (copy_command_lines): Don't declare.
9076         * cli/cli-script.c (build_command_line): Use "new".
9077         (get_command_line): Return counted_command_line.
9078         (print_command_lines, execute_user_command)
9079         (execute_control_command_1, while_command, if_command): Update.
9080         (realloc_body_list): Remove.
9081         (process_next_line, recurse_read_control_structure): Update.
9082         (read_command_lines, read_command_lines_1): Return counted_command_line.
9083         (free_command_lines): Use "delete".
9084         (copy_command_lines): Remove.
9085         (define_command, document_command, show_user_1): Update.
9086         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
9087         a counted_command_line.
9088         * breakpoint.h (counted_command_line): Remove typedef.
9089         (breakpoint_set_commands): Update.
9090         * breakpoint.c (check_no_tracepoint_commands)
9091         (validate_commands_for_breakpoint): Update.
9092         (breakpoint_set_commands): Change commands to be a
9093         counted_command_line.
9094         (commands_command_1, update_dprintf_command_list)
9095         (create_tracepoint_from_upload): Update.
9096
9097 2018-05-04  Tom Tromey  <tom@tromey.com>
9098
9099         * cli/cli-decode.h (cmd_list_element): New constructor.
9100         (~cmd_list_element): New destructor.
9101         (struct cmd_list_element): Add initializers.
9102         * cli/cli-decode.c (do_add_cmd): Use "new".
9103         (delete_cmd): Use "delete".
9104
9105 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
9106             Pedro Alves <palves@redhat.com>
9107
9108         PR breakpoints/19806 and support for PR external/20207.
9109         * NEWS: Mention Aarch64 watchpoint improvements.
9110         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
9111         watchpoints and PR external/20207 watchpoints.
9112         * nat/aarch64-linux-hw-point.c
9113         (kernel_supports_any_contiguous_range): New.
9114         (aarch64_watchpoint_offset): New.
9115         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
9116         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
9117         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
9118         (aarch64_align_watchpoint): New parameters aligned_offset_p and
9119         next_addr_orig_p.  Support PR external/20207 watchpoints.
9120         (aarch64_downgrade_regs): New.
9121         (aarch64_dr_state_insert_one_point): New parameters offset and
9122         addr_orig.
9123         (aarch64_dr_state_remove_one_point): Likewise.
9124         (aarch64_handle_breakpoint): Update caller.
9125         (aarch64_handle_aligned_watchpoint): Likewise.
9126         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
9127         aligned_offset.
9128         (aarch64_linux_set_debug_regs): Remove const from state.  Call
9129         aarch64_downgrade_regs.
9130         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
9131         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
9132         (DR_CONTROL_MASK): ... this.
9133         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
9134         (unsigned int aarch64_watchpoint_offset): New prototype.
9135         (aarch64_linux_set_debug_regs): Remove const from state.
9136         * utils.c (align_up, align_down): Move to ...
9137         * common/common-utils.c (align_up, align_down): ... here.
9138         * utils.h (align_up, align_down): Move to ...
9139         * common/common-utils.h (align_up, align_down): ... here.
9140
9141 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
9142
9143         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
9144         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
9145         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
9146         Re-implement to match the ABI as summarized in GCC's
9147         gcc/config/sparc/sparc.c.  All callers updated.
9148         (sparc32_store_arguments): Remove assertion.
9149
9150 2018-05-04  Tom Tromey  <tom@tromey.com>
9151
9152         * printcmd.c: Don't include tui.h.
9153         (decode_format): Use skip_spaces.
9154
9155 2018-05-04  Tom Tromey  <tom@tromey.com>
9156
9157         PR gdb/22619:
9158         * printcmd.c (last_count): New global.
9159         (x_command): Use saved count when repeating.
9160
9161 2018-05-04  Tom Tromey  <tom@tromey.com>
9162
9163         * nto-procfs.c (do_closedir_cleanup): Remove.
9164         (procfs_pidlist): Use gdb_dir_up.
9165         * procfs.c (do_closedir_cleanup): Remove.
9166         (proc_update_threads): Use gdb_dir_up.
9167         * common/filestuff.h (struct gdb_dir_deleter): New.
9168         (gdb_dir_up): New typedef.
9169
9170 2018-05-04  Tom Tromey  <tom@tromey.com>
9171
9172         * ada-lang.c (print_mention_exception): Use std::string.
9173
9174 2018-05-04  Tom Tromey  <tom@tromey.com>
9175
9176         * ada-lang.c (create_excep_cond_exprs): Update.
9177         (ada_exception_catchpoint_cond_string): Use std::string.
9178
9179 2018-05-04  Tom Tromey  <tom@tromey.com>
9180
9181         * ada-lang.c (xget_renaming_scope): Return std::string.
9182         (old_renaming_is_invisible): Update.
9183
9184 2018-05-04  Tom Tromey  <tom@tromey.com>
9185
9186         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
9187         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
9188
9189 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
9190
9191         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
9192
9193 2018-05-04  Tom Tromey  <tom@tromey.com>
9194
9195         * remote.c (remote_query_supported_append): Change type.
9196         (remote_check_symbols): Update.
9197
9198 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
9199
9200         PR gdb/11420
9201         * configure.ac: Prepend libpython.
9202         * python/python-config.py: Likewise.
9203         * configure: Regenerate.
9204
9205 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
9206
9207         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
9208
9209 2018-05-03  Pedro Alves  <palves@redhat.com>
9210
9211         * s390-linux-nat.c
9212         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
9213         override.  Write 'true' instead of '1'.
9214         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
9215         declaration.
9216
9217 2018-05-02  Pedro Alves  <palves@redhat.com>
9218
9219         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
9220         add_inf_child_target.
9221         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
9222         add_inf_child_target.
9223         * aix-thread.c (aix_thread_target_info): New.
9224         (aix_thread_target) <shortname, longname, doc>: Delete.
9225         <info>: New.
9226         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
9227         add_inf_child_target.
9228         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
9229         add_inf_child_target.
9230         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
9231         add_inf_child_target.
9232         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
9233         add_inf_child_target.
9234         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
9235         add_inf_child_target.
9236         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
9237         add_inf_child_target.
9238         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
9239         add_inf_child_target.
9240         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
9241         add_inf_child_target.
9242         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
9243         add_inf_child_target.
9244         * bfd-target.c (target_bfd_target_info): New.
9245         (target_bfd) <shortname, longname, doc>: Delete.
9246         <info>: New.
9247         * bsd-kvm.c (bsd_kvm_target_info): New.
9248         (bsd_kvm_target) <shortname, longname, doc>: Delete.
9249         <info>: New.
9250         (bsd_kvm_target::open): Rename to ...
9251         (bsd_kvm_target_open): ... this.  Adjust.
9252         * bsd-uthread.c (bsd_uthread_target_info): New.
9253         (bsd_uthread_target) <shortname, longname, doc>: Delete.
9254         <info>: New.
9255         * corefile.c (core_file_command): Adjust.
9256         * corelow.c (core_target_info): New.
9257         (core_target) <shortname, longname, doc>: Delete.
9258         <info>: New.
9259         (core_target::open): Rename to ...
9260         (core_target_open): ... this.  Adjust.
9261         * ctf.c (ctf_target_info): New.
9262         (ctf_target) <shortname, longname, doc>: Delete.
9263         <info>: New.
9264         (ctf_target::open): Rename to ...
9265         (ctf_target_open): ... this.
9266         (_initialize_ctf): Adjust.
9267         * exec.c (exec_target_info): New.
9268         (exec_target) <shortname, longname, doc>: Delete.
9269         <info>: New.
9270         (exec_target::open): Rename to ...
9271         (exec_target_open): ... this.
9272         * gdbcore.h (core_target_open): Declare.
9273         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
9274         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
9275         add_inf_child_target.
9276         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
9277         add_inf_child_target.
9278         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
9279         add_inf_child_target.
9280         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
9281         add_inf_child_target.
9282         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
9283         add_inf_child_target.
9284         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
9285         add_inf_child_target.
9286         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
9287         add_inf_child_target.
9288         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
9289         add_inf_child_target.
9290         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
9291         add_inf_child_target.
9292         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
9293         add_inf_child_target.
9294         * inf-child.c (inf_child_target_info): New.
9295         (inf_child_target::info): New.
9296         (inf_child_open_target): Remove 'target' parameter.  Use
9297         get_native_target instead.
9298         (inf_child_target::open): Delete.
9299         (add_inf_child_target): New.
9300         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
9301         Delete.
9302         <info>: New.
9303         (add_inf_child_target): Declare.
9304         (inf_child_open_target): Declare.
9305         * linux-thread-db.c (thread_db_target_info): New.
9306         (thread_db_target) <shortname, longname, doc>: Delete.
9307         <info>: New.
9308         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
9309         add_inf_child_target.
9310         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
9311         add_inf_child_target.
9312         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
9313         add_inf_child_target.
9314         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
9315         add_inf_child_target.
9316         * make-target-delegates (print_class): Adjust.
9317         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
9318         add_inf_child_target.
9319         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
9320         add_inf_child_target.
9321         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
9322         add_inf_child_target.
9323         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
9324         add_inf_child_target.
9325         * nto-procfs.c (nto_native_target_info): New.
9326         (nto_procfs_target_native) <shortname, longname, doc>:
9327         Delete.
9328         <info>: New.
9329         (nto_procfs_target_info): New.
9330         (nto_procfs_target_procfs) <shortname, longname, doc>:
9331         Delete.
9332         <info>: New.
9333         (init_procfs_targets): Adjust.
9334         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
9335         add_inf_child_target.
9336         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
9337         add_inf_child_target.
9338         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
9339         add_inf_child_target.
9340         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
9341         add_inf_child_target.
9342         * ravenscar-thread.c (ravenscar_target_info): New.
9343         (ravenscar_thread_target) <shortname, longname, doc>:
9344         Delete.
9345         <info>: New.
9346         * record-btrace.c (record_btrace_target_info):
9347         (record_btrace_target) <shortname, longname, doc>: Delete.
9348         <info>: New.
9349         (record_btrace_target::open): Rename to ...
9350         (record_btrace_target_open): ... this.  Adjust.
9351         * record-full.c (record_longname, record_doc): New.
9352         (record_full_base_target) <shortname, longname, doc>: Delete.
9353         <info>: New.
9354         (record_full_target_info): New.
9355         (record_full_target): <shortname>: Delete.
9356         <info>: New.
9357         (record_full_core_open_1, record_full_open_1): Update comments.
9358         (record_full_base_target::open): Rename to ...
9359         (record_full_open): ... this.
9360         (cmd_record_full_restore): Update.
9361         (_initialize_record_full): Update.
9362         * remote-sim.c (remote_sim_target_info): New.
9363         (gdbsim_target) <shortname, longname, doc>: Delete.
9364         <info>: New.
9365         (gdbsim_target::open): Rename to ...
9366         (gdbsim_target_open): ... this.
9367         (_initialize_remote_sim): Adjust.
9368         * remote.c (remote_doc): New.
9369         (remote_target_info): New.
9370         (remote_target) <shortname, longname, doc>: Delete.
9371         <info>: New.
9372         (extended_remote_target_info): New.
9373         (extended_remote_target) <shortname, longname, doc>: Delete.
9374         <info>: New.
9375         (remote_target::open_1): Make static.  Adjust.
9376         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
9377         * s390-linux-nat.c (_initialize_s390_nat): Use
9378         add_inf_child_target.
9379         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
9380         add_inf_child_target.
9381         * sol-thread.c (thread_db_target_info): New.
9382         (sol_thread_target) <shortname, longname, doc>: Delete.
9383         <info>: New.
9384         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
9385         add_inf_child_target.
9386         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
9387         add_inf_child_target.
9388         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
9389         add_inf_child_target.
9390         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
9391         add_inf_child_target.
9392         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
9393         add_inf_child_target.
9394         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
9395         add_inf_child_target.
9396         * spu-linux-nat.c (_initialize_spu_nat): Use
9397         add_inf_child_target.
9398         * spu-multiarch.c (spu_multiarch_target_info): New.
9399         (spu_multiarch_target) <shortname, longname, doc>: Delete.
9400         <info>: New.
9401         * target-delegates.c: Regenerate.
9402         * target.c: Include <unordered_map>.
9403         (target_ops_p): Delete.
9404         (DEF_VEC_P(target_ops_p)): Delete.
9405         (target_factories): New.
9406         (test_target_info): New.
9407         (test_target_ops::info): New.
9408         (open_target): Adjust to use target_factories.
9409         (add_target_with_completer): Rename to ...
9410         (add_target): ... this.  Change prototype.  Register target_info
9411         and open callback in target_factories.  Register target_info in
9412         command context instead of target_ops.
9413         (add_target): Delete old implementation.
9414         (add_deprecated_target_alias): Change prototype.  Adjust.
9415         (the_native_target): New.
9416         (set_native_target, get_native_target): New.
9417         (find_default_run_target): Use the_native_target.
9418         (find_attach_target, find_run_target): Simplify.
9419         (target_ops::open): Delete.
9420         (dummy_target_info): New.
9421         (dummy_target::shortname, dummy_target::longname)
9422         (dummy_target::doc): Delete.
9423         (dummy_target::info): New.
9424         (debug_target::shortname, debug_target::longname)
9425         (debug_target::doc): Delete.
9426         (debug_target::info): New.
9427         * target.h (struct target_info): New.
9428         (target_ops::~target_ops): Add comment.
9429         (target_ops::info): New.
9430         (target_ops::shortname, target_ops::longname, target_ops::doc): No
9431         longer virtual.  Implement in terms of target_info.
9432         (set_native_target, get_native_target): Declare.
9433         (target_open_ftype): New.
9434         (add_target, add_target_with_completer)
9435         (add_deprecated_target_alias): Change prototype.
9436         (test_target) <shortname, longname, doc>: Delete.
9437         <info>: New.
9438         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
9439         add_inf_child_target.
9440         * tracefile-tfile.c (tfile_target_info): New.
9441         (tfile_target) <shortname, longname, doc>: Delete.
9442         <info>: New.
9443         (tfile_target::open): Rename to ...
9444         (tfile_target_open): ... this.
9445         (_initialize_tracefile_tfile): Adjust.
9446         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
9447         add_inf_child_target.
9448         * windows-nat.c (_initialize_windows_nat): Use
9449         add_inf_child_target.
9450         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
9451         add_inf_child_target.
9452
9453 2018-05-02  Pedro Alves  <palves@redhat.com>
9454
9455         * linux-nat.h (linux_nat_target) <low_new_thread,
9456         low_delete_thread, low_new_fork, low_forget_process,
9457         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
9458         New virtual methods.
9459         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
9460         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
9461         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
9462         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
9463         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
9464         Delete.
9465         * linux-fork.c (delete_fork): Adjust to call low method.
9466         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
9467         (linux_nat_new_fork, linux_nat_forget_process_hook)
9468         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
9469         (linux_nat_status_is_event):
9470         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
9471         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
9472         to call low method.
9473         (sigtrap_is_event): Rename to ...
9474         (linux_nat_target::low_status_is_event): ... this.
9475         (linux_nat_set_status_is_event): Delete.
9476         (save_stop_reason, linux_nat_wait_1)
9477         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
9478         low methods.
9479         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
9480         (linux_nat_set_new_fork, linux_nat_set_forget_process)
9481         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
9482         (linux_nat_set_prepare_to_resume): Delete.
9483         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
9484         low virtual methods.
9485         * amd64-linux-nat.c: Likewise.
9486         * arm-linux-nat.c: Likewise.
9487         * i386-linux-nat.c: Likewise.
9488         * ia64-linux-nat.c: Likewise.
9489         * mips-linux-nat.c: Likewise.
9490         * ppc-linux-nat.c: Likewise.
9491         * s390-linux-nat.c: Likewise.
9492         * sparc64-linux-nat.c: Likewise.
9493         * x86-linux-nat.c: Likewise.
9494         * x86-linux-nat.h: Include "nat/x86-linux.h".
9495         (x86_linux_nat_target) <low_new_fork, low_forget_process,
9496         low_prepare_to_resume, low_new_thread, low_delete_thread>:
9497         Override methods.
9498
9499 2018-05-02  Pedro Alves  <palves@redhat.com>
9500
9501         * target.h (target_ops)
9502         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
9503         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
9504         stopped_by_watchpoint, have_continuable_watchpoint,
9505         stopped_data_address, watchpoint_addr_within_range,
9506         can_accel_watchpoint_condition, can_run, thread_alive,
9507         has_all_memory, has_memory, has_stack, has_registers,
9508         has_execution, can_async_p, is_async_p, supports_non_stop,
9509         always_non_stop_p, can_execute_reverse, supports_multi_process,
9510         supports_enable_disable_tracepoint,
9511         supports_disable_randomization, supports_string_tracing,
9512         supports_evaluation_of_breakpoint_conditions,
9513         can_run_breakpoint_commands, filesystem_is_local,
9514         can_download_tracepoint, get_trace_state_variable_value,
9515         set_trace_notes, get_tib_address, use_agent, can_use_agent,
9516         record_is_replaying, record_will_replay,
9517         augmented_libraries_svr4_read>: Adjust to return bool.
9518         * aarch64-linux-nat.c: All implementations adjusted.
9519         * aix-thread.c: All implementations adjusted.
9520         * arm-linux-nat.c: All implementations adjusted.
9521         * breakpoint.c: All implementations adjusted.
9522         * bsd-kvm.c: All implementations adjusted.
9523         * bsd-uthread.c: All implementations adjusted.
9524         * corelow.c: All implementations adjusted.
9525         * ctf.c: All implementations adjusted.
9526         * darwin-nat.c: All implementations adjusted.
9527         * darwin-nat.h: All implementations adjusted.
9528         * exec.c: All implementations adjusted.
9529         * fbsd-nat.c: All implementations adjusted.
9530         * fbsd-nat.h: All implementations adjusted.
9531         * gnu-nat.c: All implementations adjusted.
9532         * gnu-nat.h: All implementations adjusted.
9533         * go32-nat.c: All implementations adjusted.
9534         * ia64-linux-nat.c: All implementations adjusted.
9535         * inf-child.c: All implementations adjusted.
9536         * inf-child.h: All implementations adjusted.
9537         * inf-ptrace.c: All implementations adjusted.
9538         * inf-ptrace.h: All implementations adjusted.
9539         * linux-nat.c: All implementations adjusted.
9540         * linux-nat.h: All implementations adjusted.
9541         * mips-linux-nat.c: All implementations adjusted.
9542         * nto-procfs.c: All implementations adjusted.
9543         * ppc-linux-nat.c: All implementations adjusted.
9544         * procfs.c: All implementations adjusted.
9545         * ravenscar-thread.c: All implementations adjusted.
9546         * record-btrace.c: All implementations adjusted.
9547         * record-full.c: All implementations adjusted.
9548         * remote-sim.c: All implementations adjusted.
9549         * remote.c: All implementations adjusted.
9550         * s390-linux-nat.c: All implementations adjusted.
9551         * sol-thread.c: All implementations adjusted.
9552         * spu-multiarch.c: All implementations adjusted.
9553         * target-delegates.c: All implementations adjusted.
9554         * target.c: All implementations adjusted.
9555         * target.h: All implementations adjusted.
9556         * tracefile-tfile.c: All implementations adjusted.
9557         * tracefile.c: All implementations adjusted.
9558         * tracefile.h: All implementations adjusted.
9559         * windows-nat.c: All implementations adjusted.
9560         * x86-linux-nat.h: All implementations adjusted.
9561         * x86-nat.h: All implementations adjusted.
9562
9563 2018-05-02  Pedro Alves  <palves@redhat.com>
9564
9565         * make-target-delegates (scan_target_h): Don't trim lines here.
9566         Replace sequences of tabs and/or whitespace with a single
9567         whitespace.
9568         (top level, parsing methods): Trim each line before processing it
9569         here.
9570
9571 2018-05-02  Pedro Alves  <palves@redhat.com>
9572             John Baldwin  <jhb@freebsd.org>
9573
9574         * target.h (enum strata) <debug_stratum>: New.
9575         (struct target_ops) <all delegation methods>: Replace by C++
9576         virtual methods, and drop "to_" prefix.  All references updated
9577         throughout.
9578         <to_shortname, to_longname, to_doc, to_data,
9579         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
9580         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
9581         virtual methods.  All references updated throughout.
9582         <can_attach, supports_terminal_ours, can_create_inferior,
9583         get_thread_control_capabilities, attach_no_wait>: New
9584         virtual methods.
9585         <insert_breakpoint, remove_breakpoint>: Now
9586         TARGET_DEFAULT_NORETURN methods.
9587         <info_proc>: Now returns bool.
9588         <to_magic>: Delete.
9589         (OPS_MAGIC): Delete.
9590         (current_target): Delete.  All references replaced by references
9591         to ...
9592         (target_stack): ... this.  New.
9593         (target_shortname, target_longname): Adjust.
9594         (target_can_run): Now a function declaration.
9595         (default_child_has_all_memory, default_child_has_memory)
9596         (default_child_has_stack, default_child_has_registers)
9597         (default_child_has_execution): Remove target_ops parameter.
9598         (complete_target_initialization): Delete.
9599         (memory_breakpoint_target): New template class.
9600         (test_target_ops): Refactor as a C++ class with virtual methods.
9601         * make-target-delegates (NAME_PART): Tighten.
9602         (POINTER_PART, CP_SYMBOL): New.
9603         (SIMPLE_RETURN_PART): Reimplement.
9604         (VEC_RETURN_PART): Expect less.
9605         (RETURN_PART, VIRTUAL_PART): New.
9606         (METHOD): Adjust to C++ virtual methods.
9607         (scan_target_h): Remove reference to C99.
9608         (dname): Output "target_ops::" prefix.
9609         (write_function_header): Adjust to output a C++ class method.
9610         (write_declaration): New.
9611         (write_delegator): Adjust to output a C++ class method.
9612         (tdname): Output "dummy_target::" prefix.
9613         (write_tdefault, write_debugmethod): Adjust to output a C++ class
9614         method.
9615         (tdefault_names, debug_names): Delete.
9616         (return_types, tdefaults, styles, argtypes_array): New.
9617         (top level): All methods are delegators.
9618         (print_class): New.
9619         (top level): Print dummy_target and debug_target classes.
9620         * target-delegates.c: Regenerate.
9621         * target-debug.h (target_debug_print_enum_info_proc_what)
9622         (target_debug_print_thread_control_capabilities)
9623         (target_debug_print_thread_info_p): New.
9624         * target.c (dummy_target): Delete.
9625         (the_dummy_target, the_debug_target): New.
9626         (target_stack): Now extern.
9627         (set_targetdebug): Push/unpush debug target.
9628         (default_child_has_all_memory, default_child_has_memory)
9629         (default_child_has_stack, default_child_has_registers)
9630         (default_child_has_execution): Remove target_ops parameter.
9631         (complete_target_initialization): Delete.
9632         (add_target_with_completer): No longer call
9633         complete_target_initialization.
9634         (target_supports_terminal_ours): Use regular delegation.
9635         (update_current_target): Delete.
9636         (push_target): No longer check magic number.  Don't call
9637         update_current_target.
9638         (unpush_target): Don't call update_current_target.
9639         (target_is_pushed): No longer check magic number.
9640         (target_require_runnable): Skip for all stratums over
9641         process_stratum.
9642         (target_ops::info_proc): New.
9643         (target_info_proc): Use find_target_at and
9644         find_default_run_target.
9645         (target_supports_disable_randomization): Use regular delegation.
9646         (target_get_osdata): Use find_target_at.
9647         (target_ops::open, target_ops::close, target_ops::can_attach)
9648         (target_ops::attach, target_ops::can_create_inferior)
9649         (target_ops::create_inferior, target_ops::can_run)
9650         (target_can_run): New.
9651         (default_fileio_target): Use regular delegation.
9652         (target_ops::fileio_open, target_ops::fileio_pwrite)
9653         (target_ops::fileio_pread, target_ops::fileio_fstat)
9654         (target_ops::fileio_close, target_ops::fileio_unlink)
9655         (target_ops::fileio_readlink): New.
9656         (target_fileio_open_1, target_fileio_unlink)
9657         (target_fileio_readlink): Always call the target method.  Handle
9658         FILEIO_ENOSYS.
9659         (return_zero, return_zero_has_execution): Delete.
9660         (init_dummy_target): Delete.
9661         (dummy_target::dummy_target, dummy_target::shortname)
9662         (dummy_target::longname, dummy_target::doc)
9663         (debug_target::debug_target, debug_target::shortname)
9664         (debug_target::longname, debug_target::doc): New.
9665         (target_supports_delete_record): Use regular delegation.
9666         (setup_target_debug): Delete.
9667         (maintenance_print_target_stack): Skip debug_stratum.
9668         (initialize_targets): Instantiate the_dummy_target and
9669         the_debug_target.
9670         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
9671         use target_stack.
9672         (target_auxv_search, fprint_target_auxv): Adjust.
9673         (info_auxv_command): Adjust to use target_stack.
9674         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
9675         * exceptions.c (print_flush): Handle a NULL target_stack.
9676         * regcache.c (target_ops_no_register): Refactor as class with
9677         virtual methods.
9678
9679         * exec.c (exec_target): New class.
9680         (exec_ops): Now an exec_target.
9681         (exec_open, exec_close_1, exec_get_section_table)
9682         (exec_xfer_partial, exec_files_info, exec_has_memory)
9683         (exec_make_note_section): Refactor as exec_target methods.
9684         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
9685         Delete.
9686         (exec_target::find_memory_regions): New.
9687         (_initialize_exec): Don't call init_exec_ops.
9688         * gdbcore.h (exec_file_clear): Delete.
9689
9690         * corefile.c (core_target): Delete.
9691         (core_file_command): Adjust.
9692         * corelow.c (core_target): New class.
9693         (the_core_target): New.
9694         (core_close): Remove target_ops parameter.
9695         (core_close_cleanup): Adjust.
9696         (core_target::close): New.
9697         (core_open, core_detach, get_core_registers, core_files_info)
9698         (core_xfer_partial, core_thread_alive, core_read_description)
9699         (core_pid_to_str, core_thread_name, core_has_memory)
9700         (core_has_stack, core_has_registers, core_info_proc): Rework as
9701         core_target methods.
9702         (ignore, core_remove_breakpoint, init_core_ops): Delete.
9703         (_initialize_corelow): Initialize the_core_target.
9704         * gdbcore.h (core_target): Delete.
9705         (the_core_target): New.
9706
9707         * ctf.c: (ctf_target): New class.
9708         (ctf_ops): Now a ctf_target.
9709         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
9710         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
9711         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
9712         methods.
9713         (init_ctf_ops): Delete.
9714         (_initialize_ctf): Don't call it.
9715         * tracefile-tfile.c (tfile_target): New class.
9716         (tfile_ops): Now a tfile_target.
9717         (tfile_open, tfile_close, tfile_files_info)
9718         (tfile_get_tracepoint_status, tfile_trace_find)
9719         (tfile_fetch_registers, tfile_xfer_partial)
9720         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
9721         Refactor as tfile_target methods.
9722         (tfile_xfer_partial_features): Remove target_ops parameter.
9723         (init_tfile_ops): Delete.
9724         (_initialize_tracefile_tfile): Don't call it.
9725         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
9726         (tracefile_has_stack, tracefile_has_registers)
9727         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
9728         tracefile_target methods.
9729         (init_tracefile_ops): Delete.
9730         (tracefile_target::tracefile_target): New.
9731         * tracefile.h: Include "target.h".
9732         (tracefile_target): New class.
9733         (init_tracefile_ops): Delete.
9734
9735         * spu-multiarch.c (spu_multiarch_target): New class.
9736         (spu_ops): Now a spu_multiarch_target.
9737         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
9738         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
9739         (spu_search_memory, spu_mourn_inferior): Refactor as
9740         spu_multiarch_target methods.
9741         (init_spu_ops): Delete.
9742         (_initialize_spu_multiarch): Remove references to init_spu_ops,
9743         complete_target_initialization.
9744
9745         * ravenscar-thread.c (ravenscar_thread_target): New class.
9746         (ravenscar_ops): Now a ravenscar_thread_target.
9747         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
9748         (ravenscar_thread_alive, ravenscar_pid_to_str)
9749         (ravenscar_fetch_registers, ravenscar_store_registers)
9750         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
9751         (ravenscar_stopped_by_hw_breakpoint)
9752         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
9753         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
9754         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
9755         methods.
9756         (init_ravenscar_thread_ops): Delete.
9757         (_initialize_ravenscar): Remove references to
9758         init_ravenscar_thread_ops and complete_target_initialization.
9759
9760         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
9761         (bsd_uthread_target): New class.
9762         (bsd_uthread_ops): Now a bsd_uthread_target.
9763         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
9764         (bsd_uthread_close, bsd_uthread_mourn_inferior)
9765         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
9766         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
9767         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
9768         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
9769         (bsd_uthread_target): Delete function.
9770         (_initialize_bsd_uthread): Remove reference to
9771         complete_target_initialization.
9772
9773         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
9774         (target_bfd): ... this new class.
9775         (target_bfd_xfer_partial, target_bfd_get_section_table)
9776         (target_bfd_close): Refactor as target_bfd methods.
9777         (target_bfd::~target_bfd): New.
9778         (target_bfd_reopen): Adjust.
9779         (target_bfd::close): New.
9780
9781         * record-btrace.c (record_btrace_target): New class.
9782         (record_btrace_ops): Now a record_btrace_target.
9783         (record_btrace_open, record_btrace_stop_recording)
9784         (record_btrace_disconnect, record_btrace_close)
9785         (record_btrace_async, record_btrace_info)
9786         (record_btrace_insn_history, record_btrace_insn_history_range)
9787         (record_btrace_insn_history_from, record_btrace_call_history)
9788         (record_btrace_call_history_range)
9789         (record_btrace_call_history_from, record_btrace_record_method)
9790         (record_btrace_is_replaying, record_btrace_will_replay)
9791         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
9792         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
9793         (record_btrace_store_registers, record_btrace_prepare_to_store)
9794         (record_btrace_to_get_unwinder)
9795         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
9796         (record_btrace_commit_resume, record_btrace_wait)
9797         (record_btrace_stop, record_btrace_can_execute_reverse)
9798         (record_btrace_stopped_by_sw_breakpoint)
9799         (record_btrace_supports_stopped_by_sw_breakpoint)
9800         (record_btrace_stopped_by_hw_breakpoint)
9801         (record_btrace_supports_stopped_by_hw_breakpoint)
9802         (record_btrace_update_thread_list, record_btrace_thread_alive)
9803         (record_btrace_goto_begin, record_btrace_goto_end)
9804         (record_btrace_goto, record_btrace_stop_replaying_all)
9805         (record_btrace_execution_direction)
9806         (record_btrace_prepare_to_generate_core)
9807         (record_btrace_done_generating_core): Refactor as
9808         record_btrace_target methods.
9809         (init_record_btrace_ops): Delete.
9810         (_initialize_record_btrace): Remove reference to
9811         init_record_btrace_ops.
9812         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
9813         the execution_direction global.
9814         (record_full_base_target, record_full_target)
9815         (record_full_core_target): New classes.
9816         (record_full_ops): Now a record_full_target.
9817         (record_full_core_ops): Now a record_full_core_target.
9818         (record_full_target::detach, record_full_target::disconnect)
9819         (record_full_core_target::disconnect)
9820         (record_full_target::mourn_inferior, record_full_target::kill):
9821         New.
9822         (record_full_open, record_full_close, record_full_async): Refactor
9823         as methods of the record_full_base_target class.
9824         (record_full_resume, record_full_commit_resume): Refactor
9825         as methods of the record_full_target class.
9826         (record_full_wait, record_full_stopped_by_watchpoint)
9827         (record_full_stopped_data_address)
9828         (record_full_stopped_by_sw_breakpoint)
9829         (record_full_supports_stopped_by_sw_breakpoint)
9830         (record_full_stopped_by_hw_breakpoint)
9831         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
9832         methods of the record_full_base_target class.
9833         (record_full_store_registers, record_full_xfer_partial)
9834         (record_full_insert_breakpoint, record_full_remove_breakpoint):
9835         Refactor as methods of the record_full_target class.
9836         (record_full_can_execute_reverse, record_full_get_bookmark)
9837         (record_full_goto_bookmark, record_full_execution_direction)
9838         (record_full_record_method, record_full_info, record_full_delete)
9839         (record_full_is_replaying, record_full_will_replay)
9840         (record_full_goto_begin, record_full_goto_end, record_full_goto)
9841         (record_full_stop_replaying): Refactor as methods of the
9842         record_full_base_target class.
9843         (record_full_core_resume, record_full_core_kill)
9844         (record_full_core_fetch_registers)
9845         (record_full_core_prepare_to_store)
9846         (record_full_core_store_registers, record_full_core_xfer_partial)
9847         (record_full_core_insert_breakpoint)
9848         (record_full_core_remove_breakpoint)
9849         (record_full_core_has_execution): Refactor
9850         as methods of the record_full_core_target class.
9851         (record_full_base_target::supports_delete_record): New.
9852         (init_record_full_ops): Delete.
9853         (init_record_full_core_ops): Delete.
9854         (record_full_save): Refactor as method of the
9855         record_full_base_target class.
9856         (_initialize_record_full): Remove references to
9857         init_record_full_ops and init_record_full_core_ops.
9858
9859         * remote.c (remote_target, extended_remote_target): New classes.
9860         (remote_ops): Now a remote_target.
9861         (extended_remote_ops): Now an extended_remote_target.
9862         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
9863         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
9864         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
9865         (remote_pass_signals, remote_set_syscall_catchpoint)
9866         (remote_program_signals, )
9867         (remote_thread_always_alive): Remove target_ops parameter.
9868         (remote_thread_alive, remote_thread_name)
9869         (remote_update_thread_list, remote_threads_extra_info)
9870         (remote_static_tracepoint_marker_at)
9871         (remote_static_tracepoint_markers_by_strid)
9872         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
9873         (remote_open): Refactor as methods of remote_target.
9874         (extended_remote_open, extended_remote_detach)
9875         (extended_remote_attach, extended_remote_post_attach):
9876         (extended_remote_supports_disable_randomization)
9877         (extended_remote_create_inferior): : Refactor as method of
9878         extended_remote_target.
9879         (remote_set_permissions, remote_open_1, remote_detach)
9880         (remote_follow_fork, remote_follow_exec, remote_disconnect)
9881         (remote_resume, remote_commit_resume, remote_stop)
9882         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
9883         (remote_terminal_ours, remote_wait, remote_fetch_registers)
9884         (remote_prepare_to_store, remote_store_registers)
9885         (remote_flash_erase, remote_flash_done, remote_files_info)
9886         (remote_kill, remote_mourn, remote_insert_breakpoint)
9887         (remote_remove_breakpoint, remote_insert_watchpoint)
9888         (remote_watchpoint_addr_within_range)
9889         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
9890         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
9891         (remote_supports_stopped_by_sw_breakpoint)
9892         (remote_stopped_by_hw_breakpoint)
9893         (remote_supports_stopped_by_hw_breakpoint)
9894         (remote_stopped_by_watchpoint, remote_stopped_data_address)
9895         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
9896         (remote_verify_memory): Refactor as methods of remote_target.
9897         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
9898         parameter.
9899         (remote_xfer_partial, remote_get_memory_xfer_limit)
9900         (remote_search_memory, remote_rcmd, remote_memory_map)
9901         (remote_pid_to_str, remote_get_thread_local_address)
9902         (remote_get_tib_address, remote_read_description): Refactor as
9903         methods of remote_target.
9904         (remote_target::fileio_open, remote_target::fileio_pwrite)
9905         (remote_target::fileio_pread, remote_target::fileio_close): New.
9906         (remote_hostio_readlink, remote_hostio_fstat)
9907         (remote_filesystem_is_local, remote_can_execute_reverse)
9908         (remote_supports_non_stop, remote_supports_disable_randomization)
9909         (remote_supports_multi_process, remote_supports_cond_breakpoints)
9910         (remote_supports_enable_disable_tracepoint)
9911         (remote_supports_string_tracing)
9912         (remote_can_run_breakpoint_commands, remote_trace_init)
9913         (remote_download_tracepoint, remote_can_download_tracepoint)
9914         (remote_download_trace_state_variable, remote_enable_tracepoint)
9915         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
9916         (remote_trace_start, remote_get_trace_status)
9917         (remote_get_tracepoint_status, remote_trace_stop)
9918         (remote_trace_find, remote_get_trace_state_variable_value)
9919         (remote_save_trace_data, remote_get_raw_trace_data)
9920         (remote_set_disconnected_tracing, remote_core_of_thread)
9921         (remote_set_circular_trace_buffer, remote_traceframe_info)
9922         (remote_get_min_fast_tracepoint_insn_len)
9923         (remote_set_trace_buffer_size, remote_set_trace_notes)
9924         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
9925         (remote_disable_btrace, remote_teardown_btrace)
9926         (remote_read_btrace, remote_btrace_conf)
9927         (remote_augmented_libraries_svr4_read, remote_load)
9928         (remote_pid_to_exec_file, remote_can_do_single_step)
9929         (remote_execution_direction, remote_thread_handle_to_thread_info):
9930         Refactor as methods of remote_target.
9931         (init_remote_ops, init_extended_remote_ops): Delete.
9932         (remote_can_async_p, remote_is_async_p, remote_async)
9933         (remote_thread_events, remote_upload_tracepoints)
9934         (remote_upload_trace_state_variables): Refactor as methods of
9935         remote_target.
9936         (_initialize_remote): Remove references to init_remote_ops and
9937         init_extended_remote_ops.
9938
9939         * remote-sim.c (gdbsim_target): New class.
9940         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
9941         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
9942         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
9943         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
9944         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
9945         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
9946         Refactor as methods of gdbsim_target.
9947         (gdbsim_ops): Now a gdbsim_target.
9948         (init_gdbsim_ops): Delete.
9949         (gdbsim_cntrl_c): Adjust.
9950         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
9951
9952         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
9953         (the_amd64_linux_nat_target): New.
9954         (amd64_linux_fetch_inferior_registers)
9955         (amd64_linux_store_inferior_registers): Refactor as methods of
9956         amd64_linux_nat_target.
9957         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
9958         * i386-linux-nat.c: Don't include "linux-nat.h".
9959         (i386_linux_nat_target): New class.
9960         (the_i386_linux_nat_target): New.
9961         (i386_linux_fetch_inferior_registers)
9962         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
9963         as methods of i386_linux_nat_target.
9964         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
9965         * inf-child.c (inf_child_ops): Delete.
9966         (inf_child_fetch_inferior_registers)
9967         (inf_child_store_inferior_registers): Delete.
9968         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
9969         methods of inf_child_target.
9970         (inf_child_target::supports_terminal_ours)
9971         (inf_child_target::terminal_init)
9972         (inf_child_target::terminal_inferior)
9973         (inf_child_target::terminal_ours_for_output)
9974         (inf_child_target::terminal_ours, inf_child_target::interrupt)
9975         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
9976         New.
9977         (inf_child_open, inf_child_disconnect, inf_child_close)
9978         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
9979         (inf_child_post_startup_inferior, inf_child_can_run)
9980         (inf_child_pid_to_exec_file): Refactor as methods of
9981         inf_child_target.
9982         (inf_child_follow_fork): Delete.
9983         (inf_child_target::can_create_inferior)
9984         (inf_child_target::can_attach): New.
9985         (inf_child_target::has_all_memory, inf_child_target::has_memory)
9986         (inf_child_target::has_stack, inf_child_target::has_registers)
9987         (inf_child_target::has_execution): New.
9988         (inf_child_fileio_open, inf_child_fileio_pwrite)
9989         (inf_child_fileio_pread, inf_child_fileio_fstat)
9990         (inf_child_fileio_close, inf_child_fileio_unlink)
9991         (inf_child_fileio_readlink, inf_child_use_agent)
9992         (inf_child_can_use_agent): Refactor as methods of
9993         inf_child_target.
9994         (return_zero, inf_child_target): Delete.
9995         (inf_child_target::inf_child_target): New.
9996         * inf-child.h: Include "target.h".
9997         (inf_child_target): Delete function prototype.
9998         (inf_child_target): New class.
9999         (inf_child_open_target, inf_child_mourn_inferior)
10000         (inf_child_maybe_unpush_target): Delete.
10001         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
10002         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
10003         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
10004         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
10005         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
10006         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
10007         (inf_ptrace_wait, inf_ptrace_xfer_partial)
10008         (inf_ptrace_thread_alive, inf_ptrace_files_info)
10009         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
10010         methods of inf_ptrace_target.
10011         (inf_ptrace_target): Delete function.
10012         * inf-ptrace.h: Include "inf-child.h".
10013         (inf_ptrace_target): Delete function declaration.
10014         (inf_ptrace_target): New class.
10015         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
10016         * linux-nat.c (linux_target): New.
10017         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
10018         (linux_nat_target::~linux_nat_target): New.
10019         (linux_child_post_attach, linux_child_post_startup_inferior)
10020         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
10021         (linux_child_remove_fork_catchpoint)
10022         (linux_child_insert_vfork_catchpoint)
10023         (linux_child_remove_vfork_catchpoint)
10024         (linux_child_insert_exec_catchpoint)
10025         (linux_child_remove_exec_catchpoint)
10026         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
10027         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
10028         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
10029         (linux_nat_stopped_data_address)
10030         (linux_nat_stopped_by_sw_breakpoint)
10031         (linux_nat_supports_stopped_by_sw_breakpoint)
10032         (linux_nat_stopped_by_hw_breakpoint)
10033         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
10034         (linux_nat_kill, linux_nat_mourn_inferior)
10035         (linux_nat_xfer_partial, linux_nat_thread_alive)
10036         (linux_nat_update_thread_list, linux_nat_pid_to_str)
10037         (linux_nat_thread_name, linux_child_pid_to_exec_file)
10038         (linux_child_static_tracepoint_markers_by_strid)
10039         (linux_nat_is_async_p, linux_nat_can_async_p)
10040         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
10041         (linux_nat_supports_multi_process)
10042         (linux_nat_supports_disable_randomization, linux_nat_async)
10043         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
10044         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
10045         (linux_nat_fileio_open, linux_nat_fileio_readlink)
10046         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
10047         methods of linux_nat_target.
10048         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
10049         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
10050         parameter.
10051         (check_stopped_by_watchpoint): Adjust.
10052         (linux_xfer_partial): Delete.
10053         (linux_target_install_ops, linux_target, linux_nat_add_target):
10054         Delete.
10055         (linux_nat_target::linux_nat_target): New.
10056         * linux-nat.h: Include "inf-ptrace.h".
10057         (linux_nat_target): New.
10058         (linux_target, linux_target_install_ops, linux_nat_add_target):
10059         Delete function declarations.
10060         (linux_target): Declare global.
10061         * linux-thread-db.c (thread_db_target): New.
10062         (thread_db_target::thread_db_target): New.
10063         (thread_db_ops): Delete.
10064         (the_thread_db_target): New.
10065         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
10066         (thread_db_update_thread_list, thread_db_pid_to_str)
10067         (thread_db_extra_thread_info)
10068         (thread_db_thread_handle_to_thread_info)
10069         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
10070         (thread_db_resume): Refactor as methods of thread_db_target.
10071         (init_thread_db_ops): Delete.
10072         (_initialize_thread_db): Remove reference to init_thread_db_ops.
10073         * x86-linux-nat.c: Don't include "linux-nat.h".
10074         (super_post_startup_inferior): Delete.
10075         (x86_linux_nat_target::~x86_linux_nat_target): New.
10076         (x86_linux_child_post_startup_inferior)
10077         (x86_linux_read_description, x86_linux_enable_btrace)
10078         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
10079         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
10080         methods of x86_linux_nat_target.
10081         (x86_linux_create_target): Delete.  Bits folded ...
10082         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
10083         pointer.
10084         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
10085         (x86_linux_nat_target): New class.
10086         (x86_linux_create_target): Delete.
10087         (x86_linux_add_target): Now takes a linux_nat_target pointer.
10088         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
10089         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
10090         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
10091         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
10092         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
10093         make extern.
10094         (x86_use_watchpoints): Delete.
10095         * x86-nat.h: Include "breakpoint.h" and "target.h".
10096         (x86_use_watchpoints): Delete.
10097         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
10098         (x86_stopped_by_watchpoint, x86_stopped_data_address)
10099         (x86_insert_watchpoint, x86_remove_watchpoint)
10100         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
10101         (x86_stopped_by_hw_breakpoint): New declarations.
10102         (x86_nat_target): New template class.
10103
10104         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
10105         (the_ppc_linux_nat_target): New.
10106         (ppc_linux_fetch_inferior_registers)
10107         (ppc_linux_can_use_hw_breakpoint)
10108         (ppc_linux_region_ok_for_hw_watchpoint)
10109         (ppc_linux_ranged_break_num_registers)
10110         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
10111         (ppc_linux_insert_mask_watchpoint)
10112         (ppc_linux_remove_mask_watchpoint)
10113         (ppc_linux_can_accel_watchpoint_condition)
10114         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
10115         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
10116         (ppc_linux_watchpoint_addr_within_range)
10117         (ppc_linux_masked_watch_num_registers)
10118         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
10119         (ppc_linux_read_description): Refactor as methods of
10120         ppc_linux_nat_target.
10121         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
10122
10123         * procfs.c (procfs_xfer_partial): Delete forward declaration.
10124         (procfs_target): New class.
10125         (the_procfs_target): New.
10126         (procfs_target): Delete function.
10127         (procfs_auxv_parse, procfs_attach, procfs_detach)
10128         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
10129         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
10130         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
10131         (procfs_create_inferior, procfs_update_thread_list)
10132         (procfs_thread_alive, procfs_pid_to_str)
10133         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
10134         (procfs_stopped_data_address, procfs_insert_watchpoint)
10135         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
10136         (proc_find_memory_regions, procfs_info_proc)
10137         (procfs_make_note_section): Refactor as methods of procfs_target.
10138         (_initialize_procfs): Adjust.
10139         * sol-thread.c (sol_thread_target): New class.
10140         (sol_thread_ops): Now a sol_thread_target.
10141         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
10142         (sol_thread_fetch_registers, sol_thread_store_registers)
10143         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
10144         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
10145         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
10146         (init_sol_thread_ops): Delete.
10147         (_initialize_sol_thread): Adjust.  Remove references to
10148         init_sol_thread_ops and complete_target_initialization.
10149
10150         * windows-nat.c (windows_nat_target): New class.
10151         (windows_fetch_inferior_registers)
10152         (windows_store_inferior_registers, windows_resume, windows_wait)
10153         (windows_attach, windows_detach, windows_pid_to_exec_file)
10154         (windows_files_info, windows_create_inferior)
10155         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
10156         (windows_close, windows_pid_to_str, windows_xfer_partial)
10157         (windows_get_tib_address, windows_get_ada_task_ptid)
10158         (windows_thread_name, windows_thread_alive): Refactor as
10159         windows_nat_target methods.
10160         (do_initial_windows_stuff): Adjust.
10161         (windows_target): Delete function.
10162         (_initialize_windows_nat): Adjust.
10163
10164         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
10165         (darwin_mourn_inferior, darwin_kill_inferior)
10166         (darwin_create_inferior, darwin_attach, darwin_detach)
10167         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
10168         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
10169         (darwin_supports_multi_process): Refactor as darwin_nat_target
10170         methods.
10171         (darwin_resume_to, darwin_files_info): Delete.
10172         (_initialize_darwin_inferior): Rename to ...
10173         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
10174         * darwin-nat.h: Include "inf-child.h".
10175         (darwin_nat_target): New class.
10176         (darwin_complete_target): Delete.
10177         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
10178         (darwin_target): New.
10179         (i386_darwin_fetch_inferior_registers)
10180         (i386_darwin_store_inferior_registers): Refactor as methods of
10181         darwin_nat_target.
10182         (darwin_complete_target): Delete, with ...
10183         (_initialize_i386_darwin_nat): ... bits factored out here.
10184
10185         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
10186         (the_alpha_linux_nat_target): New.
10187         (alpha_linux_register_u_offset): Refactor as
10188         alpha_linux_nat_target method.
10189         (_initialize_alpha_linux_nat): Adjust.
10190         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
10191         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
10192         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
10193         methods of linux_nat_trad_target.
10194         (linux_trad_target): Delete.
10195         * linux-nat-trad.h (linux_trad_target): Delete function.
10196         (linux_nat_trad_target): New class.
10197         * mips-linux-nat.c (mips_linux_nat_target): New class.
10198         (super_fetch_registers, super_store_registers, super_close):
10199         Delete.
10200         (the_mips_linux_nat_target): New.
10201         (mips64_linux_regsets_fetch_registers)
10202         (mips64_linux_regsets_store_registers)
10203         (mips64_linux_fetch_registers, mips64_linux_store_registers)
10204         (mips_linux_register_u_offset, mips_linux_read_description)
10205         (mips_linux_can_use_hw_breakpoint)
10206         (mips_linux_stopped_by_watchpoint)
10207         (mips_linux_stopped_data_address)
10208         (mips_linux_region_ok_for_hw_watchpoint)
10209         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
10210         (mips_linux_close): Refactor as methods of mips_linux_nat.
10211         (_initialize_mips_linux_nat): Adjust to C++ification.
10212
10213         * aix-thread.c (aix_thread_target): New class.
10214         (aix_thread_ops): Now an aix_thread_target.
10215         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
10216         (aix_thread_fetch_registers, aix_thread_store_registers)
10217         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
10218         (aix_thread_thread_alive, aix_thread_pid_to_str)
10219         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
10220         Refactor as methods of aix_thread_target.
10221         (init_aix_thread_ops): Delete.
10222         (_initialize_aix_thread): Remove references to init_aix_thread_ops
10223         and complete_target_initialization.
10224         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
10225         (rs6000_nat_target): New class.
10226         (the_rs6000_nat_target): New.
10227         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
10228         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
10229         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
10230         (super_create_inferior): Delete.
10231         (_initialize_rs6000_nat): Adjust to C++ification.
10232
10233         * arm-linux-nat.c (arm_linux_nat_target): New class.
10234         (the_arm_linux_nat_target): New.
10235         (arm_linux_fetch_inferior_registers)
10236         (arm_linux_store_inferior_registers, arm_linux_read_description)
10237         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
10238         (arm_linux_remove_hw_breakpoint)
10239         (arm_linux_region_ok_for_hw_watchpoint)
10240         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
10241         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
10242         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
10243         arm_linux_nat_target.
10244         (_initialize_arm_linux_nat): Adjust to C++ification.
10245
10246         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
10247         (the_aarch64_linux_nat_target): New.
10248         (aarch64_linux_fetch_inferior_registers)
10249         (aarch64_linux_store_inferior_registers)
10250         (aarch64_linux_child_post_startup_inferior)
10251         (aarch64_linux_read_description)
10252         (aarch64_linux_can_use_hw_breakpoint)
10253         (aarch64_linux_insert_hw_breakpoint)
10254         (aarch64_linux_remove_hw_breakpoint)
10255         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
10256         (aarch64_linux_region_ok_for_hw_watchpoint)
10257         (aarch64_linux_stopped_data_address)
10258         (aarch64_linux_stopped_by_watchpoint)
10259         (aarch64_linux_watchpoint_addr_within_range)
10260         (aarch64_linux_can_do_single_step): Refactor as methods of
10261         aarch64_linux_nat_target.
10262         (super_post_startup_inferior): Delete.
10263         (_initialize_aarch64_linux_nat): Adjust to C++ification.
10264
10265         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
10266         (the_hppa_linux_nat_target): New.
10267         (hppa_linux_fetch_inferior_registers)
10268         (hppa_linux_store_inferior_registers): Refactor as methods of
10269         hppa_linux_nat_target.
10270         (_initialize_hppa_linux_nat): Adjust to C++ification.
10271
10272         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
10273         (the_ia64_linux_nat_target): New.
10274         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
10275         (ia64_linux_stopped_data_address)
10276         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
10277         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
10278         ia64_linux_nat_target methods.
10279         (super_xfer_partial): Delete.
10280         (_initialize_ia64_linux_nat): Adjust to C++ification.
10281
10282         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
10283         (the_m32r_linux_nat_target): New.
10284         (m32r_linux_fetch_inferior_registers)
10285         (m32r_linux_store_inferior_registers): Refactor as
10286         m32r_linux_nat_target methods.
10287         (_initialize_m32r_linux_nat): Adjust to C++ification.
10288
10289         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
10290         (the_m68k_linux_nat_target): New.
10291         (m68k_linux_fetch_inferior_registers)
10292         (m68k_linux_store_inferior_registers): Refactor as
10293         m68k_linux_nat_target methods.
10294         (_initialize_m68k_linux_nat): Adjust to C++ification.
10295
10296         * s390-linux-nat.c (s390_linux_nat_target): New class.
10297         (the_s390_linux_nat_target): New.
10298         (s390_linux_fetch_inferior_registers)
10299         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
10300         (s390_insert_watchpoint, s390_remove_watchpoint)
10301         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
10302         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
10303         (s390_auxv_parse, s390_read_description): Refactor as methods of
10304         s390_linux_nat_target.
10305         (_initialize_s390_nat): Adjust to C++ification.
10306
10307         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
10308         (the_sparc_linux_nat_target): New.
10309         (_initialize_sparc_linux_nat): Adjust to C++ification.
10310         * sparc-nat.c (sparc_fetch_inferior_registers)
10311         (sparc_store_inferior_registers): Remove target_ops parameter.
10312         * sparc-nat.h (sparc_fetch_inferior_registers)
10313         (sparc_store_inferior_registers): Remove target_ops parameter.
10314         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
10315         (the_sparc64_linux_nat_target): New.
10316         (_initialize_sparc64_linux_nat): Adjust to C++ification.
10317
10318         * spu-linux-nat.c (spu_linux_nat_target): New class.
10319         (the_spu_linux_nat_target): New.
10320         (spu_child_post_startup_inferior, spu_child_post_attach)
10321         (spu_child_wait, spu_fetch_inferior_registers)
10322         (spu_store_inferior_registers, spu_xfer_partial)
10323         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
10324         methods.
10325         (_initialize_spu_nat): Adjust to C++ification.
10326
10327         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
10328         (the_tilegx_linux_nat_target): New.
10329         (fetch_inferior_registers, store_inferior_registers):
10330         Refactor as methods.
10331         (_initialize_tile_linux_nat): Adjust to C++ification.
10332
10333         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
10334         (the_xtensa_linux_nat_target): New.
10335         (xtensa_linux_fetch_inferior_registers)
10336         (xtensa_linux_store_inferior_registers): Refactor as
10337         xtensa_linux_nat_target methods.
10338         (_initialize_xtensa_linux_nat): Adjust to C++ification.
10339
10340         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
10341         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
10342         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
10343         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
10344         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
10345         (fbsd_stopped_by_sw_breakpoint)
10346         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
10347         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
10348         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
10349         (fbsd_post_startup_inferior, fbsd_post_attach)
10350         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
10351         (fbsd_set_syscall_catchpoint)
10352         (super_xfer_partial, super_resume, super_wait)
10353         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
10354         (fbsd_handle_debug_trap): Remove target_ops parameter.
10355         (fbsd_nat_add_target): Delete.
10356         * fbsd-nat.h: Include "inf-ptrace.h".
10357         (fbsd_nat_add_target): Delete.
10358         (USE_SIGTRAP_SIGINFO): Define.
10359         (fbsd_nat_target): New class.
10360
10361         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
10362         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
10363         (amd64bsd_target): Delete.
10364         * amd64-bsd-nat.h: New file.
10365         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
10366         "x86-bsd-nat.h".
10367         (amd64_fbsd_nat_target): New class.
10368         (the_amd64_fbsd_nat_target): New.
10369         (amd64fbsd_read_description): Refactor as method of
10370         amd64_fbsd_nat_target.
10371         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
10372         (_initialize_amd64fbsd_nat): Adjust to C++ification.
10373         * amd64-nat.h (amd64bsd_target): Delete function declaration.
10374         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
10375         (i386bsd_store_inferior_registers): Remove target_ops parameter.
10376         (i386bsd_target): Delete.
10377         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
10378         (i386bsd_fetch_inferior_registers)
10379         (i386bsd_store_inferior_registers): Declare.
10380         (i386_bsd_nat_target): New class.
10381         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
10382         (the_i386_fbsd_nat_target): New.
10383         (i386fbsd_resume, i386fbsd_read_description): Refactor as
10384         i386_fbsd_nat_target methods.
10385         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
10386         (_initialize_i386fbsd_nat): Adjust to C++ification.
10387         * x86-bsd-nat.c (super_mourn_inferior): Delete.
10388         (x86bsd_mourn_inferior, x86bsd_target): Delete.
10389         (_initialize_x86_bsd_nat): Adjust to C++ification.
10390         * x86-bsd-nat.h: Include "x86-nat.h".
10391         (x86bsd_target): Delete declaration.
10392         (x86bsd_nat_target): New class.
10393
10394         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
10395         (the_aarch64_fbsd_nat_target): New.
10396         (aarch64_fbsd_fetch_inferior_registers)
10397         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
10398         aarch64_fbsd_nat_target.
10399         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
10400         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
10401         (the_alpha_bsd_nat_target): New.
10402         (alphabsd_fetch_inferior_registers)
10403         (alphabsd_store_inferior_registers): Refactor as
10404         alpha_bsd_nat_target methods.
10405         (_initialize_alphabsd_nat): Refactor as methods of
10406         alpha_bsd_nat_target.
10407         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
10408         (the_amd64_nbsd_nat_target): New.
10409         (_initialize_amd64nbsd_nat): Adjust to C++ification.
10410         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
10411         (the_amd64_obsd_nat_target): New.
10412         (_initialize_amd64obsd_nat): Adjust to C++ification.
10413         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
10414         (the_arm_fbsd_nat_target): New.
10415         (arm_fbsd_fetch_inferior_registers)
10416         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
10417         (_initialize_arm_fbsd_nat): Refactor as methods of
10418         arm_fbsd_nat_target.
10419         (_initialize_arm_fbsd_nat): Adjust to C++ification.
10420         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
10421         (the_arm_netbsd_nat_target): New.
10422         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
10423         arm_netbsd_nat_target.
10424         (_initialize_arm_netbsd_nat): Adjust to C++ification.
10425         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
10426         (the_hppa_nbsd_nat_target): New.
10427         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
10428         hppa_nbsd_nat_target methods.
10429         (_initialize_hppanbsd_nat): Adjust to C++ification.
10430         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
10431         (the_hppa_obsd_nat_target): New.
10432         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
10433         methods of hppa_obsd_nat_target.
10434         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
10435         add_target.
10436         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
10437         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
10438         add_target.
10439         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
10440         (_initialize_i386obsd_nat): Use add_target.
10441         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
10442         (the_m68k_bsd_nat_target): New.
10443         (m68kbsd_fetch_inferior_registers)
10444         (m68kbsd_store_inferior_registers): Refactor as methods of
10445         m68k_bsd_nat_target.
10446         (_initialize_m68kbsd_nat): Adjust to C++ification.
10447         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
10448         (the_mips_fbsd_nat_target): New.
10449         (mips_fbsd_fetch_inferior_registers)
10450         (mips_fbsd_store_inferior_registers): Refactor as methods of
10451         mips_fbsd_nat_target.
10452         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
10453         add_target.
10454         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
10455         (the_mips_nbsd_nat_target): New.
10456         (mipsnbsd_fetch_inferior_registers)
10457         (mipsnbsd_store_inferior_registers): Refactor as methods of
10458         mips_nbsd_nat_target.
10459         (_initialize_mipsnbsd_nat): Adjust to C++ification.
10460         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
10461         (the_mips64_obsd_nat_target): New.
10462         (mips64obsd_fetch_inferior_registers)
10463         (mips64obsd_store_inferior_registers): Refactor as methods of
10464         mips64_obsd_nat_target.
10465         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
10466         add_target.
10467         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
10468         nbsd_nat_target.
10469         * nbsd-nat.h: Include "inf-ptrace.h".
10470         (nbsd_nat_target): New class.
10471         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
10472         (obsd_wait): Refactor as methods of obsd_nat_target.
10473         (obsd_add_target): Delete.
10474         * obsd-nat.h: Include "inf-ptrace.h".
10475         (obsd_nat_target): New class.
10476         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
10477         (the_ppc_fbsd_nat_target): New.
10478         (ppcfbsd_fetch_inferior_registers)
10479         (ppcfbsd_store_inferior_registers): Refactor as methods of
10480         ppc_fbsd_nat_target.
10481         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
10482         add_target.
10483         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
10484         (the_ppc_nbsd_nat_target): New.
10485         (ppcnbsd_fetch_inferior_registers)
10486         (ppcnbsd_store_inferior_registers): Refactor as methods of
10487         ppc_nbsd_nat_target.
10488         (_initialize_ppcnbsd_nat): Adjust to C++ification.
10489         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
10490         (the_ppc_obsd_nat_target): New.
10491         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
10492         methods of ppc_obsd_nat_target.
10493         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
10494         add_target.
10495         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
10496         (the_sh_nbsd_nat_target): New.
10497         (shnbsd_fetch_inferior_registers)
10498         (shnbsd_store_inferior_registers): Refactor as methods of
10499         sh_nbsd_nat_target.
10500         (_initialize_shnbsd_nat): Adjust to C++ification.
10501         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
10502         (inf_ptrace_xfer_partial): Delete.
10503         (sparc_xfer_partial, sparc_target): Delete.
10504         * sparc-nat.h (sparc_fetch_inferior_registers)
10505         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
10506         (sparc_target): Delete function declaration.
10507         (sparc_target): New template class.
10508         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
10509         (_initialize_sparcnbsd_nat): Adjust to C++ification.
10510         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
10511         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
10512         add_target.
10513         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
10514         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
10515         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
10516         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
10517         add_target.
10518         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
10519         (the_vax_bsd_nat_target): New.
10520         (vaxbsd_fetch_inferior_registers)
10521         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
10522         methods.
10523         (_initialize_vaxbsd_nat): Adjust to C++ification.
10524
10525         * bsd-kvm.c (bsd_kvm_target): New class.
10526         (bsd_kvm_ops): Now a bsd_kvm_target.
10527         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
10528         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
10529         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
10530         bsd_kvm_target.
10531         (bsd_kvm_return_one): Delete.
10532         (bsd_kvm_add_target): Adjust to C++ification.
10533
10534         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
10535         (nto_procfs_target_procfs): New classes.
10536         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
10537         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
10538         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
10539         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
10540         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
10541         (procfs_remove_hw_breakpoint, procfs_resume)
10542         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
10543         (procfs_kill_inferior, procfs_store_registers)
10544         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
10545         as methods of nto_procfs_target.
10546         (nto_procfs_ops): Now an nto_procfs_target_procfs.
10547         (nto_native_ops): Delete.
10548         (procfs_open, procfs_native_open): Delete.
10549         (nto_native_ops): Now an nto_procfs_target_native.
10550         (init_procfs_targets): Adjust to C++ification.
10551         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
10552         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
10553         Refactor as methods of nto_procfs_target.
10554
10555         * go32-nat.c (go32_nat_target): New class.
10556         (the_go32_nat_target): New.
10557         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
10558         (go32_store_registers, go32_xfer_partial, go32_files_info)
10559         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
10560         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
10561         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
10562         (go32_pid_to_str): Refactor as methods of go32_nat_target.
10563         (go32_target): Delete.
10564         (_initialize_go32_nat): Adjust to C++ification.
10565
10566         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
10567         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
10568         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
10569         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
10570         gnu_nat_target.
10571         (gnu_target): Delete.
10572         * gnu-nat.h (gnu_target): Delete.
10573         (gnu_nat_target): New class.
10574         * i386-gnu-nat.c (gnu_base_target): New.
10575         (i386_gnu_nat_target): New class.
10576         (the_i386_gnu_nat_target): New.
10577         (_initialize_i386gnu_nat): Adjust to C++ification.
10578
10579 2018-05-02  Pedro Alves  <palves@redhat.com>
10580
10581         * bfd-target.c (target_bfd_xclose): Rename to ...
10582         (target_bfd_close): ... this.
10583         (target_bfd_reopen): Adjust.
10584         * target.c (target_close): Remove references to to_xclose.
10585         * target.h (target_ops::to_xclose): Delete.
10586         (target_ops::to_close): Update comments.
10587
10588 2018-05-02  Pedro Alves  <palves@redhat.com>
10589
10590         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
10591         "linux-nat.h".
10592         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
10593         * inf-ptrace.c (inf_ptrace_register_u_offset)
10594         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
10595         (inf_ptrace_store_register, inf_ptrace_store_registers)
10596         (inf_ptrace_trad_target): Move to ...
10597         * linux-nat-trad.c: ... this new file.
10598         * linux-nat-trad.h: New file.
10599         * linux-nat.c (linux_target_install_ops): Make extern.
10600         (linux_trad_target): Delete.
10601         * linux-nat.h (linux_trad_target): Delete declaration.
10602         (linux_target_install_ops): Declare.
10603         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
10604         "linux-nat.h".
10605
10606 2018-05-02  Pedro Alves  <palves@redhat.com>
10607
10608         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10609         procfs_target/add_target here.
10610         * procfs.c (procfs_target): Make static.
10611         (_initialize_procfs): Call add_target here.
10612         * procfs.h (struct target_ops): Remove forward declaration.
10613         (procfs_target): Remove declaration.
10614         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
10615
10616 2018-05-02  Pedro Alves  <palves@redhat.com>
10617
10618         * procfs.c (procfs_stopped_by_watchpoint)
10619         (procfs_insert_watchpoint, procfs_remove_watchpoint)
10620         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
10621         Forward declare.
10622         (procfs_use_watchpoints): Delete, move contents...
10623         (procfs_target): ... here.
10624         * procfs.h (procfs_use_watchpoints): Delete declaration.
10625         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10626         procfs_use_watchpoints.
10627         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
10628         procfs_use_watchpoints.
10629
10630 2018-05-02  Tom Tromey  <tom@tromey.com>
10631
10632         PR python/20084:
10633         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
10634         and var_zuinteger_unlimited.
10635         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
10636         and PARAM_ZUINTEGER_UNLIMITED.
10637         (set_parameter_value): Handle var_zuinteger and
10638         var_zuinteger_unlimited.
10639         (add_setshow_generic): Likewise.
10640         (parmpy_init): Likewise.
10641
10642 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
10643
10644         PR rust/23124
10645         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
10646         pointer is not null before dereferencing it.
10647
10648 2018-04-30  Tom Tromey  <tom@tromey.com>
10649
10650         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
10651         is_mi_like_p.
10652
10653 2018-04-30  Tom Tromey  <tom@tromey.com>
10654
10655         * breakpoint.c (mention): Remove use of is_mi_like_p.
10656         (print_mention_ranged_breakpoint): Likewise.
10657         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
10658         of is_mi_like_p.
10659
10660 2018-04-30  Tom Tromey  <tom@tromey.com>
10661
10662         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
10663
10664 2018-04-30  Tom Tromey  <tom@tromey.com>
10665
10666         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
10667         (info_spu_event_command): Remove some uses of is_mi_like_p.
10668
10669 2018-04-30  Tom Tromey  <tom@tromey.com>
10670
10671         * python/py-framefilter.c (py_print_single_arg)
10672         (enumerate_locals, py_print_args, py_print_frame): Remove some
10673         uses of is_mi_like_p.
10674
10675 2018-04-30  Tom Tromey  <tom@tromey.com>
10676
10677         * ui-out.c: Update.
10678         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
10679         * ui-out.h (ui_out::is_mi_like_p): Now const.
10680         (ui_out::do_is_mi_like_p): Now const.
10681         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
10682
10683 2018-04-30  Tom Tromey  <tom@tromey.com>
10684
10685         * varobj.c (varobj_set_visualizer): Use new_reference.
10686         * python/python.c (gdbpy_decode_line): Use new_reference.
10687         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
10688         new_reference.
10689
10690 2018-04-30  Tom Tromey  <tom@tromey.com>
10691
10692         * varobj.c (install_new_value): Use new_reference.
10693         * value.h (value_incref): Return void.  Swap intro comment with
10694         value_decref.
10695         * value.c (set_value_parent): Use new_reference.
10696         (value_incref): Return void.  Update intro comment.
10697         (release_value): Use new_reference.
10698         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
10699
10700 2018-04-30  Tom Tromey  <tom@tromey.com>
10701
10702         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
10703         * gdb_bfd.h (new_bfd_ref): Remove.
10704         (gdb_bfd_open): Update comment.
10705         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
10706         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
10707         (gdb_bfd_fdopenr): Use new_reference.
10708         * exec.c (exec_file_attach): Use new_reference.
10709
10710 2018-04-30  Tom Tromey  <tom@tromey.com>
10711
10712         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
10713         method.
10714
10715 2018-04-30  Tom Tromey  <tom@tromey.com>
10716
10717         * jit.c (jit_read_code_entry): Use type_align.
10718         * i386-tdep.c (i386_gdbarch_init): Don't call
10719         set_gdbarch_long_long_align_bit.
10720         * gdbarch.sh: Remove long_long_align_bit.
10721         * gdbarch.c, gdbarch.h: Rebuild.
10722         * arc-tdep.c (arc_type_align): New function.
10723         (arc_gdbarch_init): Use arc_type_align.  Don't call
10724         set_gdbarch_long_long_align_bit.
10725
10726 2018-04-30  Tom Tromey  <tom@tromey.com>
10727
10728         * rust-lang.c (rust_type_alignment): Remove.
10729         (rust_composite_type): Use type_align.
10730
10731 2018-04-30  Tom Tromey  <tom@tromey.com>
10732
10733         * NEWS: Mention Type.align.
10734         * python/py-type.c (typy_get_alignof): New function.
10735         (type_object_getset): Add "alignof".
10736
10737 2018-04-30  Tom Tromey  <tom@tromey.com>
10738
10739         PR exp/17095:
10740         * NEWS: Update.
10741         * std-operator.def (UNOP_ALIGNOF): New operator.
10742         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
10743         New.
10744         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
10745         * c-lang.c (c_op_print_tab): Add alignof.
10746         * c-exp.y (ALIGNOF): New token.
10747         (exp): Add "ALIGNOF" production.
10748         (ident_tokens): Add _Alignof and alignof.
10749
10750 2018-04-30  Tom Tromey  <tom@tromey.com>
10751
10752         * i386-tdep.c (i386_type_align): New function.
10753         (i386_gdbarch_init): Update.
10754         * gdbarch.sh (type_align): New method.
10755         * gdbarch.c, gdbarch.h: Rebuild.
10756         * arch-utils.h (default_type_align): Declare.
10757         * arch-utils.c (default_type_align): New function.
10758         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
10759         (struct type) <align_log2>: New field.
10760         <instance_flags>: Now a bitfield.
10761         (TYPE_RAW_ALIGN): New macro.
10762         (type_align, type_raw_align, set_type_align): Declare.
10763         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
10764         functions.
10765         * dwarf2read.c (quirk_rust_enum): Set type alignment.
10766         (get_alignment, maybe_set_alignment): New functions.
10767         (read_structure_type, read_enumeration_type, read_array_type)
10768         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
10769         (read_subrange_type, read_base_type): Set type alignment.
10770
10771 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
10772
10773         * dwarf2read.c (read_index_from_section): Use bool.
10774
10775 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
10776
10777         PR gdb/22950
10778         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
10779         with #ifdef.
10780
10781 2018-04-29  John Reiser  <jreiser@BitWagon.com>
10782
10783         PR build/22873
10784         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
10785         last step, and do it atomically.
10786
10787 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
10788
10789         * compile/compile-c-types.c (convert_int, convert_float):
10790         Update for C FE v1.
10791
10792 2018-04-27  Tom Tromey  <tom@tromey.com>
10793
10794         PR rust/22545:
10795         * rust-lang.c (rust_inclusive_range_type_p): New function.
10796         (rust_range): Handle inclusive ranges.
10797         (rust_compute_range): Likewise.
10798         * rust-exp.y (struct rust_op) <inclusive>: New field.
10799         (DOTDOTEQ): New constant.
10800         (range_expr): Add "..=" productions.
10801         (operator_tokens): Add "..=" token.
10802         (ast_range): Add "inclusive" parameter.
10803         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
10804         ranges.
10805         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
10806         bounds values.
10807         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
10808         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
10809         Update comments.
10810         * expprint.c (print_subexp_standard): Handle new bounds values.
10811         (dump_subexp_body_standard): Likewise.
10812
10813 2018-04-27  Tom Tromey  <tom@tromey.com>
10814
10815         * configure: Rebuild.
10816         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
10817         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
10818         "OVERRIDE".
10819         (class symbol_needs_eval_context): Likewise.
10820         * dwarf2read.c (mock_mapped_index::symbol_name_count)
10821         (mock_mapped_index::symbol_name_at): Use "override".  Remove
10822         "virtual".
10823         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
10824         "override".
10825         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
10826         * aarch64-tdep.c (instruction_reader::read): Use "override".
10827         (instruction_reader_test::read): Likewise.
10828         * arm-tdep.c (instruction_reader::read): Use "override".
10829         (instruction_reader_thumb::read): Likewise.
10830
10831 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
10832
10833         PR remote/9665
10834         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
10835         instead of remote_send.
10836         (remote_send): Remove.
10837
10838 2018-04-26  Pedro Alves  <palves@redhat.com>
10839
10840         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
10841         find_function_start_sal instead of find_pc_line.
10842
10843 2018-04-26  Pedro Alves  <palves@redhat.com>
10844
10845         * breakpoint.c (set_breakpoint_location_function): Handle
10846         mst_data_gnu_ifunc.
10847         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
10848         * elfread.c (elf_symtab_read): Give data symbols with
10849         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
10850         (elf_rel_plt_read): Update comment.
10851         * linespec.c (convert_linespec_to_sals): Handle
10852         mst_data_gnu_ifunc.
10853         (minsym_found): Handle mst_data_gnu_ifunc.
10854         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
10855         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
10856         * parse.c (find_minsym_type_and_address): Handle
10857         mst_data_gnu_ifunc.
10858         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
10859         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
10860         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
10861         comment.
10862         <mst_data_gnu_ifunc>: New enumerator.
10863
10864 2018-04-26  Pedro Alves  <palves@redhat.com>
10865
10866         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
10867         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
10868         'want_trampoline' parameter by a lookup_msym_prefer parameter.
10869         Handle it.
10870         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
10871         (lookup_minimal_symbol_by_pc): Adjust.
10872         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
10873         (lookup_solib_trampoline_symbol_by_pc): Adjust.
10874         * minsyms.h (lookup_msym_prefer): New enum.
10875         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
10876         parameter by a lookup_msym_prefer parameter.
10877
10878 2018-04-26  Pedro Alves  <palves@redhat.com>
10879
10880         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
10881         ends in "@plt" instead of looking at the symbol's section.
10882
10883 2018-04-26  Pedro Alves  <palves@redhat.com>
10884
10885         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
10886         all references.
10887         (find_pc_partial_function_gnu_ifunc): Rename to ...
10888         (find_pc_partial_function): ... this, and remove references to
10889         'is_gnu_ifunc_p'.
10890         (find_pc_partial_function): Delete old implementation.
10891         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
10892
10893 2018-04-26  Pedro Alves  <palves@redhat.com>
10894
10895         * linespec.c (struct bound_minimal_symbol_search_key): New.
10896         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
10897         skip first line if we found a GNU ifunc minimal symbol by name.
10898         (compare_msymbols): Change parameters to work with a destructured
10899         lhs minsym.
10900         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
10901         functions.
10902
10903 2018-04-26  Pedro Alves  <palves@redhat.com>
10904
10905         * breakpoint.c (set_breakpoint_location_function): Don't resolve
10906         ifunc targets here.  Instead, if we have an ifunc minsym, use its
10907         address/name.
10908         (add_location_to_breakpoint): Store the minsym and the objfile in
10909         the breakpoint location.
10910         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
10911         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
10912         Record the minsym in the sal.
10913         * symtab.h (symtab_and_line) <msymbol>: New field.
10914
10915 2018-04-26  Pedro Alves  <palves@redhat.com>
10916
10917         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
10918         unless we actually resolved the ifunc.
10919
10920 2018-04-26  Pedro Alves  <palves@redhat.com>
10921
10922         * c-exp.y (variable production): Prefer ifunc minsyms over
10923         regular function symbols.
10924         * symtab.c (find_gnu_ifunc): New function.
10925         * minsyms.h (lookup_msym_prefer): New enum.
10926         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
10927         parameter by a lookup_msym_prefer parameter.
10928         * symtab.h (find_gnu_ifunc): New declaration.
10929
10930 2018-04-26  Pedro Alves  <palves@redhat.com>
10931
10932         * blockframe.c (find_gnu_ifunc_target_type): New function.
10933         (find_function_type): New.
10934         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
10935         return a value with a memory address.
10936         (eval_call): For calls to GNU ifunc functions, try to find the
10937         type of the target function from the type that the resolver
10938         returns.
10939         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
10940         symbols.
10941         * infcall.c (find_function_return_type): Delete.
10942         (find_function_addr): Add 'function_type' parameter.  For calls to
10943         GNU ifunc functions, try to find the type of the target function
10944         from the type that the resolver returns, and return it via
10945         FUNCTION_TYPE.
10946         (call_function_by_hand_dummy): Adjust to use the function type
10947         returned by find_function_addr.
10948         (find_function_addr): Add 'function_type' parameter and move
10949         description here.
10950         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
10951         declarations.
10952
10953 2018-04-26  Pedro Alves  <palves@redhat.com>
10954
10955         * c-exp.y (variable production): Skip finding an alias for ifunc
10956         symbols.
10957
10958 2018-04-26  Pedro Alves  <palves@redhat.com>
10959
10960         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
10961
10962 2018-04-25  Pedro Alves  <palves@redhat.com>
10963
10964         * infcmd.c (kill_command): Print the pid as string, not the whole
10965         thread's ptid.  Add comment.  s/has been killed/killed/ in output
10966         message.
10967         * remote.c (remote_detach_1): Print the pid as string, not the
10968         whole thread's ptid.
10969
10970 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
10971             Sergio Durigan Junior  <sergiodj@redhat.com>
10972             Pedro Alves  <palves@redhat.com>
10973
10974         * infcmd.c (kill_command): Print message when inferior has
10975         been killed.
10976         * inferior.c (print_inferior_events): Remove 'static'.  Set as
10977         '1'.
10978         (add_inferior): Improve message printed when
10979         'print_inferior_events' is on.
10980         (exit_inferior): Remove message printed when
10981         'print_inferior_events' is on.
10982         (detach_inferior): Improve message printed when
10983         'print_inferior_events' is on.
10984         (initialize_inferiors): Use 'add_inferior_silent' to set
10985         'current_inferior_'.
10986         * inferior.h (print_inferior_events): Declare here as
10987         'extern'.
10988         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
10989         '[Detaching...]' messages when 'print_inferior_events' is on.
10990         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
10991         as prefix/suffix for messages.  Remove periods.  Fix erroneous
10992         'Detaching after fork from child...', replace it by '... from
10993         parent...'.
10994         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
10995         prefix/suffix when printing 'Detaching...' messages.  Print
10996         them when 'print_inferior_events' is on.
10997         * remote.c (remote_detach_1): Print message when detaching
10998         from inferior and '!is_fork_parent'.
10999
11000 2018-04-24  Tom Tromey  <tom@tromey.com>
11001
11002         * cli-out.h: Reindent.
11003
11004 2018-04-24  Tom Tromey  <tom@tromey.com>
11005
11006         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
11007         (cli_ui_out::do_field_string): Use fputs_filtered.
11008         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
11009
11010 2018-04-23  Tom Tromey  <tom@tromey.com>
11011
11012         * guile/scm-frame.c (gdbscm_frame_read_var): Use
11013         gdb::unique_xmalloc_ptr.
11014
11015 2018-04-23  Tom Tromey  <tom@tromey.com>
11016
11017         * configure: Rebuild.
11018
11019 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
11020
11021         PR gdb/23095
11022         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
11023         prepare_for_testing.  Set normal_bp to r_debug_state if target
11024         is bsd.
11025
11026 2018-04-21  Pedro Alves  <palves@redhat.com>
11027             Rajendra SY  <rajendra.sy@gmail.com>
11028
11029         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
11030         * remote.c (extended_remote_attach): In all-stop mode, mark the
11031         thread as executing.
11032
11033 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
11034
11035         * thread.c (thread_apply_all_command): Fix comment.
11036         (thread_command): Fix comment.
11037
11038 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
11039
11040         * common/tdesc.h (tdesc_create_feature): Remove xml filename
11041         parameter.
11042         * features/aarch64-core.c (create_feature_aarch64_core):
11043         Regenerate.
11044         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
11045         Likewise.
11046         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
11047         Likewise.
11048         * features/i386/32bit-avx512.c
11049         (create_feature_i386_32bit_avx512): Likewise.
11050         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
11051         Likewise.
11052         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
11053         Likewise.
11054         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
11055         Likewise.
11056         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
11057         Likewise.
11058         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
11059         Likewise.
11060         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
11061         Likewise.
11062         * features/i386/64bit-avx512.c
11063         (create_feature_i386_64bit_avx512): Likewise.
11064         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
11065         Likewise.
11066         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
11067         Likewise.
11068         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
11069         Likewise.
11070         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
11071         Likewise.
11072         * features/i386/64bit-segments.c
11073         (create_feature_i386_64bit_segments): Likewise.
11074         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
11075         Likewise.
11076         * features/i386/x32-core.c
11077         (create_feature_i386_x32_core): Likewise.
11078         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
11079         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
11080         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
11081         * target-descriptions.c: In generated code, don't pass xml
11082         filename.
11083
11084 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11085
11086         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
11087         (print_xml_feature::visit_post): Likewise.
11088         (print_xml_feature::visit): Likewise.
11089         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
11090         (print_xml_feature): Add new class.
11091         * regformats/regdat.sh: Null xmltarget on feature targets.
11092         * target-descriptions.c (struct target_desc): Add xmltarget.
11093         (maintenance_check_tdesc_xml_convert): Add unittest function.
11094         (tdesc_get_features_xml): Add function to get xml.
11095         (maintenance_check_xml_descriptions): Test xml generation.
11096         * xml-tdesc.c (string_read_description_xml): Add function.
11097         * xml-tdesc.h (string_read_description_xml): Add declaration.
11098
11099 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11100
11101         * features/Makefile: Add feature marker to targets with new style
11102         target descriptions.
11103         * regformats/aarch64.dat: Regenerate.
11104         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
11105         * regformats/i386/amd64-avx-linux.dat: Likewise.
11106         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
11107         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
11108         * regformats/i386/amd64-linux.dat: Likewise.
11109         * regformats/i386/amd64-mpx-linux.dat: Likewise.
11110         * regformats/i386/amd64.dat: Likewise.
11111         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
11112         * regformats/i386/i386-avx-linux.dat: Likewise.
11113         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
11114         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
11115         * regformats/i386/i386-linux.dat: Likewise.
11116         * regformats/i386/i386-mmx-linux.dat: Likewise.
11117         * regformats/i386/i386-mpx-linux.dat: Likewise.
11118         * regformats/i386/i386.dat: Likewise.
11119         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
11120         * regformats/i386/x32-avx-linux.dat: Likewise.
11121         * regformats/i386/x32-linux.dat: Likewise.
11122         * regformats/tic6x-c62x-linux.dat: Likewise.
11123         * regformats/tic6x-c64x-linux.dat: Likewise.
11124         * regformats/tic6x-c64xp-linux.dat: Likewise.
11125         * regformats/regdat.sh: Parse feature marker.
11126
11127 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11128
11129         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
11130         (tdesc_osabi_name): Likewise.
11131         * target-descriptions.c (tdesc_architecture_name): Add new
11132         function.
11133         (tdesc_osabi_name): Likewise.
11134
11135 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11136
11137         * common/tdesc.c (tdesc_predefined_type): Move to here.
11138         (tdesc_named_type): Likewise.
11139         (tdesc_create_vector): Likewise.
11140         (tdesc_create_struct): Likewise.
11141         (tdesc_set_struct_size): Likewise.
11142         (tdesc_create_union): Likewise.
11143         (tdesc_create_flags): Likewise.
11144         (tdesc_create_enum): Likewise.
11145         (tdesc_add_field): Likewise.
11146         (tdesc_add_typed_bitfield): Likewise.
11147         (tdesc_add_bitfield): Likewise.
11148         (tdesc_add_flag): Likewise.
11149         (tdesc_add_enum_value): Likewise.
11150         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
11151         (struct tdesc_type_vector): Likewise.
11152         (struct tdesc_type_field): Likewise.
11153         (struct tdesc_type_with_fields): Likewise.
11154         (tdesc_create_enum): Add declaration.
11155         (tdesc_add_typed_bitfield): Likewise.
11156         (tdesc_add_enum_value): Likewise.
11157         * target-descriptions.c (tdesc_type_field): Move from here.
11158         (tdesc_type_builtin): Likewise.
11159         (tdesc_type_vector): Likewise.
11160         (tdesc_type_with_fields): Likewise.
11161         (tdesc_predefined_types): Likewise.
11162         (tdesc_named_type): Likewise.
11163         (tdesc_create_vector): Likewise.
11164         (tdesc_create_struct): Likewise.
11165         (tdesc_set_struct_size): Likewise.
11166         (tdesc_create_union): Likewise.
11167         (tdesc_create_flags): Likewise.
11168         (tdesc_create_enum): Likewise.
11169         (tdesc_add_field): Likewise.
11170         (tdesc_add_typed_bitfield): Likewise.
11171         (tdesc_add_bitfield): Likewise.
11172         (tdesc_add_flag): Likewise.
11173         (tdesc_add_enum_value): Likewise.
11174         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
11175         (tdesc_add_typed_bitfield): Likewise.
11176         (tdesc_add_enum_value): Likewise.
11177
11178 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11179
11180         * common/tdesc.c (tdesc_feature::accept): Move to here.
11181         (tdesc_feature::operator==): Likewise.
11182         (tdesc_create_reg): Likewise.
11183         * common/tdesc.h (tdesc_type_kind): Likewise.
11184         (struct tdesc_type): Likewise.
11185         (struct tdesc_feature): Likewise.
11186         * regformats/regdat.sh: Create a feature.
11187         * target-descriptions.c (tdesc_type_kind): Move from here.
11188         (tdesc_type): Likewise.
11189         (tdesc_type_up): Likewise.
11190         (tdesc_feature): Likewise.
11191         (tdesc_create_reg): Likewise.
11192
11193 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11194
11195         * Makefile.in: Add arch/tdesc.c
11196         * common/tdesc.c: New file.
11197         * common/tdesc.h (tdesc_element_visitor): Move to here.
11198         (tdesc_element): Likewise.
11199         (tdesc_reg): Likewise.
11200         (tdesc_reg_up): Likewise.
11201         * regformats/regdef.h (reg): Add offset to constructors.
11202         * target-descriptions.c (tdesc_element_visitor): Move from here.
11203         (tdesc_element): Likewise.
11204         (tdesc_reg): Likewise.
11205         (tdesc_reg_up): Likewise.
11206
11207 2018-04-17  Tom Tromey  <tom@tromey.com>
11208
11209         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
11210         discriminant field.
11211
11212 2018-04-17  Tom Tromey  <tom@tromey.com>
11213
11214         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
11215
11216 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11217
11218         * symtab.c (print_symbol_info): Skip printing filename and line
11219         number when `last' is NULL.
11220         (symtab_symbol_info): Use empty string instead of NULL for first
11221         invocation of print_symbol_info.
11222         (rbreak_command): Pass NULL to `last' parameter of
11223         print_symbol_info.
11224
11225 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
11226
11227         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
11228         instead of nullptr.
11229
11230 2018-04-16  Pedro Alves  <palves@redhat.com>
11231
11232         * MAINTAINERS (sh): Remove.
11233         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
11234         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
11235         (ALLDEPFILES): Remove sh64-tdep.c.
11236         * NEWS: Mentions that support for SH-5/SH64 is removed.
11237         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
11238         (sh*-*-openbsd*): Ditto.
11239         (sh64-*-elf*): Remove.
11240         (sh*): Remove.
11241         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
11242         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
11243         * sh-tdep.c: No longer include "sh64-tdep.h".
11244         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
11245         * sh64-tdep.c, sh64-tdep.h: Remove files.
11246
11247 2018-04-16  Pedro Alves  <palves@redhat.com>
11248
11249         * MAINTAINERS: Remove m88k.
11250         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
11251         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
11252         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
11253         * NEWS: Mention that support for m88k was removed.
11254         * configure.host (m88*-*-*): Remove support.
11255         * configure.nat (m88k-*-*): Remove support.
11256         * configure.tgt (m88*-*-openbsd*): Remove.
11257         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
11258
11259 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
11260
11261         * configure.tgt (x86_tobjs): New variable.
11262         (amd64_tobjs, i386_tobjs): Use it.
11263
11264 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11265
11266         * symtab.c (print_symbol_info): Precede the symbol definition by
11267         the line number when available.
11268         * NEWS: Advertise this enhancement.
11269
11270 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11271
11272         * NEWS (New options): announce set/show record btrace cpu.
11273         * btrace.c: Include record-btrace.h.
11274         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
11275         the vendor is unknown.
11276         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
11277         Maybe overwrite the btrace configuration's cpu.
11278         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
11279         (btrace_fetch): Add cpu parameter.  Update callers.
11280         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
11281         Maybe overwrite the btrace configuration's cpu.  Skip enabling
11282         errata workarounds if the vendor is unknown.
11283         * python/py-record-btrace.c: Include record-btrace.h.
11284         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
11285         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
11286         * record-btrace.c (record_btrace_cpu_state_kind): New.
11287         (record_btrace_cpu): New.
11288         (set_record_btrace_cpu_cmdlist): New.
11289         (record_btrace_get_cpu): New.
11290         (require_btrace_thread, record_btrace_info)
11291         (record_btrace_resume_thread): Call record_btrace_get_cpu.
11292         (cmd_set_record_btrace_cpu_none): New.
11293         (cmd_set_record_btrace_cpu_auto): New.
11294         (cmd_set_record_btrace_cpu): New.
11295         (cmd_show_record_btrace_cpu): New.
11296         (_initialize_record_btrace): Initialize set/show record btrace cpu
11297         commands.
11298         * record-btrace.h (record_btrace_get_cpu): New.
11299
11300 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11301
11302         * record.c (set_record_command): Fix typo in message.
11303
11304 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11305
11306         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
11307
11308 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11309
11310         * infrun.c (process_event_stop_test): Call
11311         gdbarch_in_indirect_branch_thunk.
11312         * gdbarch.sh (in_indirect_branch_thunk): New.
11313         * gdbarch.c: Regenerated.
11314         * gdbarch.h: Regenerated.
11315         * x86-tdep.h: New.
11316         * x86-tdep.c: New.
11317         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
11318         (HFILES_NO_SRCDIR): Add x86-tdep.h.
11319         (ALLDEPFILES): Add x86-tdep.c.
11320         * arch-utils.h (default_in_indirect_branch_thunk): New.
11321         * arch-utils.c (default_in_indirect_branch_thunk): New.
11322         * i386-tdep: Include x86-tdep.h.
11323         (i386_in_indirect_branch_thunk): New.
11324         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
11325         function.
11326         * amd64-tdep: Include x86-tdep.h.
11327         (amd64_in_indirect_branch_thunk): New.
11328         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
11329
11330 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
11331
11332         PR gdb/23053
11333         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
11334         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
11335         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
11336         regression.
11337
11338 2018-04-12  Tom Tromey  <tom@tromey.com>
11339
11340         * rust-lang.c (rust_print_struct_def): Remove univariant code.
11341         (rust_evaluate_subexp): Likewise.
11342
11343 2018-04-12  Pedro Alves  <palves@redhat.com>
11344
11345         * procfs.c (procfs_detach): Make forward declaration's prototype
11346         match definition's protototype.
11347         (proc_get_LDT_entry): Remove stale do_cleanups call.
11348
11349 2018-04-12  Pedro Alves  <palves@redhat.com>
11350
11351         * target.h (target_ops::to_has_exited): Delete.
11352         (target_has_exited): Delete.
11353         * target-delegates.c: Regenerate.
11354
11355 2018-04-11  Pedro Alves  <palves@redhat.com>
11356
11357         * target.c (fileio_fh_t::t): Add comment.
11358         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
11359         (target_fileio_close): Handle a NULL target.
11360         (invalidate_fileio_fh): New.
11361         (target_close): Call it.
11362         * remote.c (remote_hostio_send_command): No longer check whether
11363         remote_desc is open.
11364
11365 2018-04-11  Pedro Alves  <palves@redhat.com>
11366
11367         * target.c (fileio_fh_t): Make it a named struct instead of a
11368         typedef.
11369         (fileio_fh_t::is_closed): New method.
11370         (DEF_VEC_O (fileio_fh_t)): Remove.
11371         (fileio_fhandles): Now a std::vector.
11372         (is_closed_fileio_fh): Delete.
11373         (acquire_fileio_fd): Adjust.  Rename parameters.
11374         (release_fileio_fd): Adjust.
11375         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
11376         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
11377         (target_fileio_close): Adjust.
11378
11379 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
11380
11381         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
11382         index.
11383
11384 2018-04-10  Pedro Alves  <palves@redhat.com>
11385
11386         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
11387         (scoped_finish_thread_state): New class.
11388         * infcmd.c (run_command_1): Use it instead of finish_thread_state
11389         cleanup.
11390         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
11391         (fetch_inferior_event, normal_stop): Likewise.
11392         * thread.c (finish_thread_state_cleanup): Delete.
11393
11394 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11395             Pedro Alves  <palves@redhat.com>
11396
11397         * value.c: Include "selftest.h" and "common/array-view.h".
11398         (struct range) <operator ==>: New.
11399         (test_ranges_contain): New.
11400         (check_ranges_vector): New.
11401         (test_insert_into_bit_range_vector): New.
11402         (_initialize_values): Register selftests.
11403         * common/array-view.h (operator==, operator!=): New.
11404
11405 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11406
11407         * common/gdb_vecs.h (unordered_remove): Add overload that takes
11408         an iterator.
11409         * inline-frame.c: Include <algorithm>.
11410         (struct inline_state): Add constructor.
11411         (inline_state_s): Remove.
11412         (DEF_VEC_O(inline_state_s)): Remove.
11413         (inline_states): Change type to std::vector.
11414         (find_inline_frame_state): Adjust to std::vector.
11415         (allocate_inline_frame_state): Remove.
11416         (clear_inline_frame_state): Adjust to std::vector.
11417         (skip_inline_frames): Adjust to std::vector.
11418
11419 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11420
11421         * tracepoint.h (struct trace_state_variable): Add constructor.
11422         <name>: Change type to std::string.
11423         * tracepoint.c (tsv_s): Remove.
11424         (DEF_VEC_O(tsv_s)): Remove.
11425         (tvariables): Change to std::vector.
11426         (create_trace_state_variable): Adjust to std::vector.
11427         (find_trace_state_variable): Likewise.
11428         (find_trace_state_variable_by_number): Likewise.
11429         (delete_trace_state_variable): Likewise.
11430         (trace_variable_command): Adjust to std::string.
11431         (delete_trace_variable_command): Likewise.
11432         (tvariables_info_1): Adjust to std::vector.
11433         (save_trace_state_variables): Likewise.
11434         (start_tracing): Likewise.
11435         (merge_uploaded_trace_state_variables): Adjust to std::vector
11436         and std::string.
11437         * target.h (struct target_ops)
11438         <to_download_trace_state_variable>: Pass reference to
11439         trace_state_variable.
11440         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
11441         * target-delegates.c: Re-generate.
11442         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
11443         (mi_tsv_deleted): Likewise.
11444         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
11445         * remote.c (remote_download_trace_state_variable): Change
11446         pointer to reference and adjust.
11447         * make-target-delegates (parse_argtypes): Handle references.
11448         (write_function_header): Likewise.
11449         (munge_type): Likewise.
11450
11451 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11452
11453         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11454         string_view-selftests.c.
11455         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
11456         testsuite.
11457         * unittests/basic_string_view/cons/char/1.cc: Likewise.
11458         * unittests/basic_string_view/cons/char/2.cc: Likewise.
11459         * unittests/basic_string_view/cons/char/3.cc: Likewise.
11460         * unittests/basic_string_view/element_access/char/1.cc:
11461         Likewise.
11462         * unittests/basic_string_view/element_access/char/empty.cc:
11463         Likewise.
11464         * unittests/basic_string_view/element_access/char/front_back.cc:
11465         Likewise.
11466         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
11467         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
11468         Likewise.
11469         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
11470         Likewise.
11471         * unittests/basic_string_view/modifiers/swap/char/1.cc:
11472         Likewise.
11473         * unittests/basic_string_view/operations/compare/char/1.cc:
11474         Likewise.
11475         * unittests/basic_string_view/operations/compare/char/13650.cc:
11476         Likewise.
11477         * unittests/basic_string_view/operations/copy/char/1.cc:
11478         Likewise.
11479         * unittests/basic_string_view/operations/data/char/1.cc:
11480         Likewise.
11481         * unittests/basic_string_view/operations/find/char/1.cc:
11482         Likewise.
11483         * unittests/basic_string_view/operations/find/char/2.cc:
11484         Likewise.
11485         * unittests/basic_string_view/operations/find/char/3.cc:
11486         Likewise.
11487         * unittests/basic_string_view/operations/find/char/4.cc:
11488         Likewise.
11489         * unittests/basic_string_view/operations/rfind/char/1.cc:
11490         Likewise.
11491         * unittests/basic_string_view/operations/rfind/char/2.cc:
11492         Likewise.
11493         * unittests/basic_string_view/operations/rfind/char/3.cc:
11494         Likewise.
11495         * unittests/basic_string_view/operations/substr/char/1.cc:
11496         Likewise.
11497         * unittests/basic_string_view/operators/char/2.cc: Likewise.
11498         * unittests/string_view-selftests.c: New file.
11499
11500 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11501
11502         * unittests/basic_string_view/capacity/1.cc: New file.
11503         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
11504         * unittests/basic_string_view/cons/char/1.cc: New file.
11505         * unittests/basic_string_view/cons/char/2.cc: New file.
11506         * unittests/basic_string_view/cons/char/3.cc: New file.
11507         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
11508         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
11509         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
11510         * unittests/basic_string_view/element_access/char/1.cc: New file.
11511         * unittests/basic_string_view/element_access/char/2.cc: New file.
11512         * unittests/basic_string_view/element_access/char/empty.cc: New file.
11513         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
11514         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
11515         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
11516         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
11517         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
11518         * unittests/basic_string_view/include.cc: New file.
11519         * unittests/basic_string_view/inserters/char/1.cc: New file.
11520         * unittests/basic_string_view/inserters/char/2.cc: New file.
11521         * unittests/basic_string_view/inserters/char/3.cc: New file.
11522         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
11523         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
11524         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
11525         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
11526         * unittests/basic_string_view/literals/types.cc: New file.
11527         * unittests/basic_string_view/literals/values.cc: New file.
11528         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
11529         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
11530         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
11531         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
11532         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
11533         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
11534         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
11535         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
11536         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
11537         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
11538         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
11539         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
11540         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
11541         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
11542         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
11543         * unittests/basic_string_view/operations/data/char/1.cc: New file.
11544         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
11545         * unittests/basic_string_view/operations/find/char/1.cc: New file.
11546         * unittests/basic_string_view/operations/find/char/2.cc: New file.
11547         * unittests/basic_string_view/operations/find/char/3.cc: New file.
11548         * unittests/basic_string_view/operations/find/char/4.cc: New file.
11549         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
11550         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
11551         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
11552         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
11553         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
11554         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
11555         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
11556         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
11557         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
11558         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
11559         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
11560         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
11561         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
11562         * unittests/basic_string_view/operators/char/2.cc: New file.
11563         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
11564         * unittests/basic_string_view/range_access/char/1.cc: New file.
11565         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
11566         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
11567         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
11568         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
11569         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
11570         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
11571         * unittests/basic_string_view/requirements/typedefs.cc: New file.
11572         * unittests/basic_string_view/typedefs.cc: New file.
11573         * unittests/basic_string_view/types/1.cc: New file.
11574
11575 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11576
11577         * common/gdb_string_view.h: Remove libstdc++ implementation
11578         details, adjust to gdb reality.
11579         * common/gdb_string_view.tcc: Likewise.
11580         * cli/cli-script.c (struct string_view): Remove.
11581         (user_args) <m_args>: Change element type to gdb::string_view.
11582         (user_args::insert_args): Adjust.
11583
11584 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11585
11586         * common/gdb_string_view.h: New file.
11587         * common/gdb_string_view.tcc: New file.
11588
11589 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11590
11591         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
11592         * configure: Re-generate.
11593
11594 2018-04-09  Pedro Alves  <palves@redhat.com>
11595
11596         * gdbarch.sh: Include "observable.h" instead of "observer.h".
11597         (set_target_gdbarch): Call
11598         gdb::observers::architecture_changed.notify instead of
11599         observer_notify_architecture_changed.
11600
11601 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11602
11603         * tracepoint.c (struct current_traceframe_cleanup): Remove.
11604         (do_restore_current_traceframe_cleanup): Remove.
11605         (restore_current_traceframe_cleanup_dtor): Remove.
11606         (make_cleanup_restore_current_traceframe): Remove.
11607         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
11608         New.
11609         * tracepoint.h (struct scoped_restore_current_traceframe): New.
11610         * infrun.c (fetch_inferior_event): Use
11611         scoped_restore_current_traceframe.
11612
11613 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11614
11615         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
11616         Remove.
11617         <n_allocated_type_units>: Remove.
11618         <all_type_units>: Change to std::vector.
11619         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11620         to std::vector change.
11621         (dwarf2_per_objfile::get_cutu): Likewise.
11622         (dwarf2_per_objfile::get_tu): Likewise.
11623         (create_signatured_type_table_from_index): Likewise.
11624         (create_signatured_type_table_from_debug_names): Likewise.
11625         (dw2_symtab_iter_next): Likewise.
11626         (dw2_print_stats): Likewise.
11627         (dw2_expand_all_symtabs): Likewise.
11628         (dw2_expand_marked_cus): Likewise.
11629         (dw2_debug_names_iterator::next): Likewise.
11630         (dwarf2_initialize_objfile): Likewise.
11631         (add_signatured_type_cu_to_table): Likewise.
11632         (create_all_type_units): Likewise.
11633         (add_type_unit): Likewise.
11634         (struct tu_abbrev_offset): Add constructor.
11635         (build_type_psymtabs_1): Adjust to std::vector change.
11636         (print_tu_stats): Likewise.
11637         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
11638         (write_debug_names): Likewise.
11639
11640 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11641
11642         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
11643         Make an std::vector.
11644         <n_comp_units>: Remove.
11645         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11646         to std::vector change.
11647         (dwarf2_per_objfile::get_cutu): Likewise.
11648         (dwarf2_per_objfile::get_cu): Likewise.
11649         (create_cus_from_index): Likewise.
11650         (create_addrmap_from_index): Likewise.
11651         (create_addrmap_from_aranges): Likewise.
11652         (dwarf2_read_index): Likewise.
11653         (dw2_find_last_source_symtab): Likewise.
11654         (dw2_map_symtabs_matching_filename): Likewise.
11655         (dw2_symtab_iter_next): Likewise.
11656         (dw2_print_stats): Likewise.
11657         (dw2_expand_all_symtabs): Likewise.
11658         (dw2_expand_symtabs_with_fullname): Likewise.
11659         (dw2_expand_marked_cus): Likewise.
11660         (dw2_map_symbol_filenames): Likewise.
11661         (create_cus_from_debug_names): Likewise.
11662         (dwarf2_read_debug_names): Likewise.
11663         (dw2_debug_names_iterator::next): Likewise.
11664         (dwarf2_initialize_objfile): Likewise.
11665         (set_partial_user): Likewise.
11666         (dwarf2_build_psymtabs_hard): Likewise.
11667         (read_comp_units_from_section): Remove arguments, adjust to
11668         std::vector change.
11669         (create_all_comp_units): Adjust to std::vector and
11670         read_comp_units_from_section changes.
11671         (dwarf2_find_containing_comp_unit): Adjust to std::vector
11672         change.
11673         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
11674         (psyms_seen_size): Likewise.
11675         (write_gdbindex): Likewise.
11676         (write_debug_names): Likewise.
11677
11678 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11679
11680         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
11681         with dwarf2_per_objfile.
11682         (create_cus_from_index): Likewise.
11683         (create_signatured_type_table_from_index): Likewise.
11684         (dwarf2_read_index): Likewise.
11685         (dwarf2_initialize_objfile): Likewise.
11686         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
11687         per_cu rather than get_dwarf2_per_objfile.
11688
11689 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11690
11691         * dwarf2read.h (struct signatured_type): Forward declare.
11692         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
11693         New methods.
11694         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
11695         (dw2_get_cutu): ...this.
11696         (dwarf2_per_objfile::get_cu): Rename from...
11697         (dw2_get_cu): ...this.
11698         (dwarf2_per_objfile::get_tu): New.
11699         (create_addrmap_from_index): Adjust.
11700         (create_addrmap_from_aranges): Adjust.
11701         (dw2_find_last_source_symtab): Adjust.
11702         (dw2_map_symtabs_matching_filename): Adjust.
11703         (dw2_symtab_iter_next): Adjust.
11704         (dw2_print_stats): Adjust.
11705         (dw2_expand_all_symtabs): Adjust.
11706         (dw2_expand_symtabs_with_fullname): Adjust.
11707         (dw2_expand_marked_cus): Adjust.
11708         (dw_expand_symtabs_matching_file_matcher): Adjust.
11709         (dw2_map_symbol_filenames): Adjust.
11710         (dw2_debug_names_iterator::next): Adjust.
11711         (dwarf2_initialize_objfile): Adjust.
11712         (set_partial_user): Adjust.
11713         (dwarf2_build_psymtabs_hard): Adjust.
11714
11715 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11716
11717         * dwarf2read.c (create_signatured_type_table_from_debug_names):
11718         Remove unused variables.
11719         (dw2_map_symtabs_matching_filename): Likewise.
11720         (dwarf2_record_block_ranges): Likewise.
11721         (dwarf2_read_addr_index): Likewise.
11722         (follow_die_offset): Likewise.
11723
11724 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11725
11726         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
11727         to symbol_file_add_main.
11728
11729 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11730
11731         PR mi/22299
11732         * mi/mi-console.c (do_fputc_async_safe): New.
11733         (mi_console_file::write_async_safe): New.
11734         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
11735         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
11736         New.
11737         * ui-file.c (ui_file::putstrn): Adjust call to
11738         fputstrn_unfiltered.
11739         * utils.c (printchar): Replace do_fputs and do_fprintf
11740         parameters by do_fputc.
11741         (fputstr_filtered): Adjust call to printchar.
11742         (fputstr_unfiltered): Likewise.
11743         (fputstrn_filtered): Likewise.
11744         (fputstrn_unfiltered): Add do_fputc parameter, pass to
11745         printchar.
11746         * utils.h (do_fputc_ftype): New typedef.
11747         (fputstrn_unfiltered): Add do_fputc parameter.
11748
11749 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11750
11751         * regformats/i386/i386-avx.dat: Remove.
11752
11753 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11754
11755         PR gdb/22979
11756         * amd64-tdep.c (amd64_none_init_abi): New function.
11757         (amd64_x32_none_init_abi): New function.
11758         (_initialize_amd64_tdep): Register handlers for x86-64 and
11759         x64_32 with GDB_OSABI_NONE.
11760         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
11761         GDB_OSABI_NONE osabi.
11762
11763 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11764
11765         PR gdb/22980
11766         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
11767         GDB_OSABI_NONE.
11768         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
11769         * osabi.c (gdb_osabi_names): Add "unknown" entry.
11770
11771 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11772
11773         * common/byte-vector.h (char_vector): New type.
11774         * target.h (target_read_alloc): Return
11775         gdb::optional<byte_vector>.
11776         (target_read_stralloc): Return gdb::optional<char_vector>.
11777         (target_get_osdata): Return gdb::optional<char_vector>.
11778         * target.c (target_read_alloc_1): Templatize.  Replacement
11779         manual memory management with vector.
11780         (target_read_alloc): Change return type, adjust.
11781         (target_read_stralloc): Change return type, adjust.
11782         (target_get_osdata): Change return type, adjust.
11783         * auxv.c (struct auxv_info) <length>: Remove.
11784         <data>: Change type to gdb::optional<byte_vector>.
11785         (auxv_inferior_data_cleanup): Free auxv_info with delete.
11786         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
11787         (target_auxv_search): Adjust.
11788         (fprint_target_auxv): Adjust.
11789         * avr-tdep.c (avr_io_reg_read_command): Adjust.
11790         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
11791         (linux_make_corefile_notes): Adjust.
11792         * osdata.c (get_osdata): Adjust.
11793         * remote.c (remote_get_threads_with_qxfer): Adjust.
11794         (remote_memory_map): Adjust.
11795         (remote_traceframe_info): Adjust.
11796         (btrace_read_config): Adjust.
11797         (remote_read_btrace): Adjust.
11798         (remote_pid_to_exec_file): Adjust.
11799         * solib-aix.c (solib_aix_get_library_list): Adjust.
11800         * solib-dsbt.c (decode_loadmap): Don't free buf.
11801         (dsbt_get_initial_loadmaps): Adjust.
11802         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
11803         * solib-target.c (solib_target_current_sos): Adjust.
11804         * tracepoint.c (sdata_make_value): Adjust.
11805         * xml-support.c (xinclude_start_include): Adjust.
11806         (xml_fetch_content_from_file): Adjust.
11807         * xml-support.h (xml_fetch_another): Change return type.
11808         (xml_fetch_content_from_file): Change return type.
11809         * xml-syscall.c (xml_init_syscalls_info): Adjust.
11810         * xml-tdesc.c (file_read_description_xml): Adjust.
11811         (fetch_available_features_from_target): Change return type.
11812         (target_fetch_description_xml): Adjust.
11813         (target_read_description_xml): Adjust.
11814
11815 2018-04-06  Tom Tromey  <tom@tromey.com>
11816
11817         * value.c (~value): Update.
11818         (struct value) <contents>: Now unique_xmalloc_ptr.
11819         (value_contents_bits_eq, allocate_value_contents)
11820         (value_contents_raw, value_contents_all_raw)
11821         (value_contents_for_printing, value_contents_for_printing_const)
11822         (set_value_enclosing_type): Update.
11823
11824 2018-04-06  Tom Tromey  <tom@tromey.com>
11825
11826         * value.c (range_s): Remove typedef, VEC.
11827         (struct range): Add operator<.
11828         (range_lessthan): Remove.
11829         (ranges_contain): Change type.
11830         (~value): Update.
11831         (struct value) <unavailable, optimized_out>: Now std::vector.
11832         (value_entirely_available)
11833         (value_entirely_covered_by_range_vector)
11834         (value_entirely_unavailable, value_entirely_optimized_out):
11835         Update.
11836         (insert_into_bit_range_vector): Change argument type.
11837         (find_first_range_overlap): Likewise.
11838         (struct ranges_and_idx, value_contents_bits_eq)
11839         (require_not_optimized_out, require_available): Update.
11840         (ranges_copy_adjusted): Change argument types.
11841         (value_optimized_out, value_copy, value_fetch_lazy): Update.
11842
11843 2018-04-06  Tom Tromey  <tom@tromey.com>
11844
11845         * value.c (~value): Update.
11846         (struct value) <parent>: Now a value_ref_ptr.
11847         (value_parent, set_value_parent, value_address, value_copy):
11848         Update.
11849
11850 2018-04-06  Tom Tromey  <tom@tromey.com>
11851
11852         * value.c (struct value): Add constructor, destructor, and member
11853         initializers.
11854         (allocate_value_lazy, value_decref): Update.
11855
11856 2018-04-06  Tom Tromey  <tom@tromey.com>
11857
11858         * value.c (struct value) <released, next>: Remove.
11859         (all_values): Now a std::vector.
11860         (allocate_value_lazy): Update.
11861         (value_next): Remove.
11862         (value_mark, value_free_to_mark, release_value)
11863         (value_release_to_mark): Update.
11864
11865 2018-04-06  Tom Tromey  <tom@tromey.com>
11866
11867         * value.h (fetch_subexp_value, value_release_to_mark): Update.
11868         (free_value_chain): Remove.
11869         * value.c (free_value_chain): Remove.
11870         (value_release_to_mark): Return a std::vector.
11871         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
11872         std::vector.
11873         (check_condition): Update.
11874         * eval.c (fetch_subexp_value): Change "val_chain" to a
11875         std::vector.
11876         * breakpoint.c (update_watchpoint): Update.
11877         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
11878
11879 2018-04-06  Tom Tromey  <tom@tromey.com>
11880
11881         * value.h (free_all_values): Remove.
11882         * value.c (free_all_values): Remove.
11883
11884 2018-04-06  Tom Tromey  <tom@tromey.com>
11885
11886         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
11887         (value_history_chain, value_history_count): Remove.
11888         (value_history): New global.
11889         (record_latest_value, access_value_history, show_values)
11890         (preserve_values): Update.
11891
11892 2018-04-06  Tom Tromey  <tom@tromey.com>
11893
11894         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
11895         * varobj.c (varobj_set_display_format, varobj_set_value)
11896         (install_default_visualizer, construct_visualizer)
11897         (install_new_value, ~varobj, varobj_get_value_type)
11898         (my_value_of_variable, varobj_editable_p): Update.
11899         * c-varobj.c (c_describe_child, c_value_of_variable)
11900         (cplus_number_of_children, cplus_describe_child): Update.
11901         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
11902         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
11903         (ada_value_of_variable, ada_value_is_changeable_p): Update.
11904
11905 2018-04-06  Tom Tromey  <tom@tromey.com>
11906
11907         * printcmd.c (last_examine_address): Change type to
11908         value_ref_ptr.
11909         (do_examine, x_command): Update.
11910
11911 2018-04-06  Tom Tromey  <tom@tromey.com>
11912
11913         * value.c (release_value): Update.
11914         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
11915         (struct bpstats) <val>: Now a value_ref_ptr.
11916         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
11917         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
11918         (~watchpoint, print_it_watchpoint, watch_command_1)
11919         (invalidate_bp_value_on_memory_change): Update.
11920
11921 2018-04-06  Tom Tromey  <tom@tromey.com>
11922
11923         * varobj.c (varobj_clear_saved_item)
11924         (update_dynamic_varobj_children, install_new_value, ~varobj):
11925         Update.
11926         * value.h (value_incref): Move declaration earlier.
11927         (value_decref): Rename from value_free.
11928         (struct value_ref_policy): New.
11929         (value_ref_ptr): New typedef.
11930         (struct value_deleter): Remove.
11931         (gdb_value_up): Remove typedef.
11932         (release_value): Change return type.
11933         (release_value_or_incref): Remove.
11934         * value.c (set_value_parent): Update.
11935         (value_incref): Change return type.
11936         (value_decref): Rename from value_free.
11937         (value_free_to_mark, free_all_values, free_value_chain): Update.
11938         (release_value): Return value_ref_ptr.
11939         (release_value_or_incref): Remove.
11940         (record_latest_value, set_internalvar, clear_internalvar):
11941         Update.
11942         * stack.c (info_frame_command): Don't call value_free.
11943         * python/py-value.c (valpy_dealloc, valpy_new)
11944         (value_to_value_object): Update.
11945         * printcmd.c (do_examine): Update.
11946         * opencl-lang.c (lval_func_free_closure): Update.
11947         * mi/mi-main.c (register_changed_p): Don't call value_free.
11948         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
11949         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
11950         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
11951         value_free.
11952         * guile/scm-value.c (vlscm_free_value_smob)
11953         (vlscm_scm_from_value): Update.
11954         * frame.c (frame_register_unwind, frame_unwind_register_signed)
11955         (frame_unwind_register_unsigned, get_frame_register_bytes)
11956         (put_frame_register_bytes): Don't call value_free.
11957         * findvar.c (address_from_register): Don't call value_free.
11958         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
11959         * dwarf2loc.c (entry_data_value_free_closure)
11960         (value_of_dwarf_reg_entry, free_pieced_value_closure)
11961         (dwarf2_evaluate_loc_desc_full): Update.
11962         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
11963         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
11964         (~watchpoint, watch_command_1)
11965         (invalidate_bp_value_on_memory_change): Update.
11966         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
11967
11968 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
11969
11970         PR gdb/23022
11971         * warning.m4: Add -Wno-error=deprecated-register.
11972         * configure: Re-generate.
11973
11974 2018-04-05  Tom Tromey  <tom@tromey.com>
11975
11976         * linespec.h: Remove include of "vec.h".
11977
11978 2018-04-05  Tom Tromey  <tom@tromey.com>
11979
11980         * linespec.c (typep): Remove typedef.
11981         (find_methods, find_superclass_methods): Take a std::vector.
11982         (find_method): Use std::vector.
11983
11984 2018-04-05  Tom Tromey  <tom@tromey.com>
11985
11986         * utils.c (compare_strings): Remove.
11987         * utils.h (compare_strings): Remove.
11988         * objc-lang.h (find_imps): Update.
11989         * objc-lang.c (find_methods): Take a std::vector.
11990         (uniquify_strings, find_imps): Likewise.
11991         * linespec.c (find_methods): Take a std::vector.
11992         (decode_objc): Use std::vector.
11993         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
11994         a std::vector.
11995         (find_method, find_function_symbols): Use std::vector.
11996
11997 2018-04-05  Tom Tromey  <tom@tromey.com>
11998
11999         * completer.c (completion_tracker::completion_tracker): Remove
12000         cast.
12001         (completion_tracker::discard_completions): Likewise.
12002         * breakpoint.c (ambiguous_names_p): Remove cast.
12003         * ada-lang.c (_initialize_ada_language): Remove cast.
12004         * utils.h (streq): Update.
12005         (streq_hash): Add new declaration.
12006         * utils.c (streq): Return bool.
12007         (streq_hash): New function.
12008
12009 2018-04-05  Tom Tromey  <tom@tromey.com>
12010
12011         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
12012         Remove a string copy.
12013
12014 2018-04-05  Tom Tromey  <tom@tromey.com>
12015
12016         * linespec.c (filter_results): Use std::vector.
12017         (decode_line_2, decode_line_full): Update.
12018
12019 2018-04-05  Tom Tromey  <tom@tromey.com>
12020
12021         * linespec.c (canonical_to_fullform): Return std::string.
12022         (filter_results): Update.
12023         (struct decode_line_2_item): Add constructor.
12024         <fullform, displayform>: Now std::string.
12025         (decode_line_2_compare_items): Now a std::sort comparator.
12026         (decode_line_2): Update.
12027
12028 2018-04-05  Tom Tromey  <tom@tromey.com>
12029
12030         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
12031         (unexpected_linespec_error): Update.
12032         (linespec_parse_basic, parse_linespec): Update.
12033
12034 2018-04-05  Tom Tromey  <tom@tromey.com>
12035
12036         * linespec.c (linespec_parse_basic): Reindent.
12037
12038 2018-04-05  Tom Tromey  <tom@tromey.com>
12039
12040         * minsyms.h (iterate_over_minimal_symbols): Update.
12041         * minsyms.c (iterate_over_minimal_symbols): Take a
12042         gdb::function_view.
12043         * linespec.c (struct collect_minsyms): Remove.
12044         (compare_msyms): Now a std::sort comparator.
12045         (add_minsym): Add parameters.
12046         (search_minsyms_for_name): Update.  Use std::vector.
12047
12048 2018-04-03  Tom Tromey  <tom@tromey.com>
12049
12050         * mipsread.c (read_alphacoff_dynamic_symtab): Use
12051         gdb::byte_vector.
12052
12053 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
12054
12055         * MAINTAINERS (Write After Approval): Add Weimin Pan.
12056
12057 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
12058
12059         PR gdb/16959
12060         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
12061         printing static type.
12062
12063 2018-04-01  Tom Tromey  <tom@tromey.com>
12064
12065         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
12066         (rs6000_xfer_shared_libraries): Update.
12067
12068 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
12069
12070         * common/gdb_vecs.h (char_ptr): Remove.
12071         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
12072
12073 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
12074
12075         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
12076         with std::vector.
12077         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
12078
12079 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
12080
12081         * tracepoint.h (struct uploaded_tp): Initialize fields.
12082         <actions, step_actions, cmd_strings>: Change type to
12083         std::vector<char *>.
12084         * tracepoint.c (get_uploaded_tp): Allocate with new.
12085         (free_uploaded_tps): Free with delete.
12086         (parse_tracepoint_definition): Adjust to std::vector change.
12087         * breakpoint.c (read_uploaded_action): Likewise.
12088         (create_tracepoint_from_upload): Likewise.
12089         * ctf.c (ctf_write_uploaded_tp): Likewise.
12090         (SET_ARRAY_FIELD): Likewise.
12091         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
12092
12093 2018-03-30  Tom Tromey  <tom@tromey.com>
12094
12095         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
12096         std::unique_ptr.
12097         (svr4_keep_data_in_core): Update.
12098         (svr4_read_so_list): Update.
12099
12100 2018-03-30  Tom Tromey  <tom@tromey.com>
12101
12102         * windows-nat.c (handle_output_debug_string, handle_exception):
12103         Update.
12104         * target.h (target_read_string): Update.
12105         * target.c (target_read_string): Change "string" to
12106         unique_xmalloc_ptr.
12107         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
12108         Update.
12109         * solib-frv.c (frv_current_sos): Update.
12110         * solib-dsbt.c (dsbt_current_sos): Update.
12111         * solib-darwin.c (darwin_current_sos): Update.
12112         * linux-thread-db.c (inferior_has_bug): Update.
12113         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
12114         Update.  Remove alloca.
12115         * ada-lang.c (ada_main_name): Update.
12116
12117 2018-03-30  Tom Tromey  <tom@tromey.com>
12118
12119         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
12120         (struct dwo_file_deleter): New.
12121         (dwo_file_up): New typedef.
12122         (open_and_init_dwo_file): Use dwo_file_up.
12123         (free_dwo_file_cleanup): Remove.
12124
12125 2018-03-30  Tom Tromey  <tom@tromey.com>
12126
12127         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
12128         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
12129
12130 2018-03-30  Tom Tromey  <tom@tromey.com>
12131
12132         * dwarf2read.c (class free_cached_comp_units): New class.
12133         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
12134         (free_cached_comp_units): Remove function.
12135
12136 2018-03-30  Tom Tromey  <tom@tromey.com>
12137
12138         * utils.h (make_cleanup_unpush_target): Remove.
12139         * inf-ptrace.c (struct target_unpusher): New.
12140         (target_unpush_up) New typedef.
12141         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
12142         target_unpush_up.
12143         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
12144
12145 2018-03-27  Tom Tromey  <tom@tromey.com>
12146
12147         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
12148
12149 2018-03-27  Pedro Alves  <palves@redhat.com>
12150             Tom Tromey  <tom@tromey.com>
12151
12152         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
12153         destructor.  Now a class.
12154         (gdb_readline_wrapper_cleanup): Remove function.
12155         (gdb_readline_wrapper): Remove cleanups.
12156
12157 2018-03-27  Tom Tromey  <tom@tromey.com>
12158
12159         * typeprint.h (struct type_print_options) <local_typedefs,
12160         global_typedefs>: Remove "struct" keyword.
12161         (class typedef_hash_table): New class.
12162         (recursively_update_typedef_hash, add_template_parameters)
12163         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
12164         (find_typedef_in_hash): Don't declare.
12165         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
12166         (typedef_hash_table::recursively_update): Rename from
12167         recursively_update_typedef_hash.  Now a member.
12168         (typedef_hash_table::add_template_parameters): Rename from
12169         add_template_parameters.  Now a member.
12170         (typedef_hash_table::typedef_hash_table): Now a constructor;
12171         rename from create_typedef_hash.
12172         (typedef_hash_table::~typedef_hash_table): Now a destructor;
12173         rename from free_typedef_hash.
12174         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
12175         (do_free_global_table): Remove.
12176         (typedef_hash_table::typedef_hash_table): New constructor; renamed
12177         from copy_type_recursive.
12178         (create_global_typedef_table): Remove.
12179         (typedef_hash_table::find_global_typedef): Now a member of
12180         typedef_hash_table.
12181         (typedef_hash_table::find_typedef): Rename from
12182         find_typedef_in_hash; now a member.
12183         (whatis_exp): Update.
12184         * extension.h (struct ext_lang_type_printers): Add constructor and
12185         destructor.
12186         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
12187         declare.
12188         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
12189         Now a constructor; rename from start_ext_lang_type_printers.
12190         (ext_lang_type_printers): Now a destructor; rename from
12191         free_ext_lang_type_printers.
12192         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
12193         Update.
12194         (c_type_print_base_struct_union): Update.  Remove cleanups.
12195
12196 2018-03-27  Tom Tromey  <tom@tromey.com>
12197
12198         * dwarf-index-write.c: Include <cmath>.
12199
12200 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
12201
12202         * NEWS: Add entry describing new "set|show varsize-limit" command.
12203         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
12204         command.
12205         * printcmd.c (_initialize_printcmd): Add "set var" alias of
12206         "set variable".
12207
12208 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
12209
12210         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
12211         dwarf-index-write.c
12212         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
12213         * dwarf-index-common.c: New file.
12214         * dwarf-index-common.h: New file.
12215         * dwarf-index-write.c: New file.
12216         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
12217         (struct dwarf2_section_info): Move from here.
12218         (dwarf2_section_info_def): Likewise.
12219         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
12220         (offset_type): Likewise.
12221         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
12222         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
12223         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
12224         (byte_swap): Likewise.
12225         (MAYBE_SWAP): Likewise.
12226         (dwarf2_per_cu_ptr): Likewise.
12227         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
12228         (struct tu_stats): Likewise.
12229         (struct dwarf2_per_objfile): Likewise.
12230         (struct dwarf2_per_cu_data): Likewise.
12231         (struct signatured_type): Likewise.
12232         (sig_type_ptr): Likewise.
12233         (DEF_VEC_P (sig_type_ptr)): Likewise.
12234         (INDEX4_SUFFIX): Likewise.
12235         (INDEX5_SUFFIX): Likewise.
12236         (DEBUG_STR_SUFFIX): Likewise.
12237         (dwarf2_read_section): Make non-static.
12238         (mapped_index_string_hash): Move from here.
12239         (dwarf5_djb_hash): Likewise.
12240         (file_write): Likewise.
12241         (class data_buf): Likewise.
12242         (struct symtab_index_entry): Likewise.
12243         (struct mapped_symtab): Likewise.
12244         (find_slot): Likewise.
12245         (hash_expand): Likewise.
12246         (add_index_entry): Likewise.
12247         (uniquify_cu_indices): Likewise.
12248         (class c_str_view): Likewise.
12249         (class c_str_view_hasher): Likewise.
12250         (class vector_hasher): Likewise.
12251         (write_hash_table): Likewise.
12252         (psym_index_map): Likewise.
12253         (struct addrmap_index_data): Likewise.
12254         (add_address_entry): Likewise.
12255         (add_address_entry_worker): Likewise.
12256         (write_address_map): Likewise.
12257         (symbol_kind): Likewise.
12258         (write_psymbols): Likewise.
12259         (struct signatured_type_index_data): Likewise.
12260         (write_one_signatured_type): Likewise.
12261         (recursively_count_psymbols): Likewise.
12262         (recursively_write_psymbols): Likewise.
12263         (class debug_names): Likewise.
12264         (check_dwarf64_offsets): Likewise.
12265         (psyms_seen_size): Likewise.
12266         (write_gdbindex): Likewise.
12267         (write_debug_names): Likewise.
12268         (assert_file_size): Likewise.
12269         (write_psymtabs_to_index): Likewise.
12270         (save_gdb_index_command): Likewise.
12271         (_initialize_dwarf2_read): Don't register the "save gdb-index"
12272         command.
12273         * dwarf2read.h: New file.
12274
12275 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
12276
12277         PR gdb/22670
12278         * dwarf2read.c (dwarf2_physname): Do not return the demangled
12279         symbol name if the CU's language stores symbol names in linkage
12280         format.
12281         * language.h (struct language_defn)
12282         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
12283         all instances of this struct.
12284
12285 2018-03-26  Tom Tromey  <tom@tromey.com>
12286
12287         * stack.c (backtrace_command_1): Remove verbose code.
12288
12289 2018-03-26  Tom Tromey  <tom@tromey.com>
12290
12291         * python/py-framefilter.c (py_print_type): Don't catch
12292         exceptions.  Return void.
12293         (py_print_value): Likewise.
12294         (py_print_single_arg): Likewise.
12295         (enumerate_args): Don't catch exceptions.
12296         (py_print_args): Likewise.
12297         (py_print_frame): Likewise.
12298         (gdbpy_apply_frame_filter): Catch exceptions here.
12299
12300 2018-03-26  Tom Tromey  <tom@tromey.com>
12301
12302         * stack.c (_initialize_stack): Remove trailing newlines from help
12303         text.  Add "Usage" line to "backtrace" help.
12304
12305 2018-03-26  Tom Tromey  <tom@tromey.com>
12306
12307         PR python/16486:
12308         * python/py-framefilter.c (py_print_args): Call wrap_hint.
12309
12310 2018-03-26  Tom Tromey  <tom@tromey.com>
12311
12312         * python/py-framefilter.c (py_print_single_arg): Return
12313         EXT_LANG_BT_ERROR from catch.
12314
12315 2018-03-26  Tom Tromey  <tom@tromey.com>
12316
12317         PR backtrace/15584:
12318         * stack.c (backtrace_command_1): Move some code into no-filters
12319         "if".
12320
12321 2018-03-26  Tom Tromey  <tom@tromey.com>
12322
12323         * python/py-framefilter.c (throw_quit_or_print_exception): New
12324         function.
12325         (gdbpy_apply_frame_filter): Use it.
12326
12327 2018-03-26  Tom Tromey  <tom@tromey.com>
12328
12329         PR cli/17716:
12330         * python/py-framefilter.c (py_print_type, py_print_value)
12331         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
12332         RETURN_MASK_ERROR.
12333
12334 2018-03-26  Tom Tromey  <tom@tromey.com>
12335
12336         * python/py-framefilter.c (enumerate_args): Use
12337         gdb::unique_xmalloc_ptr.
12338
12339 2018-03-26  Tom Tromey  <tom@tromey.com>
12340
12341         * python/py-framefilter.c (py_print_frame): Return
12342         EXT_LANG_BT_OK.
12343         (gdbpy_apply_frame_filter): Update comment.
12344         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
12345         Remove.
12346         <EXT_LANG_BT_NO_FILTERS>: Change value.
12347
12348 2018-03-26  Tom Tromey  <tom@tromey.com>
12349
12350         PR backtrace/15582:
12351         * stack.c (backtrace_command): Parse "hide" argument.
12352         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
12353         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
12354         constant.
12355
12356 2018-03-26  Tom Tromey  <tom@tromey.com>
12357
12358         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
12359         add "flags".
12360         (backtrace_command): Remove "fulltrace", add "flags".
12361
12362 2018-03-26  Tom Tromey  <tom@tromey.com>
12363
12364         * stack.c (backtrace_command): Rewrite command line parsing.
12365
12366 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
12367
12368         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
12369
12370 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
12371
12372         * filename-seen-cache.h: Add include guard.
12373
12374 2018-03-26  Keith Seitz  <keiths@redhat.com>
12375
12376         * symfile.c (place_section): Remove "struct" from section_addr_info
12377         in comment.
12378         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
12379         "struct" keyword from section_addr_info.
12380
12381 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
12382
12383         * regformats/regdef.h (reg): Add constructors.
12384
12385 2018-03-25  Pedro Alves  <palves@redhat.com>
12386
12387         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
12388         if then/else bodies in var_func_name extraction.
12389
12390 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
12391
12392         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
12393         lookup_minimal_symbol() to find symbol entry.
12394         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
12395
12396 2018-03-23  Keith Seitz  <keiths@redhat.com>
12397
12398         PR c++/22968
12399         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
12400         nested type definitions for C++, too.
12401
12402 2018-03-23  Tom Tromey  <tom@tromey.com>
12403
12404         * machoread.c (struct oso_el): Add a constructor.  Don't define as
12405         a typedef.
12406         (macho_register_oso): Remove.
12407         (macho_symtab_read): Take a std::vector.
12408         (oso_el_compare_name): Now a std::sort comparator.
12409         (macho_symfile_read_all_oso): Take a std::vector.
12410         (macho_symfile_read): Use std::vector.  Remove cleanups.
12411
12412 2018-03-22  Tom Tromey  <tom@tromey.com>
12413
12414         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
12415         (record_full_goto_bookmark): Use std::string.
12416
12417 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12418
12419         PR tdep/18295
12420         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
12421         a single mask.
12422
12423 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12424
12425         * rs6000-tdep.c (store_insn_p): New function.
12426         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
12427         and cr_reg to their unshifted values. Use store_insn_p to
12428         match LR saves using either R1 or fdata->alloca_reg. Use
12429         store_insn_p to match CR saves. Set alloca_reg_offset
12430         when alloca_reg and framep are set. Remove lr_reg shift
12431         when assigning to fdata->lr_register.
12432
12433 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12434
12435         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
12436         command line args instead of emitting a warning.
12437
12438 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
12439
12440         * tracepoint.h (struct static_tracepoint_marker): Initialize
12441         fields, define default constructor, move constructor and move
12442         assignment, disable the rest.
12443         <str_id, extra>: Make std::string.
12444         (release_static_tracepoint_marker): Remove.
12445         (free_current_marker): Remove.
12446         * tracepoint.c (free_current_marker): Remove.
12447         (parse_static_tracepoint_marker_definition): Adjust to
12448         std::string, use new hex2str overload.
12449         (release_static_tracepoint_marker): Remove.
12450         (print_one_static_tracepoint_marker): Get marker by reference
12451         and adjust to std::string.
12452         (info_static_tracepoint_markers_command): Adjust to std::vector
12453         changes
12454         * target.h (static_tracepoint_marker_p): Remove typedef.
12455         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
12456         (struct target_ops) <to_static_tracepoint_marker_at>: Return
12457         bool.
12458         <to_static_tracepoint_markers_by_strid>: Return std::vector.
12459         * target-debug.h
12460         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
12461         (target_debug_print_std_vector_static_tracepoint_marker): New.
12462         (target_debug_print_struct_static_tracepoint_marker_p): Rename
12463         to...
12464         (target_debug_print_static_tracepoint_marker_p): ... this.
12465         * target-delegates.c: Re-generate.
12466         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
12467         Make std::string.
12468         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
12469         (decode_static_tracepoint_spec): Adjust to std::vector.
12470         (tracepoint_print_one_detail): Adjust to std::string.
12471         (strace_marker_decode_location): Adjust to std::string.
12472         (update_static_tracepoint): Adjust to std::string, remove call
12473         to release_static_tracepoint_marker.
12474         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
12475         Adjust to std::vector.
12476         * remote.c (remote_static_tracepoint_marker_at): Return bool.
12477         (remote_static_tracepoint_markers_by_strid): Adjust to
12478         std::vector.
12479         * common/rsp-low.h (hex2str): New overload with explicit count
12480         of bytes.
12481         * common/rsp-low.c (hex2str): New overload with explicit count
12482         of bytes.
12483         * unittests/rsp-low-selftests.c (test_hex2str): New function.
12484         (_initialize_rsp_low_selftests): Add test_hex2str test.
12485         * unittests/tracepoint-selftests.c
12486         (test_parse_static_tracepoint_marker_definition): Adjust to
12487         std::string.
12488
12489 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
12490
12491         * tracepoint.c (parse_static_tracepoint_marker_definition):
12492         Consider case where the definition is followed by more
12493         definitions.
12494         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12495         tracepoint-selftests.c.
12496         * unittests/tracepoint-selftests.c: New.
12497
12498 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12499
12500         * MAINTAINERS (Write After Approval): Add Pedro Franco de
12501         Carvalho.
12502
12503 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
12504
12505         * symtab.c (find_pc_sect_line): fixed indentation.
12506
12507 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
12508
12509         * symtab.c (find_pc_sect_line): now uses binary search.
12510
12511 2018-03-19  Tom Tromey  <tom@tromey.com>
12512
12513         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
12514         "IDENT" production.
12515
12516 2018-03-19  Pedro Alves  <palves@redhat.com>
12517             Tom Tromey  <tom@tromey.com>
12518
12519         * unittests/observable-selftests.c: New file.
12520         * common/observable.h: New file.
12521         * observable.h: New file.
12522         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
12523         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
12524         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
12525         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
12526         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
12527         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
12528         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
12529         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
12530         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
12531         python/py-breakpoint.c, python/py-finishbreakpoint.c,
12532         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
12533         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
12534         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
12535         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
12536         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
12537         tui/tui-interp.c, valops.c: Update all users.
12538         * tui/tui-hooks.c (tui_bp_created_observer)
12539         (tui_bp_deleted_observer, tui_bp_modified_observer)
12540         (tui_inferior_exit_observer, tui_before_prompt_observer)
12541         (tui_normal_stop_observer, tui_register_changed_observer):
12542         Remove.
12543         (tui_observers_token): New global.
12544         (attach_or_detach, tui_attach_detach_observers): New functions.
12545         (tui_install_hooks, tui_remove_hooks): Use
12546         tui_attach_detach_observers.
12547         * record-btrace.c (record_btrace_thread_observer): Remove.
12548         (record_btrace_thread_observer_token): New global.
12549         * observer.sh: Remove.
12550         * observer.c: Rename to observable.c.
12551         * observable.c (namespace gdb_observers): Define new objects.
12552         (observer_debug): Move into gdb_observers namespace.
12553         (struct observer, struct observer_list, xalloc_observer_list_node)
12554         (xfree_observer_list_node, generic_observer_attach)
12555         (generic_observer_detach, generic_observer_notify): Remove.
12556         (_initialize_observer): Update.
12557         Don't include observer.inc.
12558         * Makefile.in (generated_files): Remove observer.h, observer.inc.
12559         (clean mostlyclean): Likewise.
12560         (observer.h, observer.inc): Remove targets.
12561         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
12562         (COMMON_SFILES): Use observable.c, not observer.c.
12563         * .gitignore: Remove observer.h.
12564
12565 2018-03-18  Tom Tromey  <tom@tromey.com>
12566
12567         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
12568         gdb::def_vector.
12569         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
12570
12571 2018-03-17  Tom Tromey  <tom@tromey.com>
12572
12573         * auto-load.c (auto_load_objfile_script_1): Use std::string.
12574
12575 2018-03-17  Tom Tromey  <tom@tromey.com>
12576
12577         * target.c (class scoped_target_fd): New.
12578         (target_fileio_close_cleanup): Remove.
12579         (target_fileio_read_alloc_1): Use scoped_target_fd.
12580
12581 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
12582
12583         * silent-rules.mk: New.
12584         * Makefile.in: Include silent-rules.mk
12585         (srcdir, VPATH, top_srcdir): Move up.
12586         (COMPILE): Add ECHO_CXX.
12587         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
12588         (init.c): Add ECHO_INIT_C.
12589         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
12590         (version.c): Add ECHO_GEN.
12591         (printcmd.o): Add ECHO_CXX.
12592         (target-float.o): Add ECHO_CXX.
12593         (ada-exp.o): Add ECHO_CXX.
12594         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
12595         (insight$(EXEEXT)): Add ECHO_CXXLD.
12596         * gnulib/configure.ac: Add AM_SILENT_RULES.
12597         * gnulib/aclocal.m4: Re-generate.
12598         * gnulib/configure: Re-generate.
12599         * gnulib/import/Makefile.in: Re-generate.
12600
12601 2018-03-16  Tom Tromey  <tom@tromey.com>
12602
12603         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
12604         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
12605         * utils.c (do_free_section_addr_info)
12606         (make_cleanup_free_section_addr_info): Remove.
12607         * symfile.h (struct other_sections): Add constructor.
12608         (struct section_addr_info): Remove.
12609         (section_addr_info): New typedef.
12610         (struct sym_fns) <sym_offsets>: Change type of parameter.
12611         (build_section_addr_info_from_objfile)
12612         (relative_addr_info_to_section_offsets, addr_info_make_relative)
12613         (default_symfile_offsets, symbol_file_add)
12614         (symbol_file_add_from_bfd)
12615         (build_section_addr_info_from_section_table): Update.
12616         (alloc_section_addr_info, free_section_addr_info): Don't declare.
12617         * symfile.c (alloc_section_addr_info): Remove.
12618         (build_section_addr_info_from_section_table): Change return type.
12619         Update.
12620         (build_section_addr_info_from_bfd)
12621         (build_section_addr_info_from_objfile): Likewise.
12622         (free_section_addr_info): Remove.
12623         (relative_addr_info_to_section_offsets): Change type of "addrs".
12624         (addrs_section_compar): Now a std::sort comparator.
12625         (addrs_section_sort): Change return type.
12626         (addr_info_make_relative): Change type of "addrs".  Update.
12627         (default_symfile_offsets, syms_from_objfile_1)
12628         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
12629         (symbol_file_add_separate): Update.
12630         (symbol_file_add): Change type of "addrs".  Update.
12631         (add_symbol_file_command): Update.  Remove cleanups.
12632         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
12633         cleanups.
12634         * symfile-debug.c (debug_sym_offsets): Change type of "info".
12635         * solib.c (solib_read_symbols): Update.
12636         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
12637         * machoread.c (macho_symfile_offsets): Update.
12638         * jit.c (jit_bfd_try_read_symtab): Update.
12639
12640 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
12641
12642         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12643         unittests/utils-selftests.c.
12644         * unittests/utils-selftests.c: New file.
12645
12646 2018-03-14  Tom Tromey  <tom@tromey.com>
12647
12648         PR cli/14977:
12649         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
12650         for NULL.
12651
12652 2018-03-14  Tom Tromey  <tom@tromey.com>
12653
12654         PR cli/19918:
12655         * printcmd.c (printf_pointer): Allow "-" in format.
12656
12657 2018-03-14  Tom Tromey  <tom@tromey.com>
12658
12659         * printcmd.c (_initialize_printcmd): Add usage to printf.
12660
12661 2018-03-14  Yao Qi  <qiyao@sourceware.org>
12662
12663         * MAINTAINERS: Update my email address.
12664
12665 2018-03-13  Tom Tromey  <tom@tromey.com>
12666
12667         * machoread.c (macho_check_dsym): Change filenamep to a
12668         std::string*.
12669         (macho_symfile_read): Update.
12670         * symfile.c (load_command): Use std::string.
12671
12672 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
12673
12674         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
12675         to error message string.
12676         (riscv_register_name): Use xsnprintf instead of sprintf.
12677         (riscv_insn::fetch_instruction): Use gdb_assert instead of
12678         internal_error.
12679         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
12680         error.
12681         (riscv_push_dummy_call): Likewise.
12682
12683 2018-03-12  Tom Tromey  <tom@tromey.com>
12684
12685         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
12686         Use gdb::byte_vector.
12687         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
12688
12689 2018-03-12  Yao Qi  <yao.qi@linaro.org>
12690
12691         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
12692         parameter type to readable_regcache.
12693         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
12694         the declaration.
12695
12696 2018-03-11  Tom Tromey  <tom@tromey.com>
12697
12698         * dwarf2read.c (struct nextfield): Add initializers.
12699         (struct nextfnfield): Remove.
12700         (struct fnfieldlist): Add initializers.  Remove "length" and
12701         "head", use std::vector.
12702         (struct decl_field_list): Remove.
12703         (struct field_info): Add initializers.
12704         <fields, baseclasses>: Now std::vector.
12705         <nbaseclasses, nfnfields, typedef_field_list_count,
12706         nested_types_list_count>: Remove.
12707         (dwarf2_add_field, dwarf2_add_type_defn)
12708         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
12709         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
12710         (process_structure_scope): Update.
12711
12712 2018-03-11  Tom Tromey  <tom@tromey.com>
12713
12714         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
12715         for use by std::sort.
12716         (build_type_psymtabs_1): Use std::vector.
12717
12718 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
12719
12720         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
12721         and LIBMPFR in the printed configuration.
12722
12723 2018-03-08  Tom Tromey  <tom@tromey.com>
12724
12725         * source.c (get_filename_and_charpos): Use scoped_fd.
12726         * nto-procfs.c (procfs_open_1): Use scoped_fd.
12727         (procfs_pidlist): Likewise.
12728         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
12729         (iterate_over_mappings): Likewise.
12730
12731 2018-03-08  Tom Tromey  <tom@tromey.com>
12732
12733         * infcall.c (struct call_return_meta_info)
12734         <stack_temporaries_enabled>: Remove.
12735         (get_call_return_value, call_function_by_hand_dummy): Update.
12736         * thread.c (disable_thread_stack_temporaries): Remove.
12737         (enable_thread_stack_temporaries): Remove.
12738         (thread_stack_temporaries_enabled_p): Return bool.
12739         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
12740         (get_last_thread_stack_temporary): Update.
12741         * eval.c (evaluate_subexp): Update.
12742         * gdbthread.h (class enable_thread_stack_temporaries): Now a
12743         class, not a function.
12744         (value_ptr, value_vec): Remove typedefs.
12745         (class thread_info) <stack_temporaries_enabled>: Now bool.
12746         <stack_temporaries>: Now a std::vector.
12747         (thread_stack_temporaries_enabled_p)
12748         (value_in_thread_stack_temporaries): Return bool.
12749
12750 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
12751
12752         * remote.c (putpkt_binary): Fix omitted bytes reporting.
12753         (getpkt_or_notif_sane_1): Likewise.
12754
12755 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12756
12757         * build-id.c (build_id_to_debug_bfd): Use std::string.
12758
12759 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12760
12761         * build-id.c (find_separate_debug_file_by_buildid): Return
12762         std::string.
12763         * build-id.h (find_separate_debug_file_by_buildid): Return
12764         std::string.
12765         * coffread.c (coff_symfile_read): Adjust to std::string.
12766         * elfread.c (elf_symfile_read): Adjust to std::string.
12767         * symfile.c (separate_debug_file_exists): Change parameter to
12768         std::string.
12769         (find_separate_debug_file): Return std::string.
12770         (find_separate_debug_file_by_debuglink): Return std::string.
12771         * symfile.h (find_separate_debug_file_by_debuglink): Return
12772         std::string.
12773
12774 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12775
12776         * common/xml-utils.c (xml_escape_text): Move code to...
12777         (xml_escape_text_append): ... this new function.
12778         * common/xml-utils.h (xml_escape_text_append): New declaration.
12779         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
12780         New function.
12781         (_initialize_xml_utils): register test_xml_escape_text_append as
12782         a selftest.
12783
12784 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
12785
12786         * defs.h: Remove MAX_REGISTER_SIZE.
12787         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
12788         asserts.
12789         * python/py-unwind.c (pyuw_sniffer): Likewise.
12790
12791 2018-03-07  Tom Tromey  <tom@tromey.com>
12792
12793         * linux-tdep.c (linux_info_proc): Update.
12794         * target.h (struct target_ops) <to_fileio_readlink>: Return
12795         optional<string>.
12796         (target_fileio_readlink): Return optional<string>.
12797         * remote.c (remote_hostio_readlink): Return optional<string>.
12798         * inf-child.c (inf_child_fileio_readlink): Return
12799         optional<string>.
12800         * target.c (target_fileio_readlink): Return optional<string>.
12801
12802 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
12803
12804         * regcache.c (cooked_read_test): Add riscv to the list of
12805         architectures that have a save_reggroup.
12806
12807 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12808
12809         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
12810         value is not a dynamic class object.
12811
12812 2018-03-06  Tom Tromey  <tom@tromey.com>
12813
12814         * rust-exp.y: Formatting fixes.
12815
12816 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12817
12818         * riscv-tdep.c (riscv_register_name): Remove target description
12819         support.
12820         (riscv_gdbarch_init): Remove target description check.
12821
12822 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12823
12824         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
12825         comment.
12826         * riscv-tdep.h: Likewise.
12827
12828 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12829
12830         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
12831         (riscv_pseudo_register_write): Delete.
12832         (riscv_gdbarch_init): Remove all use of pseudo registers.
12833
12834 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12835
12836         * record-btrace.c (btrace_print_lines): Replace cleanup
12837         parameter with RAII equivalents.
12838         (btrace_insn_history): Replace cleanup with RAII equivalents.
12839         * ui-out.h (make_cleanup_ui_out_list_begin_end,
12840         make_cleanup_ui_out_tuple_begin_end): Remove.
12841         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
12842         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
12843         make_cleanup_ui_out_list_begin_end): Remove.
12844
12845 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12846
12847         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
12848         parameter types to std::vector.  Use bool.
12849         (record_btrace_wait): Replace VEC(tp_t) with
12850         std::vector<thread_info *>.
12851         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
12852
12853 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12854
12855         * record-btrace.c (record_btrace_disable_callback): Remove.
12856         (struct scoped_btrace_disable): New.
12857         (record_btrace_open): Use scoped_btrace_disable.
12858
12859 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12860
12861         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
12862         reading values from registers.
12863
12864 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12865
12866         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
12867         where appropriate.
12868
12869 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12870
12871         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
12872         change parameter type.  Use GDB's print functions, and use
12873         core_addr_to_string where appropriate.
12874         (riscv_push_dummy_call): Use core_addr_to_string where
12875         appropriate, update call to riscv_print_arg_location, and reindent
12876         a few lines.
12877         (riscv_return_value): Update call to riscv_print_arg_location.
12878
12879 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12880             Tim Newsome <tim@sifive.com>
12881             Albert Ou <a0u@eecs.berkeley.edu>
12882             Darius Rad <darius@bluespec.com>
12883
12884         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
12885         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
12886         (ALLDEPFILES): Add riscv-tdep.c
12887         * configure.tgt: Add riscv support.
12888         * riscv-tdep.c: New file.
12889         * riscv-tdep.h: New file.
12890         * NEWS: Mention new target.
12891         * MAINTAINERS: Add entry for riscv.
12892
12893 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12894
12895         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
12896         fields within aggregates.
12897
12898 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
12899
12900         * record-btrace.c (btrace_print_lines): Change type of flags to
12901         gdb_disassembly_flags.
12902
12903 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12904
12905         * fbsd-nat.c: Include "inf-ptrace.h".
12906         (USE_SIGTRAP_SIGINFO): Conditionally define.
12907         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
12908         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
12909         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
12910         function.
12911         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
12912         Likewise.
12913         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
12914         Likewise.
12915         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
12916         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
12917         "supports_stopped_by_hw_breakpoint" target methods.
12918
12919 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12920
12921         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
12922         * fbsd-nat.c (debug_fbsd_nat): New variable.
12923         (show_fbsd_nat_debug): New function.
12924         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
12925         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
12926
12927 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12928
12929         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
12930         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
12931         prototype.
12932         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
12933         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
12934         method.
12935
12936 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12937
12938         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
12939         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
12940
12941 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12942
12943         * charset.c (struct charset_vector): New.
12944         (charsets): Change type to charset_vector.
12945         (find_charset_names): Adjust.
12946         (add_one): Adjust.
12947         (_initialize_charset): Adjust.
12948
12949 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12950
12951         * progspace.h (struct program_space) <deleted_solibs>: Change
12952         type to std::vector<std::string>.
12953         * progspace.c (clear_program_space_solib_cache): Adjust.
12954         * breakpoint.c (print_solib_event): Adjust.
12955         (check_status_catch_solib): Adjust.
12956         * solib.c (update_solib_list): Adjust.
12957         * ui-out.h (class ui_out) <field_string>: New overload.
12958         * ui-out.c (ui_out::field_string): New overload.
12959
12960 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12961
12962         * progspace.h (struct program_space): Add constructor and
12963         destructor, initialize fields.
12964         (add_program_space): Remove.
12965         * progspace.c (add_program_space): Rename to...
12966         (program_space::program_space): ... this.
12967         (release_program_space): Rename to...
12968         (program_space::~program_space): ... this.
12969         (delete_program_space): Use delete to delete program_space.
12970         (initialize_progspace): Use new to allocate program_space.
12971         * inferior.c (add_inferior_with_spaces): Likewise.
12972         (clone_inferior_command): Likewise.
12973         * infrun.c (follow_fork_inferior): Likewise.
12974         (handle_vfork_child_exec_or_exit): Likewise.
12975
12976 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12977
12978         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
12979         (delim_string_to_char_ptr_vec): Return std::vector of
12980         gdb::unique_xmalloc_ptr.
12981         (dirnames_to_char_ptr_vec_append): Take std::vector of
12982         gdb::unique_xmalloc_ptr.
12983         (dirnames_to_char_ptr_vec): Return std::vector of
12984         gdb::unique_xmalloc_ptr.
12985         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
12986         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
12987         (delim_string_to_char_ptr_vec): Return an std::vector of
12988         gdb::unique_xmalloc_ptr, adjust the code.
12989         (dirnames_to_char_ptr_vec_append): Take an std::vector of
12990         gdb::unique_xmalloc_ptr, adjust the code.
12991         (dirnames_to_char_ptr_vec): Return an std::vector of
12992         gdb::unique_xmalloc_ptr, adjust the code.
12993         * auto-load.c (auto_load_safe_path_vec): Change type to
12994         std::vector of gdb::unique_xmalloc_ptr.
12995         (auto_load_expand_dir_vars): Return an std::vector of
12996         gdb::unique_xmalloc_ptr, adjust the code.
12997         (auto_load_safe_path_vec_update): Adjust.
12998         (filename_is_in_auto_load_safe_path_vec): Adjust.
12999         (auto_load_objfile_script_1): Adjust.
13000         * build-id.c (build_id_to_debug_bfd): Adjust.
13001         * linux-thread-db.c (thread_db_load_search): Adjust.
13002         * source.c (add_path): Adjust.
13003         (openp): Adjust.
13004         * symfile.c (find_separate_debug_file): Adjust.
13005         * utils.c (do_free_char_ptr_vec): Remove.
13006         (make_cleanup_free_char_ptr_vec): Remove.
13007
13008 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
13009
13010         PR gdb/22907
13011         * common/pathstuff.c: Conditionally include "<windows.h>".
13012
13013 2018-03-01  Georg Sauthoff  <mail@georg.so>
13014
13015         PR gdb/22888
13016         * gcore.in: Quote variables and switch interpreter to bash.
13017
13018 2018-03-01  Tom Tromey  <tom@tromey.com>
13019
13020         * dwarf2read.c (alloc_discriminant_info): Fix default_index
13021         assertion.  Add assertion for discriminant_index.
13022         (quirk_rust_enum): Use correct base type name in univariant case.
13023
13024 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
13025
13026         * record.c (get_call_history_modifiers): Return a
13027         record_print_flags.
13028         (cmd_record_call_history): Adjust.
13029         * record-btrace.c (record_btrace_call_history): Adjust.
13030         (record_btrace_call_history_range): Adjust.
13031         (record_btrace_call_history_from): Adjust.
13032         * target-debug.h (target_debug_print_record_print_flags): New.
13033         * target-delegates.c: Re-generate.
13034         * target.c (target_call_history): Change flags type.
13035         (target_call_history_from): Likewise.
13036         (target_call_history_range): Likewise.
13037         * target.h (struct target_ops) <target_call_history>: Likewise.
13038         (target_call_history_from): Likewise.
13039         (target_call_history_range): Likewise.
13040
13041 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
13042             Simon Marchi  <simon.marchi@polymtl.ca>
13043
13044         * common/common-utils.c: Include "sys/stat.h".
13045         (is_regular_file): Move here from "source.c"; change return
13046         type to "bool".
13047         * common/common-utils.h (is_regular_file): New prototype.
13048         * common/pathstuff.c (contains_dir_separator): New function.
13049         * common/pathstuff.h (contains_dir_separator): New prototype.
13050         * source.c: Don't include "sys/stat.h".
13051         (is_regular_file): Move to "common/common-utils.c".
13052
13053 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
13054
13055         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
13056         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
13057         * auto-load.c: Include "common/pathstuff.h".
13058         * common/common-def.h (current_directory): Move here.
13059         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
13060         function.
13061         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
13062         prototype.
13063         * common/pathstuff.c: New file.
13064         * common/pathstuff.h: New file.
13065         * compile/compile.c: Include "common/pathstuff.h".
13066         * defs.h (current_directory): Move to "common/common-defs.h".
13067         * dwarf2read.c: Include "common/pathstuff.h".
13068         * exec.c: Likewise.
13069         * guile/scm-safe-call.c: Likewise.
13070         * linux-thread-db.c: Likewise.
13071         * main.c: Likewise.
13072         * nto-tdep.c: Likewise.
13073         * objfiles.c: Likewise.
13074         * source.c: Likewise.
13075         * symtab.c: Likewise.
13076         * utils.c: Include "common/pathstuff.h".
13077         (gdb_realpath): Move to "common/pathstuff.c".
13078         (gdb_realpath_keepfile): Likewise.
13079         (gdb_abspath): Likewise.
13080         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
13081         (gdb_realpath_keepfile): Likewise.
13082         (gdb_abspath): Likewise.
13083
13084 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
13085
13086         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
13087         wildcard process pid for super_resume for kernels with a
13088         specific bug.
13089
13090 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
13091
13092         * compile/compile.c (get_args): Add additional comments
13093         explaining function.
13094
13095 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
13096             Tom Tromey  <tom@tromey.com>
13097
13098         * target.h (memory_write_request_s): Remove typedef.  Don't define
13099         VEC.
13100         (target_write_memory_blocks): Change argument to std::vector.
13101         (struct memory_write_request): Add constructor.
13102         * target-memory.c (compare_block_starting_address): Return bool.
13103         Change argument types.
13104         (claim_memory): Change arguments to use std::vector.
13105         (split_regular_and_flash_blocks, blocks_to_erase)
13106         (compute_garbled_blocks): Likewise.
13107         (cleanup_request_data, cleanup_write_requests_vector): Remove.
13108         (target_write_memory_blocks): Change argument to std::vector.
13109         * symfile.c (struct load_section_data): Add constructor and
13110         destructor.  Use std::vector for "requests".
13111         (struct load_progress_data): Add initializers.
13112         (load_section_callback): Update.  Use "new".
13113         (clear_memory_write_data): Remove.
13114         (generic_load): Update.
13115
13116 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
13117
13118         * arch/aarch64.h: Use common/tdesc.h.
13119
13120 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
13121
13122         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
13123         architecture with a 64-bit ABI.
13124
13125 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
13126
13127         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
13128         ahead of target description loading.
13129
13130 2018-02-26  Tom Tromey  <tom@tromey.com>
13131
13132         * stack.c (backtrace_command_1): Update.
13133         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
13134         of "flags".
13135         * python/py-framefilter.c (py_print_frame)
13136         (gdbpy_apply_frame_filter): Change type of "flags".
13137         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
13138         of "flags".
13139         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
13140         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
13141         * extension.h (enum frame_filter_flag): Rename from
13142         frame_filter_flags.
13143         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
13144         (apply_ext_lang_frame_filter): Change type of "flags".
13145         * extension.c (apply_ext_lang_frame_filter): Change type of
13146         "flags".
13147         * extension-priv.h (struct extension_language_ops)
13148         <apply_frame_filter>: Change type of "flags".
13149
13150 2018-02-26  Tom Tromey  <tom@tromey.com>
13151
13152         PR python/16497:
13153         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
13154         off-by-one in py_end computation.
13155         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
13156         PRINT_MORE_FRAMES.
13157         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
13158         constant.
13159
13160 2018-02-26  Tom Tromey  <tom@tromey.com>
13161
13162         * dwarf2read.c (struct variant_field): New.
13163         (struct nextfield) <variant>: New field.
13164         (dwarf2_add_field): Handle DW_TAG_variant_part.
13165         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
13166         discriminated union.
13167         (read_structure_type): Handle DW_TAG_variant_part.
13168         (handle_struct_member_die): New function, extracted from
13169         process_structure_scope.  Handle DW_TAG_variant.
13170         (process_structure_scope): Handle discriminated unions.  Call
13171         handle_struct_member_die.
13172
13173 2018-02-26  Tom Tromey  <tom@tromey.com>
13174
13175         * rust-lang.h (rust_last_path_segment): Declare.
13176         * rust-lang.c (rust_last_path_segment): Now public.  Change
13177         contract.
13178         (struct disr_info): Remove.
13179         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
13180         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
13181         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
13182         (rust_enum_p, rust_enum_variant): New function.
13183         (rust_underscore_fields): Remove "offset" parameter.
13184         (rust_print_enum): New function.
13185         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
13186         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
13187         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
13188         enums.
13189         (rust_internal_print_type): New function, from rust_print_type.
13190         Remove enum code.
13191         (rust_print_type): Call rust_internal_print_type.
13192         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
13193         Update enum handling.
13194         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
13195         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
13196         (rust_union_quirks): New functions.
13197         (process_full_comp_unit, process_full_type_unit): Call
13198         rust_union_quirks.
13199         (process_structure_scope): Update rust_unions if necessary.
13200
13201 2018-02-26  Tom Tromey  <tom@tromey.com>
13202
13203         * value.h (value_union_variant): Declare.
13204         * valops.c (value_union_variant): New function.
13205         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
13206         (struct discriminant_info): New.
13207         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
13208         enumerator.
13209         (struct main_type) <flag_discriminated_union>: New field.
13210
13211 2018-02-26  Tom Tromey  <tom@tromey.com>
13212
13213         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13214         unittests/unpack-selftests.c.
13215         * unittests/unpack-selftests.c: New file.
13216         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
13217
13218 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13219
13220         * dwarf2read.c (struct partial_die_info) <read>: New method.
13221         (read_partial_die): Remove the declaration.
13222         (load_partial_dies): Update.
13223         (partial_die_info::partial_die_info):
13224         (read_partial_die): Change it to partial_die_info::read.
13225
13226 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13227
13228         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
13229         (fixup_partial_die): Remove declaration.
13230         (scan_partial_symbols): Update.
13231         (partial_die_parent_scope): Likewise.
13232         (partial_die_full_name): Likewise.
13233         (fixup_partial_die): Change it to partial_die_info::fixup.
13234
13235 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13236
13237         * dwarf2read.c (read_partial_die): Update the declaration.
13238         (load_partial_dies): Caller update.
13239         (read_partial_die): Remove one argument abbrev_len.
13240
13241 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13242
13243         * dwarf2read.c (struct partial_die_info): Add ctor, delete
13244         assignment operator.
13245         (load_partial_dies): Use ctor and copy ctor.
13246         (read_partial_die): Update.
13247         (dwarf2_cu::find_partial_die): Use ctor.
13248
13249 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13250
13251         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
13252         (find_partial_die_in_comp_unit): Change it to
13253         dwarf2_cu::find_partial_die.
13254         (find_partial_die): Update.
13255
13256 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13257
13258         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
13259         is NULL.
13260
13261 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13262
13263         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
13264
13265 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
13266
13267         * arch/amd64.h: Use common/tdesc.h.
13268         * arch/i386.c: Likewise.
13269         * arch/i386.h: Likewise.
13270         * arch/tic6x.c: Likewise.
13271         * arch/tdesc.h: Move file from here...
13272         * common/tdesc.h: ...to here.
13273         * features/aarch64-core.c: Regenerate.
13274         * features/aarch64-fpu.c: Regenerate.
13275         * features/i386/32bit-avx.c: Regenerate.
13276         * features/i386/32bit-avx512.c: Regenerate.
13277         * features/i386/32bit-core.c: Regenerate.
13278         * features/i386/32bit-linux.c: Regenerate.
13279         * features/i386/32bit-mpx.c: Regenerate.
13280         * features/i386/32bit-pkeys.c: Regenerate.
13281         * features/i386/32bit-sse.c: Regenerate.
13282         * features/i386/64bit-avx.c: Regenerate.
13283         * features/i386/64bit-avx512.c: Regenerate.
13284         * features/i386/64bit-core.c: Regenerate.
13285         * features/i386/64bit-linux.c: Regenerate.
13286         * features/i386/64bit-mpx.c: Regenerate.
13287         * features/i386/64bit-pkeys.c: Regenerate.
13288         * features/i386/64bit-segments.c: Regenerate.
13289         * features/i386/64bit-sse.c: Regenerate.
13290         * features/i386/x32-core.c: Regenerate.
13291         * features/tic6x-c6xp.c: Regenerate.
13292         * features/tic6x-core.c: Regenerate.
13293         * features/tic6x-gp.c: Regenerate.
13294         * target-descriptions.c: Use common/tdesc.h.
13295         * target-descriptions.h: Likewise.
13296
13297 2018-02-24  Tom Tromey  <tom@tromey.com>
13298
13299         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
13300         (try_thread_db_load_from_dir, thread_db_load_search): Use
13301         std::string.
13302         (info_auto_load_libthread_db_compare): Return bool.  Change
13303         argument types.
13304         (info_auto_load_libthread_db): Use std::vector, std::string.
13305         Remove cleanups.
13306
13307 2018-02-24  Tom Tromey  <tom@tromey.com>
13308
13309         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
13310         std::string.
13311         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
13312         std::string*.
13313         * gdbarch.c: Rebuild.
13314         * gdbarch.h: Rebuild.
13315         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
13316         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
13317         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
13318         std::string*.
13319
13320 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
13321
13322         * gdbtypes.h (sect_offset): Change type to uint64_t.
13323         (sect_offset_str): New function.
13324         * dwarf2read.c (create_addrmap_from_aranges): Use
13325         sect_offset_str.
13326         (error_check_comp_unit_head): Likewise.
13327         (create_debug_type_hash_table): Likewise.
13328         (read_cutu_die_from_dwo): Likewise.
13329         (init_cutu_and_read_dies): Likewise.
13330         (init_cutu_and_read_dies_no_follow): Likewise.
13331         (process_psymtab_comp_unit_reader): Likewise.
13332         (partial_die_parent_scope): Likewise.
13333         (peek_die_abbrev): Likewise.
13334         (process_queue): Likewise.
13335         (dwarf2_physname): Likewise.
13336         (read_namespace_alias): Likewise.
13337         (read_import_statement): Likewise.
13338         (create_dwo_cu_reader): Likewise.
13339         (create_cus_hash_table): Likewise.
13340         (lookup_dwo_cutu): Likewise.
13341         (inherit_abstract_dies): Likewise.
13342         (read_func_scope): Likewise.
13343         (read_call_site_scope): Likewise.
13344         (dwarf2_add_member_fn): Likewise.
13345         (read_common_block): Likewise.
13346         (read_module_type): Likewise.
13347         (read_typedef): Likewise.
13348         (read_subrange_type): Likewise.
13349         (load_partial_dies): Likewise.
13350         (read_partial_die): Likewise.
13351         (find_partial_die): Likewise.
13352         (read_str_index): Likewise.
13353         (dwarf2_string_attr): Likewise.
13354         (build_error_marker_type): Likewise.
13355         (lookup_die_type): Likewise.
13356         (dump_die_shallow): Likewise.
13357         (follow_die_ref): Likewise.
13358         (dwarf2_fetch_die_loc_sect_off): Likewise.
13359         (dwarf2_fetch_constant_bytes): Likewise.
13360         (follow_die_sig): Likewise.
13361         (get_signatured_type): Likewise.
13362         (get_DW_AT_signature_type): Likewise.
13363         (dwarf2_find_containing_comp_unit): Likewise.
13364         (set_die_type): Likewise.
13365
13366 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
13367
13368         * arch/aarch64.c: Include "common-defs.h".
13369         * arch/amd64.c: Likewise.
13370         * arch/i386.c: Likewise.
13371
13372 2018-02-21  Tom Tromey  <tom@tromey.com>
13373
13374         * value.h: (extract_field_op): Update.
13375         * eval.c (extract_field_op): Return a const char *.
13376         * expression.h (parse_expression_for_completion): Update.
13377         * completer.c (complete_expression): Update.
13378         (add_struct_fields): Make fieldname const.
13379         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
13380         (mark_completion_tag, parse_exp_in_context_1): Update.
13381         (parse_expression_for_completion): Change "name" to
13382         unique_xmalloc_ptr*.
13383
13384 2018-02-21  Tom Tromey  <tom@tromey.com>
13385
13386         * infcall.c (call_function_by_hand_dummy): Use std::vector.
13387
13388 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13389
13390         * avr-tdep.c (avr_read_pc): Change parameter type to
13391         readable_regcache.
13392         * gdbarch.sh (read_pc): Likewise.
13393         * gdbarch.c: Re-generated.
13394         * gdbarch.h: Re-generated.
13395         * hppa-tdep.c (hppa_read_pc): Change parameter type to
13396         readable_regcache.
13397         * ia64-tdep.c (ia64_read_pc): Likewise.
13398         * mips-tdep.c (mips_read_pc): Likewise.
13399         * spu-tdep.c (spu_read_pc): Likewise.
13400
13401 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13402
13403         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
13404         * regcache-dump.c: New file.
13405         * regcache.c: Move register_dump to regcache-dump.c.
13406         (maintenance_print_registers): Likewise.
13407         (maintenance_print_raw_registers): Likewise.
13408         (maintenance_print_cooked_registers): Likewise.
13409         (maintenance_print_register_groups): Likewise.
13410         (maintenance_print_remote_registers): Likewise.
13411         (_initialize_regcache): Likewise.
13412         * regcache.h (register_dump): Moved from regcache.c.
13413
13414 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13415
13416         * regcache.c (regcache::regcache): Update.
13417         (regcache::invalidate): Move it to detached_regcache::invalidate.
13418         (get_thread_arch_aspace_regcache): Update.
13419         (regcache::raw_update): Update.
13420         (regcache::cooked_read): Remove some code.
13421         (regcache::cooked_read_value): Likewise.
13422         (regcache::raw_write): Remove assert on m_readonly_p.
13423         (regcache::raw_supply_integer): Move it to
13424         detached_regcache::raw_supply_integer.
13425         (regcache::raw_supply_zeroed): Likewise.
13426         * regcache.h (detached_regcache) <raw_supply_integer>: New
13427         declaration.
13428         <raw_supply_zeroed, invalidate>: Likewise.
13429         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
13430         <invalidate>: Likewise.
13431         <m_readonly_p>: Removed.
13432
13433 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13434
13435         * infcmd.c (get_return_value): Let stop_regs point to
13436         get_current_regcache.
13437         * regcache.c (regcache::regcache): Remove.
13438         (register_dump_reg_buffer): New class.
13439         (regcache_print): Adjust.
13440         * regcache.h (regcache): Remove constructors.
13441
13442 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13443
13444         * regcache.c (class register_dump): New class.
13445         (register_dump_regcache, register_dump_none): New class.
13446         (register_dump_remote, register_dump_groups): New class.
13447         (regcache_print): Update.
13448         * regcache.h (regcache_dump_what): Move it to regcache.c.
13449         (regcache) <dump>: Remove.
13450
13451 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13452
13453         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
13454          reg_buffer_rw *.
13455         (jit_unwind_reg_set_impl): Call raw_supply.
13456         (jit_frame_sniffer): Use reg_buffer_rw.
13457         * record-full.c (record_full_core_regbuf): Change its type.
13458         (record_full_core_open_1): Use reg_buffer_rw.
13459         (record_full_close): Likewise.
13460         (record_full_core_fetch_registers): Use regcache->raw_supply.
13461         (record_full_core_store_registers): Likewise.
13462         * regcache.c (regcache::get_register_status): Move it to
13463         reg_buffer.
13464         (regcache_raw_set_cached_value): Remove.
13465         (regcache::raw_set_cached_value): Remove.
13466         (regcache::raw_write): Call raw_supply.
13467         (regcache::raw_supply): Move it to reg_buffer_rw.
13468         * regcache.h (regcache_raw_set_cached_value): Remove.
13469         (reg_buffer_rw): New class.
13470
13471 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13472
13473         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
13474         readonly_detached_regcache.
13475         (dummy_frame_prev_register): Use regcache->cooked_read.
13476         * frame.c (frame_save_as_regcache): Change return type.
13477         (frame_pop): Update.
13478         * frame.h (frame_save_as_regcache): Update declaration.
13479         * inferior.h (get_infcall_suspend_state_regcache): Update
13480         declaration.
13481         * infrun.c (infcall_suspend_state) <registers>: use
13482         readonly_detached_regcache.
13483         (save_infcall_suspend_state): Don't use regcache_dup.
13484         (get_infcall_suspend_state_regcache): Change return type.
13485         * linux-fork.c (struct fork_info) <savedregs>: Change to
13486         readonly_detached_regcache.
13487         <pc>: New field.
13488         (fork_save_infrun_state): Don't use regcache_dup.
13489         (info_checkpoints_command): Adjust.
13490         * mi/mi-main.c (register_changed_p): Update declaration.
13491         (mi_cmd_data_list_changed_registers): Use
13492         readonly_detached_regcache.
13493         (register_changed_p): Change parameter type to
13494         readonly_detached_regcache.
13495         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
13496         readonly_detached_regcache.
13497         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
13498         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
13499         New.
13500         (regcache::save): Move it to reg_buffer.
13501         (regcache::restore): Change parameter type.
13502         (regcache_dup): Remove.
13503         * regcache.h (reg_buffer) <save>: New method.
13504         (readonly_detached_regcache): New class.
13505         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
13506         readonly_detached_regcache.
13507         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
13508
13509 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13510
13511         * frame.c (frame_save_as_regcache): Use regcache method save.
13512         (frame_pop): Use regcache method restore.
13513         * infrun.c (restore_infcall_suspend_state): Likewise.
13514         * linux-fork.c (fork_load_infrun_state): Likewise.
13515         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
13516         save.
13517         * regcache.c (regcache_save): Remove.
13518         (regcache::restore): More asserts.
13519         (regcache_cpy): Remove.
13520         * regcache.h (regcache_save): Remove the declaration.
13521         (regcache::restore): Move from private to public.
13522         Remove the friend declaration of regcache_cpy.
13523         (regcache_cpy): Remove declaration.
13524
13525 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13526
13527         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
13528         parameter type to 'readable_regcache *'.
13529         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
13530         * arm-tdep.c (arm_neon_quad_read): Likewise.
13531         (arm_pseudo_read): Likewise.
13532         * avr-tdep.c (avr_pseudo_register_read): Likewise.
13533         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
13534         * frv-tdep.c (frv_pseudo_register_read): Likewise.
13535         * gdbarch.c: Re-generated.
13536         * gdbarch.h: Re-generated.
13537         * gdbarch.sh (pseudo_register_read): Change parameter type to
13538         'readable_regcache *'.
13539         (pseudo_register_read_value): Likewise.
13540         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
13541         (h8300_pseudo_register_read): Likewise.
13542         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
13543         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
13544         (i386_pseudo_register_read_into_value): Likewise.
13545         (i386_pseudo_register_read_value): Likewise.
13546         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
13547         declaration.
13548         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
13549         * m32c-tdep.c (m32c_raw_read): Likewise.
13550         (m32c_read_flg): Likewise.
13551         (m32c_banked_register): Likewise.
13552         (m32c_banked_read): Likewise.
13553         (m32c_sb_read): Likewise.
13554         (m32c_part_read): Likewise.
13555         (m32c_cat_read): Likewise.
13556         (m32c_r3r2r1r0_read): Likewise.
13557         (m32c_pseudo_register_read): Likewise.
13558         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
13559         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
13560         (mep_pseudo_cr64_read): Likewise.
13561         (mep_pseudo_register_read): Likewise.
13562         * mips-tdep.c (mips_pseudo_register_read): Likewise.
13563         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
13564         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
13565         * regcache.c (regcache::raw_read): Move it to readable_regcache.
13566         (regcache::cooked_read): Likewise.
13567         (regcache::cooked_read_value): Likewise.
13568         (regcache_cooked_read_signed):
13569         (regcache::cooked_read): Likewise.
13570         * regcache.h (readable_regcache): New class.
13571         (regcache): Inherit readable_regcache.  Move some methods to
13572         readable_regcache.
13573         * rl78-tdep.c (rl78_pseudo_register_read): Change
13574         parameter type to 'readable_regcache *'.
13575         * rs6000-tdep.c (do_regcache_raw_read): Remove.
13576         (e500_pseudo_register_read): Change parameter type to
13577         'readable_regcache *'.
13578         (dfp_pseudo_register_read): Likewise.
13579         (vsx_pseudo_register_read): Likewise.
13580         (efpr_pseudo_register_read): Likewise.
13581         * s390-tdep.c (s390_pseudo_register_read): Likewise.
13582         * sh-tdep.c (sh_pseudo_register_read): Likewise.
13583         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
13584         (sh64_pseudo_register_read): Likewise.
13585         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
13586         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
13587         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
13588         (spu_pseudo_register_read): Likewise.
13589         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
13590         (xtensa_pseudo_register_read): Likewise.
13591
13592 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13593
13594         * regcache.c (regcache::regcache): Call reg_buffer ctor.
13595         (regcache::arch): Move it to reg_buffer::arch.
13596         (regcache::register_buffer): Likewise.
13597         (regcache::assert_regnum): Likewise.
13598         (regcache::num_raw_registers): Likewise.
13599         * regcache.h (reg_buffer): New class.
13600         (regcache): Inherit reg_buffer.
13601
13602 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
13603
13604         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
13605         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
13606
13607 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
13608
13609         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
13610
13611 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
13612
13613         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
13614         (SFILES): Remove common/*.c files.
13615         (COMMON_OBS): Remove some *.o files built from common/*.c files.
13616         * common/common.host: Add common reference.
13617         * configure.ac: Likewise.
13618         * configure: Regenerate.
13619
13620 2018-02-16  Yao Qi  <yao.qi@linaro.org>
13621
13622         * block.c (block_namespace_info): Inherit allocate_on_obstack.
13623         (block_initialize_namespace): Use new.
13624         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
13625         (dwarf2_free_objfile): Use delete.
13626         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
13627         (copy_type_recursive): Use new.
13628         * gdb_obstack.h (allocate_on_obstack): New.
13629
13630 2018-02-15  Yao Qi  <yao.qi@linaro.org>
13631
13632         PR gdb/22849
13633         * inferior.c (exit_inferior_1): Reset inf->control.
13634
13635 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
13636
13637         * ada-lang.c (ada_to_fixed_value_create): Delete advance
13638         declaration.
13639
13640 2018-02-14  Pedro Alves  <palves@redhat.com>
13641
13642         * frame-unwind.c (frame_unwind_try_unwinder): Always call
13643         frame_cleanup_after_sniffer on exception.
13644
13645 2018-02-14  Tom Tromey  <tom@tromey.com>
13646
13647         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
13648         const.
13649         (solib_bfd_open): Make pathname const.
13650         * solib.c (solib_bfd_open): Make pathname const.
13651         * solib-spu.c (spu_bfd_fopen): Make name const.
13652         (spu_bfd_open): Make pathname const.
13653         * solib-darwin.c (darwin_bfd_open): Make pathname const.
13654         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
13655
13656 2018-02-14  Tom Tromey  <tom@tromey.com>
13657
13658         * symfile.c (symfile_bfd_open): Update.
13659         * source.h (openp, source_full_path_of, find_and_open_source):
13660         Change argument type to unique_xmalloc_ptr.
13661         * source.c (openp): Take a unique_xmalloc_ptr.
13662         (source_full_path_of, find_and_open_source): Likewise.
13663         (open_source_file, symtab_to_fullname): Update.
13664         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
13665         unique_xmalloc_ptr.
13666         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
13667         (exec_file_find): Update.
13668         * psymtab.c (psymtab_to_fullname): Update.
13669         * nto-tdep.h (nto_find_and_open_solib): Update.
13670         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
13671         unique_xmalloc_ptr.
13672         * exec.c (exec_file_attach): Update.
13673         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
13674         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
13675
13676 2018-02-14  Tom Tromey  <tom@tromey.com>
13677
13678         * solib.c: Include source.h.
13679         * nto-tdep.c: Include source.h.
13680         * mi/mi-cmd-env.c: Include source.h.
13681         * infcmd.c: Include source.h.
13682         * exec.c: Include source.h.
13683         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
13684         (add_path, directory_switch, source_path, init_source_path): Move
13685         declarations...
13686         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
13687         (add_path, directory_switch, source_path, init_source_path):
13688         ...here.
13689
13690 2018-02-14  Tom Tromey  <tom@tromey.com>
13691
13692         * solist.h (exec_file_find, solib_find): Return
13693         unique_xmalloc_ptr.
13694         (solib_bfd_fopen): Take a const char *.
13695         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
13696         (exec_file_find, solib_find): Likewise.
13697         (solib_bfd_fopen): Do not take ownership of "pathname".
13698         (solib_bfd_open): Use unique_xmalloc_ptr.
13699         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
13700         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
13701         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
13702         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
13703
13704 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
13705
13706         * ada-lang.c (name_match_type_from_name): Remove reference to
13707         ada_name_for_lookup in function's documentation.
13708         * ada-lang.h (ada_name_for_lookup): Delete declaration.
13709
13710 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
13711
13712         * defs.h (enum openp_flags): New enum.
13713         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
13714         Move to enum openp_flags.
13715         (openp_flags): New enum flags.
13716         (openp): Change parameter type to openp_flags.
13717         * source.c (openp): Change parameter type to openp_flags.
13718         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
13719         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
13720
13721 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
13722
13723         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
13724         per-command.
13725
13726 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
13727
13728         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
13729         into...
13730         (class dwarf2_queue_guard): ...the destructor of this new class.
13731         (dw2_do_instantiate_symtab): Create instance of the new class
13732         dwarf2_queue_guard, remove cleanup.
13733
13734 2018-02-09  Tom Tromey  <tom@tromey.com>
13735
13736         * source.c (find_source_lines): Don't reference past the end of
13737         the vector.
13738
13739 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13740
13741         * remote.c (remote_btrace_maybe_reopen): Change error message.
13742         * btrace.c (btrace_enable): Likewise.
13743         (parse_xml_btrace): Likewise.
13744         (parse_xml_btrace_conf): Likewise.
13745
13746 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13747
13748         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
13749         (linux_enable_pt, linux_enable_bts): Call
13750         diagnose_perf_event_open_fail.
13751
13752 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13753
13754         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
13755         Remove parameter and change return type.  Update callers.  Move it.
13756         (linux_enable_bts, linux_enable_pt): Improve error message.
13757         (linux_enable_pt): Remove zero buffer size check.
13758         (linux_enable_btrace): Improve error messages.  Remove NULL return
13759         check.
13760
13761 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13762
13763         * btrace.c (btrace_enable): Remove target_supports_btrace call.
13764         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
13765         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
13766         (linux_supports_pt, linux_supports_btrace): Remove.
13767         (linux_enable_bts): Call cpu_supports_bts.
13768         * nat/linux-btrace.h (linux_supports_btrace): Remove.
13769         * remote.c (remote_supports_btrace): Remove.
13770         (init_remote_ops): Remove remote_supports_btrace.
13771         * target-delegates.c: Regenerated.
13772         * target.c (target_supports_btrace): Remove.
13773         * target.h (target_ops) <to_supports_btrace>: Remove
13774         (target_supports_btrace): Remove.
13775         * x86-linux-nat.c (x86_linux_create_target): Remove
13776         linux_supports_btrace.
13777
13778 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13779
13780         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
13781         btrace failed.
13782         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
13783         exception and use message in own exception.
13784
13785 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13786
13787         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
13788         (perf_event_pt_event_type): Use gdb_file_up.
13789         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
13790         scoped_fd, and scoped_mmap.
13791
13792 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13793
13794         * common/scoped_mmap.h: New.
13795         * unittests/scoped_mmap-selftest.c: New.
13796         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13797         unittests/scoped_mmap-selftest.c.
13798
13799 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13800
13801         * common/scoped_fd.h: New.
13802         * unittests/scoped_fd-selftest.c: New.
13803         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13804         unittests/scoped_fd-selftest.c.
13805
13806 2018-02-09  Tom Tromey  <tom@tromey.com>
13807
13808         * auto-load.c (auto_load_section_scripts): Use
13809         gdb::unique_xmalloc_ptr.
13810
13811 2018-02-09  Tom Tromey  <tom@tromey.com>
13812
13813         * auto-load.c (execute_script_contents): Use std::string.
13814
13815 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
13816
13817         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
13818         Python function, rather than a new command.
13819
13820 2018-02-08  Tom Tromey  <tom@tromey.com>
13821
13822         * solib.c (solib_find_1): Use std::string.
13823         (solib_bfd_fopen): Use unique_xmalloc_ptr.
13824
13825 2018-02-08  Tom Tromey  <tom@tromey.com>
13826
13827         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
13828
13829 2018-02-08  Tom Tromey  <tom@tromey.com>
13830
13831         * source.c (find_source_lines): Use gdb::def_vector.
13832
13833 2018-02-08  Tom Tromey  <tom@tromey.com>
13834
13835         * macrocmd.c (struct temporary_macro_definition): New.
13836         (macro_define_command): Use temporary_macro_definition.  Remove
13837         cleanups.
13838         (free_macro_definition_ptr): Remove.
13839
13840 2018-02-08  Tom Tromey  <tom@tromey.com>
13841
13842         * macroexp.c (maybe_expand): Use std::string.
13843
13844 2018-02-08  Tom Tromey  <tom@tromey.com>
13845
13846         * macroexp.c (struct macro_buffer): Add initializers for some
13847         members.
13848         (init_buffer, init_shared_buffer, free_buffer)
13849         (free_buffer_return_text): Remove.
13850         (macro_buffer): New constructors.
13851         (~macro_buffer): New destructor.
13852         (macro_buffer::set_shared): New method.
13853         (macro_buffer::resize_buffer, macro_buffer::appendc)
13854         (macro_buffer::appendmem): Now methods, not free functions.
13855         (set_token, append_tokens_without_splicing, stringify)
13856         (macro_stringify): Update.
13857         (gather_arguments): Change return type.  Remove argc_p argument,
13858         add args_ptr argument.  Use std::vector.
13859         (substitute_args): Remove argc argument.  Accept std::vector.
13860         (expand): Update.  Use std::vector.
13861         (scan, macro_expand, macro_expand_next): Update.
13862
13863 2018-02-08  Tom Tromey  <tom@tromey.com>
13864
13865         * symtab.c (default_collect_symbol_completion_matches_break_on):
13866         Use unique_xmalloc_ptr.
13867         * macroscope.h: (sal_macro_scope, user_macro_scope)
13868         (default_macro_scope): Return unique_xmalloc_ptr.
13869         * macroscope.c (sal_macro_scope, user_macro_scope)
13870         (default_macro_scope): Return unique_xmalloc_ptr.
13871         * macroexp.h (macro_expand, macro_expand_once): Return
13872         unique_xmalloc_ptr.
13873         * macroexp.c (macro_expand, macro_expand_once): Return
13874         unique_xmalloc_ptr.
13875         * macrocmd.c (macro_expand_command, macro_expand_once_command)
13876         (info_macro_command, info_macros_command): Use
13877         unique_xmalloc_ptr.
13878         * compile/compile-c-support.c (write_macro_definitions): Use
13879         unique_xmalloc_ptr.
13880         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
13881
13882 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
13883
13884         * value.c (value_static_field): Assign field type instead of
13885         containing type when returning an optimized out value.
13886
13887 2018-02-06  Yao Qi  <yao.qi@linaro.org>
13888
13889         * ft32-tdep.c (ft32_read_pc): Remove.
13890         (ft32_write_pc): Remove.
13891         (ft32_gdbarch_init): Update.
13892         * m32r-tdep.c (m32r_read_pc): Remove.
13893         (m32r_gdbarch_init): Update.
13894         * mep-tdep.c (mep_read_pc): Remove.
13895         (mep_gdbarch_init): Update.
13896         * microblaze-tdep.c (microblaze_write_pc): Remove.
13897         (microblaze_gdbarch_init): Update.
13898         * mn10300-tdep.c (mn10300_read_pc): Remove.
13899         (mn10300_write_pc): Remove.
13900         (mn10300_gdbarch_init): Update.
13901         * moxie-tdep.c (moxie_read_pc): Remove.
13902         (moxie_write_pc): Remove.
13903         (moxie_gdbarch_init): Update.
13904
13905 2018-02-06  Yao Qi  <yao.qi@linaro.org>
13906
13907         * expprint.c (print_subexp_standard): Handle
13908         OP_F77_UNDETERMINED_ARGLIST.
13909         (dump_subexp_body_standard): Likewise.
13910
13911 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
13912
13913         * target-descriptions.c (tdesc_element_visitor) Add empty
13914         implementations.
13915         (tdesc_type): Move make_gdb_type from here.
13916         (tdesc_type_builtin): Likewise.
13917         (tdesc_type_vector): Likewise.
13918         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
13919         (make_gdb_type_struct): Move from tdesc_type_with_fields.
13920         (make_gdb_type_union): Likewise.
13921         (make_gdb_type_flags): Likewise.
13922         (make_gdb_type_enum): Likewise.
13923         (make_gdb_type): New function.
13924         (tdesc_register_type): Use static make_gdb_type.
13925
13926 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
13927
13928         * infcmd.c (default_print_one_register_info): Align natural-format
13929         column values consistently one under another.
13930         (pad_to_column): New function.
13931
13932 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
13933
13934         * dwarf2read.c (dwarf2_physname): Move commment.
13935
13936 2018-02-01  Leszek Swirski  <leszeks@google.com>
13937
13938         * varobj.c (varobj_formatted_print_options): Allow recursive
13939         pretty printing if pretty printing is enabled.
13940
13941 2018-02-01  Leszek Swirski  <leszeks@google.com>
13942
13943         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
13944         names after a structop as a filename.
13945
13946 2018-02-01  Yao Qi  <yao.qi@linaro.org>
13947
13948         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
13949         (arm_record_coproc_data_proc): Likewise.
13950
13951 2018-02-01  Yao Qi  <yao.qi@linaro.org>
13952
13953         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
13954
13955 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
13956
13957         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
13958         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
13959
13960 2018-01-31  Pedro Alves  <palves@redhat.com>
13961
13962         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
13963         * inflow.c (child_terminal_save_inferior): Wrap reference to
13964         tcgetpgrp in HAVE_TERMIOS_H.
13965         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
13966         _WIN32.
13967         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
13968         always iterate over all inferiors.
13969         (gdbsim_cntrl_c): Adjust.
13970         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
13971
13972 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
13973
13974         * gdbtypes.c (lookup_array_range_type): Make sure the array's
13975         index type is objfile-owned if the element type is as well.
13976
13977 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
13978
13979         GDB 8.1 released.
13980
13981 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13982
13983         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
13984         "features/s390x-linux64.c".
13985         (_initialize_s390_linux_tdep): Remove initialization of tdescs
13986         s390_linux32 and s390x_linux64.
13987         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
13988         default tdesc.
13989         * s390-tdep.c: Include "features/s390-linux32.c" and
13990         "features/s390x-linux64.c".
13991         (s390_tdesc_valid): Add check for tdesc_has_registers.
13992         (s390_gdbarch_init): Make sure there is always a valid tdesc.
13993         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
13994         tdesc_s390x_linux64.
13995         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
13996         tdesc_s390x_linux64 to...
13997         * s390-tdep.h: ...here.
13998
13999 2018-01-30  Pedro Alves  <palves@redhat.com>
14000
14001         PR gdb/13211
14002         * config.in, configure: Regenerate.
14003         * configure.ac: Check for getpgid.
14004         * go32-nat.c (go32_pass_ctrlc): New.
14005         (go32_target): Install it.
14006         * inf-child.c (inf_child_target): Install
14007         child_terminal_save_inferior, child_pass_ctrlc and
14008         child_interrupt.
14009         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
14010         (inf_ptrace_target): No longer install it.
14011         * infcmd.c (interrupt_target_1): Adjust.
14012         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
14013         (child_interrupt): Declare.
14014         (inferior::terminal_state): New.
14015         * inflow.c (struct terminal_info): Update comments.
14016         (inferior_process_group): Delete.
14017         (terminal_is_ours): Delete.
14018         (gdb_tty_state): New.
14019         (child_terminal_init): Adjust.
14020         (is_gdb_terminal, sharing_input_terminal_1)
14021         (sharing_input_terminal): New functions.
14022         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
14023         Set the process's actual process group in the foreground if
14024         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
14025         mark terminal as the inferior's if not sharing GDB's terminal.
14026         Don't check attach_flag.
14027         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
14028         pass down a target_terminal_state.
14029         (child_terminal_save_inferior): New, factored out from ...
14030         (child_terminal_ours_1): ... this.  Handle
14031         target_terminal_state::is_ours_for_output.
14032         (child_interrupt, child_pass_ctrlc): New.
14033         (inflow_inferior_exit): Clear the inferior's terminal_state.
14034         (copy_terminal_info): Copy the inferior's terminal state.
14035         (_initialize_inflow): Remove reference to terminal_is_ours.
14036         * inflow.h (inferior_process_group): Delete.
14037         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
14038         * procfs.c (procfs_target): Don't install procfs_interrupt.
14039         (procfs_interrupt): Delete.
14040         * remote.c (remote_serial_quit_handler): Adjust.
14041         (remote_interrupt): Remove ptid parameter.  Adjust.
14042         * target-delegates.c: Regenerate.
14043         * target.c: Include "terminal.h".
14044         (target_terminal::terminal_state): Rename to ...
14045         (target_terminal::m_terminal_state): ... this.
14046         (target_terminal::init): Adjust.
14047         (target_terminal::inferior): Adjust to per-inferior
14048         terminal_state.
14049         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
14050         (target_terminal::ours, target_terminal::ours_for_output): Use
14051         target_terminal_is_ours_kind.
14052         (target_interrupt): Remove ptid parameter.  Adjust.
14053         (default_target_pass_ctrlc): Adjust.
14054         * target.h (target_ops::to_terminal_save_inferior): New field.
14055         (target_ops::to_interrupt): Remove ptid_t parameter.
14056         (target_interrupt): Remove ptid_t parameter.  Update comment.
14057         (target_pass_ctrlc): Update comment.
14058         * target/target.h (target_terminal_state): New scoped enum,
14059         factored out of ...
14060         (target_terminal::terminal_state): ... here.
14061         (target_terminal::inferior): Update comments.
14062         (target_terminal::restore_inferior): New.
14063         (target_terminal::is_inferior, target_terminal::is_ours)
14064         (target_terminal::is_ours_for_output): Adjust.
14065         (target_terminal::scoped_restore_terminal_state): Adjust to
14066         rename, and call restore_inferior() instead of inferior().
14067         (target_terminal::scoped_restore_terminal_state::m_state): Change
14068         type.
14069         (target_terminal::terminal_state): Rename to ...
14070         (target_terminal::m_terminal_state): ... this and change type.
14071
14072 2018-01-30  Pedro Alves  <palves@redhat.com>
14073
14074         * linux-nat.c (wait_for_signal): New function.
14075         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
14076         directly.
14077         (async_terminal_is_ours)
14078         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
14079         (linux_nat_add_target): Don't override
14080         to_terminal_inferior/to_terminal_ours.
14081
14082 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
14083
14084         * remote.c (remote_follow_fork): Don't call "detach_inferior".
14085
14086 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
14087
14088         * dwarf2read.c (free_dwo_files): Add forward-declaration.
14089         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
14090         dwarf2_per_objfile_free here.
14091         (dwarf2_per_objfile_free): Remove.
14092         (_initialize_dwarf2_read): Don't register
14093         dwarf2_per_objfile_free as a registry cleanup.
14094
14095 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
14096
14097         Avoid compilation errors in MinGW native builds
14098
14099         The error is triggered by including python-internal.h, and the
14100         error message is:
14101
14102              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
14103                       from build-gnulib/import/math.h:27,
14104                       from d:/usr/Python26/include/pyport.h:235,
14105                       from d:/usr/Python26/include/Python.h:58,
14106                       from python/python-internal.h:94,
14107                       from python/py-arch.c:24:
14108              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
14109         using ::hypot;
14110                 ^~~~~
14111
14112         This happens because Python headers define 'hypot' to expand t
14113         '_hypot' in the Windows builds.
14114         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
14115         'hypoth'.  This avoids a compilation error.
14116
14117 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
14118
14119         * MAINTAINERS (Write After Approval): Fix ordering.
14120
14121 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
14122
14123         * MAINTAINERS (Write After Approval): Add Alan Hayward.
14124
14125 2018-01-26  Alan Modra  <amodra@gmail.com>
14126
14127         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
14128         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
14129         Remove nop.  Make const.  Comment.
14130         (powerpc32_plt_stub_so_2): New.
14131         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
14132         Correct count.  Update uses.
14133         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
14134         Move common code reading PLT entry word.  Correct
14135         powerpc32_plt_stub PLT address calculation.
14136         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
14137         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
14138         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
14139         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
14140         (ppc64_standard_linkage8): Likewise.
14141         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
14142         Correct insns description.
14143         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
14144
14145 2018-01-24  Pedro Alves  <palves@redhat.com>
14146
14147         GCC PR libstdc++/83906
14148         * gdbtypes.c (operator==(const dynamic_prop &,
14149         const dynamic_prop &)): New.
14150         (operator==(const range_bounds &, const range_bounds &)): New.
14151         (check_types_equal): Use them instead of memcmp.
14152         * gdbtypes.h (operator==(const dynamic_prop &,
14153         const dynamic_prop &)): Declare.
14154         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
14155         (operator==(const range_bounds &, const range_bounds &)): Declare.
14156         (operator!=(const range_bounds &, const range_bounds &)): Declare.
14157
14158 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14159
14160         * s390-linux-tdep.c (s390_record_address_mask)
14161         (s390_record_calc_disp_common, s390_record_calc_disp)
14162         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
14163         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
14164         (s390_process_record): Move to s390-tdep.c.
14165         (s390_linux_init_abi_any): Adjust.
14166         * s390-tdep.c (s390_record_address_mask)
14167         (s390_record_calc_disp_common, s390_record_calc_disp)
14168         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
14169         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
14170         (s390_process_record): Moved from s390-linux-tdep.c
14171         (s390_gdbarch_init): Adjust.
14172
14173 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14174
14175         * s390-linux-nat.c (s390-tdep.h): New include.
14176         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
14177         (HFILES_NO_SRCDIR): Add s390-tdep.h.
14178         (ALLDEPFILES): Add s390-tdep.c.
14179         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
14180         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
14181         * s390-tdep.h: ...this.  New file.
14182         * s390-linux-tdep.c (s390-tdep.h): New include.
14183         (_initialize_s390_tdep): Rename to...
14184         (_initialize_s390_linux_tdep): ...this and adjust.
14185         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
14186         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
14187         s390-tdep.h.
14188         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
14189         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
14190         (s390_is_partial_instruction, s390_software_single_step)
14191         (is_non_branch_ril, s390_displaced_step_copy_insn)
14192         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
14193         (s390_prologue_data, s390_addr, s390_store, s390_load)
14194         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
14195         (s390_register_call_saved, s390_guess_tracepoint_registers)
14196         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
14197         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
14198         (s390_pseudo_register_name, s390_pseudo_register_type)
14199         (s390_pseudo_register_read, s390_pseudo_register_write)
14200         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
14201         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
14202         (s390_addr_bits_remove, s390_address_class_type_flags)
14203         (s390_address_class_type_flags_to_name)
14204         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
14205         (s390_function_arg_float, s390_function_arg_vector)
14206         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
14207         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
14208         (s390_frame_align, s390_register_return_value, s390_return_value)
14209         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
14210         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
14211         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
14212         (s390_trad_frame_prev_register, s390_unwind_cache)
14213         (s390_prologue_frame_unwind_cache)
14214         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
14215         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
14216         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
14217         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
14218         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
14219         (s390_frame_base_address, s390_local_base_address)
14220         (s390_frame_base, s390_gcc_target_options)
14221         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
14222         (s390_validate_reg_range, s390_tdesc_valid)
14223         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
14224         * s390-tdep.c: ...this.  New file.
14225
14226 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14227
14228         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
14229         (s390_process_record, s390_gdbarch_tdep_alloc)
14230         (s390_linux_init_abi_any): Use/set new hook.
14231
14232 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14233
14234         * s390-linux-tdep.c (osabi.h): New include.
14235         (s390_linux_init_abi_31, s390_linux_init_abi_64)
14236         (s390_linux_init_abi_any): New functions.
14237         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
14238
14239 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14240
14241         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
14242         tdesc_has_registers check
14243
14244 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14245
14246         * s390-linux-tdep.c (s390_tdesc_valid): New function.
14247         (s390_validate_reg_range): New macro.
14248         (s390_gdbarch_init): Adjust.
14249
14250 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14251
14252         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
14253         (s390_gdbarch_tdep_alloc): Adjust.
14254         (s390_gdbarch_init): Adjust.
14255
14256 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14257
14258         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
14259         <have_tdb>: Change type to bool.
14260         (s390_gdbarch_tdep_alloc): Adjust.
14261         (s390_gdbarch_init): Adjust.
14262
14263 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14264
14265         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
14266         (gdbarch_tdep) <have_upper, have_vx>: New fields.
14267         (s390_gdbarch_tdep_alloc): New function.
14268         (s390_gdbarch_init): Allocate tdep at start and use its fields
14269         instead of separate variables.
14270
14271 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14272
14273         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
14274         when looking for cached gdbarch and add comment for remaining.
14275
14276 2018-01-22  Pedro Alves  <palves@redhat.com>
14277             Sergio Durigan Junior  <sergiodj@redhat.com>
14278
14279         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
14280         case.
14281
14282 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
14283
14284         * MAINTAINERS: Update my company e-mail address.
14285
14286 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14287
14288         * regcache.c (cooked_write_test): New function.
14289         (_initialize_regcache): Register the test.
14290
14291 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14292
14293         * ia64-tdep.c (ia64_pseudo_register_read): Call
14294         regcache->cooked_read instead of regcache_cooked_read_unsigned.
14295         * m32c-tdep.c (m32c_cat_read): Likewise.
14296         (m32c_r3r2r1r0_read): Likewise.
14297         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
14298         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
14299
14300 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14301
14302         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
14303         method raw_read instead of regcache_raw_read.
14304         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
14305         * arm-tdep.c (arm_neon_quad_read): Likewise.
14306         * avr-tdep.c (avr_pseudo_register_read): Likewise.
14307         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
14308         * frv-tdep.c (frv_pseudo_register_read): Likewise.
14309         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
14310         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
14311         (i386_pseudo_register_read_into_value): Likewise.
14312         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
14313         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
14314         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
14315         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
14316         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
14317         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
14318         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
14319         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
14320         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
14321
14322 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14323
14324         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
14325         * configure.tgt: Remove target mt.
14326         * mt-tdep.c: Remove.
14327         * regcache.c (cooked_read_test): Remove the check for mt.
14328
14329 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14330
14331         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
14332         instead of gdbarch_pseudo_register_read_value.
14333
14334 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
14335
14336         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
14337         language is Ada.
14338
14339 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
14340
14341         * linespec.c (create_sals_line_offset): Remove code that preserved
14342         the symtab_and_line's line number.
14343
14344 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14345
14346         * varobj.c (varobj_create): Don't set valid_block when creating a
14347         floating varobj.
14348
14349 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14350
14351         * varobj.c (varobj_create): Remove out of date comment.
14352
14353 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14354
14355         PR mi/20395
14356         * ada-exp.y (write_var_from_sym): Pass extra parameter when
14357         updating innermost block.
14358         * parse.c (innermost_block_tracker::update): Take extra type
14359         parameter, and check types match before updating innermost block.
14360         (write_dollar_variable): Update innermost block for registers.
14361         * parser-defs.h (enum innermost_block_tracker_type): New enum.
14362         (innermost_block_tracker::innermost_block_tracker): Initialise
14363         m_types member.
14364         (innermost_block_tracker::reset): Take type parameter.
14365         (innermost_block_tracker::update): Take type parameter, and pass
14366         type through as needed.
14367         (innermost_block_tracker::m_types): New member.
14368         * varobj.c (varobj_create): Pass type when reseting innermost
14369         block.
14370
14371 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14372
14373         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
14374         * ada-lang.c (resolve_subexp): Likewise.
14375         * breakpoint.c (set_breakpoint_condition) Likewise.
14376         (watch_command_1) Likewise.
14377         * c-exp.y (variable): Likewise.
14378         * d-exp.y (PrimaryExpression): Likewise.
14379         * f-exp.y (variable): Likewise.
14380         * go-exp.y (variable): Likewise.
14381         * m2-exp.y (variable): Likewise.
14382         * objfiles.c (objfile::~objfile): Likewise.
14383         * p-exp.y (variable): Likewise.
14384         * parse.c (innermost_block): Change type.
14385         * parser-defs.h (class innermost_block_tracker): New.
14386         (innermost_block): Change to innermost_block_tracker.
14387         * printcmd.c (display_command): Switch to innermost_block API.
14388         (do_one_display): Likewise.
14389         * rust-exp.y (do_one_display): Likewise.
14390         * symfile.c (clear_symtab_users): Likewise.
14391         * varobj.c (varobj_create): Switch to innermost_block API, replace
14392         use of innermost_block with block stored on varobj object.
14393
14394 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14395
14396         * expression.h (innermost_block): Remove declaration.
14397         * varobj.c: Add 'parser-defs.h' include.
14398
14399 2018-01-19  Tom Tromey  <tom@tromey.com>
14400
14401         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
14402         symbols in the static and global blocks.
14403
14404 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
14405
14406         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
14407         gdb_ptrace.h, and move including gdb_wait.h ...
14408         * nat/linux-ptrace.h: ... to here.
14409
14410 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14411
14412         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
14413         inf_ptrace_detach_success.
14414         (inf_ptrace_detach_success): Add inferior parameter, use it
14415         instead of inferior_ptid, pass it to detach_inferior.
14416         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
14417         parameter.
14418         * inferior.c (detach_inferior): Add overload that takes an
14419         inferior object.
14420         * inferior.h (detach_inferior): Likewise.
14421         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
14422         use inferior_ptid, adjust call to inf_ptrace_detach_success.
14423         * linux-thread-db.c (thread_db_detach): Use inf parameter.
14424
14425 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14426
14427         * target.h (struct target_ops) <to_detach>: Add inferior
14428         parameter.
14429         (target_detach): Likewise.
14430         * target.c (dispose_inferior): Pass inferior down.
14431         (target_detach): Pass inferior down.  Assert that it is equal to
14432         the current inferior.
14433         * aix-thread.c (aix_thread_detach): Pass inferior down.
14434         * corefile.c (core_file_command): Pass current_inferior() down.
14435         * corelow.c (core_detach): Add inferior parameter.
14436         * darwin-nat.c (darwin_detach): Likewise.
14437         * gnu-nat.c (gnu_detach): Likewise.
14438         * inf-ptrace.c (inf_ptrace_detach): Likewise.
14439         * infcmd.c (detach_command): Pass current_inferior() down to
14440         target_detach.
14441         * infrun.c (follow_fork_inferior): Pass parent_inf to
14442         target_detach.
14443         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
14444         target_detach.
14445         * linux-nat.c (linux_nat_detach): Add inferior parameter.
14446         * linux-thread-db.c (thread_db_detach): Likewise.
14447         * nto-procfs.c (procfs_detach): Likewise.
14448         * procfs.c (procfs_detach): Likewise.
14449         * record.c (record_detach): Likewise.
14450         * record.h (struct inferior): Forward-declare.
14451         (record_detach): Add inferior parameter.
14452         * remote-sim.c (gdbsim_detach): Likewise.
14453         * remote.c (remote_detach_1): Likewise.
14454         (remote_detach): Likewise.
14455         (extended_remote_detach): Likewise.
14456         * sol-thread.c (sol_thread_detach): Likewise.
14457         * target-debug.h (target_debug_print_inferior_p): New macro.
14458         * target-delegates.c: Re-generate.
14459         * top.c (kill_or_detach): Pass inferior down to target_detach.
14460         * windows-nat.c (windows_detach): Add inferior parameter.
14461
14462 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14463
14464         * target.h (struct target_ops) <to_detach>: Remove args
14465         parameter.
14466         (target_detach): Likewise.
14467         * target.c (dispose_inferior): Adjust.
14468         (target_detach): Remove args parameter, adjust.
14469         * aix-thread.c (aix_thread_detach): Adjust.
14470         * corefile.c (core_file_command): Adjust.
14471         * corelow.c (core_detach): Adjust.
14472         * darwin-nat.c (darwin_detach): Adjust.
14473         * gnu-nat.c (gnu_detach): Adjust.
14474         * inf-ptrace.c (inf_ptrace_detach): Adjust.
14475         * infcmd.c (detach_command): Adjust
14476         * infrun.c (follow_fork_inferior): Adjust.
14477         (handle_vfork_child_exec_or_exit): Adjust.
14478         * linux-fork.c (linux_fork_detach): Remove args parameter.
14479         * linux-fork.h (linux_fork_detach): Likewise.
14480         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
14481         * linux-thread-db.c (thread_db_detach): Likewise.
14482         * nto-procfs.c (procfs_detach): Likewise.
14483         * procfs.c (procfs_detach): Likewise.
14484         (do_detach): Remove signo parameter.
14485         * record.c (record_detach): Remove args parameter.
14486         * record.h (record_detach): Likewise.
14487         * remote-sim.c (gdbsim_detach): Likewise.
14488         * remote.c (remote_detach_1): Likewise.
14489         (remote_detach): Likewise.
14490         (extended_remote_detach): Likewise.
14491         * sol-thread.c (sol_thread_detach): Likewise.
14492         * target-delegates.c: Re-generate.
14493         * top.c (struct qt_args) <args>: Remove field.
14494         (kill_or_detach): Don't pass args.
14495         (quit_force): Don't set args.
14496         * windows-nat.c (windows_detach): Remove args parameter.
14497
14498 2018-01-19  Yao Qi  <yao.qi@linaro.org>
14499
14500         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
14501         (arm_linux_init_abi): Install it.
14502
14503 2018-01-19  Yao Qi  <yao.qi@linaro.org>
14504
14505         * osabi.c (gdb_osabi_names): Extend the regexp for
14506         arm-linux-gnueabihf.
14507
14508 2018-01-18  Yao Qi  <yao.qi@linaro.org>
14509
14510         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
14511         m_abbrevs.
14512         (abbrev_table::add_abbrev): Update.
14513         (abbrev_table::lookup_abbrev): Update.
14514
14515 2018-01-18  Yao Qi  <yao.qi@linaro.org>
14516
14517         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
14518
14519 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
14520
14521         * compile/compile.c (compile_to_object): Convert "triplet_rx"
14522         to "std::string".
14523
14524 2018-01-17  Tom Tromey  <tom@tromey.com>
14525
14526         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
14527
14528 2018-01-17  Tom Tromey  <tom@tromey.com>
14529
14530         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
14531         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
14532         (create_array_type_with_stride): Update.
14533         * dwarf2read.c (set_die_type): Update.
14534
14535 2018-01-17  Tom Tromey  <tom@tromey.com>
14536
14537         * dwarf2read.c (delayed_method_info): Remove typedef.
14538         (dwarf2_cu::method_info): Now a std::vector.
14539         (add_to_method_list): Update.
14540         (free_delayed_list): Remove.
14541         (compute_delayed_physnames): Update.
14542         (process_full_comp_unit, process_full_type_unit): Clear the method
14543         list.  Remove cleanups.
14544         (psymtab_include_file_name): Add name_holder parameter.  Use
14545         unique_xmalloc_ptr.
14546         (dwarf_decode_lines): Update.
14547
14548 2018-01-17  Tom Tromey  <tom@tromey.com>
14549             Simon Marchi  <simon.marchi@ericsson.com>
14550
14551         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
14552         (dwarf2_per_objfile::free_cached_comp_units)
14553         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
14554         (init_cutu_and_read_dies_no_follow): Update.
14555         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
14556         (dwarf2_cu::~dwarf2_cu): New.
14557         (free_heap_comp_unit, free_stack_comp_unit): Remove.
14558         (age_cached_comp_units, free_one_cached_comp_unit): Update.
14559
14560 2018-01-17  Tom Tromey  <tom@tromey.com>
14561             Simon Marchi  <simon.marchi@ericsson.com>
14562
14563         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
14564         (struct die_reader_specs) <abbrev_table>: New member.
14565         (struct abbrev_table): Add constructor.
14566         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
14567         <abbrev_obstack>: Now an auto_obstack.
14568         (abbrev_table_up): New typedef.
14569         (init_cu_die_reader): Add abbrev_table parameter.
14570         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
14571         Add result_dwo_abbrev_table.
14572         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
14573         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
14574         Update.
14575         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
14576         parameter.
14577         (skip_children): Update.
14578         (abbrev_table::alloc_abbrev): Rename from
14579         abbrev_table_alloc_abbrev.
14580         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
14581         (abbrev_table::lookup_abbrev): Rename from
14582         abbrev_table_lookup_abbrev.
14583         (abbrev_table_read_table): Return abbrev_table_up.
14584         (abbrev_table_free, abbrev_table_free_cleanup)
14585         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
14586         (load_partial_dies): Update.
14587
14588 2018-01-17  Tom Tromey  <tom@tromey.com>
14589
14590         * dwarf2read.c (dwarf2_compute_name): Update comment.
14591         (read_func_scope, read_variable): Update.
14592         (new_symbol): Remove.
14593         (new_symbol_full): Rename to new_symbol.
14594
14595 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
14596
14597         PR gdb/16577
14598         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
14599         a warning instead of throwing an error, set section size to 0 and return
14600         NULL.
14601         * gdb_bfd.h (gdb_bfd_map_section): Update description.
14602
14603 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14604
14605         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
14606         std::string.
14607         (linux_ptrace_attach_fail_reason_string): Likewise.
14608         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
14609         Likewise.
14610         (linux_ptrace_attach_fail_reason_string): Likewise.
14611         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
14612
14613 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14614
14615         * linux-nat.c (linux_nat_attach): Remove xstrdup.
14616
14617 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
14618
14619         PR gdb/21559
14620         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
14621         checking for fs_base/gs_base fields in struct user_regs_struct.
14622         * configure: Regenerate.
14623
14624 2018-01-17  Yao Qi  <yao.qi@linaro.org>
14625
14626         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
14627         function.
14628         (aarch64_linux_init_abi): Install it to gdbarch hook
14629         gcc_target_options.
14630
14631 2018-01-15  Pedro Alves  <palves@redhat.com>
14632
14633         * common/signals-state-save-restore.c
14634         (save_original_signals_state): Fix typos.
14635
14636 2017-01-12  Tom Tromey  <tom@tromey.com>
14637             Sergio Durigan Junior  <sergiodj@redhat.com>
14638
14639         * Makefile.in (install-only): Install gdb-add-index.
14640
14641 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
14642
14643         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
14644
14645 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
14646
14647         * infrun.c (keep_going_pass_signal): Clear step-over info when
14648         insert_breakpoints fails.
14649
14650 2018-01-11  Pedro Alves  <palves@redhat.com>
14651
14652         PR gdb/22583
14653         * infrun.c (resume): Rename to ...
14654         (resume_1): ... this.
14655         (resume): Reimplement as wrapper around resume_1.
14656
14657 2018-01-11  Pedro Alves  <palves@redhat.com>
14658
14659         PR remote/22597
14660         * remote.c (remote_parse_stop_reply): Default to the last-set
14661         general thread instead of to 'magic_null_ptid'.
14662
14663 2018-01-10  Pedro Alves  <palves@redhat.com>
14664
14665         * language.h (language_get_symbol_name_matcher): Rename ...
14666         (get_symbol_name_matcher): ... this.
14667         * language.c (language_get_symbol_name_matcher): Ditto.
14668         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
14669         callers adjusted.
14670
14671 2018-01-10  Pedro Alves  <palves@redhat.com>
14672
14673         PR gdb/22670
14674         * dwarf2read.c
14675         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
14676         Adjust to use language_get_symbol_name_matcher instead of
14677         language_defn::la_get_symbol_name_matcher.
14678         * language.c (language_get_symbol_name_matcher): If in Ada mode
14679         and the lookup name is a verbatim match, return Ada's matcher.
14680         * language.h (language_get_symbol_name_matcher): Adjust comment.
14681         (ada_lookup_name_info::verbatim_p):: New method.
14682
14683 2018-01-10  Pedro Alves  <palves@redhat.com>
14684
14685         PR gdb/22670
14686         * ada-lang.c (ada_collect_symbol_completion_matches): If the
14687         minsym's language is language_auto or language_cplus, pass down
14688         language_ada instead.
14689         * symtab.c (compare_symbol_name): Don't frob symbol language here.
14690
14691 2018-01-10  Pedro Alves  <palves@redhat.com>
14692
14693         PR gdb/22670
14694         * minsyms.c (linkage_name_str): New function.
14695         (iterate_over_minimal_symbols): Use it.
14696
14697 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14698
14699         * NEWS: Document that 'info proc' now works on FreeBSD.
14700
14701 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14702
14703         * configure.ac: Check for kinfo_getfile in libutil.
14704         * configure: Regenerate.
14705         * config.in: Regenerate.
14706         * fbsd-nat.c: Include "fbsd-tdep.h".
14707         (fbsd_fetch_cmdline): New.
14708         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
14709         rather than calling error.
14710         (fbsd_info_proc): New.
14711         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
14712         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
14713         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
14714
14715 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14716
14717         * fbsd-nat.c (struct free_deleter): Remove.
14718         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
14719
14720 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14721
14722         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
14723         NULL for an empty pathname.
14724
14725 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14726
14727         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
14728         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
14729         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
14730         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
14731         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
14732         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
14733         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
14734         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
14735         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
14736         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
14737         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
14738         (fbsd_core_fetch_timeval, fbsd_print_sigset)
14739         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
14740         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
14741         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
14742
14743 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
14744
14745         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
14746         (gnu_xfer_auxv): New function.
14747         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
14748         TARGET_OBJECT_AUXV.
14749
14750 2018-01-08  Yao Qi  <yao.qi@linaro.org>
14751             Simon Marchi  <simon.marchi@ericsson.com>
14752
14753         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
14754         common/selftest.c.
14755         (COMMON_OBS): Remove selftest.o.
14756         * configure.ac: Append selftest-arch.c and common/selftest.c to
14757         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
14758         * configure: Re-generated.
14759         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
14760         GDB_SELF_TEST.
14761         (maintenance_info_selftests): Likewise.
14762
14763 2018-01-08  Xavier Roirand  <roirand@adacore.com>
14764
14765         * ada-valprint.c (val_print_packed_array_elements): Use
14766         proper number of elements when printing an array indexed
14767         by an enumeration type.
14768
14769 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14770
14771         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
14772         (dw2_get_file_names_reader): Adjust.
14773         (lookup_dwo_signatured_type): Adjust.
14774         (lookup_dwp_signatured_type): Adjust.
14775         (lookup_signatured_type): Adjust.
14776         (create_type_unit_group): Adjust.
14777         (get_type_unit_group): Adjust.
14778         (process_psymtab_comp_unit_reader): Adjust.
14779         (build_type_psymtabs_reader): Adjust.
14780         (scan_partial_symbols): Adjust.
14781         (add_partial_symbol): Adjust.
14782         (add_partial_subprogram): Adjust.
14783         (peek_die_abbrev): Adjust.
14784         (fixup_go_packaging): Adjust.
14785         (process_imported_unit_die): Adjust.
14786         (dwarf2_compute_name): Adjust.
14787         (dwarf2_physname): Adjust.
14788         (read_import_statement): Adjust.
14789         (handle_DW_AT_stmt_list): Adjust.
14790         (read_file_scope): Adjust.
14791         (read_func_scope): Adjust.
14792         (read_lexical_block_scope): Adjust.
14793         (read_call_site_scope): Adjust.
14794         (read_variable): Adjust.
14795         (dwarf2_rnglists_process): Adjust.
14796         (dwarf2_ranges_process): Adjust.
14797         (dwarf2_ranges_read): Adjust.
14798         (dwarf2_get_pc_bounds): Adjust.
14799         (dwarf2_record_block_ranges): Adjust.
14800         (dwarf2_add_field): Adjust.
14801         (dwarf2_add_member_fn): Adjust.
14802         (read_structure_type): Adjust.
14803         (process_structure_scope): Adjust.
14804         (read_enumeration_type): Adjust.
14805         (read_array_type): Adjust.
14806         (mark_common_block_symbol_computed): Adjust.
14807         (read_common_block): Adjust.
14808         (read_namespace_type): Adjust.
14809         (read_namespace): Adjust.
14810         (read_module_type): Adjust.
14811         (read_tag_pointer_type): Adjust.
14812         (read_tag_ptr_to_member_type): Adjust.
14813         (read_tag_string_type): Adjust.
14814         (read_subroutine_type): Adjust.
14815         (read_typedef): Adjust.
14816         (read_base_type): Adjust.
14817         (attr_to_dynamic_prop): Adjust.
14818         (read_subrange_type): Adjust.
14819         (read_unspecified_type): Adjust.
14820         (dwarf2_read_abbrevs): Adjust.
14821         (load_partial_dies): Adjust.
14822         (read_partial_die): Adjust.
14823         (find_partial_die): Adjust.
14824         (guess_partial_die_structure_name): Adjust.
14825         (fixup_partial_die): Adjust.
14826         (read_attribute_value): Adjust.
14827         (read_addr_index): Adjust.
14828         (read_addr_index_from_leb128): Adjust.
14829         (read_str_index): Adjust.
14830         (dwarf2_string_attr): Adjust.
14831         (get_debug_line_section): Adjust.
14832         (dwarf_decode_line_header): Adjust.
14833         (lnp_state_machine::check_line_address): Adjust.
14834         (dwarf_decode_lines_1): Adjust.
14835         (dwarf_decode_lines): Adjust.
14836         (dwarf2_start_symtab): Adjust.
14837         (var_decode_location): Adjust.
14838         (new_symbol_full): Adjust.
14839         (dwarf2_const_value_data): Adjust.
14840         (dwarf2_const_value_attr): Adjust.
14841         (dwarf2_const_value): Adjust.
14842         (die_type): Adjust.
14843         (die_containing_type): Adjust.
14844         (build_error_marker_type): Adjust.
14845         (lookup_die_type): Adjust.
14846         (guess_full_die_structure_name): Adjust.
14847         (anonymous_struct_prefix): Adjust.
14848         (determine_prefix): Adjust.
14849         (dwarf2_name): Adjust.
14850         (follow_die_ref_or_sig): Adjust.
14851         (follow_die_offset): Adjust.
14852         (follow_die_ref): Adjust.
14853         (follow_die_sig_1): Adjust.
14854         (follow_die_sig): Adjust.
14855         (get_signatured_type): Adjust.
14856         (get_DW_AT_signature_type): Adjust.
14857         (decode_locdesc): Adjust.
14858         (dwarf_decode_macros): Adjust.
14859         (cu_debug_loc_section): Adjust.
14860         (fill_in_loclist_baton): Adjust.
14861         (dwarf2_symbol_mark_computed): Adjust.
14862         (init_one_comp_unit): Don't assign
14863         dwarf2_cu::dwarf2_per_objfile.
14864         (set_die_type): Adjust.
14865
14866 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14867
14868         * dwarf2read.c (struct mapped_debug_names): Add constructor.
14869         <dwarf2_per_objfile>: New field.
14870         (dwarf2_per_objfile): Remove global.
14871         (get_dwarf2_per_objfile): New function.
14872         (set_dwarf2_per_objfile): New function.
14873         (dwarf2_build_psymtabs_hard): Change objfile parameter to
14874         dwarf2_per_objfile.
14875         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
14876         (read_abbrev_offset): Likewise.
14877         (read_indirect_string): Likewise.
14878         (read_indirect_line_string): Likewise.
14879         (read_indirect_string_at_offset): Likewise.
14880         (read_indirect_string_from_dwz): Likewise.
14881         (dwarf2_find_containing_comp_unit): Change objfile parameter to
14882         dwarf2_per_objfile.
14883         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
14884         (create_all_comp_units): Change objfile parameter to
14885         dwarf2_per_objfile.
14886         (create_all_type_units): Likewise.
14887         (process_queue): Add dwarf2_per_objfile parameter.
14888         (read_and_check_comp_unit_head): Likewise.
14889         (lookup_dwo_unit_in_dwp): Likewise.
14890         (get_dwp_file): Likewise.
14891         (process_cu_includes): Likewise.
14892         (struct free_dwo_file_cleanup_data): New struct.
14893         (dwarf2_has_info): Use get_dwarf2_per_objfile and
14894         set_dwarf2_per_objfile.
14895         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
14896         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
14897         context, adjust calls.
14898         (dw2_instantiate_symtab): Likewise.
14899         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
14900         (dw2_get_cu): Likewise.
14901         (create_cu_from_index_list): Change objfile parameter to
14902         dwarf2_per_objfile.
14903         (create_cus_from_index_list): Get dwarf2_per_objfile from
14904         context, adjust calls.
14905         (create_cus_from_index): Likewise.
14906         (create_signatured_type_table_from_index): Change objfile
14907         parameter to dwarf2_per_objfile.
14908         (create_signatured_type_table_from_debug_names): Change objfile
14909         parameter to dwarf2_per_objfile.
14910         (create_addrmap_from_index): Likewise.
14911         (create_addrmap_from_aranges): Likewise.
14912         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
14913         (dw2_setup): Remove.
14914         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
14915         context.
14916         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
14917         get_dwarf2_per_objfile.
14918         (dw2_forget_cached_source_info): Likewise.
14919         (dw2_map_symtabs_matching_filename): Likewise.
14920         (struct dw2_symtab_iterator) <index>: Remove.
14921         <dwarf2_per_objfile>: New field.
14922         (dw2_symtab_iter_init): Replace index parameter with
14923         dwarf2_per_objfile.
14924         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
14925         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
14926         (dw2_print_stats): Likewise.
14927         (dw2_dump): Likewise.
14928         (dw2_expand_symtabs_for_function): Likewise.
14929         (dw2_expand_all_symtabs): Likewise.
14930         (dw2_expand_symtabs_with_fullname): Likewise.
14931         (dw2_expand_marked_cus): Replace index and objfile parameters
14932         with dwarf2_per_objfile.
14933         (dw_expand_symtabs_matching_file_matcher): Add
14934         dwarf2_per_objfile parameter and adjust calls.
14935         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
14936         adjust calls.
14937         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
14938         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
14939         adjust calls.
14940         (create_cus_from_debug_names_list): Replace objfile parameter
14941         with dwarf2_per_objfile and adjust calls.
14942         (create_cus_from_debug_names): Likewise.
14943         (dwarf2_read_debug_names): Likewise.
14944         (mapped_debug_names::namei_to_name): Adjust call.
14945         (dw2_debug_names_iterator::next): Likewise.
14946         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
14947         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
14948         (dw2_debug_names_dump): Likewise.
14949         (dw2_debug_names_expand_symtabs_for_function): Likewise.
14950         (dw2_debug_names_expand_symtabs_matching): Likewise.
14951         (dwarf2_initialize_objfile): Likewise.
14952         (dwarf2_build_psymtabs): Likewise.
14953         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
14954         this_cu.
14955         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
14956         (read_and_check_comp_unit_head): Likewise.
14957         (read_abbrev_offset): Likewise.
14958         (create_debug_type_hash_table): Likewise.
14959         (create_debug_types_hash_table): Likewise.
14960         (create_all_type_units): Replace objfile parameter with
14961         dwarf2_per_objfile.
14962         (add_type_unit): Add dwarf2_per_objfile parameter.
14963         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
14964         with dwarf2_per_objfile.
14965         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
14966         (lookup_dwp_signatured_type): Likewise.
14967         (lookup_signatured_type): Likewise.
14968         (read_cutu_die_from_dwo): Likewise.
14969         (init_tu_and_read_dwo_dies): Likewise.
14970         (init_cutu_and_read_dies): Likewise.
14971         (init_cutu_and_read_dies_no_follow): Likewise.
14972         (allocate_type_unit_groups_table): Add objfile parameter.
14973         (create_type_unit_group): Use dwarf2_per_objfile from cu.
14974         (get_type_unit_group): Likewise.
14975         (process_psymtab_comp_unit): Update call.
14976         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
14977         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
14978         (print_tu_stats): Likewise.
14979         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
14980         in void* parameter.
14981         (build_type_psymtabs): Change objfile parameter to
14982         dwarf2_per_objfile.
14983         (process_skeletonless_type_unit): Use dwarf2_per_objfile
14984         passed in void* parameter.
14985         (process_skeletonless_type_units): Change objfile parameter to
14986         dwarf2_per_objfile.
14987         (set_partial_user): Likewise.
14988         (dwarf2_build_psymtabs_hard): Likewise.
14989         (read_comp_units_from_section): Likewise.
14990         (create_all_comp_units): Likewise.
14991         (scan_partial_symbols): Update calls.
14992         (add_partial_symbol): Likewise.
14993         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
14994         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
14995         (process_queue): Add dwarf2_per_objfile parameter.
14996         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
14997         (compute_compunit_symtab_includes): Likewise.
14998         (process_cu_includes): Add dwarf2_per_objfile parameter.
14999         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
15000         (process_full_type_unit): Likewise.
15001         (process_imported_unit_die): Update call.
15002         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
15003         (read_file_scope): Likewise.
15004         (allocate_dwo_file_hash_table): Add objfile parameter.
15005         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
15006         (create_cus_hash_table): Likewise.
15007         (create_dwp_hash_table): Likewise.
15008         (create_dwo_unit_in_dwp_v1): Likewise.
15009         (create_dwp_v2_section): Likewise.
15010         (create_dwo_unit_in_dwp_v2): Likewise.
15011         (lookup_dwo_unit_in_dwp): Likewise.
15012         (try_open_dwop_file): Likewise.
15013         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
15014         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
15015         cleanup to include a reference to dwarf2_per_objfile.
15016         (open_dwp_file): Add dwarf2_per_objfile parameter.
15017         (open_and_init_dwp_file): Likewise.
15018         (get_dwp_file): Likewise.
15019         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
15020         (queue_and_load_all_dwo_tus): Update call.
15021         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
15022         data.
15023         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
15024         (dwarf2_ranges_process): Likewise.
15025         (dwarf2_get_pc_bounds): Likewise.
15026         (mark_common_block_symbol_computed): Likewise.
15027         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
15028         (dwarf2_read_abbrevs): Update call.
15029         (read_partial_die): Use dwarf2_per_objfile from cu.
15030         (find_partial_die): Likewise.
15031         (fixup_partial_die): Likewise.
15032         (read_attribute_value): Likewise.
15033         (read_indirect_string_at_offset_from): Add objfile parameter.
15034         (read_indirect_string_at_offset): Add dwarf2_per_objfile
15035         parameter.
15036         (read_indirect_string_from_dwz): Add objfile parameter.
15037         (read_indirect_string): Add objfile parameter.
15038         (read_addr_index_1): Add dwarf2_per_objfile parameter.
15039         (read_addr_index): Use dwarf2_per_objfile from cu.
15040         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
15041         call dw2_setup.
15042         (read_str_index): Use dwarf2_per_objfile from cu.
15043         (get_debug_line_section): Likewise.
15044         (read_formatted_entries): Add dwarf2_per_objfile parameter.
15045         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
15046         (new_symbol_full): Use dwarf2_per_objfile from cu.
15047         (build_error_marker_type): Likewise.
15048         (lookup_die_type): Likewise.
15049         (determine_prefix): Likewise.
15050         (follow_die_offset): Likewise.
15051         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
15052         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
15053         (dwarf2_fetch_die_type_sect_off): Likewise.
15054         (dwarf2_get_die_type): Likewise.
15055         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
15056         (get_signatured_type): Likewise.
15057         (get_DW_AT_signature_type): Likewise.
15058         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
15059         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
15060         (cu_debug_loc_section): Likewise.
15061         (fill_in_loclist_baton): Likewise.
15062         (dwarf2_symbol_mark_computed): Likewise.
15063         (dwarf2_find_containing_comp_unit): Change objfile parameter to
15064         dwarf2_per_objfile.
15065         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
15066         parameter.
15067         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
15068         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
15069         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
15070         (set_die_type): Use dwarf2_free_objfile from cu.
15071         (get_die_type_at_offset): Likewise.
15072         (dwarf2_per_objfile_free): Don't assign global variable.
15073         (debug_names) <constructor>: Add dwarf2_per_objfile
15074         parameter, update m_debugstrlookup construction.
15075         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
15076         parameter.
15077         <m_dwarf2_per_objfile>: New field.
15078         <lookup>: Use m_dwarf2_per_objfile.
15079         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
15080         (psyms_seen_size): Likewise.
15081         (write_gdbindex): Replace objfile parameter with
15082         dwarf2_per_objfile.
15083         (write_debug_names): Likewise.
15084         (write_psymtabs_to_index): Likewise.
15085         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
15086         calls.
15087
15088 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15089
15090         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
15091         <dwarf2_per_objfile>: New field.
15092         (struct dwarf2_per_cu_data) <objfile>: Remove.
15093         <dwarf2_per_objfile>: New field.
15094         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
15095         of objfile.
15096         (create_signatured_type_table_from_index): Likewise.
15097         (create_debug_type_hash_table): Likewise.
15098         (fill_in_sig_entry_from_dwo_entry): Likewise.
15099         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
15100         (create_type_unit_group): Assign dwarf2_per_objfile instead of
15101         objfile.
15102         (create_partial_symtab): Access objfile through
15103         dwarf2_per_objfile.
15104         (process_psymtab_comp_unit_reader): Likewise.
15105         (read_comp_units_from_section): Likewise.
15106         (scan_partial_symbols): Likewise.
15107         (add_partial_symbol): Likewise.
15108         (add_partial_subprogram): Likewise.
15109         (peek_die_abbrev): Likewise.
15110         (fixup_go_packaging): Likewise.
15111         (process_full_comp_unit): Likewise.
15112         (process_full_type_unit): Likewise.
15113         (process_imported_unit_die): Likewise.
15114         (dwarf2_compute_name): Likewise.
15115         (dwarf2_physname): Likewise.
15116         (read_import_statement): Likewise.
15117         (create_cus_hash_table): Assign dwarf2_physname instead of
15118         objfile.
15119         (read_func_scope): Access objfile through dwarf2_per_objfile.
15120         (read_lexical_block_scope): Likewise.
15121         (read_call_site_scope): Likewise.
15122         (read_variable): Likewise.
15123         (dwarf2_rnglists_process): Likewise.
15124         (dwarf2_ranges_process): Likewise.
15125         (dwarf2_ranges_read): Likewise.
15126         (dwarf2_record_block_ranges): Likewise.
15127         (dwarf2_add_field): Likewise.
15128         (dwarf2_add_member_fn): Likewise.
15129         (read_structure_type): Likewise.
15130         (process_structure_scope): Likewise.
15131         (read_enumeration_type): Likewise.
15132         (read_array_type): Likewise.
15133         (read_common_block): Likewise.
15134         (read_namespace_type): Likewise.
15135         (read_namespace): Likewise.
15136         (read_module_type): Likewise.
15137         (read_tag_pointer_type): Likewise.
15138         (read_tag_ptr_to_member_type): Likewise.
15139         (read_tag_string_type): Likewise.
15140         (read_subroutine_type): Likewise.
15141         (read_typedef): Likewise.
15142         (read_base_type): Likewise.
15143         (attr_to_dynamic_prop): Likewise.
15144         (read_subrange_type): Likewise.
15145         (read_unspecified_type): Likewise.
15146         (load_partial_dies): Likewise.
15147         (read_partial_die): Likewise.
15148         (find_partial_die): Likewise.
15149         (guess_partial_die_structure_name): Likewise.
15150         (fixup_partial_die): Likewise.
15151         (read_attribute_value): Likewise.
15152         (read_addr_index_from_leb128): Likewise.
15153         (dwarf2_read_addr_index): Likewise.
15154         (dwarf2_string_attr): Likewise.
15155         (lnp_state_machine::check_line_address): Likewise.
15156         (dwarf_decode_lines_1): Likewise.
15157         (dwarf_decode_lines): Likewise.
15158         (dwarf2_start_symtab): Likewise.
15159         (var_decode_location): Likewise.
15160         (new_symbol_full): Likewise.
15161         (dwarf2_const_value_data): Likewise.
15162         (dwarf2_const_value_attr): Likewise.
15163         (dwarf2_const_value): Likewise.
15164         (die_type): Likewise.
15165         (die_containing_type): Likewise.
15166         (lookup_die_type): Likewise.
15167         (guess_full_die_structure_name): Likewise.
15168         (anonymous_struct_prefix): Likewise.
15169         (dwarf2_name): Likewise.
15170         (follow_die_ref_or_sig): Likewise.
15171         (follow_die_offset): Likewise.
15172         (follow_die_ref): Likewise.
15173         (dwarf2_fetch_die_loc_sect_off): Likewise.
15174         (dwarf2_fetch_constant_bytes): Likewise.
15175         (dwarf2_fetch_die_type_sect_off): Likewise.
15176         (dwarf2_get_die_type): Likewise.
15177         (follow_die_sig): Likewise.
15178         (decode_locdesc): Likewise.
15179         (dwarf2_per_cu_objfile): Likewise.
15180         (dwarf2_per_cu_text_offset): Likewise.
15181         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
15182         objfile.
15183         (set_die_type): Access objfile through
15184         dwarf2_per_objfile.
15185
15186 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15187
15188         * valprint.c (converted_character_d): Remove typedef.
15189         (DEF_VEC_O (converted_character_d)): Remove.
15190         (count_next_character): Use std::vector.
15191         (print_converted_chars_to_obstack): Likewise.
15192         (generic_printstr): Likewise.
15193
15194 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15195
15196         * xml-support.h (struct gdb_xml_value): Add constructor.
15197         <value>: Change type to unique_xmalloc_ptr.
15198         (gdb_xml_value_s): Remove typedef.
15199         (DEF_VEC_O (gdb_xml_value_s)): Remove.
15200         (gdb_xml_element_start_handler): Change parameter type to
15201         std::vector.
15202         (xml_find_attribute): Likewise.
15203         * xml-support.c (xml_find_attribute): Change parameter type to
15204         std::vector and adjust.
15205         (gdb_xml_values_cleanup): Remove.
15206         (gdb_xml_parser::start_element): Adjust to std::vector.
15207         (xinclude_start_include): Change paraeter type to std::vector
15208         and adjust.
15209         * btrace.c (check_xml_btrace_version): Likewise.
15210         (parse_xml_btrace_block): Likewise.
15211         (parse_xml_btrace_pt_config_cpu): Likewise.
15212         (parse_xml_btrace_pt): Likewise.
15213         (parse_xml_btrace_conf_bts): Likewise.
15214         (parse_xml_btrace_conf_pt): Likewise.
15215         * memory-map.c (memory_map_start_memory): Likewise.
15216         (memory_map_start_property): Likewise.
15217         * osdata.c (osdata_start_osdata): Likewise.
15218         (osdata_start_item): Likewise.
15219         (osdata_start_column): Likewise.
15220         * remote.c (start_thread): Likewise.
15221         * solib-aix.c (library_list_start_library): Likewise.
15222         (library_list_start_list): Likewise.
15223         * solib-svr4.c (library_list_start_library): Likewise.
15224         (svr4_library_list_start_list): Likewise.
15225         * solib-target.c (library_list_start_segment): Likewise.
15226         (library_list_start_section): Likewise.
15227         (library_list_start_library): Likewise.
15228         (library_list_start_list): Likewise.
15229         * tracepoint.c (traceframe_info_start_memory): Likewise.
15230         (traceframe_info_start_tvar): Likewise.
15231         * xml-syscall.c (syscall_start_syscall): Likewise.
15232         * xml-tdesc.c (tdesc_start_target): Likewise.
15233         (tdesc_start_feature): Likewise.
15234         (tdesc_start_reg): Likewise.
15235         (tdesc_start_union): Likewise.
15236         (tdesc_start_struct): Likewise.
15237         (tdesc_start_flags): Likewise.
15238         (tdesc_start_enum): Likewise.
15239         (tdesc_start_field): Likewise.
15240         (tdesc_start_enum_value): Likewise.
15241         (tdesc_start_vector): Likewise.
15242
15243 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15244
15245         * extension.h (struct xmethod_worker) <clone>: Remove.
15246         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
15247         Remove.
15248         (python_xmethod_worker::clone): Remove.
15249         * valops.c (find_overload_match): Use std::move instead of
15250         clone.
15251
15252 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15253
15254         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
15255         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
15256         <free_xmethod_worker_data>: Remove.
15257         <get_matching_xmethod_workers>: Chance VEC to std::vector.
15258         <get_xmethod_arg_types>: Remove.
15259         <get_xmethod_result_type>: Remove.
15260         <invoke_xmethod>: Remove.
15261         * extension.c (new_xmethod_worker): Remove.
15262         (clone_xmethod_worker): Remove.
15263         (get_matching_xmethod_workers): Return void, pass std::vector by
15264         pointer.
15265         (get_xmethod_arg_types): Rename to...
15266         (xmethod_worker::get_arg_types): ... this, and adjust.
15267         (get_xmethod_result_type): Rename to...
15268         (xmethod_worker::get_result_type): ... this, and adjust.
15269         (invoke_xmethod): Remove.
15270         (free_xmethod_worker): Remove.
15271         (free_xmethod_worker_vec): Remove.
15272         * extension.h (enum ext_lang_rc): Move here from
15273         extension-priv.h.
15274         (struct xmethod_worker): Add constructor and destructor.
15275         <data>: Remove.
15276         <value>: Remove.
15277         <invoke, clone, do_get_result_type, do_get_arg_types>: New
15278         virtual pure methods.
15279         <get_arg_types, get_result_type>: New methods.
15280         (xmethod_worker_ptr): Remove typedef.
15281         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
15282         (xmethod_worker_vec): Remove typedef.
15283         (xmethod_worker_up): New typedef.
15284         (invoke_xmethod): Remove.
15285         (clone_xmethod_worker): Remove.
15286         (free_xmethod_worker): Remove.
15287         (free_xmethod_worker_vec): Remove.
15288         (get_xmethod_arg_types): Remove.
15289         (get_xmethod_result_type): Remove.
15290         * valops.c (find_method_list): Use std::vector, don't use
15291         intermediate vector.
15292         (value_find_oload_method_list): Use std::vector.
15293         (find_overload_match): Use std::vector.
15294         (find_oload_champ): Use std::vector.
15295         * value.c (value_free): Use operator delete.
15296         (value_of_xmethod): Rename to...
15297         (value_from_xmethod): ... this.  Don't assign
15298         xmethod_worker::value, take rvalue-reference.
15299         (result_type_of_xmethod): Adjust.
15300         (call_xmethod): Adjust.
15301         * value.h: Include extension.h.
15302         (struct xmethod_worker): Don't forward-declare.
15303         (value_of_xmethod): Rename to...
15304         (value_from_xmethod): ... this, take rvalue-reference.
15305         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
15306         (struct python_xmethod_worker): ... this, add constructor and
15307         destructor.
15308         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
15309         (gdbpy_free_xmethod_worker_data): Rename to...
15310         (python_xmethod_worker::~python_xmethod_worker): ... this and
15311         adjust.
15312         (gdbpy_clone_xmethod_worker_data): Rename to...
15313         (python_xmethod_worker::clone): ... this and adjust.
15314         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
15315         temporary vector.
15316         (gdbpy_get_xmethod_arg_types): Rename to...
15317         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
15318         (gdbpy_get_xmethod_result_type): Rename to...
15319         (python_xmethod_worker::do_get_result_type): ... this and
15320         adjust.
15321         (gdbpy_invoke_xmethod): Rename to...
15322         (python_xmethod_worker::invoke): ... this and adjust.
15323         (new_python_xmethod_worker): Rename to...
15324         (python_xmethod_worker::python_xmethod_worker): ... this and
15325         adjust.
15326         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
15327         Remove.
15328         (gdbpy_free_xmethod_worker_data): Remove.
15329         (gdbpy_get_matching_xmethod_workers): Use std::vector.
15330         (gdbpy_get_xmethod_arg_types): Remove.
15331         (gdbpy_get_xmethod_result_type): Remove.
15332         (gdbpy_invoke_xmethod): Remove.
15333         * python/python.c (python_extension_ops): Remove obsolete
15334         callbacks.
15335
15336 2018-01-05  Pedro Alves  <palves@redhat.com>
15337
15338         PR gdb/18653
15339         * common/signals-state-save-restore.c
15340         (save_original_signals_state): New parameter 'quiet'.  Warn if we
15341         find a custom handler preinstalled, instead of internal erroring.
15342         But only warn if !quiet.
15343         * common/signals-state-save-restore.h
15344         (save_original_signals_state): New parameter 'quiet'.
15345         * main.c (captured_main_1): Move save_original_signals_state call
15346         after option handling, and pass QUIET.
15347
15348 2018-01-05  Pedro Alves  <palves@redhat.com>
15349
15350         * spu-tdep.c (spu_catch_start): Pass
15351         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
15352
15353 2018-01-05  Pedro Alves  <palves@redhat.com>
15354
15355         PR gdb/22670
15356         * ada-lang.c (literal_symbol_name_matcher): New function.
15357         (ada_get_symbol_name_matcher): Use it for
15358         symbol_name_match_type::SEARCH_NAME.
15359         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
15360         it down instead of assuming symbol_name_match_type::FULL.
15361         * block.h (block_lookup_symbol): New parameter 'match_type'.
15362         * c-valprint.c (print_unpacked_pointer): Use
15363         lookup_symbol_search_name instead of lookup_symbol.
15364         * compile/compile-object-load.c (get_out_value_type): Pass down
15365         symbol_name_match_type::SEARCH_NAME.
15366         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
15367         symbol_name_match_type::FULL.
15368         * cp-support.c (cp_get_symbol_name_matcher): Handle
15369         symbol_name_match_type::SEARCH_NAME.
15370         * infrun.c (insert_exception_resume_breakpoint): Use
15371         lookup_symbol_search_name.
15372         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
15373         * psymtab.c (maintenance_check_psymtabs): Use
15374         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
15375         * stack.c (print_frame_args): Use lookup_symbol_search_name and
15376         SYMBOL_SEARCH_NAME.
15377         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
15378         if symbol_name_match_type::SEARCH_NAME.
15379         (lookup_symbol_in_language): Pass down
15380         symbol_name_match_type::FULL.
15381         (lookup_symbol_search_name): New.
15382         (lookup_language_this): Pass down
15383         symbol_name_match_type::SEARCH_NAME.
15384         (lookup_symbol_aux, lookup_local_symbol): New parameter
15385         'match_type'.  Pass it down.
15386         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
15387         (lookup_symbol_search_name): New declaration.
15388         (lookup_symbol_in_block): New 'match_type' parameter.
15389
15390 2018-01-05  Pedro Alves  <palves@redhat.com>
15391
15392         PR gdb/22670
15393         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
15394         ada_lookup_symbol.
15395         (ada_lookup_symbol): Reimplement in terms of
15396         ada_lookup_symbol_list, bits factored out from
15397         ada_lookup_encoded_symbol.
15398
15399 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15400
15401         * ada-exp.y (write_object_renaming): When subscripting an array
15402         using a symbol as the index, pass the block in call to
15403         ada_lookup_encoded_symbol when looking that symbol up.
15404
15405 2018-01-05  Jerome Guitton  <guitton@adacore.com>
15406
15407         * ada-lang.c (ada_array_length): Use ada_index_type instead of
15408         TYPE_INDEX_TYPE.
15409
15410 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15411
15412         * ada-lang.c (ada_to_fixed_value_create): Add handling of
15413         the case where VALUE_LVAL (val0) is not lval_memory.
15414
15415 2018-01-05  Xavier Roirand  <roirand@adacore.com>
15416
15417         * ada-valprint.c (print_optional_low_bound): Handle
15418         character-indexed array printing like boolean-indexed array
15419         printing.
15420
15421 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15422
15423         * NEWS: Create a new section for the next release branch.
15424         Rename the section of the current branch, now that it has
15425         been cut.
15426
15427 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15428
15429         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
15430         * version.in: Bump version to 8.1.50.DATE-git.
15431
15432 2018-01-03  Xavier Roirand  <roirand@adacore.com>
15433
15434         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
15435         Add field.
15436         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
15437         Add field.
15438         (default_exception_support_info) <catch_handlers_sym>: Add field.
15439         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
15440         (ada_exception_name_addr_1): Add "catch handlers" handling.
15441         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
15442         Update all callers.
15443         (create_excep_cond_exprs) <ex>: Add parameter.
15444         (re_set_exception): Update create_excep_cond_exprs call.
15445         (print_it_exception, print_one_exception, print_mention_exception)
15446         (print_recreate_exception): Add "catch handler" handling.
15447         (allocate_location_catch_handlers, re_set_catch_handlers)
15448         (check_status_catch_handlers, print_it_catch_handlers)
15449         (print_one_catch_handlers, print_mention_catch_handlers)
15450         (print_recreate_catch_handlers): New function.
15451         (catch_handlers_breakpoint_ops): New variable.
15452         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
15453         Add parameter.  Add "catch handler" handling.
15454         (ada_exception_sym_name, ada_exception_breakpoint_ops):
15455         Add "catch handler" handling.
15456         (ada_exception_catchpoint_cond_string): Add "catch handler"
15457         handling.
15458         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
15459         call.
15460         (catch_ada_handlers_command): New function.
15461         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
15462         operations structure.
15463         (_initialize_ada_language): Add "catch handlers" command entry.
15464         * NEWS: Document "catch handlers" feature.
15465
15466 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15467
15468         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
15469         account when creating the array type of the slice.
15470         (ada_value_slice): Likewise.
15471
15472 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15473
15474         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
15475         New enum value.
15476         (create_array_type_with_stride): Add byte_stride_prop parameter.
15477         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
15478         New parameter.  Update all callers in this file.
15479         (array_type_has_dynamic_stride): New function.
15480         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
15481         of arrays with dynamic byte strides.
15482         * dwarf2read.c (read_array_type): Add support for dynamic
15483         DW_AT_byte_stride attributes.
15484
15485 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15486
15487         * dwarf2read.c (read_unspecified_type): Treat
15488         DW_TAG_enumeration_type DIEs from Ada units as stubs.
15489
15490 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15491
15492         Update copyright year range in all GDB files.
15493
15494 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
15495
15496         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
15497         and gdb/testsuite/gdb.base/step-line.c.
15498
15499 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15500
15501         * copyright.py (main): Dump the contents of
15502         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
15503         even if BY_HAND is empty.
15504
15505 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15506
15507         * top.c (print_gdb_version): Update Copyright year in version
15508         message.
15509
15510 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15511
15512         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
15513
15514 For older changes see ChangeLog-2017.
15515 \f
15516 Local Variables:
15517 mode: change-log
15518 left-margin: 8
15519 fill-column: 74
15520 version-control: never
15521 coding: utf-8
15522 End: