Note that PT_GETREGS supplies SSTATUS for FreeBSD/riscv.
[external/binutils.git] / gdb / ChangeLog
1 2018-11-06  John Baldwin  <jhb@FreeBSD.org>
2
3         * riscv-fbsd-nat.c (getregs_supplies): Return true for
4         RISCV_CSR_SSTATUS_REGNUM.
5
6 2018-11-04  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7
8         * source.c (open_source_file): Fix leak by transferring the
9         current s->fullname to the unique_xmalloc_ptr fullname given
10         to find_and_open_source.
11
12 2018-11-04  Tom Tromey  <tom@tromey.com>
13
14         * varobj.c (install_default_visualizer): Update.
15         * python/python-internal.h (gdbpy_get_varobj_pretty_printer):
16         Return gdbpy_ref.
17         * python/py-prettyprint.c (search_pp_list): Return gdbpy_ref.
18         (find_pretty_printer_from_progspace)
19         (find_pretty_printer_from_gdb, find_pretty_printer)
20         (gdbpy_get_varobj_pretty_printer): Return gdbpy_ref.
21         (gdbpy_get_varobj_pretty_printer, gdbpy_default_visualizer):
22         Update.
23
24 2018-11-04  Tom Tromey  <tom@tromey.com>
25
26         * python/python.c (gdbpy_parameter_value): Update.
27         * python/python-internal.h (python_string_to_unicode)
28         (python_string_to_target_python_string)
29         (host_string_to_python_string): Return gdbpy_ref.
30         * python/py-utils.c (python_string_to_unicode)
31         (unicode_to_encoded_python_string)
32         (unicode_to_target_python_string)
33         (python_string_to_target_string)
34         (python_string_to_target_python_string): Return gdbpy_ref.
35         (python_string_to_host_string): Update.
36         (host_string_to_python_string): Return gdbpy_ref.
37         * python/py-symtab.c (stpy_get_filename, stpy_get_producer)
38         (stpy_fullname): Update.
39         * python/py-progspace.c (pspy_get_filename, pspy_solib_name):
40         Update.
41         * python/py-prettyprint.c (print_string_repr): Update.
42         * python/py-objfile.c (objfpy_get_filename, objfpy_get_username)
43         (objfpy_get_build_id): Update.
44         * python/py-breakpoint.c (bppy_get_location)
45         (bppy_get_expression, bppy_get_condition, bppy_get_commands):
46         Update.
47
48 2018-11-04  Tom Tromey  <tom@tromey.com>
49
50         * python/python-internal.h (gdb_py_object_from_longest)
51         (gdb_py_object_from_ulongest): Return gdbpy_ref.
52         * python/py-value.c (valpy_int): Update.
53         * python/py-utils.c (gdb_py_object_from_longest): Return
54         gdbpy_ref.
55         (gdb_py_object_from_ulongest): Likewise.
56         * python/py-type.c (typy_get_alignof): Update.
57         * python/py-linetable.c (ltpy_get_all_source_lines)
58         (ltpy_entry_get_line, ltpy_entry_get_pc): Update.
59         * python/py-block.c (blpy_get_start, blpy_get_end): Update.
60
61 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
62
63         * ada-lang.c (_initialize_ada_language): Fix typo.
64
65 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
66
67         * language.c (type): Remove.
68         (_initialize_language): Remove assignment to type.
69
70 2018-11-02  Joel Brobecker  <brobecker@adacore.com>
71
72         * aarch64-ravenscar-thread.h, aarch64-ravenscar-thread.c: New files.
73         * aarch64-tdep.c: #include "aarch64-ravenscar-thread.h".
74         (aarch64_gdbarch_init): Add call to register_aarch64_ravenscar_ops.
75         * Makefile.in (ALL_64_TARGET_OBS): Add aarch64-ravenscar-thread.o.
76         (HFILES_NO_SRCDIR): Add aarch64-ravenscar-thread.h.
77         (ALLDEPFILES): Add aarch64-ravenscar-thread.c.
78         * configure.tgt (cpu_obs) [aarch64*-*-*]: Add ravenscar-thread.o
79         and aarch64-ravenscar-thread.o.
80         * NEWS: Add entry documenting Ravenscar tasking support
81         on AArch64 ELF.
82
83 2018-11-02  Matthew Malcomson  <matthew.malcomson@arm.com>
84
85         * symtab.c (info_functions_command): Initialize quiet flag.
86         * stack.c (info_args_command): Likewise.
87
88 2018-11-01  Jim Wilson  <jimw@sifive.com>
89
90         * riscv-tdep.c (riscv_breakpoint_kind_from_pc): New local unaligned_p.
91         Set if pcptr if unaligned.  Return 2 if unaligned_p true.  Update
92         debugging messages.
93
94 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
95
96         * ada-lang.c (ada_watch_location_expression): New function.
97         (ada_language_defn): Set la_watch_location_expression to
98         ada_watch_location_expression.
99
100 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
101
102         * print-utils.c (int_string): Remove unnecessary trailing spaces.
103
104 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
105
106         * rs6000-tdep.c (skip_prologue): Fix potential negative left
107         shifting.
108
109 2018-11-01  Jerome Guitton  <guitton@adacore.com>
110             Joel Brobecker  <brobecker@adacore.com>
111
112         * defs.h (enum gdb_osabi): Add GDB_OSABI_PIKEOS.
113         * osabi.c (gdb_osabi_names): Add name for GDB_OSABI_PIKEOS.
114         * arm-pikeos-tdep.c: New file.
115         * configure.tgt: Add arm-pikeos-tdep.o to the case of ARM
116         embedded system.
117         * Makefile.in (ALL_TARGET_OBS): Add arm-pikeos-tdep.o.
118
119 2018-11-01  Simon Marchi  <simon.marchi@ericsson.com>
120
121         * common/pathstuff.c (get_standard_temp_dir): New.
122         * common/pathstuff.h (get_standard_temp_dir): New.
123         * config.in: Re-generate.
124         * configure: Re-generate.
125         * configure.ac: Don't check for mkdtemp.
126         * gnulib/aclocal-m4-deps.mk: Re-generate.
127         * gnulib/aclocal.m4: Re-generate.
128         * gnulib/config.in: Re-generate.
129         * gnulib/configure: Re-generate.
130         * gnulib/import/Makefile.am: Re-generate.
131         * gnulib/import/Makefile.in: Re-generate.
132         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
133         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
134         * gnulib/import/m4/mkdtemp.m4: New file.
135         * gnulib/import/mkdtemp.c: New file.
136         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES):
137         Add mkdtemp module.
138         * unittests/mkdir-recursive-selftests.c (test): Use
139         get_standard_temp_dir.
140         (_initialize_mkdir_recursive_selftests): Remove HAVE_MKDTEMP
141         ifdef.
142         * compile/compile.c (get_compile_file_tempdir): Likewise.
143
144 2018-11-01  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
145
146         * rs6000-aix-tdep.c: Include "trad-frame.h" and "frame-unwind.h".
147         (SIG_FRAME_LR_OFFSET64): New define.
148         (SIG_FRAME_FP_OFFSET64): New define.
149         (aix_sighandle_frame_cache): New Function.
150         (aix_sighandle_frame_this_id): New Function.
151         (aix_sighandle_frame_prev_register): New Function.
152         (aix_sighandle_frame_sniffer): New Function.
153         (aix_sighandle_frame_unwind): New global variable.
154         (rs6000_aix_init_osabi): Install new frame unwinder.
155
156 2018-10-31  Sergio Durigan Junior  <sergiodj@redhat.com>
157
158         PR gdb/23835
159         * common/common-defs.h: Don't redefine _FORTIFY_SOURCE if it's
160         already defined.
161
162 2018-10-31  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
163
164         * ppc-linux-nat.c: Include nat/linux-ptrace.h.
165
166 2018-10-31  Andrew Burgess  <andrew.burgess@embecosm.com>
167
168         * dwarf2read.c (struct dwarf2_cu): Add producer_is_icc field.
169         (producer_is_icc): New function.
170         (check_producer): Set producer_is_icc field on dwarf2_cu.
171         (dwarf2_init_integer_type): New function.
172         (read_base_type): Call dwarf2_init_integer_type instead of
173         init_integer_type in all cases.
174         (dwarf2_cu::dwarf2_cu): Initialise producer_is_icc field.
175         * valprint.c (maybe_negate_by_bytes): Add an assertion that the
176         LEN is greater than 0.
177
178 2018-10-30  Tom Tromey  <tom@tromey.com>
179
180         * main.c (captured_main_1): Check return value of bfd_init.
181
182 2018-10-29  Sergio Durigan Junior  <sergiodj@redhat.com>
183
184         * common/offset-type.h (DEFINE_OFFSET_REL_OP): Delete.
185         Adjust comments.
186
187 2018-10-29  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
188
189         * procfs.c: Include common/pathstuff.h.
190
191 2018-10-28  Andrew Burgess  <andrew.burgess@embecosm.com>
192
193         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
194         Add missing braces.  No functional change.
195
196 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
197
198         * macrocmd.c (info_macro_command): Use report_unrecognized_option_error
199         to report a bad option and fix indentation.
200         * demangle.c (demangle_command): Use report_unrecognized_option_error
201         to report a bad option and correctly report the bad option.
202
203 2018-10-27  Tom Tromey  <tom@tromey.com>
204
205         PR cli/23364:
206         * darwin-nat.c (copied_shell): New global.
207         (may_have_sip): Rename from should_disable_startup_with_shell.
208         (copy_shell_to_cache, maybe_cache_shell): New functions.
209         (darwin_nat_target::create_inferior): Update.  Use
210         copied_shell.
211
212 2018-10-27  Tom Tromey  <tom@tromey.com>
213
214         * unittests/scoped_fd-selftests.c (test_to_file): New function.
215         (run_tests): Call test_to_file.
216         * dwarf-index-write.c (write_psymtabs_to_index): Do not reopen
217         temporary files.
218         * common/scoped_fd.h (scoped_fd::to_file): New method.
219
220 2018-10-27  Tom Tromey  <tom@tromey.com>
221
222         * unittests/scoped_mmap-selftests.c (test_normal): Use
223         gdb_mkostemp_cloexec.
224         * unittests/scoped_fd-selftests.c (test_destroy, test_release):
225         Use gdb_mkostemp_cloexec.
226         * gnulib/aclocal-m4-deps.mk, gnulib/aclocal.m4,
227         gnulib/config.in, gnulib/configure,
228         gnulib/import/Makefile.am, gnulib/import/Makefile.in,
229         gnulib/import/m4/gnulib-cache.m4,
230         gnulib/import/m4/gnulib-comp.m4: Update.
231         * gnulib/import/m4/mkostemp.m4: New file.
232         * gnulib/import/m4/mkstemp.m4: Remove.
233         * gnulib/import/mkostemp.c: New file.
234         * gnulib/import/mkstemp.m4: Remove.
235         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Remove
236         mkstemp, add mkostemp.  Apply new patch.
237         * gnulib/import/stdlib.in.h: Apply patch.
238         * gnulib/patches/0002-mkostemp-mkostemps-Fix-compilation-error-in-C-mode-o.patch:
239         New file.
240         * dwarf-index-write.c (write_psymtabs_to_index): Use
241         gdb_mkostemp_cloexec.
242         * common/filestuff.h (gdb_mkostemp_cloexec): New function.
243
244 2018-10-27  Tom Tromey  <tom@tromey.com>
245
246         * unittests/mkdir-recursive-selftests.c: New file.
247         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
248         unittests/mkdir-recursive-selftests.c.
249         * dwarf-index-cache.c (mkdir_recursive): Move to
250         common/filestuff.c.
251         (index_cache::store): Check return value of mkdir_recursive.
252         (create_dir_and_check, test_mkdir_recursive): Move to new file.
253         (_initialize_index_cache): Don't register test.
254         * common/filestuff.h (mkdir_recursive): Declare.
255         * common/filestuff.c (mkdir_recursive): Move from
256         dwarf-index-cache.c.  Return bool.
257
258 2018-10-27  Tom Tromey  <tom@tromey.com>
259
260         * dwarf-index-write.c (write_psymtabs_to_index): Move
261         make_temp_filename to common/pathstuff.c.
262         * common/pathstuff.h (make_temp_filename): Declare.
263         * common/pathstuff.c (make_temp_filename): New function, moved
264         from dwarf-index-write.c.
265
266 2018-10-27  Tom Tromey  <tom@tromey.com>
267
268         * procfs.c (procfs_target::create_inferior): Use get_shell.
269         * cli/cli-cmds.c (shell_escape): Use get_shell.
270         * windows-nat.c (windows_nat_target::create_inferior): Use
271         get_shell.
272         * common/pathstuff.c (get_shell): New function.
273         * nat/fork-inferior.c (SHELL_FILE, get_startup_shell): Remove.
274         (fork_inferior): Use get_shell.
275         * common/pathstuff.h (get_shell): Declare.
276
277 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
278
279         * NEWS: Mention changes to 'info [args|functions|locals|variables]'
280
281 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
282
283         * stack.c (print_variable_and_value_data): Add preg and treg.
284         (print_frame_local_vars): Add quiet, regexp and t_regexp arguments,
285         and update callers.
286         (print_frame_arg_vars): Likewise.
287         (prepare_reg): New function.
288         (info_locals_command): Extract info print args and use them.
289         (info_args_command): Likewise.
290         (_initialize_stack): Modify on-line help.
291         * symtab.c (treg_matches_sym_type_name): New function.
292         (search_symbols): New arg t_regexp.
293         (symtab_symbol_info): New args quiet, regexp, t_regexp.
294         (info_variables_command): Extract info print args and use them.
295         (info_functions_command): Likewise.
296         (info_types_command): Update call to symtab_symbol_info.
297         (_initialize_symtab): Modify on-line help.
298         * symtab.h (treg_matches_sym_type_name): New function.
299         (search_symbols): New t_regexp arg.
300
301 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
302
303         * cli-utils.c (extract_arg_maybe_quoted): New function.
304         (extract_info_print_args): New function.
305         (info_print_args_help): New function.
306         (report_unrecognized_option_error): New function.
307         * cli-utils.h (extract_arg_maybe_quoted): New function.
308         (extract_info_print_args): New function.
309         (info_print_args_help): New function.
310         (report_unrecognized_option_error): New function.
311
312 2018-10-26  Tom Tromey  <tom@tromey.com>
313
314         * dwarf2read.c (recursively_compute_inclusions): Use std::vector.
315         (compute_compunit_symtab_includes): Update.
316         * symtab.h: (symtab_ptr): Remove typedef.  Don't define a VEC.
317         (compunit_symtab_ptr): Likewise.
318
319 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
320
321         * fbsd-tdep.c (fbsd_print_auxv_entry): Only use
322         default_print_auxv_entry for specific tag values.
323
324 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
325
326         * fbsd-tdep.c (fbsd_print_auxv_entry): Handle AT_FREEBSD_HWCAP2.
327
328 2018-10-26  Jim Wilson  <jimw@sifive.com>
329
330         * riscv-linux-tdep.c: Include tramp-frame.h and trad-frame.h.
331         (riscv_linux_sigframe_init): Declare.
332         (RISCV_INST_LI_A7_SIGRETURN, RISCV_INT_ECALL): New.
333         (riscv_linux_sigframe): New.
334         (SIGFRAME_SIGINFO_SIZE, UCONTEXT_MCONTEXT_OFFSET): New.
335         (riscv_linux_sigframe_init): Define.
336         (riscv_linux_init_abi): Call tramp_frame_prepend_unwinder.
337
338         * riscv-tdep.c (riscv_isa_xlen): Refer to riscv-tdep.h comment.
339         (riscv_isa_flen): Likewise.  Drop static.
340         * riscv-tdep.h (riscv_isa_xlen): Move riscv-tdep.c comment to here.
341         (riscv_isa_flen): Likewise.  Declare.
342
343 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
344             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
345
346         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_htm_vsx32l)
347         (tdesc_powerpc_isa207_htm_vsx64l): Declare.
348         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TM_SPRREGSET)
349         (PPC32_LINUX_SIZEOF_CGPRREGSET, PPC64_LINUX_SIZEOF_CGPRREGSET)
350         (PPC_LINUX_SIZEOF_CFPRREGSET, PPC_LINUX_SIZEOF_CVMXREGSET)
351         (PPC_LINUX_SIZEOF_CVSXREGSET, PPC_LINUX_SIZEOF_CPPRREGSET)
352         (PPC_LINUX_SIZEOF_CDSCRREGSET, PPC_LINUX_SIZEOF_CTARREGSET):
353         Define.
354         (struct ppc_linux_features) <htm>: New field.
355         (ppc_linux_no_features): Add initializer for htm field.
356         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
357         new tdescs.
358         * nat/ppc-linux.h (PPC_FEATURE2_HTM, NT_PPC_TM_CGPR)
359         (NT_PPC_TM_CFPR, NT_PPC_TM_CVMX, NT_PPC_TM_CVSX)
360         (NT_PPC_TM_SPR, NT_PPC_TM_CTAR, NT_PPC_TM_CPPR, NT_PPC_TM_CDSCR):
361         Define if not already defined.
362         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-htm-vsx32l
363         and rs6000/powerpc-isa207-htm-vsx64l.
364         (XMLTOC): Add rs6000/powerpc-isa207-htm-vsx32l.xml and
365         rs6000/powerpc-isa207-htm-vsx64l.xml.
366         * features/rs6000/power-htm-spr.xml: New file.
367         * features/rs6000/power-htm-core.xml: New file.
368         * features/rs6000/power64-htm-core.xml: New file.
369         * features/rs6000/power-htm-fpu.xml: New file.
370         * features/rs6000/power-htm-altivec.xml: New file.
371         * features/rs6000/power-htm-vsx.xml: New file.
372         * features/rs6000/power-htm-ppr.xml: New file.
373         * features/rs6000/power-htm-dscr.xml: New file.
374         * features/rs6000/power-htm-tar.xml: New file.
375         * features/rs6000/powerpc-isa207-htm-vsx32l.xml: New file.
376         * features/rs6000/powerpc-isa207-htm-vsx64l.xml: New file.
377         * features/rs6000/powerpc-isa207-htm-vsx32l.c: Generate.
378         * features/rs6000/powerpc-isa207-htm-vsx64l.c: Generate.
379         * regformats/rs6000/powerpc-isa207-htm-vsx32l.dat: Generate.
380         * regformats/rs6000/powerpc-isa207-htm-vsx64l.dat: Generate.
381         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
382         fetch_regset with HTM regsets.
383         (store_register, store_ppc_registers): Call store_regset with HTM
384         regsets.
385         (ppc_linux_nat_target::read_description): Set htm field in the
386         features struct if needed.
387         * ppc-linux-tdep.c: Include
388         features/rs6000/powerpc-isa207-htm-vsx32l.c and
389         features/rs6000/powerpc-isa207-htm-vsx64l.c.
390         (ppc32_regmap_tm_spr, ppc32_regmap_cgpr, ppc64_le_regmap_cgpr)
391         (ppc64_be_regmap_cgpr, ppc32_regmap_cfpr, ppc32_le_regmap_cvmx)
392         (ppc32_be_regmap_cvmx, ppc32_regmap_cvsx, ppc32_regmap_cppr)
393         (ppc32_regmap_cdscr, ppc32_regmap_ctar): New globals.
394         (ppc32_linux_tm_sprregset, ppc32_linux_cgprregset)
395         (ppc64_be_linux_cgprregset, ppc64_le_linux_cgprregset)
396         (ppc32_linux_cfprregset, ppc32_le_linux_cvmxregset)
397         (ppc32_be_linux_cvmxregset, ppc32_linux_cvsxregset)
398         (ppc32_linux_cpprregset, ppc32_linux_cdscrregset)
399         (ppc32_linux_ctarregset): New globals.
400         (ppc_linux_cgprregset, ppc_linux_cvmxregset): New functions.
401         (ppc_linux_collect_core_cpgrregset): New function.
402         (ppc_linux_iterate_over_regset_sections): Call back with the htm
403         regsets.
404         (ppc_linux_core_read_description): Check if the tm spr section is
405         present and set htm in the features struct.
406         (_initialize_ppc_linux_tdep): Call
407         initialize_tdesc_powerpc_isa207_htm_vsx32l and
408         initialize_tdesc_powerpc_isa207_htm_vsx64l.
409         * ppc-linux-tdep.h (ppc_linux_cgprregset, ppc_linux_cvmxregset):
410         Declare.
411         (ppc32_linux_tm_sprregset, ppc32_linux_cfprregset)
412         (ppc32_linux_cvsxregset, ppc32_linux_cpprregset)
413         (ppc32_linux_cdscrregset, ppc32_linux_ctarregset): Declare.
414         * ppc-tdep.h (struct gdbarch_tdep) <have_htm_spr, have_htm_core>:
415         New fields.
416         <have_htm_fpu, have_htm_altivec, have_htm_vsx>:
417         Likewise.
418         <ppc_cppr_regnum, ppc_cdscr_regnum, ppc_ctar_regnum>: Likewise.
419         <ppc_cdl0_regnum, ppc_cvsr0_regnum, ppc_cefpr0_regnum>: Likewise.
420         (enum) <PPC_TFHAR_REGNUM, PPC_TEXASR_REGNUM, PPC_TFIAR_REGNUM>:
421         New enum fields.
422         <PPC_CR0_REGNUM, PPC_CCR_REGNUM, PPC_CXER_REGNUM>: Likewise.
423         <PPC_CLR_REGNUM, PPC_CCTR_REGNUM, PPC_CF0_REGNUM>: Likewise.
424         <PPC_CFPSCR_REGNUM, PPC_CVR0_REGNUM, PPC_CVSCR_REGNUM>: Likewise.
425         <PPC_CVRSAVE_REGNUM, PPC_CVSR0_UPPER_REGNUM>: Likewise.
426         <PPC_CPPR_REGNUM, PPC_CDSCR_REGNUM>: Likewise.
427         <PPC_CTAR_REGNUM>: Likewise.
428         (PPC_IS_TMSPR_REGNUM, PPC_IS_CKPTGP_REGNUM, PPC_IS_CKPTFP_REGNUM)
429         (PPC_IS_CKPTVMX_REGNUM, PPC_IS_CKPTVSX_REGNUM): Define.
430         * rs6000-tdep.c (IS_CDFP_PSEUDOREG, IS_CVSX_PSEUDOREG)
431         (IS_CEFP_PSEUDOREG): Define.
432         (rs6000_register_name): Hide the upper halves of checkpointed VSX
433         registers.  Return names for the checkpointed DFP, VSX, and EFP
434         pseudo registers.
435         (rs6000_pseudo_register_type): Remove initial assert and raise an
436         internal error in the else clause instead.  Return types for the
437         checkpointed DFP, VSX, and EFP pseudo registers.
438         (dfp_pseudo_register_read, dfp_pseudo_register_write): Handle
439         checkpointed DFP pseudo registers.
440         (vsx_pseudo_register_read, vsx_pseudo_register_write): Handle
441         checkpointed VSX pseudo registers.
442         (efp_pseudo_register_read, efp_pseudo_register_write): Rename
443         from efpr_pseudo_register_read and
444         efpr_pseudo_register_write.  Handle checkpointed EFP pseudo
445         registers.
446         (rs6000_pseudo_register_read, rs6000_pseudo_register_write):
447         Handle checkpointed DFP, VSX, and EFP registers.
448         (dfp_ax_pseudo_register_collect, vsx_ax_pseudo_register_collect)
449         (efp_ax_pseudo_register_collect): New functions.
450         (rs6000_ax_pseudo_register_collect): Move DFP, VSX and EFP pseudo
451         register logic to new functions.  Handle checkpointed DFP, VSX,
452         and EFP pseudo registers.
453         (rs6000_gdbarch_init): Look for and validate the htm features.
454         Include checkpointed DFP, VSX and EFP pseudo-registers.
455         * NEWS: Mention access to PPR, DSCR, TAR, EBB/PMU registers and
456         HTM registers.
457
458 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
459
460         * rs6000-tdep.c (rs6000_gdbarch_init): Reject tdescs with vsx but
461         without altivec or fpu.
462
463 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
464             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
465
466         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_EBBREGSET)
467         (PPC_LINUX_SIZEOF_PMUREGSET): Declare.
468         * nat/ppc-linux.h (PPC_FEATURE2_EBB, NT_PPC_EBB, NT_PPC_PMU):
469         Define if not already defined.
470         * features/rs6000/power-ebb.xml: New file.
471         * features/rs6000/power-linux-pmu.xml: New file.
472         * features/rs6000/powerpc-isa207-vsx32l.xml: Include ebb and pmu
473         features.
474         * features/rs6000/powerpc-isa207-vsx64l.xml: Likewise.
475         * features/rs6000/powerpc-isa207-vsx32l.c: Re-generate.
476         * features/rs6000/powerpc-isa207-vsx64l.c: Re-generate.
477         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Re-generate.
478         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Re-generate.
479         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
480         fetch_regset with ebb and pmu regsets.
481         (store_register, store_ppc_registers): Call store_regset with ebb
482         and pmu regsets.
483         (ppc_linux_nat_target::read_description): Set isa207 field in the
484         features struct if ebb and pmu are avaiable.
485         * ppc-linux-tdep.c (ppc32_regmap_ebb, ppc32_regmap_pmu)
486         (ppc32_linux_ebbregset, ppc32_linux_pmuregset): New globals.
487         (ppc_linux_iterate_over_regset_sections): Call back with the ebb
488         and pmu regsets.
489         (ppc_linux_core_read_description): Check if the pmu section is
490         present and set isa207 in the features struct.
491         * ppc-linux-tdep.h (ppc32_linux_ebbregset)
492         (ppc32_linux_pmuregset): Declare.
493         * ppc-tdep.h (struct gdbarch_tdep) <ppc_mmcr0_regnum>: New field.
494         <ppc_mmcr2_regnum, ppc_siar_regnum, ppc_sdar_regnum>: New fields.
495         <ppc_sier_regnum>: New field.
496         (enum): <PPC_BESCR_REGNUM, PPC_EBBHR_REGNUM, PPC_EBBRR_REGNUM>:
497         New enum values.
498         <PPC_MMCR0_REGNUM, PPC_MMCR2_REGNUM, PPC_SIAR_REGNUM>: New enum
499         values.
500         <PPC_SDAR_REGNUM, PPC_SIER_REGNUM>: New enum values.
501         (PPC_IS_EBB_REGNUM, PPC_IS_PMU_REGNUM): Define.
502         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate the
503         ebb and pmu features.
504
505 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
506             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
507
508         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_vsx32l)
509         (tdesc_powerpc_isa207_vsx64l): Declare.
510         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TARREGSET): Define.
511         (struct ppc_linux_features) <isa207>: New field.
512         (ppc_linux_no_features): Add initializer for isa207 field.
513         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
514         new tdescs.
515         * nat/ppc-linux.h (PPC_FEATURE2_ARCH_2_07, PPC_FEATURE2_TAR)
516         (NT_PPC_TAR): Define if not already defined.
517         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-vsx32l and
518         rs6000/powerpc-isa207-vsx64l.
519         (XMLTOC): Add rs6000/powerpc-isa207-vsx32l.xml and
520         rs6000/powerpc-isa207-vsx64l.xml.
521         * features/rs6000/power-tar.xml: New file.
522         * features/rs6000/powerpc-isa207-vsx32l.xml: New file.
523         * features/rs6000/powerpc-isa207-vsx64l.xml: New file.
524         * features/rs6000/powerpc-isa207-vsx32l.c: Generate.
525         * features/rs6000/powerpc-isa207-vsx64l.c: Generate.
526         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Generate.
527         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Generate.
528         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
529         fetch_regset with the TAR regset.
530         (store_register, store_ppc_registers): Call store_regset with the
531         TAR regset.
532         (ppc_linux_nat_target::read_description): Set isa207 field in the
533         features struct if needed.
534         * ppc-linux-tdep.c: Include
535         features/rs6000/powerpc-isa207-vsx32l.c and
536         features/rs6000/powerpc-isa207-vsx64l.c.
537         (ppc32_regmap_tar, ppc32_linux_tarregset): New globals.
538         (ppc_linux_iterate_over_regset_sections): Call back with the tar
539         regset.
540         (ppc_linux_core_read_description): Check if the tar section is
541         present and set isa207 in the features struct.
542         (_initialize_ppc_linux_tdep): Call
543         initialize_tdesc_powerpc_isa207_vsx32l and
544         initialize_tdesc_powerpc_isa207_vsx64l.
545         * ppc-linux-tdep.h (ppc32_linux_tarregset): Declare.
546         * ppc-tdep.h (gdbarch_tdep) <ppc_tar_regnum>: New field.
547         (enum) <PPC_TAR_REGNUM>: New enum value.
548         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate tar
549         feature.
550         (ppc_process_record_op31): Record changes to TAR.
551
552 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
553             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
554
555         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa205_ppr_dscr_vsx32l)
556         (tdesc_powerpc_isa205_ppr_dscr_vsx64l): Declare.
557         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_PPRREGSET)
558         (PPC_LINUX_SIZEOF_DSCRREGSET): Define.
559         (struct ppc_linux_features) <ppr_dscr>: New field.
560         (ppc_linux_no_features): Add initializer for ppr_dscr field.
561         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
562         new tdescs.
563         * nat/ppc-linux.h (PPC_FEATURE2_DSCR, NT_PPC_PPR, NT_PPC_DSCR):
564         Define if not already defined.
565         * features/Makefile (WHICH): Add
566         rs6000/powerpc-isa205-ppr-dscr-vsx32l and
567         rs6000/powerpc-isa205-ppr-dscr-vsx64l.
568         (XMLTOC): Add rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml and
569         rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml.
570         * features/rs6000/power-dscr.xml: New file.
571         * features/rs6000/power-ppr.xml: New file.
572         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml: New file.
573         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml: New file.
574         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c: Generate.
575         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c: Generate.
576         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx32l.dat: Generate.
577         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx64l.dat: Generate.
578         * ppc-linux-nat.c: Include <sys/uio.h>.
579         (fetch_regset, store_regset, check_regset): New functions.
580         (fetch_register, fetch_ppc_registers): Call fetch_regset with
581         DSCR and PPR regsets.
582         (store_register, store_ppc_registers): Call store_regset with
583         DSCR and PPR regsets.
584         (ppc_linux_get_hwcap2): New function.
585         (ppc_linux_nat_target::read_description): Call
586         ppc_linux_get_hwcap2 and check_regset, set ppr_dscr field in the
587         features struct if needed.
588         * ppc-linux-tdep.c: Include
589         features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c and
590         features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c.
591         (ppc32_regmap_ppr, ppc32_regmap_dscr, ppc32_linux_pprregset)
592         (ppc32_linux_dscrregset): New globals.
593         (ppc_linux_iterate_over_regset_sections): Call back with the ppr
594         and dscr regsets.
595         (ppc_linux_core_read_description): Check if the ppr and dscr
596         sections are present and set ppr_dscr in the features struct.
597         (_initialize_ppc_linux_tdep): Call
598         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx32l and
599         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx64l.
600         * ppc-linux-tdep.h (ppc32_linux_pprregset)
601         (ppc32_linux_dscrregset): Declare.
602         * ppc-tdep.h (struct gdbarch_tdep) <ppc_ppr_regnum>: New field.
603         <ppc_dscr_regnum>: New field.
604         (enum) <PPC_PPR_REGNUM, PPC_DSCR_REGNUM>: New enum values.
605         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate ppr
606         and dscr features.
607         (ppc_process_record_op31): Record changes to PPR and DSCR.
608
609 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
610
611         * rs6000-tdep.c (rs6000_gdbarch_init): Replace line wrapping by a
612         second initializer line for the have_* variables.  Initialize
613         have_fpu to 0 instead of 1.
614
615 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
616
617         * arch/ppc-linux-common.c (ppc_linux_match_description):
618         Parenthesize tdesc assignements and indent them properly.
619
620 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
621
622         * ppc-linux-nat.c (fetch_register): Change if statement to else
623         if.
624         (store_register): Likewise.
625
626 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
627
628         * rs6000-tdep.c: Remove reggroups.h include.
629         (rs6000_pseudo_register_reggroup_p): Remove.
630         (rs6000_gdbarch_init): Remove call to
631         set_tdesc_pseudo_register_reggroup_p.
632
633 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
634
635         * reggroups.c (default_register_reggroup_p): Return true for
636         decfloat registers and float_reggroup.
637
638 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
639
640         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): Remove.
641         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): Replace
642         ppc_linux_collect_vrregset by regcache_collect_regset.
643
644 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
645
646         * linux-tdep.c (linux_collect_regset_section_cb): Use
647         std::vector<gdb_byte> instead of char * and malloc for buf.
648         Remove xfree.
649
650 2018-10-26  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
651
652         * xcoffread.c (read_xcoff_symtab): Pass deduced language to
653         symtab_start instead of always using language_unknown.
654
655 2018-10-26  Andrew Burgess  <andrew.burgess@embecosm.com>
656
657         * riscv-tdep.c (riscv_read_misa_reg): Update comment, remove
658         READ_P parameter, catch and ignore register access errors from
659         either the old or new MISA location.
660         (riscv_has_feature): Update call to riscv_read_misa_reg.
661
662 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
663
664         * python/py-function.c (convert_values_to_python): Return
665         gdbpy_ref<>.  Add header comment.
666         (fnpy_call): Adjust.
667
668 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
669
670         * python/py-cmd.c (cmdpy_completer_helper): Return gdbpy_ref<>.
671         (cmdpy_completer_handle_brkchars): Adjust.
672         (cmdpy_completer): Adjust.
673
674 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
675
676         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
677         Pass correct regnum to raw_supply_zeroed.
678
679 2018-10-23  Hafiz Abid Qadeer  <abidh@codesourcery.com>
680
681         * regcache.c (cooked_read_test): Add CSKY to the list of
682         architectures with a save_reggroup
683
684 2018-10-23  Simon Marchi  <simon.marchi@polymtl.ca>
685
686         PR gdb/23368
687         * infrun.c (follow_exec): In the follow_exec_mode_new case,
688         transfer terminal state from old new new inferior.
689         * terminal.h (swap_terminal_info): New function.
690         * inflow.c (swap_terminal_info): New function.
691
692 2018-10-23  Tom Tromey  <tom@tromey.com>
693
694         * record-btrace.c (get_thread_current_frame_id): Rename from
695         get_thread_current_frame.  Return a frame_id.
696         (record_btrace_start_replaying): Update.
697
698 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
699
700         * riscv-tdep.c (riscv_register_name): Use the user-friendly names
701         for CSRs.
702
703 2018-10-23  Joel Brobecker  <brobecker@adacore.com>
704
705         * riscv-tdep.c (riscv_gdbarch_init): Set the gdbarch's
706         have_nonsteppable_watchpoint attribute to 1.
707
708 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
709
710         * riscv-tdep.c (riscv_gdb_reg_names): Update comment, and all
711         register names.
712         (struct register_alias): Rename to...
713         (struct riscv_register_alias): ...this, and update comment.
714         (riscv_register_aliases): Update type, and alias names.  Remove
715         CSR names from this list.
716         (riscv_register_name): Use riscv_gdb_reg_names for int and float
717         register names.  Add an extra assertion.
718         (riscv_is_regnum_a_named_csr): New function.
719         (riscv_register_reggroup_p): Use riscv_is_regnum_a_named_csr.
720
721 2018-10-22  Jim Wilson  <jimw@sifive.com>
722
723         * riscv-tdep.c (riscv_push_dummy_call) <in_reg>: Check for value in
724         FP reg smaller than FP reg size, and fill with -1 instead of 0.
725
726         * riscv-tdep.c (riscv_fpreg_d_type, riscv_fpreg_q_type): New.
727         (riscv_register_type): Use them.
728         (riscv_print_one_register_info): Handle union of floats same as float.
729         * riscv-tdep.h (struct gdbarch_tdep): Add riscv_fpreg_d_type and
730         riscv_fpreg_q_type fields.
731
732 2018-10-21  Simon Marchi  <simon.marchi@ericsson.com>
733
734         * gdbarch.sh (gdbarch_num_cooked_regs): New.
735         * gdbarch.h: Re-generate.
736         * ax-gdb.c (gen_expr): Use gdbarch_num_cooked_regs.
737         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
738         * eval.c (evaluate_subexp_standard): Likewise.
739         * findvar.c (value_of_register): Likewise.
740         (value_of_register_lazy): Likewise.
741         (address_from_register): Likewise.
742         * frame.c (get_frame_register_bytes): Likewise.
743         * gdbarch-selftests.c (register_to_value_test): Likewise.
744         * h8300-tdep.c (h8300_register_type): Likewise.
745         * i386-tdep.c (i386_dbx_reg_to_regnum): Likewise.
746         (i386_svr4_reg_to_regnum): Likewise.
747         * infcmd.c (default_print_registers_info): Likewise.
748         (registers_info): Likewise.
749         (print_vector_info): Likewise.
750         (default_print_float_info): Likewise.
751         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
752         * mdebugread.c (mdebug_reg_to_regnum): Likewise.
753         * mi/mi-main.c (mi_cmd_data_list_register_names): Likewise.
754         (mi_cmd_data_list_changed_registers): Likewise.
755         (mi_cmd_data_list_register_values): Likewise.
756         (mi_cmd_data_write_register_values): Likewise.
757         (mi_cmd_trace_frame_collected): Likewise.
758         * mips-tdep.c (print_gp_register_row): Likewise.
759         (mips_print_registers_info): Likewise.
760         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
761         * regcache.c (init_regcache_descr): Likewise.
762         (register_size): Likewise.
763         (register_dump::dump): Likewise.
764         (cooked_read_test): Likewise.
765         (cooked_write_test): Likewise.
766         * rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
767         (rs6000_gdbarch_init): Likewise.
768         * stabsread.c (stab_reg_to_regnum): Likewise.
769         * stack.c (info_frame_command): Likewise.
770         * target-descriptions.c (tdesc_register_name): Likewise.
771         * trad-frame.c (trad_frame_alloc_saved_regs): Likewise.
772         * tui/tui-regs.c (tui_show_register_group): Likewise.
773         * user-regs.c (user_reg_map_name_to_regnum): Likewise.
774         (user_reg_map_regnum_to_name): Likewise.
775         (value_of_user_reg): Likewise.
776         (maintenance_print_user_registers): Likewise.
777         * xtensa-tdep.c (xtensa_find_register_by_name): Likewise.
778         (xtensa_register_name): Likewise.
779         (xtensa_register_type): Likewise.
780         (xtensa_reg_to_regnum): Likewise.
781         (xtensa_pseudo_register_read): Likewise.
782         (xtensa_pseudo_register_write): Likewise.
783
784 2018-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
785
786         * amd64-tdep.c (amd64_pseudo_register_read_value): Use
787         correctly-sized buffer with raw_read.
788         (amd64_pseudo_register_write): Use correctly-sized buffer for
789         raw_read/raw_write.
790
791 2018-10-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
792
793         * typeprint.c (_initialize_typeprint): Fix wrong prefixname arg
794         in add_prefix_cmd of set print type.
795
796 2018-10-19  Tom Tromey  <tom@tromey.com>
797
798         PR tui/18388:
799         * NEWS: Mention tabset deprecation.
800         * tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
801         (update_tab_width): New function.
802         (tui_set_tab_width, tui_show_tab_width): New functions.
803         (tui_set_tab_width_command): Use update_tab_width.
804         (_initialize_tui_win): Move to end of file.  Deprecate "tabset".
805         Add new "set tui tab-width" command.
806         * tui/tui-source.c (tui_set_source_content): Update.
807         * tui/tui-disasm.c (tui_set_disassem_content): Update.
808         * tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
809         Don't declare.
810         (tui_tab_width): Declare.
811         * tui/tui-data.c (default_tab_len, tui_default_tab_len)
812         (tui_set_default_tab_len): Remove.
813
814 2018-10-19  Tom Tromey  <tom@tromey.com>
815
816         * tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
817         (key_is_backspace, tui_getc): Don't declare.
818         * tui/tui-io.c (key_is_start_sequence): Now static.
819         (key_is_end_sequence, key_is_backspace): Remove.
820         (tui_getc): Now static.
821
822 2018-10-19  Tom Tromey  <tom@tromey.com>
823
824         * symfile.c (reread_symbols): Clear "static_links".
825
826 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
827
828         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
829         define.
830         (aarch64_linux_sigframe_init): Extra boundary checks.
831
832 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
833
834         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
835         the possibly non-existent tdesc type 'vec128', but the type of raw
836         register v16 instead.
837
838 2018-10-19  Gary Benson <gbenson@redhat.com>
839
840         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
841
842 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
843
844         PR cli/23785
845         * cli/cli-dump.c (restore_binary_file): Check if "file" is
846         NULL.
847
848 2018-10-17  Paul Koning  <paul_koning@dell.com>
849
850         * charset.c (convert_between_encodings): Fix unsigned overflow.
851
852 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
853
854         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
855         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
856         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
857         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
858         New functions.
859         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
860         and fbsd_info_proc_mappings_header.
861         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
862         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
863         New.
864
865 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
866
867         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
868         Solaris Maintainer.
869
870 2018-10-15  Tom Tromey  <tom@tromey.com>
871
872         * tui/tui.c (strcat_to_buf): Remove casts.
873         * tui/tui-winsource.c (tui_show_source_line)
874         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
875         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
876         * tui/tui-windata.c (tui_first_data_item_displayed)
877         (tui_delete_data_content_windows, tui_erase_data_content)
878         (tui_display_all_data, tui_display_data_from)
879         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
880         * tui/tui-win.c (tui_set_win_height)
881         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
882         casts.
883         * tui/tui-win.c (tui_resize_all): Remove casts.
884         (tui_scroll_backward_command, tui_set_focus)
885         (tui_set_tab_width_command): Likewise.
886         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
887         * tui/tui-regs.c (tui_show_register_group): Remove cast.
888         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
889         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
890         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
891         Remove casts.
892
893 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
894
895         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
896         AArch64/ARM maintainer.
897
898 2018-10-11  Gary Benson <gbenson@redhat.com>
899
900         * interps.h (interp::m_name): Make private and mutable.
901         * interps.c (interp::~interp): Free m_name.
902
903 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
904             Simon Marchi <simark@simark.ca>
905
906         * README (`configure' options): Add documentation for new
907         "--enable-unit-tests" option.
908         * acinclude.m4: Include "selftest.m4".
909         * configure: Regenerate.
910         * configure.ac: Use "GDB_AC_SELFTEST".
911         * maint.c (maintenance_selftest): Update message informing
912         that selftests have been disabled.
913         (maintenance_info_selftests): Likewise.
914         * selftest.m4: New file.
915
916 2018-10-10  Gary Benson <gbenson@redhat.com>
917
918         * remote.c (remote_target::remote_send_printf): Add
919         missing va_end found by Coverity.
920
921 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
922
923         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
924
925 2018-10-09  Tom Tromey  <tom@tromey.com>
926
927         * configure: Rebuild.
928         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
929         * NEWS: Update --enable-ubsan documentation.
930
931 2018-10-09  Gary Benson <gbenson@redhat.com>
932
933         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
934         found by Coverity.
935
936 2018-10-08  Tom Tromey  <tom@tromey.com>
937
938         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
939         variable.
940         (riscv_fbsd_init_abi): Likewise.
941
942 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
943         * valops.c (value_struct_elt_for_reference): Rename local variable
944         to work around the shadowing a previous local warning.
945
946 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
947
948         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
949         * NEWS: Mention new FreeBSD/riscv native configuration.
950         * configure.host: Add riscv*-*-freebsd*.
951         * configure.nat: Likewise.
952         * riscv-fbsd-nat.c: New file.
953
954 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
955
956         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
957         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
958         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
959         * NEWS: Mention new FreeBSD/riscv target.
960         * configure.tgt: Add riscv*-*-freebsd*.
961         * riscv-fbsd-tdep.c: New file.
962         * riscv-fbsd-tdep.h: New file.
963
964 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
965
966         * regcache.h (struct regcache_map_entry): Note that this type can
967         be used with traditional frame caches.
968         * trad-frame.c (trad_frame_set_reg_regmap): New.
969         * trad-frame.h (trad_frame_set_reg_regmap): New.
970
971 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
972
973         PR c++/16841
974         * valops.c (get_virtual_base_offset): New function.
975         (value_struct_elt_for_reference): Use it to get virtual base offset
976         and add it in calculating class member address.
977
978 2018-10-08   John Darrington <john@darrington.wattle.id.au>
979
980     * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
981       (check_producer): Check if the producer is codewarrior.
982       (producer_is_codewarrior): New function.
983       (lnp_state_machine::record_line): Ignore is_stmt flag for records
984        produced by codewarrior.
985       (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
986
987 2018-10-06  Tom Tromey  <tom@tromey.com>
988
989         PR python/19399:
990         * python/py-inferior.c: Add "architecture" entry.
991         (infpy_architecture): New function.
992
993 2018-10-06  Tom Tromey  <tom@tromey.com>
994
995         PR python/21765:
996         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
997         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
998         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
999         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
1000
1001 2018-10-06  Tom Tromey  <tom@tromey.com>
1002
1003         PR build/17077:
1004         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
1005         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
1006         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
1007         #include.
1008
1009 2018-10-06  Tom Tromey  <tom@tromey.com>
1010
1011         * python/py-breakpoint.c (bppy_get_location): Handle a
1012         bp_breakpoint without a location.
1013
1014 2018-10-06  Tom Tromey  <tom@tromey.com>
1015
1016         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
1017         (_RegEx): Reformat help text.
1018         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
1019         (AnyCallerIs, AnyCallerMatches): Reformat help text.
1020         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
1021         text.
1022         * python/lib/gdb/command/xmethods.py (InfoXMethod)
1023         (EnableXMethod, DisableXMethod): Remove help indentation.
1024         Capitalize meta-syntactic variables.
1025         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
1026         (EnableUnwinder, DisableUnwinder): Remove help indentation.
1027         Capitalize meta-syntactic variables.
1028         * python/lib/gdb/command/explore.py (ExploreCommand)
1029         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
1030         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
1031         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
1032         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
1033         Remove help indentation.
1034         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
1035         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
1036         (DisableFrameFilter, SetFrameFilterPriority)
1037         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
1038
1039 2018-10-06  Tom Tromey  <tom@tromey.com>
1040
1041         PR tui/28819:
1042         * tui/tui-io.c (gdb_wgetch): New function.
1043         (tui_mld_getc, tui_getc): Use it.
1044
1045 2018-10-05  Tom Tromey  <tom@tromey.com>
1046
1047         * sol-thread.c (sol_thread_target::wait): Rename inner
1048         "save_ptid".
1049
1050 2018-10-04  Tom Tromey  <tom@tromey.com>
1051
1052         * configure: Rebuild.
1053         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
1054
1055 2018-10-04  Tom Tromey  <tom@tromey.com>
1056
1057         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
1058         declaration of "block".
1059
1060 2018-10-04  Tom Tromey  <tom@tromey.com>
1061
1062         * common/filestuff.c (fdwalk): Remove inner declaration of
1063         "result".
1064
1065 2018-10-04  Tom Tromey  <tom@tromey.com>
1066
1067         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
1068         "structs_addr" and hoist declaration.
1069
1070 2018-10-04  Tom Tromey  <tom@tromey.com>
1071
1072         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
1073         variable "size".
1074
1075 2018-10-04  Tom Tromey  <tom@tromey.com>
1076
1077         * mdebugread.c (parse_partial_symbols): Use std::string.
1078
1079 2018-10-04  Tom Tromey  <tom@tromey.com>
1080
1081         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
1082         * p-valprint.c (pascal_val_print): Split inner "i" variable.
1083         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
1084         header.
1085         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
1086         more inner scope.
1087         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
1088         * varobj.c (varobj_update): Rename inner "newobj",
1089         "type_changed".
1090         * valprint.c (generic_emit_char): Rename inner "buf".
1091         * valops.c (find_overload_match): Rename inner "temp".
1092         (value_struct_elt_for_reference): Declare "v" in more inner
1093         scope.
1094         * v850-tdep.c (v850_push_dummy_call): Rename "len".
1095         * unittests/array-view-selftests.c (run_tests): Rename inner
1096         "vec".
1097         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
1098         header.
1099         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
1100         "tsv" in more inner scope.
1101         (print_one_static_tracepoint_marker): Rename inner
1102         "tuple_emitter".
1103         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
1104         (tic6x_push_dummy_call): Don't redeclare "addr".
1105         * target-float.c: Declare "dto" lower.
1106         * symtab.c (lookup_local_symbol): Rename inner "sym".
1107         (find_pc_sect_line): Rename inner "pc".
1108         * stack.c (print_frame): Don't redeclare "gdbarch".
1109         (return_command): Rename inner "gdbarch".
1110         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
1111         "sp".
1112         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
1113         header.
1114         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
1115         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
1116         scope.
1117         * remote.c (remote_target::update_thread_list): Don't redeclare
1118         "tp".
1119         (remote_target::process_initial_stop_replies): Rename inner
1120         "thread".
1121         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
1122         (remote_target::wait_as): Don't redeclare "stop_reply".
1123         (remote_target::get_thread_local_address): Rename inner
1124         "result".
1125         (remote_target::get_tib_address): Likewise.
1126
1127         * regcache.c (cooked_read_test): Rename "regnum".
1128         * record-btrace.c (cmd_record_btrace_start): Rename inner
1129         "exception".
1130         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
1131         loop header.
1132         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
1133         header.
1134         (ppu2spu_sniffer): Rename inner "buf".
1135         * parse.c (operator_check_standard): Rename inner "type",
1136         "objfile".
1137         * p-valprint.c (pascal_val_print): Introduce new scope for
1138         "low_bound", "high_bound".
1139         * p-exp.y (yylex): Declare "i" in loop header.
1140         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
1141         Lower declaration of "s".
1142         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
1143         header.
1144         (nios2_push_dummy_call): Rename "len".
1145         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
1146         "buf".
1147         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
1148         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
1149         (linux_xfer_osdata_modules): Likewise.
1150         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
1151         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
1152         (mips_o64_push_dummy_call): Likewise.
1153         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
1154         "op".
1155         * mi/mi-main.c (list_available_thread_groups): Rename inner
1156         "tuple_emitter".
1157         (mi_cmd_data_read_memory): Rename inner "opts".
1158         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
1159         "tuple_emitter".
1160         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
1161         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
1162         more inner scope.
1163         (parse_partial_symbols): Rename inner "pst", "p", "name"
1164         * main.c (captured_main_1): Rename inner "i"s.
1165         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
1166         "oso2".
1167         * linux-tdep.c (linux_info_proc): Rename inner "filename".
1168         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
1169         * infrun.c (handle_no_resumed): Don't redeclare "thread".
1170         (handle_signal_stop): Rename inner "gdbarch".
1171         (handle_command): Declare "signum" in loop header.
1172         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
1173         "status".
1174         (examine_prologue): Rename inner "sol" and "sof".
1175         (ia64_extract_return_value): Rename inner "val".  Declare another
1176         "val" in a more inner scope.
1177         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
1178         inner scope.
1179         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
1180         "except".
1181         * findvar.c (default_read_var_value): Don't redeclare "addr".
1182         * f-exp.y (yylex): Declare "i" in loop header.
1183         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
1184         Rename inner "type", "expect_type".
1185         (evaluate_subexp_for_sizeof): Rename inner "pc".
1186         * elfread.c (elf_symfile_read): Rename inner "abfd".
1187         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
1188         "bytes_read".
1189         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
1190         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
1191         (dwarf_decode_line_header): Rename inner "lh".
1192         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
1193         "offset".  Declare "i" in loop header.
1194         (disassemble_dwarf_expression): Rename inner "addr_size".
1195         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
1196         inner "result".
1197         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
1198         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
1199         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
1200         "inner_list_emitter".
1201         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
1202         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
1203         declaration in a block.
1204         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
1205         * cp-valprint.c (cp_print_value_fields): Don't redeclare
1206         "obstack_final_size".
1207         * cp-support.c (inspect_type): Declare "i" in loop header.
1208         * compile/compile.c (compile_instance::insert_symbol_error):
1209         Rename inner "e".
1210         * common/agent.c (agent_run_command): Remove inner "ret"
1211         declaration.
1212         * coffread.c (coff_symfile_read): Rename inner "name".
1213         (coff_symfile_read): Rename inner "abfd".
1214         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
1215         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
1216         "high".
1217         * c-exp.y (lex_one_token): Move "len" declaration lower.
1218         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
1219         "gdbarch".
1220         (create_exception_master_breakpoint): Likewise.  Don't redeclare
1221         "b".
1222         (watch_command_1): Declare "mark" later.
1223         (clear_command): Don't shadow "a" or "b".
1224         (delete_command): Rename inner "b".
1225         (delete_trace_command): Likewise.
1226         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
1227         "op".
1228         (arm_gdbarch_init): Remove inner "e_flags".
1229         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
1230         "offset" in inner blocks.
1231
1232 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
1233
1234         * dwarf-index-write.c (file_write): Don't write if the vector is
1235         empty.
1236
1237 2018-10-05  Tom de Vries  <tdevries@suse.de>
1238
1239         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
1240         PyArg_ParseTuple call.
1241
1242 2018-10-05  Tom de Vries  <tdevries@suse.de>
1243
1244         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
1245         PyArg_ParseTuple call.
1246
1247 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
1248
1249         * psymtab.c (recursively_search_psymtabs): Reformat parameters
1250         to avoid exceeding 80 characters per line limit.
1251
1252 2018-10-04  Tom Tromey  <tom@tromey.com>
1253
1254         * symfile.c (syms_from_objfile_1, finish_new_objfile)
1255         (reread_symbols): Update.
1256         * complaints.h (clear_complaints): Remove argument.
1257         * complaints.c (enum complaint_series): Remove.
1258         (series): Remove global.
1259         (complaint_internal): Update.
1260         (clear_complaints): Remove argument.
1261
1262 2018-10-04  Tom Tromey  <tom@tromey.com>
1263
1264         * symfile.c (symbol_file_add_with_addrs): Do not print "no
1265         debugging symbols" message if there is a separate debug objfile.
1266
1267 2018-10-04  Tom Tromey  <tom@tromey.com>
1268
1269         PR cli/19551:
1270         * symfile.c (symbol_file_add_with_addrs): Update output.
1271         * psymtab.c (require_partial_symbols): Update output.
1272
1273 2018-10-04  Tom Tromey  <tom@tromey.com>
1274
1275         PR cli/22234:
1276         * complaints.c: Emit \n.
1277
1278 2018-10-04  Tom Tromey  <tom@tromey.com>
1279
1280         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
1281         (separate_debug_file_exists, find_separate_debug_file)
1282         (add_symbol_file_command, reread_symbols, allocate_symtab)
1283         (allocate_compunit_symtab): Use filtered printing, not
1284         unfiltered.
1285         * psymtab.c (require_partial_symbols, dump_psymtab)
1286         (allocate_psymtab): Use filtered printing, not unfiltered.
1287
1288 2018-10-04  Tom Tromey  <tom@tromey.com>
1289
1290         * complaints.c (complaint_internal): Correctly check complaint
1291         count.
1292
1293 2018-10-04  Tom Tromey  <tom@tromey.com>
1294
1295         * complaints.h (struct complaints): Remove declaration.
1296         * complaints.c (clear_complaints): Remove an unused variable.
1297
1298 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1299
1300         * MAINTAINERS (Write After Approval): Add self.
1301
1302 2018-10-03  Tom Tromey  <tom@tromey.com>
1303
1304         * guile/scm-value.c (gdbscm_value_to_string): Initialize
1305         "buffer_contents".
1306         * coffread.c (coff_symtab_read): Initialize "newobj".
1307
1308 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
1309
1310         * dwarf2read.c (read_func_scope): Remove struct keyword in
1311         range-based for.
1312
1313 2018-10-03  Tom Tromey  <tom@tromey.com>
1314
1315         * README: Mention --enable-ubsan.
1316         * NEWS: Mention --enable-ubsan.
1317         * acinclude.m4: Include sanitize.m4.
1318         * configure: Rebuild.
1319         * configure.ac: Call AM_GDB_UBSAN.
1320         * sanitize.m4: New file.
1321
1322 2018-10-03  Tom Tromey  <tom@tromey.com>
1323
1324         * expression.h (enum exp_opcode): Use uint8_t as base type.
1325         * expprint.c (op_name): Handle invalid opcodes.
1326
1327 2018-10-03  Tom Tromey  <tom@tromey.com>
1328
1329         * parse.c (prefixify_expression): Add assert.
1330         (parse_exp_in_context_1): Throw exception if the expression is
1331         empty.
1332
1333 2018-10-03  Tom Tromey  <tom@tromey.com>
1334
1335         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
1336
1337 2018-10-03  Tom Tromey  <tom@tromey.com>
1338
1339         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
1340
1341 2018-10-03  Tom Tromey  <tom@tromey.com>
1342
1343         * dwarf2read.c (read_subrange_type): Make "negative_mask"
1344         unsigned.
1345
1346 2018-10-03  Tom Tromey  <tom@tromey.com>
1347
1348         * findvar.c (extract_integer): Do work in an unsigned type.
1349
1350 2018-10-03  Tom Tromey  <tom@tromey.com>
1351
1352         * common/enum-flags.h (enum_flags::operator~): Add static assert.
1353         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
1354         base type.
1355         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
1356         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
1357         type.
1358         * c-lang.h (enum c_string_type_values): Use unsigned as base
1359         type.
1360         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
1361
1362 2018-10-03  Tom Tromey  <tom@tromey.com>
1363
1364         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
1365         <~dwarf2_frame_state_reg_info>: Update.
1366         <dwarf2_frame_state_reg_info>: Update.
1367         <alloc_regs>: Add assertion.  Update.
1368         <reg>: Now a std::vector.
1369         <num_regs>: Remove.
1370         <swap>: Update.
1371         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
1372         (execute_cfa_program_test, dwarf2_frame_cache): Update.
1373
1374 2018-10-03  Tom Tromey  <tom@tromey.com>
1375
1376         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
1377
1378 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1379
1380         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
1381
1382 2018-10-02  Tom Tromey  <tom@tromey.com>
1383
1384         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
1385
1386 2018-10-02  John Darrington <john@darrington.wattle.id.au>
1387
1388         * NEWS: Mention changed commands.
1389         * ser-uds.c: New file.
1390         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
1391         * configure: Regenerate.
1392         * Makefile.in: Add new file.
1393         * serial.c (serial_open): Check if filename is a socket
1394           and lookup the appropriate interface accordingly.
1395
1396 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
1397
1398         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
1399         define.
1400         (AARCH64_EXTRA_MAGIC): Likewise.
1401         (AARCH64_FPSIMD_MAGIC): Likewise.
1402         (AARCH64_SVE_MAGIC): Likewise.
1403         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
1404         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
1405         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
1406         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
1407         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
1408         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
1409         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
1410         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
1411         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
1412         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
1413         (read_aarch64_ctx): Add function.
1414         (aarch64_linux_sigframe_init): Detect FP registers.
1415
1416 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
1417
1418         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
1419         (AARCH64_D0_REGNUM): Likewise.
1420         (AARCH64_S0_REGNUM): Likewise.
1421         (AARCH64_H0_REGNUM): Likewise.
1422         (AARCH64_B0_REGNUM): Likewise.
1423         (AARCH64_SVE_V0_REGNUM): Likewise.
1424         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
1425         (AARCH64_D0_REGNUM): Likewise.
1426         (AARCH64_S0_REGNUM): Likewise.
1427         (AARCH64_H0_REGNUM): Likewise.
1428         (AARCH64_B0_REGNUM): Likewise.
1429         (AARCH64_SVE_V0_REGNUM): Likewise.
1430
1431 2018-10-01  Gary Benson <gbenson@redhat.com>
1432
1433         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
1434         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
1435         prfpregset_t instead of gdb_prfpregset_t.
1436         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
1437         * configure, config.in: Rebuild.
1438
1439 2018-10-01  Gary Benson <gbenson@redhat.com>
1440
1441         * common/gdb_proc_service.h: New file, factored out from...
1442         * gdb_proc_service.h: Moved common code to the above file.
1443         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
1444
1445 2018-10-01  Gary Benson <gbenson@redhat.com>
1446
1447         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
1448         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
1449
1450 2018-10-01  Gary Benson <gbenson@redhat.com>
1451
1452         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
1453         (AC_CHECK_HEADERS): Check for linux/elf.h.
1454         * configure, config.in: Rebuild.
1455         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
1456         doesn't define elf_fpregset_t.
1457
1458 2018-10-01  Gary Benson <gbenson@redhat.com>
1459
1460         * gdb_proc_service.h: Whitespace change.
1461
1462 2018-10-01  Tom Tromey  <tom@tromey.com>
1463
1464         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
1465         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
1466         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
1467
1468 2018-10-01  Tom Tromey  <tom@tromey.com>
1469
1470         * README: Minor change.
1471
1472 2018-09-30  Pedro Alves  <palves@redhat.com>
1473
1474         * darwin-nat-info.c (darwin_debug_regions_recurse)
1475         (info_mach_exceptions_command): Remove unused local variables.
1476         * darwin-nat.c (darwin_decode_notify_message)
1477         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
1478         (darwin_stop_inferior, darwin_setup_exceptions)
1479         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
1480         (darwin_nat_target::attach, darwin_nat_target::detach)
1481         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
1482         local variables.
1483         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
1484         variables.
1485
1486 2018-09-29  Tom Tromey  <tom@tromey.com>
1487
1488         * README: Remove some leftover text.
1489
1490 2018-09-29  Tom Tromey  <tom@tromey.com>
1491
1492         * PROBLEMS: Rewrite.
1493         * README: Update.
1494
1495 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
1496
1497         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
1498         case with explicit breakpoint kind.
1499         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
1500         'additional_info' and related logic.
1501         (riscv_debug_breakpoints): New variable.
1502         (riscv_breakpoint_kind_from_pc): Use the length of the existing
1503         instruction to determine the breakpoint kind.
1504         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
1505         flag.  Update description of 'set/show riscv
1506         use-compressed-breakpoints' flag.
1507
1508 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
1509
1510         (NEWS): Mention changes to frame related commands.
1511         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
1512         (add_prefix_cmd_suppress_notification): New function.
1513         (add_com_suppress_notification): Call
1514         add_cmd_suppress_notification.
1515         * command.h (add_cmd_suppress_notification): Declare.
1516         (add_prefix_cmd_suppress_notification): Declare.
1517         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
1518         (parse_frame_specification): Moved from stack.c, with
1519         simplification to handle a single argument.
1520         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
1521         switch to the selected frame.  Add a header comment.
1522         * stack.c: Remove 'safe-ctype.h' include.
1523         (find_frame_for_function): Add declaration.
1524         (find_frame_for_address): New function.
1525         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
1526         (frame_selection_by_function_completer): New function.
1527         (info_frame_command): Rename to...
1528         (info_frame_command_core): ...this, and update parameter types.
1529         (select_frame_command): Rename to...
1530         (select_frame_command_core): ...this, and update parameter types.
1531         (frame_command): Rename to...
1532         (frame_command_core): ...this, and update parameter types.
1533         (class frame_command_helper): New class to wrap implementations of
1534         frame related sub-commands.
1535         (frame_apply_cmd_list): New static global.
1536         (frame_cmd_list): Make static.
1537         (select_frame_cmd_list): New global for sub-commands.
1538         (info_frame_cmd_list): New global for sub-commands.
1539         (_initialize_stack): Register sub-commands for 'frame',
1540         'select-frame', and 'info frame'.  Update 'frame apply' commands
1541         to use frame_apply_cmd_list.  Move function local static
1542         frame_apply_list to file static frame_apply_cmd_list for
1543         consistency.
1544         * stack.h (select_frame_command): Delete declarationn.
1545         (select_frame_for_mi): Declare new function.
1546
1547 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
1548
1549         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
1550         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
1551         and NOP.
1552
1553 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
1554
1555         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
1556
1557 2018-09-26  Tom Tromey  <tom@tromey.com>
1558
1559         * valops.c (auto_abandon): Remove dead code.
1560
1561 2018-09-26  Tom Tromey  <tom@tromey.com>
1562
1563         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
1564
1565 2018-09-24  Tom Tromey  <tom@tromey.com>
1566
1567         * common/pathstuff.c (get_standard_cache_dir): Make
1568         "xdg_cache_home" and "home" const.
1569         * top.c (init_history): Make "tmpenv" const.
1570         * main.c (get_init_files): Make "homedir" const.
1571
1572 2018-09-23  Tom Tromey  <tom@tromey.com>
1573
1574         PR python/18852:
1575         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
1576
1577 2018-09-23  Tom Tromey  <tom@tromey.com>
1578
1579         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
1580         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
1581         * python/python-internal.h (gdbpy_handle_exception): Declare.
1582         * python/py-utils.c (gdbpy_handle_exception): New function.
1583
1584 2018-09-23  Tom Tromey  <tom@tromey.com>
1585
1586         PR python/17284:
1587         * python/py-type.c (typy_template_argument): Check for negative
1588         argument number.
1589
1590 2018-09-23  Tom Tromey  <tom@tromey.com>
1591
1592         PR python/14062:
1593         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
1594
1595 2018-09-23  Tom Tromey  <tom@tromey.com>
1596
1597         PR python/18170:
1598         * python/py-value.c (valpy_int): Allow conversion from pointer
1599         type.
1600
1601 2018-09-23  Tom Tromey  <tom@tromey.com>
1602
1603         PR python/20126:
1604         * python/py-value.c (valpy_int): Respect type sign.
1605
1606 2018-09-23  Tom Tromey  <tom@tromey.com>
1607
1608         PR python/18352;
1609         * python/py-value.c (valpy_float): Allow conversions from int or
1610         char.
1611         (valpy_int, valpy_long): Allow conversions from float.
1612
1613 2018-09-23  Tom Tromey  <tom@tromey.com>
1614
1615         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
1616         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
1617
1618 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1619
1620         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
1621         __sighndlr.
1622         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
1623
1624 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
1625
1626         * windows-nat.c (windows_nat_target::wait): Remove a spurious
1627         target_terminal::ours().
1628
1629 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
1630
1631         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
1632         of vl to ULONGEST.
1633
1634 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
1635
1636         * breakpoint.c (update_inserted_breakpoint_locations): Remove
1637         redundant condition.
1638
1639 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1640
1641         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
1642
1643         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
1644         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
1645         * sol-thread.c (ps_pdmodel): Don't guard definition.
1646
1647         * procfs.c: Fix formatting.
1648
1649         * procfs.c (sysset_t_alloc): Remove.
1650         (create_procinfo): Use XNEW instead of sysset_t_alloc.
1651         (procfs_debug_inferior): Likewise.
1652         (procfs_set_exec_trap): Likewise.
1653         (proc_set_traced_sysentry): Don't allocate argp dynamically.
1654         (proc_set_traced_sysexit): Likewise.
1655
1656         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
1657         (dead_procinfo): Likewise.
1658         (proc_warn): Likewise.
1659         (proc_error): Likewise.
1660         (proc_get_LDT_entry): Likewise.
1661         (do_attach): Likewise.
1662         (procfs_target::pid_to_str): Likewise.
1663         (iterate_over_mappings): Likewise.
1664
1665         * procfs.c (create_procinfo): Fix ARI warning.
1666         (proc_get_status): Likewise.
1667         (proc_stop_process): Likewise.
1668         (proc_run_process): Likewise.
1669         (proc_kill): Likewise.
1670         (proc_get_LDT_entry): Likewise.
1671         (procfs_find_LDT_entry): Likewise.
1672         (proc_update_threads): Likewise.
1673         (proc_iterate_over_threads): Likewise.
1674         (do_attach): Likewise.
1675         (procfs_xfer_memory): Likewise.
1676         (invalidate_cache): Likewise.
1677         (procfs_target::resume): Likewise.
1678         (procfs_init_inferior): Likewise.
1679         (procfs_set_exec_trap): Likewise.
1680         (procfs_target::thread_alive): Likewise.
1681         (procfs_target::pid_to_exec_file): Likewise.
1682         (iterate_over_mappings): Likewise.
1683         (procfs_target::make_corefile_notes): Likewise.
1684         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
1685
1686         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
1687         (procfs_find_LDT_entry): Likewise.
1688         * sol-thread.c (ps_lgetLDT): Likewise.
1689
1690 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1691
1692         PR tdep/17903
1693         * procfs.c (procfs_target): Declare pid_to_exec_file.
1694         (procfs_target::pid_to_exec_file): New.
1695
1696 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1697
1698         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
1699         renaming.
1700         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
1701         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
1702
1703 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1704
1705         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
1706         (supply_fpregset, fill_fpregset): Move ...
1707         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
1708         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
1709         Remove references to ioctl-based procfs.
1710         Include <sys/reg.h>.
1711         Remove PR_MODEL_NATIVE guards.
1712         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
1713         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
1714
1715 2018-09-19  Xavier Roirand  <roirand@adacore.com>
1716
1717         PR gdb/20981:
1718         * solib-darwin.c (darwin_get_dyld_bfd): New function.
1719         (darwin_solib_get_all_image_info_addr_at_init): Update call.
1720         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
1721
1722 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
1723
1724         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
1725         (fbsd_print_sockaddr_in6): Likewise.
1726
1727 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
1728             Chris January  <chris.january@arm.com>
1729
1730         * eval.c (skip_undetermined_arglist): Skip argument list helper.
1731         (evaluate_subexp_standard): Return a dummy type when
1732         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
1733         OP_F77_UNDETERMINED_ARGLIST case.
1734         * expression.h (enum noside): Update comment.
1735
1736 2018-09-19  George Vasick <george.vasick@oracle.com>
1737
1738         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
1739
1740 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
1741             April Chin <april.chin@oracle.com>
1742             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1743
1744         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
1745         uint_t lwpid_t.
1746         (create_procinfo): Print pids in /proc without leading zeros.
1747
1748 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
1749
1750         * nios2-tdep.c (nios2_gcc_target_options): New.
1751         (nios2_gdb_arch_init): Install new hook.
1752
1753 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
1754
1755         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
1756         New file.
1757         * update-gnulib.sh: Apply patch.
1758         * configure: Re-generate.
1759
1760 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1761
1762         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
1763         description.  Make "info proc" command descriptions more
1764         consistent.
1765
1766 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1767
1768         * NEWS: Mention 'info proc files' command.
1769
1770 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1771
1772         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
1773         descriptors for IP_FILES and IP_ALL.
1774
1775 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1776
1777         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
1778         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
1779         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
1780         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
1781         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
1782         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
1783         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
1784         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
1785         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
1786         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
1787         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
1788         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
1789         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
1790         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
1791         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
1792         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
1793         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
1794         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
1795         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
1796         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
1797         (struct fbsd_sockaddr_un): New types.
1798         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
1799         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
1800         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
1801         (fbsd_core_info_proc_files): New functions.
1802         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
1803         IP_ALL.
1804         * fbsd-tdep.h (fbsd_info_proc_files_header)
1805         (fbsd_info_proc_files_entry): New.
1806
1807 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1808
1809         * defs.h (enum info_proc_what) [IP_FILES]: New value.
1810         * infcmd.c (info_proc_cmd_files): New function.
1811         (_initialize_infcmd): Register 'info proc files' command.
1812
1813 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1814
1815         * gnulib/aclocal-m4-deps.mk: Re-generate.
1816         * gnulib/aclocal.m4: Re-generate.
1817         * gnulib/config.in: Re-generate.
1818         * gnulib/configure: Re-generate.
1819         * gnulib/import/Makefile.am: Re-generate.
1820         * gnulib/import/Makefile.in: Re-generate.
1821         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
1822         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
1823         * gnulib/import/arpa_inet.in.h: New file.
1824         * gnulib/import/inet_ntop.c: New file.
1825         * gnulib/import/m4/arpa_inet_h.m4: New file.
1826         * gnulib/import/m4/inet_ntop.m4: New file.
1827         * gnulib/import/m4/netinet_in_h.m4: New file.
1828         * gnulib/import/m4/socklen.m4: New file.
1829         * gnulib/import/m4/sockpfaf.m4: New file.
1830         * gnulib/import/m4/stdalign.m4: New file.
1831         * gnulib/import/m4/sys_uio_h.m4: New file.
1832         * gnulib/import/netinet_in.in.h: New file.
1833         * gnulib/import/stdalign.in.h: New file.
1834         * gnulib/import/sys_socket.c: New file.
1835         * gnulib/import/sys_socket.in.h: New file.
1836         * gnulib/import/sys_uio.in.h: New file.
1837         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
1838         module.
1839
1840 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1841
1842         * gnulib/aclocal-m4-deps.mk: New file.
1843         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
1844         deterministically.
1845
1846 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1847
1848         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
1849         KVE_PATH.
1850
1851 2018-09-18  Tom Tromey  <tom@tromey.com>
1852
1853         * compile/compile-object-load.c (struct
1854         link_hash_table_cleanup_data): Add constructor and destructor.
1855         Use DISABLE_COPY_AND_ASSIGN.
1856         (~link_hash_table_cleanup_data): Rename from
1857         link_hash_table_free.  Now a destructor.
1858         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
1859
1860 2018-09-18  Tom Tromey  <tom@tromey.com>
1861
1862         * compile/compile-object-run.c (do_module_cleanup): Use delete.
1863         * compile/compile-object-load.c (struct munmap_list): Move to
1864         header file.
1865         (munmap_list::add): Rename from munmap_list_add; rewrite.
1866         (munmap_list::~munmap_list): Rename from munmap_list_free.
1867         (munmap_listp_free_cleanup): Remove.
1868         (compile_object_load): Update.
1869         * compile/compile-object-load.h (struct munmap_list): Move from
1870         compile-object-load.c.  Rewrite.
1871
1872 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
1873
1874         * aarch64-tdep.c (pass_in_v): Use register size.
1875         (aarch64_extract_return_value): Likewise.
1876         (aarch64_store_return_value): Likewise.
1877
1878 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1879
1880         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
1881         rlim_t.
1882
1883 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1884
1885         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
1886         Fix short help line.
1887
1888 2018-09-17  Tom Tromey  <tom@tromey.com>
1889
1890         PR python/20445:
1891         * configure: Rebuild.
1892         * configure.ac: Conditionally use -DNDEBUG for Python.
1893
1894 2018-09-17  Tom Tromey  <tom@tromey.com>
1895
1896         * configure: Rebuild.
1897         * configure.ac: Use gmp as a library dependency when checking for
1898         mpfr.
1899
1900 2018-09-17  Pedro Alves  <palves@redhat.com>
1901
1902         * python/py-inferior.c (find_inferior_object): Delete.
1903
1904 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
1905
1906         * compile/compile-cplus-types.c
1907         (compile_cplus_instance::enter_scope): Don't use new_scope after
1908         std::move.
1909
1910 2018-09-17  Tom Tromey  <tom@tromey.com>
1911
1912         * common/pathstuff.c (get_standard_cache_dir): Use
1913         ~/Library/Caches on macOS.
1914         * common/pathstuff.h (get_standard_cache_dir): Update comment.
1915
1916 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
1917
1918         PR python/23669
1919         * breakpoint.c (commands_cmd_element): New.
1920         (_initialize_breakpoint): Assign commands_cmd_element.
1921         * breakpoint.h (commands_cmd_element): New.
1922         * cli/cli-script.c (while_cmd_element, if_command,
1923         define_cmd_element): New.
1924         (command_name_equals): Remove.
1925         (process_next_line): Compare commands by pointer, not by name.
1926         (_initialize_cli_script): Assign the various cmd_list_element
1927         variables.
1928         * compile/compile.c (compile_cmd_element): New.
1929         (_initialize_compile): Assign compile_cmd_element.
1930         * compile/compile.h (compile_cmd_element): New.
1931         * guile/guile.c (guile_cmd_element): New.
1932         (install_gdb_commands): Assign guile_cmd_element.
1933         * guile/guile.h (guile_cmd_element): New.
1934         * python/python.c (python_cmd_element): New.
1935         (_initialize_python): Assign python_cmd_element.
1936         * python/python.h (python_cmd_element): New.
1937         * tracepoint.c (while_stepping_cmd_element): New.
1938         (_initialize_tracepoint): Assign while_stepping_cmd_element.
1939         * tracepoint.h (while_stepping_cmd_element): New.
1940
1941 2018-09-17  Tom Tromey  <tom@tromey.com>
1942
1943         * infrun.c (save_infcall_suspend_state): Return
1944         infcall_suspend_state_up.
1945         (save_infcall_control_state): Return infcall_control_state_up.
1946         * inferior.h (save_infcall_suspend_state)
1947         (save_infcall_control_state): Declare later.  Return unique
1948         pointers.
1949
1950 2018-09-17  Tom Tromey  <tom@tromey.com>
1951
1952         * infrun.c (struct stop_context): Declare constructor,
1953         destructor, "changed" method.
1954         (stop_context::stop_context): Rename from save_stop_context.
1955         (stop_context::~stop_context): Rename from
1956         release_stop_context_cleanup.
1957         (normal_stop): Update.
1958         (stop_context::changed): Rename from stop_context_changed.  Return
1959         bool.
1960
1961 2018-09-17  Tom Tromey  <tom@tromey.com>
1962
1963         * inferior.h (struct infcall_suspend_state_deleter): New.
1964         (infcall_suspend_state_up): New typedef.
1965         (struct infcall_control_state_deleter): New.
1966         (infcall_control_state_up): New typedef.
1967         (make_cleanup_restore_infcall_suspend_state)
1968         (make_cleanup_restore_infcall_control_state): Don't declare.
1969         * infcall.c (call_function_by_hand_dummy): Update.
1970         * infrun.c (do_restore_infcall_suspend_state_cleanup)
1971         (make_cleanup_restore_infcall_suspend_state): Remove.
1972         (do_restore_infcall_control_state_cleanup)
1973         (make_cleanup_restore_infcall_control_state): Remove.
1974
1975 2018-09-17  Tom Tromey  <tom@tromey.com>
1976
1977         * gdbthread.h (struct thread_control_state): Add initializer.
1978         (class thread_info) <control>: Remove initializer.
1979         * inferior.h (struct inferior_control_state): Add initializer.
1980         (class inferior) <control>: Remove initializer.
1981         (exit_inferior_1): Update.
1982         * infrun.c (struct infcall_control_state): Add constructors.
1983         (save_infcall_control_state): Use new.
1984         (restore_infcall_control_state, discard_infcall_control_state):
1985         Use delete.
1986
1987 2018-09-17  Tom Tromey  <tom@tromey.com>
1988
1989         * infrun.c (struct infcall_suspend_state) <registers>: Now a
1990         unique_ptr.
1991         <siginfo_data>: Now a unique_xmalloc_ptr.
1992         (save_infcall_suspend_state, restore_infcall_suspend_state)
1993         (discard_infcall_suspend_state)
1994         (get_infcall_suspend_state_regcache): Update.
1995
1996 2018-09-17  Tom Tromey  <tom@tromey.com>
1997
1998         * gdbthread.h (struct thread_suspend_state): Add initializers.
1999         (class thread_info) <suspend>: Remove initializer.
2000         * infrun.c (struct infcall_suspend_state): Add initializers.
2001         (save_infcall_suspend_state): Use new.
2002         (discard_infcall_suspend_state): Use delete.
2003
2004 2018-09-16  Tom Tromey  <tom@tromey.com>
2005
2006         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
2007         Remove.
2008         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
2009         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
2010         (py_varobj_iter_new): Likewise.
2011         (py_varobj_get_iterator): Use gdbpy_ref.
2012
2013 2018-09-16  Tom Tromey  <tom@tromey.com>
2014
2015         * python/py-threadevent.c (py_get_event_thread): Simplify.
2016         * python/py-inferior.c (infpy_thread_from_thread_handle):
2017         Return immediately after calling thread_to_thread_object.  Use
2018         Py_RETURN_NONE.
2019         (thread_to_thread_object): Set the exception on a NULL return.
2020
2021 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
2022
2023         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
2024
2025 2018-09-16  Tom Tromey  <tom@tromey.com>
2026
2027         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
2028         Remove.
2029
2030 2018-09-16  Tom Tromey  <tom@tromey.com>
2031
2032         * python/python-internal.h (thread_to_thread_object): Change
2033         return type.
2034         * python/py-inferior.c (thread_to_thread_object): Return a new
2035         reference.
2036         (infpy_thread_from_thread_handle): Update.
2037         * python/py-infthread.c (gdbpy_selected_thread): Update.
2038         * python/py-stopevent.c (create_stop_event_object): Update.
2039         * python/py-threadevent.c (py_get_event_thread): Return a new
2040         reference.
2041         (py_get_event_thread): Update.
2042         * python/py-event.h (py_get_event_thread): Change return type.
2043         * python/py-continueevent.c (create_continue_event_object):
2044         Update.
2045
2046 2018-09-16  Tom Tromey  <tom@tromey.com>
2047
2048         * python/py-progspace.c (pspy_get_objfiles): Update.
2049         * python/python-internal.h (objfile_to_objfile_object): Change
2050         return type.
2051         * python/py-newobjfileevent.c (create_new_objfile_event_object):
2052         Update.
2053         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
2054         Update.
2055         * python/python.c (gdbpy_get_current_objfile): Update.
2056         (gdbpy_objfiles): Update.
2057         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
2058         Update.
2059         (objfile_to_objfile_object): Return a new reference.
2060         * python/py-symtab.c (stpy_get_objfile): Update.
2061         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
2062         Update.
2063
2064 2018-09-16  Tom Tromey  <tom@tromey.com>
2065
2066         * python/py-inferior.c (infpy_get_progspace): Update.
2067         * python/python-internal.h (pspace_to_pspace_object): Change
2068         return type.
2069         * python/py-newobjfileevent.c
2070         (create_clear_objfiles_event_object): Update.
2071         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
2072         Update.
2073         * python/python.c (gdbpy_get_current_progspace): Update.
2074         (gdbpy_progspaces): Update.
2075         * python/py-progspace.c (pspace_to_pspace_object): Return a new
2076         reference.
2077         * python/py-objfile.c (objfpy_get_progspace): Update.
2078         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
2079         Update.
2080
2081 2018-09-16  Tom Tromey  <tom@tromey.com>
2082
2083         * python/lib/gdb/__init__.py (current_progspace, objfiles)
2084         (solib_name, block_for_pc, find_pc_line): New functions.
2085         (execute_unwinders): Update.
2086         * python/py-block.c (gdbpy_block_for_pc): Remove.
2087         * python/py-inferior.c (infpy_get_progspace): New function.
2088         (inferior_object_getset) <progspace>: Add.
2089         * python/py-progspace.c (pspy_objfiles): Rewrite.
2090         (pspy_solib_name, pspy_block_for_pc)
2091         (pspy_find_pc_line, pspy_is_valid): New functions.
2092         (progspace_object_methods): Add entries for solib_name,
2093         block_for_pc, find_pc_line, is_valid.
2094         * python/python-internal.h (gdbpy_block_for_pc)
2095         (build_objfiles_list): Don't declare.
2096         * python/python.c: Don't include solib.h.
2097         (gdbpy_solib_name, gdbpy_find_pc_line)
2098         (gdbpy_get_current_progspace, build_objfiles_list)
2099         (gdbpy_objfiles): Remove.
2100         (GdbMethods) <current_progspace, objfiles, block_for_pc,
2101         solib_name, find_pc_line>: Remove entries.
2102
2103 2018-09-16  Tom Tromey  <tom@tromey.com>
2104
2105         * top.c (new_ui_command): Use GNU style for metasyntactic
2106         variables.
2107         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
2108         variables.
2109         * maint.c (maintenance_translate_address): Remove "<>" around
2110         text.
2111         * interps.c (interpreter_exec_cmd): Use GNU style for
2112         metasyntactic variables.
2113         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
2114         metasyntactic variables.
2115         * tracepoint.c (tfind_range_command): Use GNU style for
2116         metasyntactic variables.
2117         (tfind_outside_command): Likewise.
2118         (_initialize_tracepoint): Likewise.
2119         * remote.c (extended_remote_target::create_inferior): Use GNU
2120         style for metasyntactic variables.
2121         * sparc64-tdep.c (adi_examine_command): Use GNU style for
2122         metasyntactic variables.
2123         (adi_assign_command): Likewise.
2124
2125 2018-09-16  Tom Tromey  <tom@tromey.com>
2126
2127         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
2128         metasyntactic variables.  Print message if no disassembler options
2129         are available.
2130
2131 2018-09-15  Tom Tromey  <tom@tromey.com>
2132
2133         * infcmd.c (get_inferior_args): Return const char *.
2134         * inferior.h (get_inferior_args): Return type now const.
2135         * linux-tdep.c (linux_fill_prpsinfo): Update.
2136         * procfs.c (procfs_target::make_corefile_notes): Update.
2137
2138 2018-09-07  Tom Tromey  <tom@tromey.com>
2139
2140         * python/python.c (execute_gdb_command): Call bpstat_do_actions
2141         inside the TRY.
2142
2143 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
2144
2145         * nios2-tdep.c (nios2_type_align): New.
2146         (nios2_gdb_arch_init): Install type_align hook.
2147
2148 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
2149
2150         * eval.c (fake_method::fake_method): Call xzalloc directly for a
2151         type that is neither object file owned, nor gdbarch owned.
2152         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
2153         gdbarch is non-NULL.
2154         (alloc_type_instance): Allocate non-objfile owned types on the
2155         gdbarch obstack.
2156         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
2157         using TYPE_ALLOC to ensure memory is allocated on the correct
2158         obstack.
2159         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
2160         obstack, or the gdbarch obstack.
2161         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
2162
2163 2018-09-14  Tom Tromey  <tom@tromey.com>
2164
2165         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
2166         block.
2167
2168 2018-09-14  Tom Tromey  <tom@tromey.com>
2169
2170         * nat/fork-inferior.c (get_startup_shell): Remove "static".
2171
2172 2018-09-13  Tom Tromey  <tom@tromey.com>
2173
2174         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
2175         static.
2176
2177 2018-09-13  Tom Tromey  <tom@tromey.com>
2178
2179         * exec.c (try_open_exec_file): Use std::string.
2180
2181 2018-09-13  Tom Tromey  <tom@tromey.com>
2182
2183         * utils.h (gdb_bfd_errmsg): Return std::string.
2184         * exec.c (exec_file_attach): Update.
2185         * compile/compile-object-load.c (compile_object_load): Update.
2186         * utils.c (gdb_bfd_errmsg): Return std::string.
2187
2188 2018-09-13  Tom Tromey  <tom@tromey.com>
2189
2190         * procfs.c (struct procinfo_deleter): New.
2191         (procinfo_up): New typedef.
2192         (do_destroy_procinfo_cleanup): Remove.
2193         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
2194
2195 2018-09-13  Tom Tromey  <tom@tromey.com>
2196
2197         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
2198
2199 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2200 2018-09-13  Tom Tromey  <tom@tromey.com>
2201
2202         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
2203         (pspy_get_objfiles): New function.
2204         (progspace_object_methods): New.
2205         (pspace_object_type): Add tp_methods callback.
2206         * python/python-internal.h (build_objfiles_list): New
2207         declaration.
2208         * python/python.c (build_objfiles_list): New function.
2209         (gdbpy_objfiles): Implement using build_objfiles_list.
2210         * NEWS: Mention the Progspace.objfiles method.
2211
2212 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2213
2214         * python/py-inferior.c (infpy_get_progspace): New function.
2215         (inferior_object_getset): Add progspace property.
2216         * NEWS: Mention the new property.
2217
2218 2018-09-13  Tom Tromey  <tom@tromey.com>
2219
2220         PR rust/23650:
2221         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
2222
2223 2018-09-13  Tom Tromey  <tom@tromey.com>
2224
2225         PR rust/23626:
2226         * rust-lang.c (rust_enum_variant): Now static.
2227         (rust_empty_enum_p): New function.
2228         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
2229         Handle empty enum.
2230
2231 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2232
2233         * python/py-inferior.c (infpy_repr): New.
2234         (inferior_object_type): Register infpy_repr.
2235         * python/py-objfile.c (objfpy_repr): New.
2236         (objfile_object_type): Register objfpy_repr.
2237
2238 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
2239
2240         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
2241
2242 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
2243
2244         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
2245         typo.
2246
2247 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
2248
2249         * common/common-utils.c: Don't include '<sys/stat.h>'.
2250         (is_regular_file): Move to...
2251         * common/filestuff.c (is_regular_file): ... here.
2252         * common/common-utils.h (is_regular_file): Move to...
2253         * common/filestuff.h (is_regular_file): ... here.
2254
2255 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
2256
2257         * skip.c (debug_skip): New variable.
2258         (skiplist_entry::do_skip_file_p): Add debug output.
2259         (skiplist_entry::do_skip_gfile_p): Likewise.
2260         (skiplist_entry::skip_function_p): Likewise.
2261         (_initialize_step_skip): Create debug command.
2262         * NEWS: Mention set/show debug skip.
2263
2264 2018-09-11  Xavier Roirand  <roirand@adacore.com>
2265
2266         * darwin-nat.c (should_disable_startup_with_shell):
2267         New function.
2268         (darwin_nat_target::create_inferior): Add call.
2269
2270 2018-09-11  Xavier Roirand  <roirand@adacore.com>
2271
2272         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
2273         inf_port, msg_state>: Initialize.
2274         (struct darwin_thread_info) <signaled, single_step>: Change
2275         type and initialize.
2276         (struct darwin_thread_info) <event>: Initialize.
2277
2278 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2279
2280         PR gdb/23555
2281         PR gdb/23558
2282         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
2283         guesses.
2284
2285 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2286
2287         Revert:
2288         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
2289
2290         PR gdb/23555
2291         PR gdb/23558
2292         * gnulib/aclocal.m4: Regenerate.
2293         * gnulib/config.in: Regenerate.
2294         * gnulib/configure: Regenerate.
2295         * gnulib/import/Makefile.am: Update.
2296         * gnulib/import/Makefile.in: Update.
2297         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
2298         * gnulib/import/_Noreturn.h: ... this.
2299         * gnulib/import/alloca.in.h: Update.
2300         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
2301         * gnulib/import/arg-nonnull.h: ... this.
2302         * gnulib/import/assure.h: Update.
2303         * gnulib/import/at-func.c: Update.
2304         * gnulib/import/basename-lgpl.c: Update.
2305         * gnulib/import/extra/snippet/c++defs.h: Rename to...
2306         * gnulib/import/c++defs.h: ... this.
2307         * gnulib/import/canonicalize-lgpl.c: Update.
2308         * gnulib/import/cdefs.h: Update.
2309         * gnulib/import/chdir-long.c: Update.
2310         * gnulib/import/chdir-long.h: Update.
2311         * gnulib/import/cloexec.c: Update.
2312         * gnulib/import/cloexec.h: Update.
2313         * gnulib/import/close.c: Update.
2314         * gnulib/import/closedir.c: Update.
2315         * gnulib/import/config.charset: Update.
2316         * gnulib/import/dirent-private.h: Update.
2317         * gnulib/import/dirent.in.h: Update.
2318         * gnulib/import/dirfd.c: Update.
2319         * gnulib/import/dirname-lgpl.c: Update.
2320         * gnulib/import/dirname.h: Update.
2321         * gnulib/import/dosname.h: Update.
2322         * gnulib/import/dup-safer-flag.c: Update.
2323         * gnulib/import/dup-safer.c: Update.
2324         * gnulib/import/dup.c: Update.
2325         * gnulib/import/dup2.c: Update.
2326         * gnulib/import/errno.in.h: Update.
2327         * gnulib/import/error.c: Update.
2328         * gnulib/import/error.h: Update.
2329         * gnulib/import/exitfail.c: Update.
2330         * gnulib/import/exitfail.h: Update.
2331         * gnulib/import/extra/update-copyright: Update.
2332         * gnulib/import/fchdir.c: Update.
2333         * gnulib/import/fcntl.c: Update.
2334         * gnulib/import/fcntl.in.h: Update.
2335         * gnulib/import/fd-hook.c: Update.
2336         * gnulib/import/fd-hook.h: Update.
2337         * gnulib/import/fd-safer-flag.c: Update.
2338         * gnulib/import/fd-safer.c: Update.
2339         * gnulib/import/fdopendir.c: Update.
2340         * gnulib/import/filename.h: Update.
2341         * gnulib/import/filenamecat-lgpl.c: Update.
2342         * gnulib/import/filenamecat.h: Update.
2343         * gnulib/import/flexmember.h: Update.
2344         * gnulib/import/float+.h: Update.
2345         * gnulib/import/float.c: Update.
2346         * gnulib/import/float.in.h: Update.
2347         * gnulib/import/fnmatch.c: Update.
2348         * gnulib/import/fnmatch.in.h: Update.
2349         * gnulib/import/fnmatch_loop.c: Update.
2350         * gnulib/import/fpucw.h: Update.
2351         * gnulib/import/frexp.c: Update.
2352         * gnulib/import/frexpl.c: Update.
2353         * gnulib/import/fstat.c: Update.
2354         * gnulib/import/fstatat.c: Update.
2355         * gnulib/import/getcwd-lgpl.c: Update.
2356         * gnulib/import/getcwd.c: Update.
2357         * gnulib/import/getdtablesize.c: Update.
2358         * gnulib/import/getlogin_r.c: Update.
2359         * gnulib/import/getprogname.c: Update.
2360         * gnulib/import/getprogname.h: Update.
2361         * gnulib/import/gettext.h: Update.
2362         * gnulib/import/gettimeofday.c: Update.
2363         * gnulib/import/glob-libc.h: Update.
2364         * gnulib/import/glob.c: Update.
2365         * gnulib/import/glob.in.h: Update.
2366         * gnulib/import/glob_internal.h: Update.
2367         * gnulib/import/glob_pattern_p.c: Update.
2368         * gnulib/import/globfree.c: Update.
2369         * gnulib/import/hard-locale.c: Update.
2370         * gnulib/import/hard-locale.h: Update.
2371         * gnulib/import/intprops.h: Update.
2372         * gnulib/import/inttypes.in.h: Update.
2373         * gnulib/import/isnan.c: Update.
2374         * gnulib/import/isnand-nolibm.h: Update.
2375         * gnulib/import/isnand.c: Update.
2376         * gnulib/import/isnanl-nolibm.h: Update.
2377         * gnulib/import/isnanl.c: Update.
2378         * gnulib/import/itold.c: Update.
2379         * gnulib/import/libc-config.h: Update.
2380         * gnulib/import/limits.in.h: Update.
2381         * gnulib/import/localcharset.c: Update.
2382         * gnulib/import/localcharset.h: Update.
2383         * gnulib/import/localtime-buffer.c: Update.
2384         * gnulib/import/localtime-buffer.h: Update.
2385         * gnulib/import/lstat.c: Update.
2386         * gnulib/import/m4/00gnulib.m4: Update.
2387         * gnulib/import/m4/__inline.m4: Update.
2388         * gnulib/import/m4/absolute-header.m4: Update.
2389         * gnulib/import/m4/alloca.m4: Update.
2390         * gnulib/import/m4/builtin-expect.m4: Update.
2391         * gnulib/import/m4/canonicalize.m4: Update.
2392         * gnulib/import/m4/chdir-long.m4: Update.
2393         * gnulib/import/m4/close.m4: Update.
2394         * gnulib/import/m4/closedir.m4: Update.
2395         * gnulib/import/m4/configmake.m4: Update.
2396         * gnulib/import/m4/d-ino.m4: Update.
2397         * gnulib/import/m4/d-type.m4: Update.
2398         * gnulib/import/m4/dirent_h.m4: Update.
2399         * gnulib/import/m4/dirfd.m4: Update.
2400         * gnulib/import/m4/dirname.m4: Update.
2401         * gnulib/import/m4/double-slash-root.m4: Update.
2402         * gnulib/import/m4/dup.m4: Update.
2403         * gnulib/import/m4/dup2.m4: Update.
2404         * gnulib/import/m4/eealloc.m4: Update.
2405         * gnulib/import/m4/environ.m4: Update.
2406         * gnulib/import/m4/errno_h.m4: Update.
2407         * gnulib/import/m4/error.m4: Update.
2408         * gnulib/import/m4/exponentd.m4: Update.
2409         * gnulib/import/m4/exponentl.m4: Update.
2410         * gnulib/import/m4/extensions.m4: Update.
2411         * gnulib/import/m4/extern-inline.m4: Update.
2412         * gnulib/import/m4/fchdir.m4: Update.
2413         * gnulib/import/m4/fcntl-o.m4: Update.
2414         * gnulib/import/m4/fcntl.m4: Update.
2415         * gnulib/import/m4/fcntl_h.m4: Update.
2416         * gnulib/import/m4/fdopendir.m4: Update.
2417         * gnulib/import/m4/filenamecat.m4: Update.
2418         * gnulib/import/m4/flexmember.m4: Update.
2419         * gnulib/import/m4/float_h.m4: Update.
2420         * gnulib/import/m4/fnmatch.m4: Update.
2421         * gnulib/import/m4/fnmatch_h.m4: Update.
2422         * gnulib/import/m4/fpieee.m4: Update.
2423         * gnulib/import/m4/frexp.m4: Update.
2424         * gnulib/import/m4/frexpl.m4: Update.
2425         * gnulib/import/m4/fstat.m4: Update.
2426         * gnulib/import/m4/fstatat.m4: Update.
2427         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
2428         * gnulib/import/m4/getcwd-path-max.m4: Update.
2429         * gnulib/import/m4/getcwd.m4: Update.
2430         * gnulib/import/m4/getdtablesize.m4: Update.
2431         * gnulib/import/m4/getlogin.m4: Update.
2432         * gnulib/import/m4/getlogin_r.m4: Update.
2433         * gnulib/import/m4/getpagesize.m4: Update.
2434         * gnulib/import/m4/getprogname.m4: Update.
2435         * gnulib/import/m4/gettimeofday.m4: Update.
2436         * gnulib/import/m4/glibc21.m4: Update.
2437         * gnulib/import/m4/glob.m4: Update.
2438         * gnulib/import/m4/glob_h.m4: Update.
2439         * gnulib/import/m4/gnulib-cache.m4: Update.
2440         * gnulib/import/m4/gnulib-common.m4: Update.
2441         * gnulib/import/m4/gnulib-comp.m4: Update.
2442         * gnulib/import/m4/gnulib-tool.m4: Update.
2443         * gnulib/import/m4/hard-locale.m4: Update.
2444         * gnulib/import/m4/include_next.m4: Update.
2445         * gnulib/import/m4/inttypes-pri.m4: Update.
2446         * gnulib/import/m4/inttypes.m4: Update.
2447         * gnulib/import/m4/isnand.m4: Update.
2448         * gnulib/import/m4/isnanl.m4: Update.
2449         * gnulib/import/m4/largefile.m4: Update.
2450         * gnulib/import/m4/limits-h.m4: Update.
2451         * gnulib/import/m4/localcharset.m4: Update.
2452         * gnulib/import/m4/locale-fr.m4: Update.
2453         * gnulib/import/m4/locale-ja.m4: Update.
2454         * gnulib/import/m4/locale-zh.m4: Update.
2455         * gnulib/import/m4/localtime-buffer.m4: Update.
2456         * gnulib/import/m4/longlong.m4: Update.
2457         * gnulib/import/m4/lstat.m4: Update.
2458         * gnulib/import/m4/malloc.m4: Update.
2459         * gnulib/import/m4/malloca.m4: Update.
2460         * gnulib/import/m4/math_h.m4: Update.
2461         * gnulib/import/m4/mbrtowc.m4: Update.
2462         * gnulib/import/m4/mbsinit.m4: Update.
2463         * gnulib/import/m4/mbsrtowcs.m4: Update.
2464         * gnulib/import/m4/mbstate_t.m4: Update.
2465         * gnulib/import/m4/memchr.m4: Update.
2466         * gnulib/import/m4/memmem.m4: Update.
2467         * gnulib/import/m4/mempcpy.m4: Update.
2468         * gnulib/import/m4/memrchr.m4: Update.
2469         * gnulib/import/m4/mkdir.m4: Update.
2470         * gnulib/import/m4/mkstemp.m4: Update.
2471         * gnulib/import/m4/mmap-anon.m4: Update.
2472         * gnulib/import/m4/mode_t.m4: Update.
2473         * gnulib/import/m4/msvc-inval.m4: Update.
2474         * gnulib/import/m4/msvc-nothrow.m4: Update.
2475         * gnulib/import/m4/multiarch.m4: Update.
2476         * gnulib/import/m4/nocrash.m4: Update.
2477         * gnulib/import/m4/off_t.m4: Update.
2478         * gnulib/import/m4/onceonly.m4: Update.
2479         * gnulib/import/m4/open-cloexec.m4: Update.
2480         * gnulib/import/m4/open.m4: Update.
2481         * gnulib/import/m4/openat.m4: Update.
2482         * gnulib/import/m4/opendir.m4: Update.
2483         * gnulib/import/m4/pathmax.m4: Update.
2484         * gnulib/import/m4/rawmemchr.m4: Update.
2485         * gnulib/import/m4/readdir.m4: Update.
2486         * gnulib/import/m4/readlink.m4: Update.
2487         * gnulib/import/m4/realloc.m4: Update.
2488         * gnulib/import/m4/rename.m4: Update.
2489         * gnulib/import/m4/rewinddir.m4: Update.
2490         * gnulib/import/m4/rmdir.m4: Update.
2491         * gnulib/import/m4/save-cwd.m4: Update.
2492         * gnulib/import/m4/secure_getenv.m4: Update.
2493         * gnulib/import/m4/setenv.m4: Update.
2494         * gnulib/import/m4/signal_h.m4: Update.
2495         * gnulib/import/m4/ssize_t.m4: Update.
2496         * gnulib/import/m4/stat-time.m4: Update.
2497         * gnulib/import/m4/stat.m4: Update.
2498         * gnulib/import/m4/std-gnu11.m4: Update.
2499         * gnulib/import/m4/stdbool.m4: Update.
2500         * gnulib/import/m4/stddef_h.m4: Update.
2501         * gnulib/import/m4/stdint.m4: Update.
2502         * gnulib/import/m4/stdio_h.m4: Update.
2503         * gnulib/import/m4/stdlib_h.m4: Update.
2504         * gnulib/import/m4/strchrnul.m4: Update.
2505         * gnulib/import/m4/strdup.m4: Update.
2506         * gnulib/import/m4/strerror.m4: Update.
2507         * gnulib/import/m4/string_h.m4: Update.
2508         * gnulib/import/m4/strstr.m4: Update.
2509         * gnulib/import/m4/strtok_r.m4: Update.
2510         * gnulib/import/m4/sys_socket_h.m4: Update.
2511         * gnulib/import/m4/sys_stat_h.m4: Update.
2512         * gnulib/import/m4/sys_time_h.m4: Update.
2513         * gnulib/import/m4/sys_types_h.m4: Update.
2514         * gnulib/import/m4/tempname.m4: Update.
2515         * gnulib/import/m4/time_h.m4: Update.
2516         * gnulib/import/m4/unistd-safer.m4: Update.
2517         * gnulib/import/m4/unistd_h.m4: Update.
2518         * gnulib/import/m4/warn-on-use.m4: Update.
2519         * gnulib/import/m4/wchar_h.m4: Update.
2520         * gnulib/import/m4/wchar_t.m4: Update.
2521         * gnulib/import/m4/wctype_h.m4: Update.
2522         * gnulib/import/m4/wint_t.m4: Update.
2523         * gnulib/import/malloc.c: Update.
2524         * gnulib/import/malloc/scratch_buffer.h: Update.
2525         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
2526         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
2527         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
2528         * gnulib/import/malloca.c: Update.
2529         * gnulib/import/malloca.h: Update.
2530         * gnulib/import/malloca.valgrind: Update.
2531         * gnulib/import/math.in.h: Update.
2532         * gnulib/import/mbrtowc.c: Update.
2533         * gnulib/import/mbsinit.c: Update.
2534         * gnulib/import/mbsrtowcs-impl.h: Update.
2535         * gnulib/import/mbsrtowcs-state.c: Update.
2536         * gnulib/import/mbsrtowcs.c: Update.
2537         * gnulib/import/memchr.c: Update.
2538         * gnulib/import/memmem.c: Update.
2539         * gnulib/import/mempcpy.c: Update.
2540         * gnulib/import/memrchr.c: Update.
2541         * gnulib/import/mkdir.c: Update.
2542         * gnulib/import/mkstemp.c: Update.
2543         * gnulib/import/msvc-inval.c: Update.
2544         * gnulib/import/msvc-inval.h: Update.
2545         * gnulib/import/msvc-nothrow.c: Update.
2546         * gnulib/import/msvc-nothrow.h: Update.
2547         * gnulib/import/open.c: Update.
2548         * gnulib/import/openat-die.c: Update.
2549         * gnulib/import/openat-priv.h: Update.
2550         * gnulib/import/openat-proc.c: Update.
2551         * gnulib/import/openat.c: Update.
2552         * gnulib/import/openat.h: Update.
2553         * gnulib/import/opendir.c: Update.
2554         * gnulib/import/pathmax.h: Update.
2555         * gnulib/import/pipe-safer.c: Update.
2556         * gnulib/import/rawmemchr.c: Update.
2557         * gnulib/import/readdir.c: Update.
2558         * gnulib/import/readlink.c: Update.
2559         * gnulib/import/realloc.c: Update.
2560         * gnulib/import/ref-add.sin: Update.
2561         * gnulib/import/ref-del.sin: Update.
2562         * gnulib/import/rename.c: Update.
2563         * gnulib/import/rewinddir.c: Update.
2564         * gnulib/import/rmdir.c: Update.
2565         * gnulib/import/same-inode.h: Update.
2566         * gnulib/import/save-cwd.c: Update.
2567         * gnulib/import/save-cwd.h: Update.
2568         * gnulib/import/scratch_buffer.h: Update.
2569         * gnulib/import/secure_getenv.c: Update.
2570         * gnulib/import/setenv.c: Update.
2571         * gnulib/import/signal.in.h: Update.
2572         * gnulib/import/stat-time.c: Update.
2573         * gnulib/import/stat-time.h: Update.
2574         * gnulib/import/stat-w32.c: Update.
2575         * gnulib/import/stat-w32.h: Update.
2576         * gnulib/import/stat.c: Update.
2577         * gnulib/import/stdbool.in.h: Update.
2578         * gnulib/import/stddef.in.h: Update.
2579         * gnulib/import/stdint.in.h: Update.
2580         * gnulib/import/stdio.in.h: Update.
2581         * gnulib/import/stdlib.in.h: Update.
2582         * gnulib/import/str-two-way.h: Update.
2583         * gnulib/import/strchrnul.c: Update.
2584         * gnulib/import/strdup.c: Update.
2585         * gnulib/import/streq.h: Update.
2586         * gnulib/import/strerror-override.c: Update.
2587         * gnulib/import/strerror-override.h: Update.
2588         * gnulib/import/strerror.c: Update.
2589         * gnulib/import/string.in.h: Update.
2590         * gnulib/import/stripslash.c: Update.
2591         * gnulib/import/strnlen1.c: Update.
2592         * gnulib/import/strnlen1.h: Update.
2593         * gnulib/import/strstr.c: Update.
2594         * gnulib/import/strtok_r.c: Update.
2595         * gnulib/import/sys_stat.in.h: Update.
2596         * gnulib/import/sys_time.in.h: Update.
2597         * gnulib/import/sys_types.in.h: Update.
2598         * gnulib/import/tempname.c: Update.
2599         * gnulib/import/tempname.h: Update.
2600         * gnulib/import/time.in.h: Update.
2601         * gnulib/import/unistd--.h: Update.
2602         * gnulib/import/unistd-safer.h: Update.
2603         * gnulib/import/unistd.in.h: Update.
2604         * gnulib/import/unsetenv.c: Update.
2605         * gnulib/import/verify.h: Update.
2606         * gnulib/import/extra/snippet/warn-on-use.h: Update.
2607         * gnulib/import/wchar.in.h: Update.
2608         * gnulib/import/wctype.in.h: Update.
2609         * gnulib/import/xalloc-oversized.h: Update.
2610         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
2611         "53e2c179f26a890fa6685af4b6c1397ee370433b".
2612
2613 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
2614
2615         * record-btrace.c (get_thread_current_frame): Remove
2616         old_inferior_ptid.
2617
2618 2018-09-10  Jerome Guitton  <guitton@adacore.com>
2619
2620         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
2621         with check_tag to 1 if and only if the type is tagged and the
2622         component being searched cannot been found in the current
2623         view. Otherwise, always call ada_to_fixed_type with
2624         check_tag to 0.
2625
2626 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2627
2628         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
2629         declaration.
2630         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
2631         * ada-varobj.c (ada_varobj_get_number_of_children,
2632         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
2633
2634 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2635
2636         * ada-valprint.c (ada_value_print): Use type instead of
2637         enclosing type.
2638
2639 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2640
2641         * ada-lang.c (ada_value_subscript): Handle case when parameter is
2642         an array of access to unconstrained array.
2643
2644 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2645
2646         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
2647         (ada_check_typedef): Use it.
2648
2649 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2650
2651         * ada-varobj.c (ada_varobj_describe_struct_child)
2652         (ada_varobj_describe_child): Handle union case like struct one.
2653
2654 2018-09-10  Tom Tromey  <tom@tromey.com>
2655
2656         PR python/18380:
2657         * python/python.c (_initialize_python): Make example in "python"
2658         help work in Python 3.
2659
2660 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
2661
2662         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
2663         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
2664         $(EXEEXT) to the script, as it is not a program.
2665
2666 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
2667
2668         * python/py-prettyprint.c (pretty_print_one_value): Return
2669         gdbpy_ref<>.
2670         (print_string_repr): Adjust.
2671         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
2672         * python/python-internal.h (apply_varobj_pretty_printer): Return
2673         gdbpy_ref<>.
2674         * varobj.c (varobj_value_get_print_value): Adjust.
2675
2676 2018-09-08  Tom Tromey  <tom@tromey.com>
2677
2678         PR python/16047:
2679         * python/py-prettyprint.c (pretty_print_one_value): Check for
2680         to_string method.
2681
2682 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2683
2684         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
2685         replace_operator_with_call.
2686
2687 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2688
2689         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
2690
2691 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2692
2693         * ada-typeprint.c (print_range): Print the bounds using TYPE
2694         rather than its TYPE_TARGET_TYPE.
2695
2696 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2697
2698         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
2699         call to ada_to_fixed_value_create.
2700
2701 2018-09-08  Jerome Guitton  <guitton@adacore.com>
2702
2703         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
2704
2705 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2706
2707         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
2708         by calls to error.
2709
2710 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2711
2712         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
2713         Move update of loop variable "fi".
2714
2715 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2716
2717         * ada-lang.c (value_assign_to_component): In the case of
2718         big-endian targets, extract the bits of the given VAL
2719         using an src_offset of zero if container is not a scalar.
2720
2721 2018-09-06  Simon Ser  <contact@emersion.fr>
2722
2723         PR gdb/23105
2724         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
2725         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
2726         * fbsd-tdep.c (fbsd_make_note_desc): New.
2727         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
2728         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
2729         * target.h (enum target_object) Add FreeBSD-specific
2730         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
2731
2732 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2733
2734         * compile/compile-c.h (generate_c_for_variable_locations):
2735         Change reference to pointer.
2736         * compile/compile-c-support.c (compile_program) <compute>:
2737         Likewise.
2738         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
2739         (generate_c_for_for_one_variable): Likewise
2740         (generate_c_for_variable_locations): Likewise
2741         * compile/compile-c-types.c (compile_c_instance::convert_type):
2742         Likewise
2743         * compile/compile-cplus-symbols.c (convert_one_symbol):
2744         std::move the scope passed to enter_scope.
2745         * compile/compile-cplus-types.c
2746         (compile_cplus_instance::enter_scope): Make parameter
2747         rvalue-reference.
2748         (compile_cplus_instance::new_scope): Change reference to
2749         pointer.
2750         (compile_cplus_instance::convert_type): Likewise
2751         (compile_cplus_convert_typedef): std::move the scope passed to
2752         enter_scope.
2753         (compile_cplus_convert_struct_or_union): Likewise.
2754         (compile_cplus_convert_enum): Likewise.
2755         (compile_cplus_convert_namespace): Likewise.
2756         * compile/compile-cplus.h (compile_cplus_instance)
2757         <enter_scope>: Make parameter rvalue-reference.
2758         * compile/compile-internal.h (compile_instance)
2759         <get_cached_type>: Likewise
2760         * compile/compile-loc2c.c (push): Likewise
2761         (pushf): Likewise
2762         (unary): Likewise
2763         (binary): Likewise
2764         (print_label): Likewise
2765         (pushf_register_address): Likewise
2766         (pushf_register): Likewise
2767         (do_compile_dwarf_expr_to_c): Likewise
2768         (compile_dwarf_expr_to_c): Likewise
2769         (compile_dwarf_bounds_to_c): Likewise
2770         * compile/compile.c (compile_instance::get_cached_type):
2771         Likewise
2772         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
2773         (compile_dwarf_bounds_to_c): Likewise
2774         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
2775         (dwarf2_compile_property_to_c): Likewise
2776         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
2777         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
2778         Likewise
2779
2780 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2781
2782         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
2783         * tui/tui-data.c (init_content_element): Don't initialize it.
2784
2785 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2786
2787         * tui/tui-data.h (struct tui_win_info)
2788         <detail::opaque>: Remove.
2789         * tui/tui-data.c (init_win_info): Remove assignment.
2790
2791 2018-09-05  Tom Tromey  <tom@tromey.com>
2792
2793         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
2794         -Wformat-nonliteral.
2795         * target-float.c (host_float_ops<T>::to_string)
2796         (host_float_ops<T>::from_string): Use
2797         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
2798         * configure: Rebuild.
2799
2800 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
2801
2802         * printcmd.c (printf_c_string): Use
2803         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
2804         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
2805
2806 2018-09-05  Tom Tromey  <tom@tromey.com>
2807
2808         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
2809
2810 2018-09-05  Tom de Vries  <tdevries@suse.de>
2811
2812         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
2813         with resolve_abstract_p == true.
2814         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
2815         defaulting to false. Propagate resolve_abstract_p to
2816         dwarf2_fetch_die_loc_sect_off.
2817         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
2818         parameter, defaulting to false.
2819         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
2820         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
2821         parameter.
2822         * dwarf2read.h (struct die_info): Forward-declare.
2823         (die_info_ptr): New typedef.
2824         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
2825
2826 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
2827
2828         GDB 8.2 released.
2829
2830 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
2831             Pedro Alves  <palves@redhat.com>
2832
2833         * gnulib/Makefile.in (aclocal_m4_deps): Move to
2834         "aclocal-m4-deps.mk".  Include file here.
2835         $(srcdir)/aclocal.m4: Add "configure.ac".
2836         * gnulib/aclocal-m4-deps.mk: New file.
2837         * gnulib/update-gnulib.sh: Automatically update
2838         "aclocal-m4-deps.mk".
2839
2840 2018-09-04  Tom Tromey  <tom@tromey.com>
2841
2842         * configure: Rebuild.
2843         * configure.ac: Remove multi-ice code.
2844
2845 2018-09-04  Tom Tromey  <tom@tromey.com>
2846
2847         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
2848         (ada-exp.o): Update.
2849
2850 2018-09-04  Tom Tromey  <tom@tromey.com>
2851
2852         * Makefile.in (printcmd.o, target-float.o): Remove.
2853         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
2854
2855 2018-09-04  Tom Tromey  <tom@tromey.com>
2856
2857         * gnulib/Makefile.in: Remove obsolete comment.
2858         * Makefile.in: Remove obsolete comment.
2859
2860 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
2861
2862         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
2863         line with '+'.
2864
2865 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2866
2867         * riscv-tdep.c: Add 'prologue-value.h' include.
2868         (struct riscv_unwind_cache): New struct.
2869         (riscv_debug_unwinder): New global.
2870         (riscv_scan_prologue): Update arguments, capture register details
2871         from prologue scan.
2872         (riscv_skip_prologue): Reformat arguments line, move end of
2873         prologue calculation into riscv_scan_prologue.
2874         (riscv_frame_cache): Update return type, create
2875         riscv_unwind_cache, scan the prologue, and fill in remaining cache
2876         details.
2877         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
2878         (riscv_frame_prev_register): Use the trad_frame within the
2879         riscv_unwind_cache.
2880         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
2881         flag.
2882
2883 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2884
2885         * trad-frame.h (trad_frame_set_realreg): Declare.
2886         (trad_frame_set_addr): Declare.
2887         * trad-frame.c (trad_frame_set_realreg): Define new function.
2888         (trad_frame_set_addr): Define new function.
2889         (trad_frame_set_reg_realreg): Use new function.
2890         (trad_frame_set_reg_addr): Use new function.
2891
2892 2018-09-01  Keith Seitz  <keiths@redhat.com>
2893
2894         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
2895         pulongest instead of "%lld".
2896         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
2897         ATTRIBUTE_UNUSED.
2898
2899 2018-08-31  Tom Tromey  <tom@tromey.com>
2900
2901         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
2902         variant part type.
2903
2904 2018-08-31  Pedro Alves  <palves@redhat.com>
2905
2906         * gdbarch.h: Regenerate.
2907
2908 2018-08-31  Pedro Alves  <palves@redhat.com>
2909
2910         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
2911         * target.h (Hardware watchpoint interfaces): Describe
2912         continuable/steppable/non-steppable watchpoints.
2913         * gdbarch.h, gdbarch.c: Regenerate.
2914
2915 2018-08-31  Pedro Alves  <palves@redhat.com>
2916
2917         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
2918         Delete.
2919         * s390-linux-nat.c
2920         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
2921         * target.h (target_ops::have_continuable_watchpoint): Delete.
2922         (target_have_continuable_watchpoint): Delete.
2923         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
2924         * target-delegates.c: Regenerate.
2925
2926 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
2927
2928         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
2929         the files present in "gnulib/import/m4/".
2930
2931 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2932
2933         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
2934         c.sw, c.swsp, and c.sdsp.
2935
2936 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2937
2938         * riscv-tdep.c (struct riscv_inferior_data): Delete.
2939         (riscv_read_misa_reg): Don't cache value read into inferior data.
2940         (riscv_new_inferior_data): Delete.
2941         (riscv_inferior_data_cleanup): Delete.
2942         (riscv_inferior_data): Delete.
2943         (riscv_invalidate_inferior_data): Delete.
2944         (_initialize_riscv_tdep): Remove initialisation of inferior data.
2945
2946 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
2947
2948         * compile/compile-cplus-types.c
2949         (compile_cplus_instance::leave_scope): Take the address of scope
2950         object.
2951         (compile_cplus_instance::convert_qualified_base): Compare quals
2952         to 0.
2953
2954 2018-08-30  Keith Seitz  <keiths@redhat.com>
2955
2956         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
2957         Use "%s" and host_address_to_string instead of "%p" in printf.
2958
2959 2018-08-29  Keith Seitz  <keiths@redhat.com>
2960
2961         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
2962         and compile-cplus-types.c.
2963         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
2964         * c-lang.c (cplus_language_defn): Set C++ compile functions.
2965         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
2966         Declare.
2967         * compile/compile-c-support.c: Include compile-cplus.h.
2968         (load_libcompile): Templatize.
2969         (get_compile_context): "New" function.
2970         (c_get_compile_context): Use get_compile_context.
2971         (cplus_get_compile_context): New function.
2972         (cplus_push_user_expression, cplus_pop_user_expression)
2973         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
2974         (cplus_compute_program): Define new structs/functions.
2975         * compile/compile-cplus-symmbols.c: New file.
2976         * compile/compile-cplus-types.c: New file.
2977         * compile/compile-cplus.h: New file.
2978         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
2979         Declare.
2980         * compile/compile-object-load.c (get_out_value_type): Use
2981         strncmp_iw when comparing symbol names.
2982         (compile_object_load): Add mst_bss and mst_data.
2983         * compile/compile.c (_initialize_compile): Remove
2984         -Wno-implicit-function-declaration from `compile_args'.
2985         * compile/gcc-cp-plugin.h: New file.
2986         * NEWS: Mention C++ compile support and new debug options.
2987
2988 2018-08-29  Keith Seitz  <keiths@redhat.com>
2989
2990         * linespec.c (collect_info::add_symbol): Make virtual.
2991         (struct symbol_searcher_collect_info): New struct.
2992         (symbol_searcher::find_all_symbols): New method.
2993         * symtab.h (class symbol_searcher): New class.
2994
2995 2018-08-29  Keith Seitz  <keiths@redhat.com>
2996
2997         * linespec.c (struct linespec) <function_symbols, label_symbols>:
2998         Change to vector of block_symbol.  Update all users.
2999         (struct collect_info) <symbols>: Likewise.
3000         (collect_info::add_symbol): Take block_symbol as argument.
3001         Update all callers.
3002         (decode_compound_collector) <m_symbols>: Change type to vector
3003         of block_symbol.  Update all users.
3004         (decode_compound_collector::operator ()): Change parameter type
3005         to block_symbol.
3006         (find_method, find_function_symbols, find_linespec_symbols)
3007         (find_label_symbols_in_block, find_label_symbols): Change symbol
3008         vectors to block_symbol vectors.
3009         * symtab.h (symbol_found_callback_ftype): Change parameter type to
3010         block_symbol.
3011
3012 2018-08-29  Keith Seitz  <keiths@redhat.com>
3013
3014         * linespec.c (symbolp): Remove typedef and VEC definitions.
3015         (bound_minimal_symbol_d): Likewise.
3016
3017 2018-08-29  Keith Seitz  <keiths@redhat.com>
3018
3019         * linespec.c (decode_compound_collector::decode_compound_collector):
3020         Remove initialization for `m_symtabs'.
3021         (decode_compound_collector::release_symbols): Change return type
3022         to std::vector.  Update all callers.
3023         (class decode_compound_collector) <m_symbols>: Change type to
3024         std::vector.
3025         (lookup_prefix_sym): Change return type to std::vector.  Update all
3026         callers.
3027         (compare_symbols): Remove.
3028         (std_compare_symbols): Rename to `compare_symbols'.
3029         (find_method): Change `sym_classes' parameter to std::vector.
3030         Update all callers.  Use std::sort to sort sym_classes.
3031         (find_linespec_symbols): Remove cleanup.
3032
3033 2018-08-29  Keith Seitz  <keiths@redhat.com>
3034
3035         * linespec.c (struct linespec) <minimal_symbols>: Change type to
3036         std::vector.  Update all users.
3037         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
3038         (struct collect_info) <minimal_symbols>: Likewise.
3039         (compare_msymbols): Return bool.  Change parameters to const
3040         bound_minimal_symbol references.
3041         (find_method, find_function_symbols, find_linespec_symbols): Change
3042         `minsyms' parameter to std::vector.  Update all callers.
3043
3044 2018-08-29  Keith Seitz  <keiths@redhat.com>
3045
3046         * linespec.c (struct linespec) <label_symbols>: Change type to
3047         std::vector.  Update all users.
3048         (find_label_symbols_in_block): Change `result' parameter to
3049         std::vector.  Update all callers.
3050         (find_label_symbols): Return std::vector.  Update all callers.
3051
3052 2018-08-29  Keith Seitz  <keiths@redhat.com>
3053
3054         * linespec.c (struct linespec) <function_symbols>: Change type to
3055         std::vector.  Update all users.
3056         (struct collect_info) <function_symbols>: Likewise.
3057         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
3058         (std_compare_symbols): New function.
3059         (find_method, find_function_symbols, find_linespec_symbols)
3060         (find_label_symbols_in_block): Change `symbols' parameter to
3061         std::vector.  Update all callers.
3062         (find_label_symbols): Likewise for `function_symbols' and
3063         `label_funcs_ret'.
3064
3065 2018-08-29  Keith Seitz  <keiths@redhat.com>
3066
3067         * linespec.c (symtab_vector_up): Define.
3068         (struct linespec) <file_symtabs>: Change type to std::vector *.
3069         Update all uses.
3070         (struct collect_info) <file_symtabs>: Likewise.
3071         (collect_symtabs_from_filename): Return symtab_vector_up.
3072         Update all callers.
3073         (decode_objc): Remove cleanup.
3074         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
3075         (symtab_collector::release_symtabs): Return symtab_vector_up.
3076         Update all callers.
3077         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
3078         Update all users.
3079         (collect_symtabs_from_filename, symtabs_from_filename): Return
3080         symtab_vector_up.  Update all callers.
3081
3082 2018-08-29  Tom Tromey  <tom@tromey.com>
3083
3084         * csky-tdep.c (csky_analyze_prologue): Use
3085         core_addr_to_string_nz.
3086
3087 2018-08-29  Tom Tromey  <tom@tromey.com>
3088
3089         * windows-nat.c (struct xlate_exception) <them>: Change type to
3090         DWORD.
3091         (xlate): Fix formatting.  Remove last entry.
3092         (struct xlate_exception, xlate): Comment out.
3093         (windows_nat_target::resume): Use ranged for.
3094
3095 2018-08-29  Jim Wilson  <jimw@sifive.com>
3096
3097         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
3098         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
3099         of NT_PRFPREG.
3100         (riscv_linux_nat_target::store_registers): Likewise.
3101
3102 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
3103
3104         PR gdb/23555
3105         PR gdb/23558
3106         * gnulib/aclocal.m4: Regenerate.
3107         * gnulib/config.in: Regenerate.
3108         * gnulib/configure: Regenerate.
3109         * gnulib/import/Makefile.am: Update.
3110         * gnulib/import/Makefile.in: Update.
3111         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
3112         * gnulib/import/_Noreturn.h: ... this.
3113         * gnulib/import/alloca.in.h: Update.
3114         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
3115         * gnulib/import/arg-nonnull.h: ... this.
3116         * gnulib/import/assure.h: Update.
3117         * gnulib/import/at-func.c: Update.
3118         * gnulib/import/basename-lgpl.c: Update.
3119         * gnulib/import/extra/snippet/c++defs.h: Rename to...
3120         * gnulib/import/c++defs.h: ... this.
3121         * gnulib/import/canonicalize-lgpl.c: Update.
3122         * gnulib/import/cdefs.h: Update.
3123         * gnulib/import/chdir-long.c: Update.
3124         * gnulib/import/chdir-long.h: Update.
3125         * gnulib/import/cloexec.c: Update.
3126         * gnulib/import/cloexec.h: Update.
3127         * gnulib/import/close.c: Update.
3128         * gnulib/import/closedir.c: Update.
3129         * gnulib/import/config.charset: Update.
3130         * gnulib/import/dirent-private.h: Update.
3131         * gnulib/import/dirent.in.h: Update.
3132         * gnulib/import/dirfd.c: Update.
3133         * gnulib/import/dirname-lgpl.c: Update.
3134         * gnulib/import/dirname.h: Update.
3135         * gnulib/import/dosname.h: Update.
3136         * gnulib/import/dup-safer-flag.c: Update.
3137         * gnulib/import/dup-safer.c: Update.
3138         * gnulib/import/dup.c: Update.
3139         * gnulib/import/dup2.c: Update.
3140         * gnulib/import/errno.in.h: Update.
3141         * gnulib/import/error.c: Update.
3142         * gnulib/import/error.h: Update.
3143         * gnulib/import/exitfail.c: Update.
3144         * gnulib/import/exitfail.h: Update.
3145         * gnulib/import/extra/update-copyright: Update.
3146         * gnulib/import/fchdir.c: Update.
3147         * gnulib/import/fcntl.c: Update.
3148         * gnulib/import/fcntl.in.h: Update.
3149         * gnulib/import/fd-hook.c: Update.
3150         * gnulib/import/fd-hook.h: Update.
3151         * gnulib/import/fd-safer-flag.c: Update.
3152         * gnulib/import/fd-safer.c: Update.
3153         * gnulib/import/fdopendir.c: Update.
3154         * gnulib/import/filename.h: Update.
3155         * gnulib/import/filenamecat-lgpl.c: Update.
3156         * gnulib/import/filenamecat.h: Update.
3157         * gnulib/import/flexmember.h: Update.
3158         * gnulib/import/float+.h: Update.
3159         * gnulib/import/float.c: Update.
3160         * gnulib/import/float.in.h: Update.
3161         * gnulib/import/fnmatch.c: Update.
3162         * gnulib/import/fnmatch.in.h: Update.
3163         * gnulib/import/fnmatch_loop.c: Update.
3164         * gnulib/import/fpucw.h: Update.
3165         * gnulib/import/frexp.c: Update.
3166         * gnulib/import/frexpl.c: Update.
3167         * gnulib/import/fstat.c: Update.
3168         * gnulib/import/fstatat.c: Update.
3169         * gnulib/import/getcwd-lgpl.c: Update.
3170         * gnulib/import/getcwd.c: Update.
3171         * gnulib/import/getdtablesize.c: Update.
3172         * gnulib/import/getlogin_r.c: Update.
3173         * gnulib/import/getprogname.c: Update.
3174         * gnulib/import/getprogname.h: Update.
3175         * gnulib/import/gettext.h: Update.
3176         * gnulib/import/gettimeofday.c: Update.
3177         * gnulib/import/glob-libc.h: Update.
3178         * gnulib/import/glob.c: Update.
3179         * gnulib/import/glob.in.h: Update.
3180         * gnulib/import/glob_internal.h: Update.
3181         * gnulib/import/glob_pattern_p.c: Update.
3182         * gnulib/import/globfree.c: Update.
3183         * gnulib/import/hard-locale.c: Update.
3184         * gnulib/import/hard-locale.h: Update.
3185         * gnulib/import/intprops.h: Update.
3186         * gnulib/import/inttypes.in.h: Update.
3187         * gnulib/import/isnan.c: Update.
3188         * gnulib/import/isnand-nolibm.h: Update.
3189         * gnulib/import/isnand.c: Update.
3190         * gnulib/import/isnanl-nolibm.h: Update.
3191         * gnulib/import/isnanl.c: Update.
3192         * gnulib/import/itold.c: Update.
3193         * gnulib/import/libc-config.h: Update.
3194         * gnulib/import/limits.in.h: Update.
3195         * gnulib/import/localcharset.c: Update.
3196         * gnulib/import/localcharset.h: Update.
3197         * gnulib/import/localtime-buffer.c: Update.
3198         * gnulib/import/localtime-buffer.h: Update.
3199         * gnulib/import/lstat.c: Update.
3200         * gnulib/import/m4/00gnulib.m4: Update.
3201         * gnulib/import/m4/__inline.m4: Update.
3202         * gnulib/import/m4/absolute-header.m4: Update.
3203         * gnulib/import/m4/alloca.m4: Update.
3204         * gnulib/import/m4/builtin-expect.m4: Update.
3205         * gnulib/import/m4/canonicalize.m4: Update.
3206         * gnulib/import/m4/chdir-long.m4: Update.
3207         * gnulib/import/m4/close.m4: Update.
3208         * gnulib/import/m4/closedir.m4: Update.
3209         * gnulib/import/m4/configmake.m4: Update.
3210         * gnulib/import/m4/d-ino.m4: Update.
3211         * gnulib/import/m4/d-type.m4: Update.
3212         * gnulib/import/m4/dirent_h.m4: Update.
3213         * gnulib/import/m4/dirfd.m4: Update.
3214         * gnulib/import/m4/dirname.m4: Update.
3215         * gnulib/import/m4/double-slash-root.m4: Update.
3216         * gnulib/import/m4/dup.m4: Update.
3217         * gnulib/import/m4/dup2.m4: Update.
3218         * gnulib/import/m4/eealloc.m4: Update.
3219         * gnulib/import/m4/environ.m4: Update.
3220         * gnulib/import/m4/errno_h.m4: Update.
3221         * gnulib/import/m4/error.m4: Update.
3222         * gnulib/import/m4/exponentd.m4: Update.
3223         * gnulib/import/m4/exponentl.m4: Update.
3224         * gnulib/import/m4/extensions.m4: Update.
3225         * gnulib/import/m4/extern-inline.m4: Update.
3226         * gnulib/import/m4/fchdir.m4: Update.
3227         * gnulib/import/m4/fcntl-o.m4: Update.
3228         * gnulib/import/m4/fcntl.m4: Update.
3229         * gnulib/import/m4/fcntl_h.m4: Update.
3230         * gnulib/import/m4/fdopendir.m4: Update.
3231         * gnulib/import/m4/filenamecat.m4: Update.
3232         * gnulib/import/m4/flexmember.m4: Update.
3233         * gnulib/import/m4/float_h.m4: Update.
3234         * gnulib/import/m4/fnmatch.m4: Update.
3235         * gnulib/import/m4/fnmatch_h.m4: Update.
3236         * gnulib/import/m4/fpieee.m4: Update.
3237         * gnulib/import/m4/frexp.m4: Update.
3238         * gnulib/import/m4/frexpl.m4: Update.
3239         * gnulib/import/m4/fstat.m4: Update.
3240         * gnulib/import/m4/fstatat.m4: Update.
3241         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
3242         * gnulib/import/m4/getcwd-path-max.m4: Update.
3243         * gnulib/import/m4/getcwd.m4: Update.
3244         * gnulib/import/m4/getdtablesize.m4: Update.
3245         * gnulib/import/m4/getlogin.m4: Update.
3246         * gnulib/import/m4/getlogin_r.m4: Update.
3247         * gnulib/import/m4/getpagesize.m4: Update.
3248         * gnulib/import/m4/getprogname.m4: Update.
3249         * gnulib/import/m4/gettimeofday.m4: Update.
3250         * gnulib/import/m4/glibc21.m4: Update.
3251         * gnulib/import/m4/glob.m4: Update.
3252         * gnulib/import/m4/glob_h.m4: Update.
3253         * gnulib/import/m4/gnulib-cache.m4: Update.
3254         * gnulib/import/m4/gnulib-common.m4: Update.
3255         * gnulib/import/m4/gnulib-comp.m4: Update.
3256         * gnulib/import/m4/gnulib-tool.m4: Update.
3257         * gnulib/import/m4/hard-locale.m4: Update.
3258         * gnulib/import/m4/include_next.m4: Update.
3259         * gnulib/import/m4/inttypes-pri.m4: Update.
3260         * gnulib/import/m4/inttypes.m4: Update.
3261         * gnulib/import/m4/isnand.m4: Update.
3262         * gnulib/import/m4/isnanl.m4: Update.
3263         * gnulib/import/m4/largefile.m4: Update.
3264         * gnulib/import/m4/limits-h.m4: Update.
3265         * gnulib/import/m4/localcharset.m4: Update.
3266         * gnulib/import/m4/locale-fr.m4: Update.
3267         * gnulib/import/m4/locale-ja.m4: Update.
3268         * gnulib/import/m4/locale-zh.m4: Update.
3269         * gnulib/import/m4/localtime-buffer.m4: Update.
3270         * gnulib/import/m4/longlong.m4: Update.
3271         * gnulib/import/m4/lstat.m4: Update.
3272         * gnulib/import/m4/malloc.m4: Update.
3273         * gnulib/import/m4/malloca.m4: Update.
3274         * gnulib/import/m4/math_h.m4: Update.
3275         * gnulib/import/m4/mbrtowc.m4: Update.
3276         * gnulib/import/m4/mbsinit.m4: Update.
3277         * gnulib/import/m4/mbsrtowcs.m4: Update.
3278         * gnulib/import/m4/mbstate_t.m4: Update.
3279         * gnulib/import/m4/memchr.m4: Update.
3280         * gnulib/import/m4/memmem.m4: Update.
3281         * gnulib/import/m4/mempcpy.m4: Update.
3282         * gnulib/import/m4/memrchr.m4: Update.
3283         * gnulib/import/m4/mkdir.m4: Update.
3284         * gnulib/import/m4/mkstemp.m4: Update.
3285         * gnulib/import/m4/mmap-anon.m4: Update.
3286         * gnulib/import/m4/mode_t.m4: Update.
3287         * gnulib/import/m4/msvc-inval.m4: Update.
3288         * gnulib/import/m4/msvc-nothrow.m4: Update.
3289         * gnulib/import/m4/multiarch.m4: Update.
3290         * gnulib/import/m4/nocrash.m4: Update.
3291         * gnulib/import/m4/off_t.m4: Update.
3292         * gnulib/import/m4/onceonly.m4: Update.
3293         * gnulib/import/m4/open-cloexec.m4: Update.
3294         * gnulib/import/m4/open.m4: Update.
3295         * gnulib/import/m4/openat.m4: Update.
3296         * gnulib/import/m4/opendir.m4: Update.
3297         * gnulib/import/m4/pathmax.m4: Update.
3298         * gnulib/import/m4/rawmemchr.m4: Update.
3299         * gnulib/import/m4/readdir.m4: Update.
3300         * gnulib/import/m4/readlink.m4: Update.
3301         * gnulib/import/m4/realloc.m4: Update.
3302         * gnulib/import/m4/rename.m4: Update.
3303         * gnulib/import/m4/rewinddir.m4: Update.
3304         * gnulib/import/m4/rmdir.m4: Update.
3305         * gnulib/import/m4/save-cwd.m4: Update.
3306         * gnulib/import/m4/secure_getenv.m4: Update.
3307         * gnulib/import/m4/setenv.m4: Update.
3308         * gnulib/import/m4/signal_h.m4: Update.
3309         * gnulib/import/m4/ssize_t.m4: Update.
3310         * gnulib/import/m4/stat-time.m4: Update.
3311         * gnulib/import/m4/stat.m4: Update.
3312         * gnulib/import/m4/std-gnu11.m4: Update.
3313         * gnulib/import/m4/stdbool.m4: Update.
3314         * gnulib/import/m4/stddef_h.m4: Update.
3315         * gnulib/import/m4/stdint.m4: Update.
3316         * gnulib/import/m4/stdio_h.m4: Update.
3317         * gnulib/import/m4/stdlib_h.m4: Update.
3318         * gnulib/import/m4/strchrnul.m4: Update.
3319         * gnulib/import/m4/strdup.m4: Update.
3320         * gnulib/import/m4/strerror.m4: Update.
3321         * gnulib/import/m4/string_h.m4: Update.
3322         * gnulib/import/m4/strstr.m4: Update.
3323         * gnulib/import/m4/strtok_r.m4: Update.
3324         * gnulib/import/m4/sys_socket_h.m4: Update.
3325         * gnulib/import/m4/sys_stat_h.m4: Update.
3326         * gnulib/import/m4/sys_time_h.m4: Update.
3327         * gnulib/import/m4/sys_types_h.m4: Update.
3328         * gnulib/import/m4/tempname.m4: Update.
3329         * gnulib/import/m4/time_h.m4: Update.
3330         * gnulib/import/m4/unistd-safer.m4: Update.
3331         * gnulib/import/m4/unistd_h.m4: Update.
3332         * gnulib/import/m4/warn-on-use.m4: Update.
3333         * gnulib/import/m4/wchar_h.m4: Update.
3334         * gnulib/import/m4/wchar_t.m4: Update.
3335         * gnulib/import/m4/wctype_h.m4: Update.
3336         * gnulib/import/m4/wint_t.m4: Update.
3337         * gnulib/import/malloc.c: Update.
3338         * gnulib/import/malloc/scratch_buffer.h: Update.
3339         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
3340         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
3341         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
3342         * gnulib/import/malloca.c: Update.
3343         * gnulib/import/malloca.h: Update.
3344         * gnulib/import/malloca.valgrind: Update.
3345         * gnulib/import/math.in.h: Update.
3346         * gnulib/import/mbrtowc.c: Update.
3347         * gnulib/import/mbsinit.c: Update.
3348         * gnulib/import/mbsrtowcs-impl.h: Update.
3349         * gnulib/import/mbsrtowcs-state.c: Update.
3350         * gnulib/import/mbsrtowcs.c: Update.
3351         * gnulib/import/memchr.c: Update.
3352         * gnulib/import/memmem.c: Update.
3353         * gnulib/import/mempcpy.c: Update.
3354         * gnulib/import/memrchr.c: Update.
3355         * gnulib/import/mkdir.c: Update.
3356         * gnulib/import/mkstemp.c: Update.
3357         * gnulib/import/msvc-inval.c: Update.
3358         * gnulib/import/msvc-inval.h: Update.
3359         * gnulib/import/msvc-nothrow.c: Update.
3360         * gnulib/import/msvc-nothrow.h: Update.
3361         * gnulib/import/open.c: Update.
3362         * gnulib/import/openat-die.c: Update.
3363         * gnulib/import/openat-priv.h: Update.
3364         * gnulib/import/openat-proc.c: Update.
3365         * gnulib/import/openat.c: Update.
3366         * gnulib/import/openat.h: Update.
3367         * gnulib/import/opendir.c: Update.
3368         * gnulib/import/pathmax.h: Update.
3369         * gnulib/import/pipe-safer.c: Update.
3370         * gnulib/import/rawmemchr.c: Update.
3371         * gnulib/import/readdir.c: Update.
3372         * gnulib/import/readlink.c: Update.
3373         * gnulib/import/realloc.c: Update.
3374         * gnulib/import/ref-add.sin: Update.
3375         * gnulib/import/ref-del.sin: Update.
3376         * gnulib/import/rename.c: Update.
3377         * gnulib/import/rewinddir.c: Update.
3378         * gnulib/import/rmdir.c: Update.
3379         * gnulib/import/same-inode.h: Update.
3380         * gnulib/import/save-cwd.c: Update.
3381         * gnulib/import/save-cwd.h: Update.
3382         * gnulib/import/scratch_buffer.h: Update.
3383         * gnulib/import/secure_getenv.c: Update.
3384         * gnulib/import/setenv.c: Update.
3385         * gnulib/import/signal.in.h: Update.
3386         * gnulib/import/stat-time.c: Update.
3387         * gnulib/import/stat-time.h: Update.
3388         * gnulib/import/stat-w32.c: Update.
3389         * gnulib/import/stat-w32.h: Update.
3390         * gnulib/import/stat.c: Update.
3391         * gnulib/import/stdbool.in.h: Update.
3392         * gnulib/import/stddef.in.h: Update.
3393         * gnulib/import/stdint.in.h: Update.
3394         * gnulib/import/stdio.in.h: Update.
3395         * gnulib/import/stdlib.in.h: Update.
3396         * gnulib/import/str-two-way.h: Update.
3397         * gnulib/import/strchrnul.c: Update.
3398         * gnulib/import/strdup.c: Update.
3399         * gnulib/import/streq.h: Update.
3400         * gnulib/import/strerror-override.c: Update.
3401         * gnulib/import/strerror-override.h: Update.
3402         * gnulib/import/strerror.c: Update.
3403         * gnulib/import/string.in.h: Update.
3404         * gnulib/import/stripslash.c: Update.
3405         * gnulib/import/strnlen1.c: Update.
3406         * gnulib/import/strnlen1.h: Update.
3407         * gnulib/import/strstr.c: Update.
3408         * gnulib/import/strtok_r.c: Update.
3409         * gnulib/import/sys_stat.in.h: Update.
3410         * gnulib/import/sys_time.in.h: Update.
3411         * gnulib/import/sys_types.in.h: Update.
3412         * gnulib/import/tempname.c: Update.
3413         * gnulib/import/tempname.h: Update.
3414         * gnulib/import/time.in.h: Update.
3415         * gnulib/import/unistd--.h: Update.
3416         * gnulib/import/unistd-safer.h: Update.
3417         * gnulib/import/unistd.in.h: Update.
3418         * gnulib/import/unsetenv.c: Update.
3419         * gnulib/import/verify.h: Update.
3420         * gnulib/import/extra/snippet/warn-on-use.h: Update.
3421         * gnulib/import/wchar.in.h: Update.
3422         * gnulib/import/wctype.in.h: Update.
3423         * gnulib/import/xalloc-oversized.h: Update.
3424         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
3425         "53e2c179f26a890fa6685af4b6c1397ee370433b".
3426
3427 2018-08-16  Gary Benson <gbenson@redhat.com>
3428
3429         PR gdb/13000:
3430         * gdb/main.c (captured_main_1): Exit with nonzero status
3431         in batch mode if the last command to be executed failed.
3432         * NEWS: Mention the above.
3433
3434 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
3435
3436         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
3437         end of warning message.
3438
3439 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3440
3441         PR gdb/22943:
3442         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
3443         (aarch64_extract_return_value): Use
3444         aapcs_is_vfp_call_or_return_candidate.
3445         (aarch64_return_in_memory): Likewise.
3446         (aarch64_store_return_value): Likewise.
3447
3448 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3449
3450         * aarch64-tdep.c
3451         (aapcs_is_vfp_call_or_return_candidate): Make static
3452         (pass_in_v_or_stack): Remove function.
3453         (pass_in_v_vfp_candidate): New function.
3454         (aarch64_push_dummy_call): Check for float register candidates.
3455
3456 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3457
3458         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
3459         (aapcs_is_vfp_call_or_return_candidate_1): New function.
3460         (aapcs_is_vfp_call_or_return_candidate): Likewise.
3461
3462 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
3463
3464         PR build/23399
3465         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
3466         (struct ipa_sym_addresses): Rename to...
3467         (struct ipa_sym_addresses_common): ... this.
3468         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
3469
3470 2018-08-28  Tom Tromey  <tom@tromey.com>
3471
3472         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3473         (token_fifo): Now a std::vector.
3474         (yylex, c_parse): Update.
3475         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3476         (token_fifo): Now a std::vector.
3477         (yylex, d_parse): Update.
3478         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3479         (token_fifo): Now a std::vector.
3480         (yylex, go_parse): Update.
3481
3482 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
3483
3484         * parser-defs.h (struct type_stack) <elements>: Change type to
3485         std::vector<union type_stack_elt>.
3486         <depth, size>: Remove.
3487         * parse.c (parse_exp_in_context_1): Adjust.
3488         (type_stack_reserve): Remove.
3489         (check_type_stack_depth): Remove.
3490         (insert_into_type_stack): Adjust to std::vector.
3491         (insert_type): Likewise.
3492         (push_type): Likewise.
3493         (push_type_int): Likewise.
3494         (insert_type_address_space): Likewise.
3495         (pop_type): Likewise.
3496         (pop_type_int): Likewise.
3497         (pop_typelist): Likewise.
3498         (pop_type_stack): Likewise.
3499         (append_type_stack): Likewise.
3500         (push_type_stack): Likewise.
3501         (get_type_stack): Likewise.
3502         (type_stack_cleanup): Likewise.
3503         (push_typelist): Likewise.
3504         (follow_types): Likewise.
3505         (_initialize_parse): Likewise.
3506
3507 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
3508
3509         * NEWS: Mention csky target.
3510
3511 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
3512             Hafiz Abid Qadeer  <abidh@codesourcery.com>
3513             Don Breazeal  <donb@codesourcery.com>
3514
3515         * csky-linux-tdep.c: New file.
3516         * csky-tdep.c: Likewise.
3517         * csky-tdep.h: Likewise.
3518         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
3519         csky-tdep.o.
3520         (HFILES_NO_SRCDIR): Add csky-tdep.h.
3521         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
3522         * configure.tgt: Add csky support.
3523
3524 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
3525
3526         * python/py-framefilter.c (py_print_frame): Print frame architecture
3527         when printing on an MI output.
3528
3529 2018-08-27  Tom Tromey  <tom@tromey.com>
3530
3531         PR build/23087:
3532         * configure: Rebuild.
3533         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
3534
3535 2018-08-27  Tom Tromey  <tom@tromey.com>
3536
3537         * aarch64-linux-tdep.c
3538         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
3539         casts to int.
3540
3541 2018-08-27  Tom Tromey  <tom@tromey.com>
3542
3543         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
3544         unsigned.
3545         (ppc64_standard_linkage1, ppc64_standard_linkage2)
3546         (ppc64_standard_linkage3, ppc64_standard_linkage4)
3547         (ppc64_standard_linkage5, ppc64_standard_linkage6)
3548         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
3549         unsigned.
3550
3551 2018-08-27  Tom Tromey  <tom@tromey.com>
3552
3553         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
3554         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
3555
3556 2018-08-27  Tom Tromey  <tom@tromey.com>
3557
3558         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
3559         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
3560         ULONGEST_MAX.
3561         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
3562         ULONGEST_MAX.
3563         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
3564         ULONGEST_MAX.
3565         * sparc-linux-tdep.c (sparc32_linux_sigframe)
3566         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
3567         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
3568         ULONGEST_MAX.
3569         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
3570         (ppc64_linux_sigaction_tramp_frame)
3571         (ppc32_linux_sighandler_tramp_frame)
3572         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
3573         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
3574         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
3575         * mn10300-linux-tdep.c (am33_linux_sigframe)
3576         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
3577         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
3578         * mips-linux-tdep.c (mips_linux_o32_sigframe)
3579         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
3580         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
3581         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
3582         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
3583         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
3584         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
3585         * microblaze-linux-tdep.c
3586         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
3587         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
3588         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
3589         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
3590         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
3591         * common/common-types.h (ULONGEST_MAX): New define.
3592         (CORE_ADDR_MAX): Fix formatting.
3593         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
3594         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
3595         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
3596         (arm_linux_rt_sigreturn_tramp_frame)
3597         (arm_eabi_linux_sigreturn_tramp_frame)
3598         (arm_eabi_linux_rt_sigreturn_tramp_frame)
3599         (thumb2_eabi_linux_sigreturn_tramp_frame)
3600         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
3601         (arm_linux_restart_syscall_tramp_frame)
3602         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
3603         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
3604         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
3605         ULONGEST_MAX.
3606         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
3607
3608 2018-08-27  Tom Tromey  <tom@tromey.com>
3609
3610         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
3611         CORE_ADDR_MAX.
3612         * mips-tdep.c (mips_deal_with_atomic_sequence)
3613         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
3614         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
3615         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
3616         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
3617         CORE_ADDR_MAX.
3618         * aarch64-tdep.c (aarch64_software_single_step): Use
3619         CORE_ADDR_MAX.
3620
3621 2018-08-27  Tom Tromey  <tom@tromey.com>
3622
3623         * linespec.c (complete_linespec_component): Add cast to "char".
3624         * completer.c (completion_tracker::build_completion_result): Add
3625         cast to "char".
3626
3627 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3628
3629         * solist.h (struct solist, struct target_so_ops): Fix
3630         indentation.
3631
3632 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3633
3634         * ada-tasks.c (ada_task_info_s): Remove typedef.
3635         (DEF_VEC_O(ada_task_info_s)): Remove.
3636         (struct ada_tasks_inferior_data): Initialize fields.
3637         <task_list>: Make an std::vector.
3638         (get_ada_tasks_inferior_data): Allocate with new.
3639         (ada_get_task_number): Adjust.
3640         (get_task_number_from_id): Likewise.
3641         (valid_task_id): Likewise.
3642         (ada_get_task_info_from_ptid): Likewise.
3643         (iterate_over_live_ada_tasks): Likewise.
3644         (add_ada_task): Likewise.
3645         (read_known_tasks): Likewise.
3646         (ada_build_task_list): Likewise.
3647         (print_ada_task_info): Likewise.
3648         (info_task): Likewise.
3649         (task_command_1): Likewise.
3650
3651 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3652
3653         * ada-lang.c (add_angle_brackets): Return std::string.
3654
3655 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
3656
3657         * python/py-threadevent.c (py_get_event_thread): Initialize
3658         pythread.
3659
3660 2018-08-24  Pedro Alves  <palves@redhat.com>
3661
3662         * python/py-bpevent.c (create_breakpoint_event_object): Use
3663         copy-initialization.
3664         * python/py-continueevent.c (emit_continue_event): Use
3665         copy-initialization.
3666         * python/py-exitedevent.c (create_exited_event_object): Return a
3667         gdbpy_ref<>.
3668         (emit_exited_event): Use copy-initialization.
3669         * python/py-inferior.c (python_new_inferior)
3670         (python_inferior_deleted, add_thread_object): Use
3671         copy-initialization.
3672         * python/py-infevents.c (create_inferior_call_event_object)
3673         (create_register_changed_event_object)
3674         (create_memory_changed_event_object): Return a gdbpy_ref<>.
3675         (emit_inferior_call_event, emit_memory_changed_event)
3676         (emit_register_changed_event): Use copy-initialization.
3677         * python/py-newobjfileevent.c (create_new_objfile_event_object):
3678         Return a gdbpy_ref<>.
3679         (emit_new_objfile_event): Use copy-initialization.
3680         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
3681         (emit_clear_objfiles_event): Use copy-initialization.
3682         * python/py-signalevent.c (create_signal_event_object): Use
3683         copy-initialization.
3684         * python/py-threadevent.c (create_thread_event_object): Use
3685         copy-initialization.
3686
3687 2018-08-24  Pedro Alves  <palves@redhat.com>
3688             Simon Marchi  <simon.marchi@ericsson.com>
3689
3690         PR gdb/23379
3691         * python/py-continueevent.c: Include "gdbthread.h".
3692         (create_continue_event_object): Add intro comment.  Add 'ptid'
3693         parameter.  Use it to find thread to pass to
3694         create_thread_event_object.
3695         (emit_continue_event): Pass PTID down to
3696         create_continue_event_object.
3697         * python/py-event.h (py_get_event_thread): Declare.
3698         (create_thread_event_object): Remove default from 'thread'
3699         parameter.
3700         * python/py-stopevent.c (create_stop_event_object): Use
3701         py_get_event_thread.
3702         * python/py-threadevent.c (get_event_thread): Rename to ...
3703         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
3704         and use it to find the thread.
3705         (create_thread_event_object): Assert that THREAD isn't null.
3706         Don't find the event thread here.
3707
3708 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
3709
3710         * block.h (blockrange, blockranges): New struct declarations.
3711         (struct block): Add new field named `ranges'.
3712         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
3713         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
3714         macros for accessing ranges in struct block.
3715         (make_blockranges): New declaration.
3716         block.c (make_blockranges): New function.
3717         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
3718         for block.
3719         * symtab.h (find_pc_partial_function): Add new parameter `block'.
3720         * blockframe.c (cache_pc_function_block): New static global.
3721         (clear_pc_function_cache): Clear cache_pc_function_block.
3722         (find_pc_partial_function): Move comment to symtab.h.  Add
3723         support for non-contiguous blocks.
3724         * cli/cli-cmds.c (block.h): Include.
3725         (print_disassembly): Handle printing of non-contiguous blocks.
3726         (disassemble_current_function): Likewise.
3727         (disassemble_command): Likewise.
3728
3729         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
3730         BLOCK_START.
3731         * blockframe.c (get_pc_function_start): Likewise.
3732         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
3733         (gcc_symbol_address): Likewise.
3734         * compile/compile-object-run.c (compile_object_run): Likewise.
3735         * compile/compile.c (get_expr_block_and_pc): Likewise.
3736         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
3737         (func_addr_to_tail_call_list): Likewise.
3738         * findvar.c (default_read_var_value): Likewise.
3739         * inline-frame.c (inline_frame_this_id): Likewise.
3740         (skip-inline_frames): Likewise.
3741         * infcmd.c (until_next_command): Likewise.
3742         * linespec.c (convert_linespec_to_sals): Likewise.
3743         * parse.c (parse_exp_in_context_1): Likewise.
3744         * printcmd.c (build_address_symbolic): likewise.
3745         (info_address_command): Likewise.
3746         symtab.c (find_function_start_sal): Likewise.
3747         (skip_prologue_sal): Likewise.
3748         (find_function_alias_target): Likewise.
3749         (find_gnu_ifunc): Likewise.
3750         * stack.c (find_frame_funname): Likewise.
3751         * symtab.c (fixup_symbol_section): Likewise.
3752         (find_function_start_sal): Likewise.
3753         (skip_prologue_sal): Likewsie.
3754         (find_function_alias_target): Likewise.
3755         (find_gnu_ifunc): Likewise.
3756         * tracepoint.c (info_scope_command): Likewise.
3757         * value.c (value_fn_field): Likewise.
3758
3759         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
3760         in place of find_pc_partial_function.
3761         * blockframe.c (find_function_entry_range_from_pc): New function.
3762         * symtab.h (find_function_entry_range_from_pc): Declare and document.
3763         * objfiles.c (objfile_relocate1): Relocate start and end addresses
3764         for each range in a block.
3765
3766
3767 2018-08-23  Xavier Roirand  <roirand@adacore.com>
3768
3769         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
3770         incrementation.
3771
3772 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3773
3774         * solib-svr4.c (read_program_headers_from_bfd): Return
3775         gdb::optional<gdb::byte_vector>.
3776         (svr4_exec_displacement): Adjust.
3777
3778 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3779
3780         * solib-svr4.c (read_program_header): Return
3781         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
3782         (find_program_interpreter): Return
3783         gdb::optional<gdb::byte_vector>.
3784         (scan_dyntag_auxv): Adjust.
3785         (enable_break): Adjust.
3786         (svr4_exec_displacement): Adjust.
3787
3788 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3789
3790         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
3791         * inf-child.c (inf_child_target::terminal_save_inferior): New.
3792
3793 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3794
3795         * guile/scm-string.c (gdbscm_scm_from_printf): Use
3796         string_vprintf.
3797         * guile/scm-utils.c (gdbscm_printf): Likewise.
3798         * serial.c (serial_printf): Likewise.
3799         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
3800
3801 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
3802
3803         * stack.c (print_frame): Print frame architecture when printing on
3804         an MI output.
3805         * NEWS: Mention new "arch" attribute in frame output.
3806
3807 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
3808
3809         * arch/aarch64.h (aarch64_regnum): Update comment.
3810
3811 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
3812
3813         * NEWS: Add SVE to 8.2 section.
3814
3815 2018-08-21  Pedro Alves  <palves@redhat.com>
3816
3817         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
3818         out from gdbscm_parse_function_args.
3819         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
3820         gdbscm_parse_function_args_1.
3821
3822 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
3823
3824         PR gdb/17816
3825         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
3826         operator.
3827
3828 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
3829
3830         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
3831
3832 2018-08-19  Michael Spang  <spang@google.com>
3833
3834         PR gdb/11786
3835         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
3836         for PT_TLS segments.
3837
3838 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
3839
3840         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
3841         dwarf_variable_value.
3842         * dwarf2-frame.c (class dwarf_expr_executor):
3843         Add override for dwarf_variable_value.
3844         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
3845         (class symbol_needs_eval_context): Likewise.
3846         (indirect_synthetic_pointer): Add forward declaration.
3847         (sect_variable_value): New function.
3848         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
3849         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
3850         for DW_OP_GNU_variable_value.
3851
3852 2018-08-16  Tom Tromey  <tom@tromey.com>
3853
3854         * top.c (read_command_file): Update.
3855         (command_line_input): Remove "repeat" argument.
3856         * ada-lang.c (get_selections): Update.
3857         * linespec.c (decode_line_2): Update.
3858         * defs.h (command_line_input): Remove argument.
3859         * cli/cli-script.c (read_next_line): Update.
3860         * python/py-gdb-readline.c: Update.
3861
3862 2018-08-17  Tom Tromey  <tom@tromey.com>
3863
3864         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
3865         command_line_input.
3866
3867 2018-08-15  Tom Tromey  <tom@tromey.com>
3868
3869         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
3870
3871 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
3872
3873         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
3874         If used, use find_pc_partial_function to find address range
3875         to disassemble.
3876         * mi/mi-main.c (mi_cmd_list_features): Report
3877         "data-disassemble-a-option" feature.
3878         * NEWS: Mention new -data-disassemble option -a.
3879
3880 2018-08-13  Tom Tromey  <tom@tromey.com>
3881
3882         * common/common-defs.h (_FORTIFY_SOURCE): Define.
3883
3884 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3885
3886         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
3887         (aarch64_linux_collect_sve_regset): Likewise.
3888         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
3889         * regcache.h (regcache_map_entry_size): New function.
3890
3891 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3892
3893         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
3894         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
3895         (SVE_HEADER_VL_LENGTH): Likewise.
3896         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
3897         (SVE_HEADER_FLAGS_LENGTH): Likewise.
3898         (SVE_HEADER_RESERVED_LENGTH): Likewise.
3899         (SVE_HEADER_SIZE_OFFSET): Likewise.
3900         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
3901         (SVE_HEADER_VL_OFFSET): Likewise.
3902         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
3903         (SVE_HEADER_FLAGS_OFFSET): Likewise.
3904         (SVE_HEADER_RESERVED_OFFSET): Likewise.
3905         (SVE_HEADER_SIZE): Likewise.
3906         (aarch64_linux_core_read_vq): Add function.
3907         (aarch64_linux_core_read_description): Check for SVE section.
3908
3909 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3910
3911         * aarch64-fbsd-tdep.c
3912         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
3913         collect_size.
3914         * aarch64-linux-tdep.c
3915         (aarch64_linux_iterate_over_regset_sections): Likewise.
3916         * alpha-linux-tdep.c
3917         (alpha_linux_iterate_over_regset_sections):
3918         * alpha-nbsd-tdep.c
3919         (alphanbsd_iterate_over_regset_sections): Likewise.
3920         * amd64-fbsd-tdep.c
3921         (amd64fbsd_iterate_over_regset_sections): Likewise.
3922         * amd64-linux-tdep.c
3923         (amd64_linux_iterate_over_regset_sections): Likewise.
3924         * arm-bsd-tdep.c
3925         (armbsd_iterate_over_regset_sections): Likewise.
3926         * arm-fbsd-tdep.c
3927         (arm_fbsd_iterate_over_regset_sections): Likewise.
3928         * arm-linux-tdep.c
3929         (arm_linux_iterate_over_regset_sections): Likewise.
3930         * corelow.c (get_core_registers_cb): Likewise.
3931         (core_target::fetch_registers): Likewise.
3932         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
3933         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
3934         * gdbarch.h (void): Regenerate.
3935         * gdbarch.sh: Add supply_size and collect_size.
3936         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
3937         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
3938         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
3939         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
3940         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
3941         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
3942         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
3943         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
3944         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
3945         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
3946         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
3947         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
3948         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
3949         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
3950         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections): Likewise.
3951         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
3952         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
3953         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
3954         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
3955         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
3956         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
3957         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections): Likewise.
3958         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
3959         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
3960         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
3961         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
3962         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
3963         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
3964         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
3965         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
3966
3967 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
3968
3969         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
3970         with string_printf.
3971
3972 2018-08-10  Keith Seitz  <keiths@redhat.com>
3973
3974         * compile/compile-c-support.c (add_code_header, add_code_footer):
3975         Move into policy class.
3976         (c_push_user_expression, pop_user_expression_nop)
3977         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
3978         (compile_program): New host class.
3979         (c_compile_program): New typedef.
3980         (c_compute_porgram): Use c_compile_program.
3981
3982 2018-08-10  Keith Seitz  <keiths@redhat.com>
3983
3984         * compile/compile-internal.h (compile_instance::~compile_instance):
3985         Remove calls to htab_delete.
3986         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
3987         * compile.c (compile_instance::compile_instance): Initialize
3988         htab unique pointers.
3989         (compile_instance::get_cached_type, compile_instance::insert_type)
3990         (compile_instance::error_symbol_once): Update for unique_ptr.
3991
3992 2018-08-10  Keith Seitz  <keiths@redhat.com>
3993
3994         * compile/compile-c-symbols.c (struct symbol_error)
3995         (hash_symbol_error, eq_symbol_error, del_symbol_error)
3996         (compile_instance::insert_symbol_error)
3997         (compile_instance::error_symbol_once): Move to ...
3998         * compile/compile.c: ... here.
3999
4000 2018-08-10  Keith Seitz  <keiths@redhat.com>
4001
4002         * compile/compile-c-support.c (c_get_compile_context): Use `new'
4003         instead of `new_compile_instance'.
4004         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
4005         Update description.
4006         If the symbol error map is not initialized, create it.
4007         (generate_c_for_for_one_symbol): Do not check/initialize
4008         the symbol error map.
4009         * compile/compile-c-types.c (compile_c_instance): Make a class.
4010         Update all callers.
4011         (compile_instance::compile_instance): Initialize the type cache.
4012         (get_cached_type): New function.
4013         (insert_type): Update description.
4014         (compile_c_instance::m_default_cflags): Define.
4015         (convert_type): Update description.  Use get_cached_type.
4016         (delete_instance): Moved to destructor.
4017         (new_compile_instance): Moved to constructor.
4018         * compile/compile-c.h (compile_c_instance): Make class inheriting
4019         from compile_instance.
4020         <base>: Remove field.
4021         <type_map, symbol_err_map>: Move to base class.
4022         <c_plugin>: Rename to `m_plugin' and remove pointer type.
4023         * compile/compile-internal.h (compile_instance): Make class.
4024         <type_map_t, symbol_err_map_t>: Define.
4025         <fe>: Rename to `m_gcc_fe'.
4026         <scope, block, gcc_target_options>: Add `m_' prefix.
4027         <m_type_map, m_symbol_err_map>: New fields, moved from
4028         compile_c_instance.
4029         <destroy>: Remove.
4030         (convert_type, new_compile_instance): Remove.
4031         * compile/compile.c (cleanup_compile_instance): Remove.
4032         (compile_to_object): Use unique_ptr to eliminate cleanups.
4033         (compile_instance::set_print_callback, compile_instance::version)
4034         (compile_instance::set_verbose)
4035         (compile_instance::set_driver_filename)
4036         (compile_instance::set_triplet_regexp)
4037         (compile_instance::set_arguments)
4038         (compile_instance::set_source_file)
4039         (compile_instance::compile): Define.
4040
4041 2018-08-10  Keith Seitz  <keiths@redhat.com>
4042
4043         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
4044         * compile/compile-c-types.c: Define GCC_METHODN macros and include
4045         gcc-c-fe.def to define C plugin.
4046         (delete_instance): Delete `c_plugin'.
4047         (new_compile_instance): Initialize `c_plugin'.
4048         * compile/compile-c.h: Include gcc_c_plugin.h.
4049         (struct compile_c_instance) <c_plugin>: New member.
4050         * gcc-c-plugin.h: New file.
4051         Update all callers with API change.
4052
4053 2018-08-10  Keith Seitz  <keiths@redhat.com>
4054
4055         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
4056         (HFILES_NO_SRCDIR): ... to here.
4057         Add compile-internal.h and compile-c.h.
4058         * compile/compile-c-support.c: Include compile-c.h.
4059         * compile/compile-c-symbols.c: Include compile-c.h.
4060         (generate_c_for_variable_locations): Update comment.
4061         * compile/compile-c-types.c: Include compile-c.h.
4062         * compile/compile-c.h: New file -- moved C language declarations
4063         from other files here.
4064         * compile/compile-internal.h: Do not include hashtab.h or
4065         common/enum-flags.h.
4066         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
4067         (gcc_convert_symbol, gcc_symbol_address)
4068         (generate_c_for_variable_locations, c_get_mode_for_size)
4069         (c_get_range_decl_name): Definitions moved to compile-c.h.
4070         * compile/compile-loc2c.c: Include compile-c.h.
4071
4072 2018-08-10  Keith Seitz  <keiths@redhat.com>
4073
4074         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
4075         (c_symbol_substitution_name): ... this.
4076         Update all callers.
4077
4078 2018-08-10  Keith Seitz  <keiths@redhat.com>
4079
4080         * compile/compile-c-support.c (c_compute_program): Use
4081         unique_xmalloc_ptr to eliminate cleanup.
4082         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
4083         Return a unique_xmalloc_ptr and eliminate cleanup.
4084         * compile/compile-internal.h (generate_c_for_variable_locations):
4085         Return unique_xmalloc_ptr and update description.
4086
4087 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
4088
4089         * corelow.c (core_target::get_core_register_section): Rename
4090         min_size to section_min_size.
4091
4092 2018-08-09  Jim Wilson  <jimw@sifive.com>
4093
4094         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
4095         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
4096         * NEWS: Mention new GNU/Linux RISC-V target.
4097         * configure.host: Add riscv*-*-linux*.
4098         * configure.nat: Add riscv*.
4099         * configure.tgt: Add riscv*-*-linux*.
4100         * riscv-linux-nat.c: New file.
4101         * riscv-linux-tdep.c: New file.
4102
4103 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4104
4105         * infrun.c (resume): Make static, add forward declaration.
4106         (proceed): Update header comment.
4107         * infrun.h (resume): Delete declaration.
4108
4109 2018-08-09  Tom Tromey  <tom@tromey.com>
4110
4111         * riscv-tdep.h: Minor formatting fixes.
4112
4113 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
4114
4115         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
4116         * dwarf-index-cache.c (create_dir_and_check): Likewise.
4117         (test_mkdir_recursive): Likewise.
4118         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
4119
4120 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4121
4122         * valarith.c (value_subscripted_rvalue): If an array is not in
4123         memory, and we don't know the upper bound, then we can't know that
4124         the requested element exists or not.
4125
4126 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
4127
4128         * target.c (str_comma_list_concat_elem): Fix typo in comment.
4129         (target_options_to_string): Add comment.
4130
4131 2018-08-08  Tom Tromey  <tom@tromey.com>
4132
4133         * unittests/scoped_mmap-selftests.c: Check result of "write".
4134
4135 2018-08-08  Jim Wilson  <jimw@sifive.com>
4136
4137         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
4138         (decode_register_index_short): New.
4139         (decode_j_type_insn, decode_cj_type_insn): New.
4140         (decode_b_type_insn, decode_cb_type_insn): New.
4141         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
4142         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
4143         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
4144         is_c_sw_insn instead of is_sw_insn.
4145         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
4146         (riscv_software_single_step): New.
4147         * riscv-tdep.h (riscv_software_single_step): Declare.
4148
4149         * riscv-tdep.c (riscv_isa_xlen): Drop static.
4150         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
4151
4152 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
4153
4154         PR gdb/18050:
4155         * target.c (dispose_inferior): Don't dispose of inferiors that are
4156         already killed.
4157
4158 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
4159
4160         * remote.c (remote_target::download_tracepoint): Change char* to
4161         const char*.
4162
4163 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
4164
4165         * target.h (target_options_to_string): Return an std::string.
4166         * target.c (str_comma_list_concat_elem): Return void, use
4167         std::string.
4168         (do_option): Likewise.
4169         (target_options_to_string): Return an std::string.
4170         * linux-nat.c (linux_nat_target::wait): Adjust.
4171         * target-debug.h (target_debug_print_options): Adjust.
4172
4173 2018-08-07  Tom Tromey  <tom@tromey.com>
4174
4175         * Makefile.in (CPPFLAGS): New variable.
4176         (INTERNAL_CPPFLAGS): Use it.
4177
4178 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4179
4180         * NEWS: Mention the index cache.
4181
4182 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4183
4184         * common/pathstuff.h (get_standard_cache_dir): New.
4185         * common/pathstuff.c (get_standard_cache_dir): New.
4186         * build-id.h (build_id_to_string): New.
4187         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
4188         DEBUG_STR_SUFFIX): Move to here.
4189         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
4190         DEBUG_STR_SUFFIX): Move from there.
4191         (write_psymtabs_to_index): Make non-static, add basename
4192         parameter.  Write to temporary files, rename when done.
4193         (save_gdb_index_command): Adjust call to
4194         write_psymtabs_to_index.
4195         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
4196         field.
4197         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
4198         (get_gdb_index_contents_from_cache): New.
4199         (get_gdb_index_contents_from_cache_dwz): New.
4200         (dwarf2_initialize_objfile): Read index from cache.
4201         (dwarf2_build_psymtabs): Save to index.
4202         * dwarf-index-cache.h: New file.
4203         * dwarf-index-cache.c: New file.
4204         * dwarf-index-write.h: New file.
4205
4206 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4207
4208         * gnulib/aclocal.m4: Re-generate.
4209         * gnulib/config.in: Re-generate.
4210         * gnulib/configure: Re-generate.
4211         * gnulib/import/Makefile.am: Re-generate.
4212         * gnulib/import/Makefile.in: Re-generate.
4213         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
4214         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
4215         * gnulib/import/m4/mkdir.m4: New file.
4216         * gnulib/import/mkdir.c: New file.
4217         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
4218         module.
4219
4220 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4221
4222         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
4223         * common/scoped_mmap.c: New file.
4224         * common/scoped_mmap.h (destroy): New method.
4225         (~scoped_mmap, reset): Use destroy.
4226         (scoped_mmap): New move constructor.
4227         (mmap_file): New declaration.
4228         * unittests/scoped_mmap-selftests.c (test_normal,
4229         test_invalid_filename, run_tests): New functions.
4230         (_initialize_scoped_mmap_selftests): Register selftest.
4231
4232 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4233
4234         * dwarf2read.c (read_gdb_index_from_section): Rename to...
4235         (read_gdb_index_from_buffer): ... this.  Remove section
4236         parameter, add buffer parameter.
4237         (get_gdb_index_contents_ftype,
4238         get_gdb_index_contents_dwz_ftype): New typedefs.
4239         (dwarf2_read_gdb_index): Add callback parameters to get the
4240         index contents.
4241         (get_gdb_index_contents_from_section): New.
4242         (dwarf2_initialize_objfile): Update call to
4243         dwarf2_read_gdb_index.
4244
4245 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4246
4247         * common/filestuff.h (gdb_fopen_cloexec): New overload.
4248         (gdb_open_cloexec): Likewise.
4249         * nat/linux-osdata.c (command_from_pid): Use string_printf.
4250         (commandline_from_pid): Likewise.
4251         (linux_xfer_osdata_threads): Likewise.
4252         (linux_xfer_osdata_fds): Likewise.
4253         * ada-lang.c (is_package_name): Likewise.
4254         * auxv.c (procfs_xfer_auxv): Likewise.
4255         * breakpoint.c (print_one_breakpoint_location): Use
4256         uiout::field_fmt.
4257         (print_one_catch_solib): Use string_printf.
4258         * coff-pe-read.c (add_pe_exported_sym): Likewise.
4259         (add_pe_forwarded_sym): Likewise.
4260         * dwarf2read.c (create_type_unit_group): Likewise.
4261         (build_error_marker_type): Likewise.
4262         * infcall.c (get_function_name): Likewise.
4263         * valprint.c (print_converted_chars_to_obstack): Likewise.
4264         * xtensa-tdep.c (xtensa_register_type): Likewise.
4265
4266 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
4267
4268         * remote.c (remote_target::download_tracepoint): Fix format
4269         string errors.
4270
4271 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4272
4273         * tracefile.c: Include common/byte-vector.h.
4274         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
4275         with trace_regblock_size if needed.  Update uses of buf.
4276
4277 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4278
4279         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
4280         std::vector<unsigned char>.
4281         * tracepoint.c (collection_list::collection_list): Remove
4282         m_regs_mask initializer from initializer list.  Resize
4283         m_regs_mask using the largest remote register number.
4284         (collection_list::add_remote_register): Remove size check on
4285         m_regs_mask.  Use at to access element.
4286         (collection_list::stringify): Change type of temp_buf to
4287         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
4288         stringify the register mask.  Use pack_hex_byte for the register
4289         mask.
4290
4291 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4292
4293         * tracepoint.h (class collection_list) <add_register>: Remove.
4294         <add_remote_register, add_ax_registers, add_local_register>:
4295         Declare.
4296         <add_memrange>: Add scope parameter.
4297         * tracepoint.c (encode_actions_1): Likewise.
4298         (collection_list::add_register): Rename to ...
4299         (collection_list::add_remote_register): ... this.  Update
4300         comment.
4301         (collection_list::add_ax_registers, add_local_register): New
4302         methods.
4303         (collection_list::add_memrange): Add scope parameter.  Call
4304         add_local_register instead of add_register.
4305         (finalize_tracepoint_aexpr): New function.
4306         (collection_list::collect_symbol): Update calls to add_memrange.
4307         Call add_local_register instead of add_register.  Call
4308         add_ax_registers.  Call finalize_tracepoint_aexpr.
4309         (encode_actions_1): Get remote regnos for $reg action.  Call
4310         add_remote_register, add_ax_registers, and add_local_register.
4311         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
4312         (validate_actionline): Call finalize_tracepoint_aexpr.
4313
4314 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4315
4316         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
4317         Replace array buf with gdb::char_vector buf, of size
4318         get_remote_packet_size ().  Replace references to buf and
4319         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
4320         and xsnprintf with snprintf.  Raise errors if the buffer is too
4321         small.
4322
4323 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4324
4325         * remote.c (remote_target::download_tracepoint): Fix the has_more
4326         predicate in the QTDP action list iteration.
4327
4328 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4329
4330         * remote.c (remote_target::download_tracepoint): Fix indentation
4331         in for block.
4332
4333 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4334
4335         * proc-api.c (_initialize_proc_api): Remove c, unused.
4336         * procfs.c (procfs_init_inferior): Remove signals, unused.
4337         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
4338         unused.
4339
4340 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
4341             Andrew Burgess  <andrew.burgess@embecosm.com>
4342
4343         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
4344         'W_STOPCODE (0)' as this could be ambiguous.
4345
4346 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
4347
4348         * ser-tcp.c (net_open): Fix thinko when deciding whether to
4349         disable TCP's Nagle algorithm (use "ai_protocol" instead of
4350         "ai_socktype").
4351
4352 2018-08-02  Tom Tromey  <tom@tromey.com>
4353
4354         PR symtab/16842.
4355         * dwarf2read.c (read_func_scope): Set symtab on template parameter
4356         symbols.
4357         (process_structure_scope): Likewise.
4358
4359 2018-08-02  Xavier Roirand  <roirand@adacore.com>
4360
4361         PR gdb/22629:
4362         * darwin-nat.c (darwin_kill_inferior): Fix handling of
4363         kill inferior.
4364
4365 2018-08-02  Tom Tromey  <tom@tromey.com>
4366
4367         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
4368         (darwin_suspend_inferior, darwin_resume_inferior)
4369         (darwin_decode_notify_message, darwin_resume_inferior_threads)
4370         (darwin_check_new_threads): Check result of get_darwin_inferior.
4371
4372 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
4373
4374         GDB 8.1.1 released.
4375
4376 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
4377
4378         * varobj.c (varobj_get_path_expr_parent): Report an error if
4379         parent is a dynamic varobj.
4380
4381 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
4382
4383         * gnulib/aclocal.m4: Re-generate.
4384         * gnulib/config.in: Re-generate.
4385         * gnulib/configure: Re-generate.
4386         * gnulib/import/Makefile.in: Re-generate.
4387         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
4388         * gnulib/import/m4/onceonly.m4: Re-generate.
4389
4390 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
4391
4392         * target-descriptions.c (struct xml_test_tdesc): New.
4393         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
4394         (record_xml_tdesc): Update.
4395         (maintenance_check_xml_descriptions): Update.
4396         * target-descriptions.h (record_xml_tdesc): Update comment.
4397
4398 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
4399
4400         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
4401         checking array bounds are defined.
4402
4403 2018-07-30  Tom Tromey  <tom@tromey.com>
4404
4405         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
4406         irreflexivity violation.
4407
4408 2018-07-30  Tom Tromey  <tom@tromey.com>
4409
4410         * cli/cli-decode.c (lookup_cmd): Remove lint code.
4411         * value.c (unpack_long): Remove lint code.
4412         * valops.c (value_ind): Remove lint code.
4413         * valarith.c (value_x_binop, value_x_unop, value_equal)
4414         (value_pos): Remove lint code.
4415
4416 2018-07-28  Tom de Vries  <tdevries@suse.de>
4417
4418         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
4419         with undefined upper bound as <optimized out>.
4420
4421 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
4422
4423         * gcore.in: Rename variable "name" to "prefix".  Expand
4424         "usage" text.
4425
4426 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
4427
4428         * windows-nat.c (windows_nat_target::create_inferior): Update to
4429         call close() in global namespace.
4430
4431 2018-07-26  Tom Tromey  <tom@tromey.com>
4432
4433         * dwarf-index-write.c (add_address_entry): Don't add objfile
4434         offsets.
4435         * dbxread.c (find_stab_function): Rename from
4436         find_stab_function_addr.  Return a bound_minimal_symbol.
4437         (read_dbx_symtab): Use raw_text_low, raw_text_high.
4438         Don't add objfile offsets.
4439         (end_psymtab): Use raw_text_low, raw_text_high,
4440         MSYMBOL_VALUE_RAW_ADDRESS.
4441         (read_ofile_symtab): Update.
4442         (process_one_symbol): Update.
4443         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
4444         offsets.
4445         (dw2_relocate): Remove.
4446         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
4447         searching addrmap.
4448         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
4449         Update.
4450         (process_psymtab_comp_unit_reader, add_partial_symbol)
4451         (add_partial_subprogram, dwarf2_ranges_read): Update.
4452         (load_partial_dies): Update.
4453         (add_address_entry): Don't add objfile offsets.
4454         (dwarf2_build_include_psymtabs): Update.
4455         (create_addrmap_from_aranges): Don't add objfile offsets.
4456         (dw2_find_pc_sect_compunit_symtab): Update.
4457         * mdebugread.c (parse_symbol): Don't add objfile offsets.
4458         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
4459         Update.
4460         (parse_partial_symbols): Don't add objfile offsets.  Use
4461         raw_text_low, raw_text_high.  Update.
4462         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
4463         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
4464         or call 'relocate' quick function.  Clear psymbol_map.
4465         * psympriv.h (struct partial_symbol) <address>: Add section
4466         offset.
4467         <set_unrelocated_address>: Rename from set_address.
4468         <raw_text_low, raw_text_high>: New methods.
4469         <text_low, text_high>: Add objfile parameter.
4470         (add_psymbol_to_bcache): Add 'section' parameter.  Call
4471         set_unrelocated_address.
4472         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4473         (find_pc_psymbol): Update.
4474         (fixup_psymbol_section, relocate_psymtabs): Remove.
4475         (dump_psymtab, psym_functions): Update.
4476         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
4477         parameter.
4478         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
4479         (start_psymtab_common): Update.
4480         * symfile-debug.c (debug_qf_relocate): Remove.
4481         (debug_sym_quick_functions): Update.
4482         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
4483         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
4484         Update.
4485
4486 2018-07-26  Tom Tromey  <tromey@redhat.com>
4487
4488         * dbxread.c (end_psymtab): Use text_high_valid and
4489         text_low_valid.
4490         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
4491         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
4492         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
4493         Update comment.
4494         <text_low_valid, text_high_valid>: New fields.
4495         <set_text_low, set_text_high>: Update.
4496         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
4497
4498 2018-07-26  Tom Tromey  <tom@tromey.com>
4499
4500         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
4501         Update.
4502         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
4503         textlow and texthigh fields.
4504         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
4505         Update.
4506         * mdebugread.c (parse_lines, parse_partial_symbols)
4507         (psymtab_to_symtab_1): Update.
4508         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
4509         Rename fields.  Update comment.  Now private.
4510         <text_low, text_high, set_text_low, set_text_high>: New methods.
4511         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4512         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
4513         (start_psymtab_common, maintenance_info_psymtabs)
4514         (maintenance_check_psymtabs): Update.
4515         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
4516         texthigh fields.
4517         (scan_xcoff_symtab): Update.
4518
4519 2018-07-26  Tom Tromey  <tromey@redhat.com>
4520
4521         * psympriv.h (struct partial_symbol) <unrelocated_address,
4522         address, set_address>: New methods.
4523         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
4524         (fixup_psymbol_section, relocate_psymtabs): Update.
4525         (print_partial_symbols): Add 'objfile' parameter.  Update.
4526         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
4527         Update.
4528
4529 2018-07-26  Tom Tromey  <tom@tromey.com>
4530
4531         * dwarf-index-write.c (write_psymbols, debug_names::insert)
4532         (debug_names::write_psymbols): Update.
4533         * psympriv.h (struct partial_symbol): Derive from
4534         general_symbol_info.
4535         <obj_section>: New method.
4536         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
4537         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4538         (find_pc_sect_psymbol, fixup_psymbol_section)
4539         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
4540         (print_partial_symbols, recursively_search_psymtabs)
4541         (compare_psymbols, psymbol_hash, psymbol_compare)
4542         (add_psymbol_to_bcache, maintenance_check_psymtabs)
4543         (psymbol_name_matches, psym_fill_psymbol_map): Update.
4544
4545 2018-07-26  Tom Tromey  <tromey@redhat.com>
4546
4547         * dbxread.c (end_psymtab): Remove dead code.
4548
4549 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
4550
4551         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
4552         DWARF unwinders are disabled.
4553         * dwarf2-frame.c: Add dwarf2read.h include.
4554         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
4555         disabled.
4556         (dwarf2_frame_unwinders_enabled_p): Define.
4557         (show_dwarf_unwinders_enabled_p): New function.
4558         (_initialize_dwarf2_frame): Register switch to control DWARF
4559         unwinder use.
4560         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
4561         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
4562         (show_dwarf_cmdlist): Remove static keyword.
4563         * dwarf2read.h (set_dwarf_cmdlist): Declare.
4564         (show_dwarf_cmdlist): Declare.
4565         * NEWS: Document new feature.
4566
4567 2018-07-26  Tom de Vries  <tdevries@suse.de>
4568
4569         PR breakpoints/23366
4570         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
4571
4572 2018-07-26  Tom de Vries  <tdevries@suse.de>
4573
4574         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
4575         DW_AT_count can't be translated to a dynamic prop.
4576
4577 2018-07-25  Tom de Vries  <tdevries@suse.de>
4578
4579         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
4580         try/catch.
4581
4582 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
4583
4584         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
4585
4586 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
4587
4588         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
4589
4590 2018-07-24  Keith Seitz  <keiths@redhat.comt
4591
4592         PR symtab/23010
4593         * dwarf2read.c (dw2_add_symbol_to_list): New function.
4594         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
4595         instead of add_symbol_to_list.
4596         (read_file_scope): Call prepare_one_comp_unit before reading
4597         any other DIEs.
4598
4599 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
4600
4601         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
4602
4603 2018-07-24  Tom Tromey  <tom@tromey.com>
4604
4605         * utils.c (malloc, realloc, free): Don't declare.
4606         * configure, config.in: Rebuild.
4607         * configure.ac: Don't check for declarations of free, malloc, or
4608         realloc.
4609
4610 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
4611
4612         * aarch64-linux-nat.c
4613         (aarch64_linux_nat_target::stopped_data_address): Remove unused
4614         variable.
4615         * arm-linux-nat.c (fetch_regs): Likewise.
4616         (store_regs): Likewise.
4617         (fetch_vfp_regs): Likewise.
4618         (store_vfp_regs): Likewise.
4619         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
4620         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
4621         (arm_linux_nat_target::insert_watchpoint): Likewise.
4622         (arm_linux_nat_target::remove_watchpoint): Likewise.
4623         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
4624         Likewise.
4625         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
4626         Likewise.
4627         * ppc-linux-nat.c (fetch_register): Likewise.
4628         (fetch_all_gp_regs): Likewise.
4629         (fetch_ppc_registers): Likewise.
4630         (store_all_gp_regs): Likewise.
4631         (store_ppc_registers): Likewise.
4632         (hwdebug_insert_point): Likewise.
4633         (can_use_watchpoint_cond_accel): Likewise.
4634         * remote-sim.c (gdb_os_write_stdout): Likewise.
4635
4636 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
4637             Tom Tromey  <tom@tromey.com>
4638
4639         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
4640         test for it.
4641         * configure: Rebuild.
4642
4643 2018-07-22  Tom Tromey  <tom@tromey.com>
4644
4645         * regformats/regdat.sh: Define xmltarget_${name} inside
4646         #ifndef IN_PROCESS_AGENT.
4647
4648 2018-07-22  Tom Tromey  <tom@tromey.com>
4649
4650         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
4651
4652 2018-07-22  Tom Tromey  <tom@tromey.com>
4653
4654         * symfile.c (reread_symbols): Notify iter, not objfile.
4655
4656 2018-07-22  Tom Tromey  <tom@tromey.com>
4657
4658         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
4659         Use arch_ops.
4660         (ravenscar_thread_target::prepare_to_store): Likewise.
4661
4662 2018-07-22  Tom Tromey  <tom@tromey.com>
4663
4664         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
4665         unused variable.  Call value_fetch_lazy when needed.
4666         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
4667         Remove unused variable.  Call value_fetch_lazy when needed.
4668
4669 2018-07-22  Tom Tromey  <tom@tromey.com>
4670
4671         * m32c-tdep.c (mark_dma): Return void.
4672         (make_regs): Remove unused declarations.
4673
4674 2018-07-22  Tom Tromey  <tom@tromey.com>
4675
4676         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
4677         cmdscm_get_valid_command_smob_arg_unsafe for effect.
4678         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
4679         bkscm_get_valid_block_smob_arg_unsafe for effect.
4680
4681 2018-07-22  Tom Tromey  <tom@tromey.com>
4682
4683         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
4684         value_type.
4685
4686 2018-07-22  Tom Tromey  <tom@tromey.com>
4687
4688         * windows-nat.c (saved_context): Conditionally define.
4689         * remote.c (remote_target::remote_btrace_maybe_reopen):
4690         Conditionally declare "warned".
4691         * inflow.c (sigquit_ours): Conditionally define.
4692         (new_tty): Move "tty" declaration inside #if.
4693         * guile/guile.c (guile_datadir): Conditionally define.
4694         * charset.c (set_be_le_names): Move some declarations inside #if.
4695         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
4696         #if.
4697         (parse_xml_btrace_conf): Likewise.
4698
4699 2018-07-22  Tom Tromey  <tom@tromey.com>
4700
4701         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
4702
4703 2018-07-22  Tom Tromey  <tom@tromey.com>
4704
4705         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
4706         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
4707         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
4708         * buildsym-legacy.c (get_macro_table): Remove unused variable.
4709         * stack.c (frame_apply_level_command): Remove unused variable.
4710         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
4711         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
4712         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
4713         unused variable.
4714         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
4715         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
4716         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
4717         variable.
4718         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
4719         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
4720         variable.
4721         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
4722         Remove unused variable.
4723         * cli/cli-script.c (recurse_read_control_structure): Remove unused
4724         variable.
4725         * common/tdesc.c (print_xml_feature::visit): Remove unused
4726         variable.
4727         * compile/compile-object-load.c (store_regs): Remove unused
4728         variables.
4729         * complaints.c (clear_complaints): Remove unused variable.
4730         * corelow.c (core_target_open): Remove unused variable.
4731         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
4732         variable.
4733         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
4734         variable.
4735         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
4736         variable.
4737         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
4738         variable.
4739         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
4740         variable.
4741         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
4742         variable.
4743         * ia64-tdep.c (examine_prologue): Remove unused variable.
4744         * infcall.c (run_inferior_call): Remove unused variable.
4745         * inferior.c (exit_inferior): Remove unused variable.
4746         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
4747         * linespec.c (decode_line_2): Remove unused variable.
4748         * linux-nat.c (super_close): Remove.
4749         * linux-tdep.c (linux_info_proc): Remove unused variable.
4750         * mi/mi-main.c (mi_execute_command): Remove unused variable.
4751         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
4752         Remove unused variable.
4753         * parse.c (find_minsym_type_and_address): Remove unused variable.
4754         * printcmd.c (info_symbol_command, printf_floating): Remove unused
4755         variable.
4756         * python/py-breakpoint.c (bppy_set_commands): Remove unused
4757         variable.
4758         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
4759         variables.
4760         * record-btrace.c (record_btrace_target::store_registers): Remove
4761         unused variable.
4762         (cmd_show_record_btrace_cpu): Remove unused variable.
4763         * riscv-tdep.c (riscv_register_reggroup_p)
4764         (riscv_push_dummy_call, riscv_return_value): Remove unused
4765         variable.
4766         * rust-exp.y (literal): Remove unused variable.
4767         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
4768         unused variable.
4769         <STRUCTOP_ANONYMOUS>: Likewise.
4770         * s390-linux-tdep.c (s390_linux_init_abi_31)
4771         (s390_linux_init_abi_64): Remove unused variable.
4772         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
4773         (file_select_thread, net_windows_open, _initialize_ser_windows):
4774         Remove unused variables.
4775         * symtab.c (find_pc_sect_line): Remove unused variable.
4776         * target-memory.c (compute_garbled_blocks): Remove unused
4777         variable.
4778         (target_write_memory_blocks): Remove unused variable.
4779         * target.c (target_stack::unpush): Remove unused variables.
4780         * tracepoint.c (start_tracing, all_tracepoint_actions)
4781         (merge_uploaded_trace_state_variables)
4782         (print_one_static_tracepoint_marker): Remove unused variable.
4783         * unittests/basic_string_view/element_access/char/1.cc (test01):
4784         Remove unused variable.
4785         * windows-nat.c (windows_continue, windows_add_all_dlls)
4786         (do_initial_windows_stuff, windows_nat_target::create_inferior):
4787         Remove unused variables.
4788
4789 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
4790
4791         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
4792         attr_profile in HAVE_ELF.
4793         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
4794         HAVE_ELF.
4795
4796 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
4797
4798         * frame.c (frame_register_unwind): Change parameter name.
4799         (frame_unwind_register): Likewise.
4800         (frame_unwind_register_value): Likewise.
4801         (frame_unwind_register_signed): Likewise.
4802         (frame_unwind_register_unsigned): Likewise.
4803         * frame.h (frame_register_unwind): Likewise.
4804         (frame_unwind_register): Likewise.
4805         (frame_unwind_register_value): Likewise.
4806         (frame_unwind_register_signed): Likewise.
4807         (frame_unwind_register_unsigned): Likewise.
4808         (frame_unwind_arch): Likewise.
4809
4810 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
4811
4812         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
4813         ISA maintenance.
4814
4815 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
4816
4817         * mips-linux-nat.c (mips_linux_nat_target::read_description):
4818         Call `get_ptrace_pid' rather than extracting the ptrace PID by
4819         hand.
4820
4821 2018-07-20  Keith Seitz  <keiths@redhat.com>
4822
4823         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
4824         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
4825         m_compunit_symtab, m_language>: Add "m_" prefix.
4826         Update all uses.
4827         * buildsym.c: Update all uses.
4828
4829 2018-07-20  Tom Tromey  <tom@tromey.com>
4830
4831         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
4832         * buildsym.h (record_line_ftype): Remove typedef.
4833
4834 2018-07-20  Tom Tromey  <tom@tromey.com>
4835
4836         * buildsym-legacy.h (augment_type_symtab): Don't declare.
4837         (end_expandable_symtab): Likewise.
4838         (end_symtab_get_static_block): Likewise.
4839         (end_symtab_from_static_block): Likewise.
4840         * buildsym-legacy.c (augment_type_symtab): Remove.
4841         (end_expandable_symtab): Remove.
4842         (end_symtab_get_static_block): Remove.
4843         (end_symtab_from_static_block): Remove.
4844
4845 2018-07-20  Tom Tromey  <tom@tromey.com>
4846
4847         * dwarf2read.c: Include buildsym.h.
4848         (struct dwarf2_cu) <builder>: New method.
4849         (fixup_go_packaging): Update.
4850         (process_full_comp_unit, process_full_type_unit): Update.  Don't
4851         use scoped_free_pendings.
4852         (using_directives): Add "cu" parameter, remove "language".
4853         (read_import_statement, setup_type_unit_groups, )
4854         (read_func_scope, read_lexical_block_scope)
4855         (dwarf2_record_block_ranges, read_namespace): Update.
4856         (lnp_state_machine::lnp_state_machine): Add cu parameter.
4857         (lnp_state_machine::handle_end_sequence): Update.
4858         (class lnp_state_machine) <m_cu>: New member.
4859         <m_record_line_callback>: Remove.
4860         <m_currently_recording_lines>: New member.
4861         (lnp_state_machine::handle_set_file): Update.
4862         (noop_record_line): Remove.
4863         (dwarf_record_line_p): Add cu parameter.
4864         (dwarf_record_line_1, dwarf_finish_line): Likewise.
4865         (lnp_state_machine::record_line)
4866         (lnp_state_machine::lnp_state_machine)
4867         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
4868         (dwarf_decode_lines): Update.
4869         (dwarf2_start_subfile): Add cu parameter.
4870         (dwarf2_start_symtab, new_symbol): Update.
4871         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
4872         Remove dwarf2_per_objfile parameter.
4873         (dwarf_decode_macros): Update.
4874
4875 2018-07-20  Tom Tromey  <tom@tromey.com>
4876
4877         * stabsread.c (define_symbol): Update.
4878         * buildsym-legacy.h (get_buildsym_compunit): Declare.
4879         * dwarf2read.c (new_symbol): Update.
4880         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
4881         * cp-namespace.c: Include buildsym.h.
4882         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
4883         * buildsym-legacy.c (get_buildsym_compunit): New function.
4884
4885 2018-07-20  Tom Tromey  <tom@tromey.com>
4886
4887         * xcoffread.c: Include buildsym-legacy.h.
4888         * windows-nat.c: Include buildsym-legacy.h.
4889         * stabsread.c: Include buildsym-legacy.h.
4890         * mdebugread.c: Include buildsym-legacy.h.
4891         * buildsym-legacy.h: New file.
4892         * buildsym-legacy.c: New file, from buildsym.c.
4893         * go32-nat.c: Include buildsym-legacy.h.
4894         * dwarf2read.c: Include buildsym-legacy.h.
4895         * dbxread.c: Include buildsym-legacy.h.
4896         * cp-namespace.c: Include buildsym-legacy.h.
4897         * coffread.c: Include buildsym-legacy.h.
4898         * buildsym.h: Move some contents to buildsym-legacy.h.
4899         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
4900         buildsym-legacy.c.
4901         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
4902
4903 2018-07-20  Tom Tromey  <tom@tromey.com>
4904
4905         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
4906         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
4907         (buildsym_compunit::buildsym_compunit)
4908         (buildsym_compunit::~buildsym_compunit)
4909         (buildsym_compunit::get_macro_table): Define.
4910
4911 2018-07-20  Tom Tromey  <tom@tromey.com>
4912
4913         * buildsym.c (reset_symtab_globals): Remove.
4914         (buildsym_compunit::end_symtab_from_static_block): Update.
4915         (buildsym_compunit::augment_type_symtab): Update.
4916         (end_symtab_from_static_block): Call free_buildsym_compunit.
4917         (augment_type_symtab, end_symtab, end_expandable_symtab):
4918         Likewise.
4919
4920 2018-07-20  Tom Tromey  <tom@tromey.com>
4921
4922         * arch-utils.c: Do not include buildsym.h.
4923         * mipsread.c: Do not include buildsym.h.
4924         * machoread.c: Do not include buildsym.h.
4925         * elfread.c: Do not include buildsym.h.
4926
4927 2018-07-20  Tom Tromey  <tom@tromey.com>
4928
4929         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
4930         initialization.
4931         (buildsym_compunit): Add new constructor.
4932         (struct buildsym_compunit) <get_last_source_file, finish_block,
4933         record_block_range, start_subfile, patch_subfile_names,
4934         push_subfile, pop_subfile, record_line, get_compunit_symtab,
4935         set_last_source_start_addr, get_last_source_start_addr,
4936         get_local_using_directives, set_local_using_directives,
4937         get_global_using_directives, outermost_context_p,
4938         get_current_context_stack, get_context_stack_depth,
4939         get_current_subfile, get_local_symbols, get_file_symbols,
4940         get_global_symbols, record_debugformat, record_producer,
4941         push_context, pop_context, end_symtab_get_static_block,
4942         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
4943         New public methods.
4944         <record_pending_block, finish_block_internal, make_blockvector,
4945         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
4946         private methods.
4947         Update all users.
4948
4949 2018-05-22  Tom Tromey  <tom@tromey.com>
4950
4951         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
4952         parameter.
4953         (finish_block_internal): Update.
4954
4955 2018-07-20  Tom Tromey  <tom@tromey.com>
4956
4957         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
4958         parameter.
4959         (finish_block_internal): Update.
4960
4961 2018-07-20  Tom Tromey  <tom@tromey.com>
4962
4963         * buildsym.h (EXTERN): Don't define or undef.
4964         * buildsym.c (EXTERN): Don't define.
4965
4966 2018-07-20  Tom Tromey  <tom@tromey.com>
4967
4968         * buildsym.c: Remove TODO comment.
4969
4970 2018-07-20  Tom Tromey  <tom@tromey.com>
4971
4972         * coffread.c (coff_symtab_read): Update.
4973         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
4974         (xcoff_new_init): Update.
4975         * mipsread.c (mipscoff_new_init): Update.
4976         * mdebugread.c (mdebug_build_psymtabs): Update.
4977         * elfread.c (elf_new_init): Update.
4978         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
4979         Update.
4980         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
4981         (coffstab_build_psymtabs, elfstab_build_psymtabs)
4982         (stabsect_build_psymtabs): Update.
4983         * buildsym.h (buildsym_init): Don't declare.
4984         * buildsym.c: Update comment.
4985         (prepare_for_building): Remove.
4986         (start_symtab, restart_symtab): Update.
4987         (reset_symtab_globals): Update comment.
4988         (buildsym_init): Remove.
4989
4990 2018-07-20  Tom Tromey  <tom@tromey.com>
4991
4992         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
4993         * stabsread.c (patch_block_stabs, define_symbol, read_type)
4994         (read_enum_type, common_block_start, common_block_end)
4995         (cleanup_undefined_types_1, finish_global_stabs): Update.
4996         * mdebugread.c (psymtab_to_symtab_1): Update.
4997         * dwarf2read.c (fixup_go_packaging, read_func_scope)
4998         (read_lexical_block_scope, new_symbol): Update.
4999         * dbxread.c (process_one_symbol): Update.
5000         * coffread.c (coff_symtab_read, process_coff_symbol)
5001         (coff_read_enum_type): Update.
5002         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
5003         declare.
5004         (get_local_symbols, get_file_symbols, get_global_symbols): New
5005         functions.
5006         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
5007         m_global_symbols.
5008         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
5009         (~scoped_free_pendings): Update.
5010         (finish_block, prepare_for_building, reset_symtab_globals)
5011         (end_symtab_get_static_block, end_symtab_with_blockvector)
5012         (augment_type_symtab, push_context): Update.
5013         (get_local_symbols, get_file_symbols, get_global_symbols): New
5014         functions.
5015         (buildsym_init): Update.
5016
5017 2018-07-20  Tom Tromey  <tom@tromey.com>
5018
5019         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
5020         (process_full_type_unit): Likewise.
5021         (dwarf2_start_symtab): Set list_in_scope.
5022
5023 2018-07-20  Tom Tromey  <tom@tromey.com>
5024
5025         * dwarf2read.c (process_psymtab_comp_unit_reader)
5026         (build_type_psymtabs_reader): Do not set list_in_scope.
5027
5028 2018-07-20  Tom Tromey  <tom@tromey.com>
5029
5030         * buildsym.c (free_pendings): Remove.
5031         (add_symbol_to_list, scoped_free_pendings)
5032         (finish_block_internal, buildsym_init): Update.
5033
5034 2018-07-20  Tom Tromey  <tom@tromey.com>
5035
5036         * xcoffread.c (read_xcoff_symtab): Update.
5037         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
5038         Update.
5039         * dbxread.c (process_one_symbol): Update.
5040         * coffread.c (coff_symtab_read): Update.
5041         * buildsym.h (finish_block): Update.
5042         * buildsym.c (finish_block): Remove "listhead" argument.
5043         (end_symtab_get_static_block): Update.
5044
5045 2018-07-20  Tom Tromey  <tom@tromey.com>
5046
5047         * buildsym.h (class scoped_free_pendings): Remove constructor.
5048         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
5049         method.
5050         <m_pending_block_obstack, m_pending_blocks>: New members.
5051         (pending_block_obstack, pending_blocks): Remove.
5052         (scoped_free_pendings::scoped_free_pendings): Default.
5053         (~scoped_free_pendings): Update.
5054         (free_pending_blocks): Remove.
5055         (finish_block_internal, record_pending_block, make_blockvector)
5056         (end_symtab_get_static_block, augment_type_symtab, push_context)
5057         (buildsym_init): Update.
5058
5059 2018-07-20  Tom Tromey  <tom@tromey.com>
5060
5061         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
5062         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
5063         members.
5064         (pending_addrmap, pending_addrmap_obstack)
5065         (pending_addrmap_interesting): Remove.
5066         (scoped_free_pendings, record_block_range, make_blockvector)
5067         (prepare_for_building, reset_symtab_globals, buildsym_init):
5068         Update.
5069
5070 2018-07-20  Tom Tromey  <tom@tromey.com>
5071
5072         * xcoffread.c (process_linenos): Update.
5073         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
5074         * mdebugread.c (psymtab_to_symtab_1): Update.
5075         * dwarf2read.c (setup_type_unit_groups)
5076         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
5077         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
5078         * dbxread.c (process_one_symbol): Update.
5079         * coffread.c (coff_symtab_read, enter_linenos)
5080         (process_coff_symbol): Update.
5081         * buildsym.h (current_subfile): Don't declare.
5082         (get_current_subfile): Declare.
5083         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
5084         member.
5085         (start_subfile, free_buildsym_compunit, push_subfile)
5086         (prepare_for_building, start_symtab): Update.
5087         (get_current_subfile): New function.
5088
5089 2018-07-20  Tom Tromey  <tom@tromey.com>
5090
5091         * coffread.c (coff_symtab_read): Update.
5092         * xcoffread.c (read_xcoff_symtab): Update.
5093         * dwarf2read.c (new_symbol): Update.
5094         (read_func_scope, read_lexical_block_scope): Update.
5095         * dbxread.c (process_one_symbol): Update.
5096         * buildsym.h (context_stack, context_stack_depth): Don't declare.
5097         (outermost_context_p): Remove macro.
5098         (outermost_context_p, get_current_context_stack)
5099         (get_context_stack_depth): Declare.
5100         (pop_context): Return struct context_stack.
5101         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
5102         member.
5103         (context_stack_size): Remove.
5104         (INITIAL_CONTEXT_STACK_SIZE): Remove.
5105         (prepare_for_building, end_symtab_get_static_block)
5106         (augment_type_symtab, push_context): Update.
5107         (pop_context): Return struct context_stack.
5108         (outermost_context_p, get_current_context_stack)
5109         (get_context_stack_depth): New functions.
5110         (buildsym_init): Update.
5111
5112 2018-07-20  Tom Tromey  <tom@tromey.com>
5113
5114         * rust-exp.y: Now a pure parser.  Update all rules.
5115         (%union): Move earlier.
5116         (current_parser, work_obstack): Remove globals.
5117         (rust_parser, ~rust_parser): Update.
5118         (class rust_parser) <copy_name, concat3, crate_name, super_name,
5119         lex_character, lex_number, lex_string, lex_identifier,
5120         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
5121         convert_name, convert_params_to_expression,
5122         convert_ast_to_expression, ast_basic_type, ast_operation,
5123         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
5124         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
5125         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
5126         ast_array_type, ast_slice_type, ast_reference_type,
5127         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
5128         (rust_parse): Update.
5129         (rustyyerror, rustyylex): Add parser parameter.
5130         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
5131         (rust_lex_stringish_test, rust_lex_test_sequence)
5132         (rust_lex_test_trailing_dot, rust_lex_test_completion)
5133         (rust_lex_test_push_back, rust_lex_tests): Update.
5134
5135 2018-07-19  Pedro Alves  <palves@redhat.com>
5136
5137         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
5138         gdb::unique_xmalloc_ptr.
5139         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
5140         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
5141         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
5142         copy-initialization.
5143         * guile/scm-pretty-print.c (ppscm_print_children): Use
5144         gdb::unique_xmalloc_ptr instead of cleanups.
5145         (gdbscm_apply_val_pretty_printer): Remove cleanups.
5146         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
5147         gdb::unique_xmalloc_ptr.
5148         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
5149         Adjust to use gdb::unique_xmalloc_ptr.
5150         * guile/scm-utils.c (extract_arg): Adjust.
5151         * guile/scm-value.c (gdbscm_value_field): Adjust to use
5152         gdb::unique_xmalloc_ptr instead of a cleanup.
5153
5154 2018-07-19  Tom Tromey  <tom@tromey.com>
5155
5156         * utils.c (do_value_free_to_mark)
5157         (make_cleanup_value_free_to_mark): Remove.
5158         * utils.h (make_cleanup_value_free_to_mark): Remove.
5159
5160 2018-07-19  Pedro Alves  <palves@redhat.com>
5161
5162         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
5163         forwarding reference.
5164
5165 2018-07-18  Pedro Alves  <palves@redhat.com>
5166
5167         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
5168         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
5169         cleanup.
5170
5171 2018-07-18  Pedro Alves  <palves@redhat.com>
5172
5173         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
5174         exceptions.
5175         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
5176         (gdbscm_wrap): New.
5177         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
5178         directly instead of a cleanup.
5179         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
5180         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
5181         (vlscm_binop_gdbthrow): New, factored out from ...
5182         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
5183         (vlscm_rich_compare): Use gdbscm_wrap.
5184         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
5185         instead of a cleanup.
5186         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
5187         cleanup.
5188         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
5189         Use xfree directly instead of a cleanup.
5190         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
5191         Adjust to use gdbscm_wrap and scoped_value_mark.
5192         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
5193         (gdbscm_value_address, gdbscm_value_dereference)
5194         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
5195         scoped_value_mark.
5196         (gdbscm_value_dynamic_type): Use scoped_value_mark.
5197         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
5198         scoped_value_mark.
5199         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
5200         gdbscm_wrap and scoped_value_mark.
5201         (gdbscm_value_to_string): Use xfree directly instead of a
5202         cleanup.  Move 'buffer' unique_ptr to TRY scope.
5203         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
5204         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
5205         scoped_value_mark.
5206         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
5207         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
5208         scoped_value_mark.
5209         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
5210         gdbscm_wrap.
5211
5212 2018-07-18  Tom de Vries  <tdevries@suse.de>
5213
5214         * findvar.c (default_read_var_value): Also resolve dynamic type for
5215         LOC_OPTIMIZED_OUT vars.
5216
5217 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
5218
5219         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
5220         decoding.
5221
5222 2018-07-17  Tom Tromey  <tom@tromey.com>
5223
5224         * guile/scm-param.c (pascm_set_func, pascm_show_func)
5225         (compute_enum_list, pascm_set_param_value_x)
5226         (gdbscm_parameter_value): Update.
5227         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
5228         (gdbscm_scm_to_host_string): Update.
5229         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
5230         Update.
5231         * guile/scm-cmd.c (cmdscm_add_completion): Update.
5232         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
5233         * guile/scm-string.c (gdbscm_scm_to_string): Return
5234         unique_xmalloc_ptr.
5235         (gdbscm_scm_to_host_string): Likewise.
5236
5237 2018-07-17  Tom Tromey  <tom@tromey.com>
5238
5239         * guile/guile.c (gdbscm_eval_from_control_command): Update.
5240         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
5241         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
5242         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
5243         unique_xmalloc_ptr.
5244
5245 2018-07-17  Tom Tromey  <tom@tromey.com>
5246
5247         * guile/scm-param.c (pascm_signal_setshow_error): Update.
5248         * guile/guile-internal.h (gdbscm_exception_message_to_string):
5249         Update.
5250         * guile/scm-cmd.c (cmdscm_function): Update.
5251         * guile/scm-pretty-print.c
5252         (ppscm_print_exception_unless_memory_error): Update.
5253         * guile/scm-exception.c (gdbscm_exception_message_to_string):
5254         Return unique_xmalloc_ptr.
5255
5256 2018-07-17  Tom Tromey  <tom@tromey.com>
5257
5258         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
5259         Use string_printf.
5260
5261 2018-07-17  Jim Wilson  <jimw@sifive.com>
5262
5263         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
5264         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
5265         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
5266         unecessary braces after EF_RISCV_RVC test.  Delete call to
5267         set_gdbarch_decr_pc_after_break.
5268
5269         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
5270         RISCV_LAST_FP_REGNUM + 1.
5271         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
5272
5273 2018-07-17  Tom Tromey  <tom@tromey.com>
5274
5275         * configure.ac: Remove --disable-gdbcli.
5276         * configure: Rebuild.
5277         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
5278         (SUBDIR_CLI_CFLAGS): Remove.
5279         (SFILES): Use SUBDIR_CLI_SRCS.
5280         (COMMON_OBS): Use SUBDIR_CLI_OBS.
5281
5282 2018-07-17  Tom Tromey  <tom@tromey.com>
5283
5284         PR gdb/18624:
5285         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
5286
5287 2018-07-16  Jim Wilson  <jimw@sifive.com>
5288
5289         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
5290
5291 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5292
5293         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
5294         variable.
5295         (libunwind_frame_sniffer): Likewise.
5296         (libunwind_frame_prev_register): Likewise.
5297         (libunwind_sigtramp_frame_sniffer): Likewise.
5298         * ia64-tdep.c (ia64_access_reg): Likewise.
5299         (ia64_access_rse_reg): Likewise.
5300         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
5301         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
5302
5303 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5304
5305         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
5306
5307 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5308
5309         * remote-sim.c (gdbsim_target::close,
5310         gdbsim_target::mourn_inferior): Remove unused variables.
5311
5312 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
5313
5314         * ia64-tdep.c (ktab_buf): New global.
5315         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
5316         (get_kernel_table): Adjust.
5317
5318 2018-07-16  Tom Tromey  <tom@tromey.com>
5319
5320         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
5321         * dwarf2read.c (using_directives, new_symbol): Use
5322         outermost_context_p.
5323         * dbxread.c (process_one_symbol): Use outermost_context_p.
5324         * coffread.c (coff_symtab_read): Use outermost_context_p.
5325
5326 2018-07-16  Tom Tromey  <tom@tromey.com>
5327
5328         * dwarf2read.c (using_directives, read_func_scope)
5329         (read_lexical_block_scope): Update.
5330         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
5331         * buildsym.h (local_using_directives, global_using_directives):
5332         Don't declare.
5333         (get_local_using_directives, set_local_using_directives)
5334         (get_global_using_directives): Declare.
5335         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
5336         m_global_using_directives>: New members.
5337         (finish_block_internal, prepare_for_building)
5338         (reset_symtab_globals, end_symtab_get_static_block)
5339         (push_context): Update.
5340         (get_local_using_directives, set_local_using_directives)
5341         (get_global_using_directives): New functions.
5342         (buildsym_init): Update.
5343
5344 2018-07-16  Tom Tromey  <tom@tromey.com>
5345
5346         * xcoffread.c (xcoff_initial_scan): Don't call
5347         free_pending_blocks.
5348         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
5349         * buildsym.h (class scoped_free_pendings): Add constructor.
5350         (free_pending_blocks): Don't declare.
5351         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
5352         (free_pending_blocks): Now static.
5353
5354 2018-07-16  Tom Tromey  <tom@tromey.com>
5355
5356         * buildsym.h (push_subfile, pop_subfile): Update declarations.
5357         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
5358         member.
5359         (struct subfile_stack): Remove.
5360         (subfile_stack): Remove.
5361         (push_subfile, pop_subfile, buildsym_init): Update.
5362
5363 2018-07-16  Tom Tromey  <tom@tromey.com>
5364
5365         * buildsym.c (push_subfile): Use gdb_assert.
5366         (pop_subfile): Use gdb_assert.
5367
5368 2018-07-16  Tom Tromey  <tom@tromey.com>
5369
5370         * buildsym.h (merge_symbol_lists): Remove.
5371         * buildsym.c (merge_symbol_lists): Remove.
5372
5373 2018-07-16  Tom Tromey  <tom@tromey.com>
5374
5375         * stabsread.c (scan_file_globals): Update comment.
5376         * stabsread.h (scan_file_globals): Move from buildsym.h.
5377         * buildsym.h (scan_file_globals): Move to stabsread.h.
5378
5379 2018-07-16  Tom Tromey  <tom@tromey.com>
5380
5381         * xcoffread.c (xcoff_new_init): Update.
5382         * mipsread.c (mipscoff_new_init): Update.
5383         * mdebugread.c (mdebug_build_psymtabs): Update.
5384         * elfread.c (elf_new_init): Update.
5385         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
5386         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
5387         * buildsym.h (buildsym_new_init): Don't declare.
5388         * buildsym.c (buildsym_new_init): Remove.
5389
5390 2018-07-16  Tom Tromey  <tom@tromey.com>
5391
5392         * stabsread.h (within_function): Move from buildsym.h.
5393         * stabsread.c (start_stabs): Clear within_function.
5394         * coffread.c (coff_start_symtab): Clear within_function.
5395         * buildsym.h (within_function): Move to stabsread.h.
5396         * buildsym.c (prepare_for_building): Update.
5397
5398 2018-07-16  Tom Tromey  <tom@tromey.com>
5399
5400         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
5401         * dwarf2read.c (dwarf2_start_symtab): Don't set
5402         processing_gcc_compilation.
5403         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
5404
5405 2018-07-16  Tom Tromey  <tom@tromey.com>
5406
5407         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
5408         (next_symbol_text_func): Move from buildsym.h.
5409         * stabsread.c (hashname): Move from buildsym.c.
5410         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
5411         (next_symbol_text_func, hashname): Move to stabsread.h.
5412         * buildsym.c: Don't include bcache.h
5413         (hashname): Move to stasbread.c.
5414
5415 2018-07-16  Tom Tromey  <tom@tromey.com>
5416
5417         * buildsym.h (context_stack_size): Don't declare.
5418         * buildsym.c (context_stack_size): New global.
5419
5420 2018-07-16  Tom Tromey  <tom@tromey.com>
5421
5422         * dbxread.c (processing_acc_compilation): New global.
5423         * buildsym.h (processing_acc_compilation): Don't declare.
5424
5425 2018-07-16  Tom Tromey  <tom@tromey.com>
5426
5427         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
5428         * dbxread.c (read_ofile_symtab): Update.
5429         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
5430         * buildsym.h (last_source_start_addr): Remove.
5431         (set_last_source_start_addr, get_last_source_start_addr):
5432         Declare.
5433         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
5434         parameter.
5435         (struct buildsym_compunit) <m_last_source_start_addr>: New
5436         member.
5437         (prepare_for_building): Remove start_addr parameter.
5438         (start_symtab, restart_symtab, end_symtab_get_static_block)
5439         (end_symtab_with_blockvector): Update.
5440         (set_last_source_start_addr, get_last_source_start_addr): New
5441         functions.
5442
5443 2018-07-16  Tom Tromey  <tom@tromey.com>
5444
5445         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
5446         member.
5447         (have_line_numbers): Remove.
5448         (record_line, prepare_for_building, end_symtab_get_static_block)
5449         (augment_type_symtab): Update.
5450
5451 2018-07-16  Tom Tromey  <tom@tromey.com>
5452
5453         * buildsym.c (~buildsym_compunit): Free the macro table.
5454         (struct buildsym_compunit) <get_macro_table, release_macros>: New
5455         methods.
5456         <m_pending_macros>: New member.
5457         (pending_macros): Remove.
5458         (~scoped_free_pendings, get_macro_table, prepare_for_building)
5459         (reset_symtab_globals, end_symtab_get_static_block)
5460         (end_symtab_with_blockvector, augment_type_symtab)
5461         (buildsym_init): Update.
5462
5463 2018-07-16  Tom Tromey  <tom@tromey.com>
5464
5465         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
5466         parameter.
5467         (buildsym_compunit::set_last_source_file): New method.
5468         <m_last_source_file>: New member.
5469         (prepare_for_building): Remove "name" parameter.
5470         (start_symtab, restart_symtab, reset_symtab_globals): Update.
5471         (last_source_file): Remove.
5472         (set_last_source_file, get_last_source_file): Update.
5473
5474 2018-07-16  Tom Tromey  <tom@tromey.com>
5475
5476         * buildsym.c (prepare_for_building): Add assert.
5477
5478 2018-07-16  Tom Tromey  <tom@tromey.com>
5479
5480         * buildsym.c (~buildsym_compunit): Update.
5481         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
5482         (start_subfile, patch_subfile_names)
5483         (end_symtab_with_blockvector): Update.
5484
5485 2018-07-16  Tom Tromey  <tom@tromey.com>
5486
5487         * buildsym.c (struct buildsym_compunit): Add constructor,
5488         destructor, initializers.
5489         (start_buildsym_compunit): Remove.
5490         (free_buildsym_compunit): Use "delete".
5491         (start_symtab, restart_symtab): Use "new".
5492
5493 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
5494
5495         * symfile.c (set_objfile_default_section_offset): Remove struct
5496         keyword.
5497
5498 2018-07-14  Stafford Horne  <shorne@gmail.com>
5499
5500         * (Responsible Maintainers): Add myself as or1k maintainer.
5501
5502 2018-07-13  Tom Tromey  <tom@tromey.com>
5503
5504         * symfile.c (set_objfile_default_section_offset): Use extra braces
5505         around initializer.
5506
5507 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
5508
5509         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
5510         non-branching basr.
5511
5512 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5513
5514         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5515         unittests/cli-utils-selftests.c
5516         * unittests/cli-utils-selftests.c: New file.
5517
5518 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5519
5520         * NEWS: Mention new commands. Mention change to 'thread apply'.
5521
5522 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5523
5524         * thread.c (thr_try_catch_cmd): New function.
5525         (thread_apply_all_command): Handle qcs flags.
5526         (thread_apply_command): Handle qcs flags.
5527         (taas_command): New function.
5528         (tfaas_command): New function.
5529         (_initialize_thread): Update to setup the new commands 'taas
5530         and 'tfaas'. Change doc string for 'thread apply'.
5531
5532 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5533
5534         * stack.c: (trailing_outermost_frame): New function, mostly
5535         extracted from backtrace_command_1.
5536         (leading_innermost_frame): New function.
5537         (backtrace_command_1): Update to call trailing_outermost_frame.
5538         (frame_apply_command_count): New function.
5539         (frame_apply_level_command): New function.
5540         (frame_apply_all_command): New function.
5541         (frame_apply_command): New function.
5542         (faas_command): New function.
5543         (frame_cmd_list): New variable.
5544         (_initialize_stack): Update to setup the new commands 'frame apply'
5545         and 'faas'.
5546
5547 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5548
5549         * cli-utils.c (number_or_range_parser::get_number): Only handle
5550         numbers or convenience var as numbers.
5551         (parse_flags): New function.
5552         (parse_flags_qcs): New function.
5553         (number_or_range_parser::finished): Ensure parsing end is detected
5554         before end of string.
5555         * cli-utils.h (parse_flags): New function.
5556         (parse_flags_qcs): New function.
5557         (number_or_range_parser): Remove m_finished bool.
5558         (number_or_range_parser::skip_range): Set m_in_range to false.
5559
5560 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
5561
5562         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
5563         on Windows.
5564
5565 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
5566             Jan Kratochvil  <jan.kratochvil@redhat.com>
5567             Paul Fertser  <fercerpav@gmail.com>
5568             Tsutomu Seki  <sekiriki@gmail.com>
5569             Pedro Alves  <palves@redhat.com>
5570
5571         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5572         'unittests/parse-connection-spec-selftests.c'.
5573         (COMMON_SFILES): Add 'common/netstuff.c'.
5574         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
5575         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
5576         * common/netstuff.c: New file.
5577         * common/netstuff.h: New file.
5578         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
5579         (wait_for_connect): Update comment.  New parameter
5580         'gdb::optional<int> sock' instead of 'struct serial *scb'.
5581         Use 'sock' directly instead of 'scb->fd'.
5582         (try_connect): New function, with code from 'net_open'.
5583         (net_open): Rewrite main loop to deal with multiple
5584         sockets/addresses.  Handle IPv6-style hostnames; implement
5585         support for IPv6 connections.
5586         * unittests/parse-connection-spec-selftests.c: New file.
5587
5588 2018-07-11  Pedro Alves  <palves@redhat.com>
5589
5590         PR gdb/23377
5591         * remote.c (remote_target::remote_detach_pid): Call
5592         set_current_process.
5593
5594 2018-07-11  Pedro Alves  <palves@redhat.com>
5595
5596         * h8300-tdep.c (h8300_gdbarch_init): Remove
5597         set_gdbarch_ecoff_reg_to_regnum calls.
5598
5599 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
5600
5601         PR c++/23373
5602         * c-typeprint.c (c_type_print_base_struct_union): Don't print
5603         offsets/sizes for static members of a class/struct.
5604
5605 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
5606
5607         * target-descriptions.c (tdesc_register_bitsize): Rename.
5608         * target-descriptions.h (tdesc_register_bitsize): Likewise.
5609         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
5610         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
5611
5612 2018-07-10  Tom Tromey  <tom@tromey.com>
5613
5614         * breakpoint.c (moribund_locations): Now static and a
5615         std::vector.
5616         (breakpoint_init_inferior, moribund_breakpoint_here_p)
5617         (build_bpstat_chain, update_global_location_list)
5618         (breakpoint_retire_moribund): Update.
5619         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
5620         VEC.
5621
5622 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
5623
5624         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
5625         (riscv_register_reggroup_p): Use new function, remove unneeded
5626         parenthesis.
5627         (riscv_push_dummy_call): Extend assert to compare against xlen or
5628         flen based on register type.
5629
5630 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
5631
5632         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
5633
5634 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5635
5636         * remote.c (show_hardware_watchpoint_limit): New function.
5637         (show_hardware_watchpoint_length_limit): New function.
5638         (show_hardware_breakpoint_limit): New function.
5639         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
5640         where appropriate, update help text.
5641
5642 2018-07-09  Tom Tromey  <tom@tromey.com>
5643
5644         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
5645         (CLIBS): Don't mention NAT_CLIBS.
5646
5647 2018-07-09  Tom Tromey  <tom@tromey.com>
5648
5649         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
5650         (LIBGDB_OBS, clean mostlyclean): Update.
5651         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
5652
5653 2018-07-09  Tom Tromey  <tom@tromey.com>
5654
5655         * Makefile.in (%.c: %.y): Use ECHO_YACC.
5656         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
5657         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
5658
5659 2018-07-09  Tom Tromey  <tom@tromey.com>
5660
5661         * Makefile.in (ALLDEPFILES): Remove exec.c.
5662         (COMMON_OBS): Remove exec.o.
5663         (COMMON_SFILES): Add exec.c.
5664
5665 2018-07-09  Tom Tromey  <tom@tromey.com>
5666
5667         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
5668
5669 2018-07-09  Tom Tromey  <tom@tromey.com>
5670
5671         * Makefile.in (clean mostlyclean): Remove stamp-version.
5672         (version.c): Depend on stamp-version.
5673         (stamp-version): New rule, from version.c rule.
5674
5675 2018-07-09  Tom Tromey  <tom@tromey.com>
5676
5677         * Makefile.in (init.c): Depend on stamp-init.
5678         (stamp-init): New rule, from init.c rule.
5679         (clean mostlyclean): Remove stamp-init.
5680
5681 2018-07-09  Tom Tromey  <tom@tromey.com>
5682
5683         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
5684         SUBDIR_GCC_COMPILE_SRCS.
5685
5686 2018-07-09  Tom Tromey  <tom@tromey.com>
5687
5688         * Makefile.in (init.c): Remove some unused sed rules.
5689
5690 2018-07-09  Tom Tromey  <tom@tromey.com>
5691
5692         * Makefile.in (TSOBS): Remove.
5693         (INIT_FILES): Update.
5694         (LIBGDB_OBS): Update.
5695         (COMMON_SFILES): Add inflow.c.
5696         (SFILES): Remove inflow.c.
5697
5698 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
5699
5700         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
5701
5702 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
5703
5704         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
5705         get_saveloc_name, is_signal_frame_name, step_name,
5706         init_remote_name, create_addr_space_name,
5707         destroy_addr_space_name, search_unwind_table_name,
5708         find_dyn_list_name): Constify.
5709
5710 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
5711
5712         * darwin-nat.c (darwin_pthread_kill): New function.
5713         (darwin_resume_thread): Use darwin_pthread_kill.
5714
5715 2018-07-05  Tom de Vries  <tdevries@suse.de>
5716
5717         * macroexp.c (macro_buffer) <operator=>: New member function.
5718
5719 2018-07-04  Tom Tromey  <tom@tromey.com>
5720
5721         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
5722
5723 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
5724
5725         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
5726         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
5727         * maint.c: Likewise.
5728         * top.c: Likewise.
5729
5730 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
5731
5732         * NEWS: Create a new section for the next release branch.
5733         Rename the section of the current branch, now that it has
5734         been cut.
5735
5736 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
5737
5738         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
5739         * version.in: Bump version to 8.2.50.DATE-git.
5740
5741 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
5742             Pedro Alves  <palves@redhat.com>
5743
5744         * linux-nat.c (linux_init_ptrace): Rename to ...
5745         (linux_init_ptrace_procfs): ... this.  Call
5746         linux_proc_init_warnings.
5747         (linux_nat_target::post_attach)
5748         (linux_nat_target::post_startup_inferior): Adjust.
5749         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
5750         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
5751
5752 2018-07-04  Tom de Vries  <tdevries@suse.de>
5753
5754         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
5755         check ...
5756         (read_comp_unit_head): ... here.
5757
5758 2018-07-03  Tom Tromey  <tom@tromey.com>
5759
5760         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
5761         (stop_tracing, tstatus_command)
5762         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
5763         (print_one_static_tracepoint_marker): Update.
5764         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
5765         std::vector.
5766         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
5767         VEC.
5768         (all_tracepoints, static_tracepoints_here): Return std::vector.
5769
5770 2018-07-03  Tom Tromey  <tom@tromey.com>
5771
5772         * common/ptid.c (ptid_equal): Remove.
5773         * common/ptid.h (ptid_equal): Don't declare.
5774         * ada-tasks.c: Update.
5775         * breakpoint.c: Update.
5776         * common/agent.c: Update.
5777         * corelow.c: Update.
5778         * darwin-nat-info.c: Update.
5779         * darwin-nat.c: Update.
5780         * dcache.c: Update.
5781         * dtrace-probe.c: Update.
5782         * dummy-frame.c: Update.
5783         * fbsd-nat.c: Update.
5784         * frame.c: Update.
5785         * gdbthread.h: Update.
5786         * gnu-nat.c: Update.
5787         * go32-nat.c: Update.
5788         * inf-loop.c: Update.
5789         * inf-ptrace.c: Update.
5790         * infcall.c: Update.
5791         * infcmd.c: Update.
5792         * inflow.c: Update.
5793         * infrun.c: Update.
5794         * linux-fork.c: Update.
5795         * linux-nat.c: Update.
5796         * linux-thread-db.c: Update.
5797         * mi/mi-cmd-var.c: Update.
5798         * mi/mi-interp.c: Update.
5799         * mi/mi-main.c: Update.
5800         * nto-procfs.c: Update.
5801         * ppc-linux-tdep.c: Update.
5802         * procfs.c: Update.
5803         * python/py-inferior.c: Update.
5804         * python/py-record-btrace.c: Update.
5805         * python/py-record.c: Update.
5806         * ravenscar-thread.c: Update.
5807         * regcache.c: Update.
5808         * remote-sim.c: Update.
5809         * remote.c: Update.
5810         * sol-thread.c: Update.
5811         * solib.c: Update.
5812         * target.c: Update.
5813         * tui/tui-stack.c: Update.
5814         * varobj.c: Update.
5815         * windows-nat.c: Update.
5816         * windows-tdep.c: Update.
5817
5818 2018-07-03  Tom Tromey  <tom@tromey.com>
5819
5820         * common/ptid.c (ptid_match): Remove.
5821         * common/ptid.h (ptid_match): Don't declare.
5822         * fbsd-nat.c: Update.
5823         * infcmd.c: Update.
5824         * infrun.c: Update.
5825         * linux-nat.c: Update.
5826         * record-btrace.c: Update.
5827         * regcache.c: Update.
5828         * remote.c: Update.
5829
5830 2018-07-03  Tom Tromey  <tom@tromey.com>
5831
5832         * common/ptid.c (ptid_tid_p): Remove.
5833         * common/ptid.h (ptid_tid_p): Don't declare.
5834         * sol-thread.c: Update.
5835
5836 2018-07-03  Tom Tromey  <tom@tromey.com>
5837
5838         * common/ptid.c (ptid_lwp_p): Remove.
5839         * common/ptid.h (ptid_lwp_p): Don't declare.
5840         * fbsd-nat.c: Update.
5841         * linux-nat.c: Update.
5842         * nat/linux-procfs.c: Update.
5843         * nat/x86-linux-dregs.c: Update.
5844         * sol-thread.c: Update.
5845
5846 2018-07-03  Tom Tromey  <tom@tromey.com>
5847
5848         * common/ptid.c (ptid_is_pid): Remove.
5849         * common/ptid.h (ptid_is_pid): Don't declare.
5850         * infrun.c: Update.
5851         * linux-nat.c: Update.
5852         * mi/mi-interp.c: Update.
5853         * remote.c: Update.
5854         * thread.c: Update.
5855
5856 2018-07-03  Tom Tromey  <tom@tromey.com>
5857
5858         * common/ptid.c (ptid_get_tid): Remove.
5859         * common/ptid.h (ptid_get_tid): Don't declare.
5860         * ada-tasks.c: Update.
5861         * aix-thread.c: Update.
5862         * bsd-uthread.c: Update.
5863         * darwin-nat.c: Update.
5864         * fbsd-nat.c: Update.
5865         * i386-darwin-nat.c: Update.
5866         * infrun.c: Update.
5867         * linux-tdep.c: Update.
5868         * nto-procfs.c: Update.
5869         * ppc-ravenscar-thread.c: Update.
5870         * python/py-infthread.c: Update.
5871         * ravenscar-thread.c: Update.
5872         * sol-thread.c: Update.
5873         * sparc-ravenscar-thread.c: Update.
5874         * windows-nat.c: Update.
5875
5876 2018-07-03  Tom Tromey  <tom@tromey.com>
5877
5878         * common/ptid.c (ptid_get_lwp): Remove.
5879         * common/ptid.h (ptid_get_lwp): Don't declare.
5880         * aarch64-linux-nat.c: Update.
5881         * ada-tasks.c: Update.
5882         * aix-thread.c: Update.
5883         * amd64-linux-nat.c: Update.
5884         * arm-linux-nat.c: Update.
5885         * corelow.c: Update.
5886         * fbsd-nat.c: Update.
5887         * fbsd-tdep.c: Update.
5888         * gnu-nat.c: Update.
5889         * i386-cygwin-tdep.c: Update.
5890         * i386-gnu-nat.c: Update.
5891         * i386-linux-nat.c: Update.
5892         * ia64-linux-nat.c: Update.
5893         * inf-ptrace.c: Update.
5894         * infrun.c: Update.
5895         * linux-fork.c: Update.
5896         * linux-nat.c: Update.
5897         * linux-tdep.c: Update.
5898         * linux-thread-db.c: Update.
5899         * mips-linux-nat.c: Update.
5900         * nat/aarch64-linux-hw-point.c: Update.
5901         * nat/aarch64-linux.c: Update.
5902         * nat/linux-btrace.c: Update.
5903         * nat/linux-osdata.c: Update.
5904         * nat/linux-procfs.c: Update.
5905         * nat/x86-linux-dregs.c: Update.
5906         * obsd-nat.c: Update.
5907         * ppc-fbsd-nat.c: Update.
5908         * ppc-linux-nat.c: Update.
5909         * procfs.c: Update.
5910         * python/py-infthread.c: Update.
5911         * ravenscar-thread.c: Update.
5912         * remote.c: Update.
5913         * s390-linux-nat.c: Update.
5914         * sol-thread.c: Update.
5915         * sol2-tdep.c: Update.
5916         * spu-linux-nat.c: Update.
5917         * x86-linux-nat.c: Update.
5918         * xtensa-linux-nat.c: Update.
5919
5920 2018-07-03  Tom Tromey  <tom@tromey.com>
5921
5922         * common/ptid.c (ptid_get_pid): Remove.
5923         * common/ptid.h (ptid_get_pid): Don't declare.
5924         * aarch64-linux-nat.c: Update.
5925         * ada-lang.c: Update.
5926         * aix-thread.c: Update.
5927         * alpha-bsd-nat.c: Update.
5928         * amd64-fbsd-nat.c: Update.
5929         * amd64-linux-nat.c: Update.
5930         * arm-linux-nat.c: Update.
5931         * arm-nbsd-nat.c: Update.
5932         * auxv.c: Update.
5933         * break-catch-syscall.c: Update.
5934         * breakpoint.c: Update.
5935         * bsd-uthread.c: Update.
5936         * corelow.c: Update.
5937         * ctf.c: Update.
5938         * darwin-nat.c: Update.
5939         * fbsd-nat.c: Update.
5940         * fbsd-tdep.c: Update.
5941         * gcore.c: Update.
5942         * gnu-nat.c: Update.
5943         * hppa-nbsd-nat.c: Update.
5944         * hppa-obsd-nat.c: Update.
5945         * i386-fbsd-nat.c: Update.
5946         * ia64-linux-nat.c: Update.
5947         * inf-ptrace.c: Update.
5948         * infcmd.c: Update.
5949         * inferior.c: Update.
5950         * inferior.h: Update.
5951         * inflow.c: Update.
5952         * infrun.c: Update.
5953         * linux-fork.c: Update.
5954         * linux-nat.c: Update.
5955         * linux-tdep.c: Update.
5956         * linux-thread-db.c: Update.
5957         * m68k-bsd-nat.c: Update.
5958         * mi/mi-interp.c: Update.
5959         * mi/mi-main.c: Update.
5960         * mips-linux-nat.c: Update.
5961         * mips-nbsd-nat.c: Update.
5962         * mips64-obsd-nat.c: Update.
5963         * nat/aarch64-linux-hw-point.c: Update.
5964         * nat/aarch64-linux.c: Update.
5965         * nat/linux-btrace.c: Update.
5966         * nat/linux-osdata.c: Update.
5967         * nat/linux-procfs.c: Update.
5968         * nat/x86-linux-dregs.c: Update.
5969         * nto-procfs.c: Update.
5970         * obsd-nat.c: Update.
5971         * ppc-linux-nat.c: Update.
5972         * ppc-nbsd-nat.c: Update.
5973         * ppc-obsd-nat.c: Update.
5974         * proc-service.c: Update.
5975         * procfs.c: Update.
5976         * python/py-inferior.c: Update.
5977         * python/py-infthread.c: Update.
5978         * ravenscar-thread.c: Update.
5979         * record.c: Update.
5980         * remote-sim.c: Update.
5981         * remote.c: Update.
5982         * rs6000-nat.c: Update.
5983         * s390-linux-nat.c: Update.
5984         * sh-nbsd-nat.c: Update.
5985         * sol-thread.c: Update.
5986         * sparc-nat.c: Update.
5987         * sparc64-tdep.c: Update.
5988         * spu-linux-nat.c: Update.
5989         * spu-tdep.c: Update.
5990         * target-debug.h: Update.
5991         * target.c: Update.
5992         * thread.c: Update.
5993         * tid-parse.c: Update.
5994         * tracefile-tfile.c: Update.
5995         * vax-bsd-nat.c: Update.
5996         * windows-nat.c: Update.
5997         * x86-linux-nat.c: Update.
5998         * x86-nat.c: Update.
5999
6000 2018-07-03  Tom Tromey  <tom@tromey.com>
6001
6002         * common/ptid.c (pid_to_ptid): Remove.
6003         * common/ptid.h (pid_to_ptid): Don't declare.
6004         * aix-thread.c: Update.
6005         * arm-linux-nat.c: Update.
6006         * common/ptid.c: Update.
6007         * common/ptid.h: Update.
6008         * corelow.c: Update.
6009         * ctf.c: Update.
6010         * darwin-nat.c: Update.
6011         * fbsd-nat.c: Update.
6012         * fork-child.c: Update.
6013         * gnu-nat.c: Update.
6014         * go32-nat.c: Update.
6015         * inf-ptrace.c: Update.
6016         * infcmd.c: Update.
6017         * inferior.c: Update.
6018         * infrun.c: Update.
6019         * linux-fork.c: Update.
6020         * linux-nat.c: Update.
6021         * nat/aarch64-linux-hw-point.c: Update.
6022         * nat/fork-inferior.c: Update.
6023         * nat/x86-linux-dregs.c: Update.
6024         * nto-procfs.c: Update.
6025         * obsd-nat.c: Update.
6026         * procfs.c: Update.
6027         * progspace.c: Update.
6028         * remote.c: Update.
6029         * rs6000-nat.c: Update.
6030         * s390-linux-nat.c: Update.
6031         * sol-thread.c: Update.
6032         * spu-linux-nat.c: Update.
6033         * target.c: Update.
6034         * top.c: Update.
6035         * tracefile-tfile.c: Update.
6036         * windows-nat.c: Update.
6037
6038 2018-07-03  Tom Tromey  <tom@tromey.com>
6039
6040         * common/ptid.h (ptid_build): Don't declare.
6041         * common/ptid.c (ptid_build): Remove.
6042         * aix-thread.c: Update.
6043         * bsd-kvm.c: Update.
6044         * bsd-uthread.c: Update.
6045         * common/agent.c: Update.
6046         * common/ptid.c: Update.
6047         * common/ptid.h: Update.
6048         * corelow.c: Update.
6049         * darwin-nat.c: Update.
6050         * fbsd-nat.c: Update.
6051         * gnu-nat.c: Update.
6052         * linux-fork.c: Update.
6053         * linux-nat.c: Update.
6054         * linux-thread-db.c: Update.
6055         * nat/linux-osdata.c: Update.
6056         * nat/linux-procfs.c: Update.
6057         * nto-procfs.c: Update.
6058         * obsd-nat.c: Update.
6059         * proc-service.c: Update.
6060         * procfs.c: Update.
6061         * ravenscar-thread.c: Update.
6062         * remote-sim.c: Update.
6063         * remote.c: Update.
6064         * sol-thread.c: Update.
6065         * target.c: Update.
6066         * windows-nat.c: Update.
6067
6068 2018-07-03  Tom Tromey  <tom@tromey.com>
6069
6070         * infrun.c (follow_exec): Use exit_inferior_silent.
6071         * inferior.c (exit_inferior_num_silent): Remove.
6072         * inferior.h (exit_inferior_num_silent): Don't declare.
6073
6074 2018-07-03  Tom Tromey  <tom@tromey.com>
6075
6076         PR cli/23340:
6077         * darwin-nat.c (darwin_attach_pid): Reset inferior and
6078         inferior_ptid on error.
6079
6080 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
6081             Simon Marchi  <simon.marchi@polymtl.ca>
6082
6083         PR tdep/8282
6084         * disasm.h (gdb_disassembler): Add
6085         `m_disassembler_options_holder'. member
6086         * disasm.c (get_all_disassembler_options): New function.
6087         (gdb_disassembler::gdb_disassembler): Use it.
6088         (gdb_buffered_insn_length_init_dis): Likewise.
6089         (gdb_buffered_insn_length): Adjust accordingly.
6090         (set_disassembler_options): Handle options with arguments.
6091         (show_disassembler_options_sfunc): Likewise.  Add a leading new
6092         line if showing options with descriptions.
6093         (disassembler_options_completer): Adapt to using the
6094         `disasm_options_and_args_t' structure.
6095         * mips-tdep.c (mips_disassembler_options): New variable.
6096         (mips_disassembler_options_o32): Likewise.
6097         (mips_disassembler_options_n32): Likewise.
6098         (mips_disassembler_options_n64): Likewise.
6099         (gdb_print_insn_mips): Don't set `disassembler_options'.
6100         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
6101         functions.
6102         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
6103         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
6104         `gdbarch_disassembler_options_implicit' and
6105         `gdbarch_valid_disassembler_options'.
6106         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
6107         `disasm_options_and_args_t' structure.
6108         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
6109         method.
6110         (valid_disassembler_options): Switch from `disasm_options_t' to
6111         the `disasm_options_and_args_t' structure.
6112         * NEWS: Document `set disassembler-options' support for the MIPS
6113         target.
6114         * gdbarch.h: Regenerate.
6115         * gdbarch.c: Regenerate.
6116
6117 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
6118
6119         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
6120
6121 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
6122
6123         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
6124         parameter in call to amd64_target_description.
6125         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
6126         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
6127         (amd64fbsd_init_abi): Likewise.
6128         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
6129         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
6130         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
6131         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
6132
6133 2018-06-29  Pedro Alves  <palves@redhat.com>
6134
6135         * gdb/amd64-tdep.h (amd64_create_target_description): Add
6136         "segments" parameter.
6137         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
6138         (_initialize_amd64_tdep): Update call to
6139         amd64_create_target_description.
6140         (amd64_target_description): Add "segments" parameter.  Adjust
6141         the implementation to use it.
6142         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
6143         call to amd64_create_target_description.
6144         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
6145         * gdb/arch/amd64.h (amd64_create_target_description): Add
6146         "segments" register.
6147         * gdb/arch/amd64.c (amd64_create_target_description): Add
6148         "segments" parameter.  Call create_feature_i386_64bit_segments
6149         only if SEGMENTS is true.
6150         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
6151         call to amd64_create_target_description.
6152
6153 2018-06-29  Pedro Alves  <palves@redhat.com>
6154
6155         * thread.c (thread_target_id_str): New, factored out from ...
6156         (print_thread_info_1): ... here.  Use it to compute the max
6157         "Target Id" column width.
6158
6159 2018-06-29  Pedro Alves  <palves@redhat.com>
6160
6161         * remote.c (remote_target::extra_thread_info): Delete
6162         'display_buf' and 'n' locals.  from the cache, regardless of
6163         packet mechanims is in use.  Use cache for qThreadExtra and qP
6164         methods too.
6165
6166 2018-06-29  Pedro Alves  <palves@redhat.com>
6167
6168         * blockframe.c (find_pc_sect_containing_function): New function.
6169         * breakpoint.c (print_breakpoint_location): Don't call
6170         find_pc_sect_function.
6171         * linespec.c (create_sals_line_offset): Record the location's
6172         symbol in the sal.
6173         * linespec.c (convert_address_location_to_sals): Fill in sal's
6174         symbol with find_pc_sect_containing_function.
6175         * symtab.c (find_function_start_sal): Rename to ...
6176         (find_function_start_sal_1): ... this.
6177         (find_function_start_sal): Reimplement as wrapper around
6178         find_function_start_sal_1, and use
6179         find_pc_sect_containing_function to fill in the sal's symbol.
6180         (find_function_start_sal(symbol*, bool)): Adjust.
6181         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
6182         comments.
6183         (find_pc_sect_containing_function): Declare.
6184
6185 2018-06-29  Pedro Alves  <palves@redhat.com>
6186
6187         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
6188         true if the the location has no symbol.
6189
6190 2018-06-28  Tom Tromey  <tom@tromey.com>
6191
6192         * NEWS: Mention --enable-codesign.
6193         * silent-rules.mk (ECHO_SIGN): New variable.
6194         * configure.ac: Add --enable-codesign.
6195         * configure: Rebuild.
6196         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
6197         (gdb$(EXEEXT)): Optionally invoke codesign.
6198
6199 2018-06-28  Pedro Alves  <palves@redhat.com>
6200
6201         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
6202         comments.
6203         (switch_to_thread_no_regs): Adjust comment.
6204         * infcmd.c (stop_pc): Delete.
6205         (post_create_inferior, info_program_command): Replace references
6206         to stop_pc with references to thread_info->suspend.stop_pc.
6207         * inferior.h (stop_pc): Delete declaration.
6208         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
6209         (handle_inferior_event_1, handle_signal_stop)
6210         (process_event_stop_test, keep_going_stepped_thread)
6211         (handle_step_into_function, handle_step_into_function_backward)
6212         (print_stop_location): Replace references to stop_pc with
6213         references to thread_info->suspend.stop_pc.
6214         (struct infcall_suspend_state) <stop_pc>: Delete field.
6215         (save_infcall_suspend_state, restore_infcall_suspend_state):
6216         Remove references to inf_stat->stop_pc.
6217         * linux-fork.c (fork_load_infrun_state): Likewise.
6218         * record-btrace.c (record_btrace_set_replay): Likewise.
6219         * record-full.c (record_full_goto_entry): Likewise.
6220         * remote.c (print_one_stopped_thread): Likewise.
6221         * target.c (target_resume): Extend comment.
6222         * thread.c (set_executing_thread): New.
6223         (set_executing): Use it.
6224         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
6225         Remove references to stop_pc.
6226
6227 2018-06-28  Pedro Alves  <palves@redhat.com>
6228
6229         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
6230         Moving fetching stop_pc until after ecs->event_thread is refreshed.
6231
6232 2018-06-28  Tom Tromey  <tom@tromey.com>
6233
6234         * coffread.c (coff_symfile_finish): Update.
6235         * xcoffread.c (xcoff_symfile_finish): Update.
6236         * elfread.c (elf_symfile_finish): Update.
6237         * symfile.h (dwarf2_free_objfile): Don't declare.
6238         * dwarf2read.c (_initialize_dwarf2_read): Use
6239         register_objfile_data_with_cleanup.
6240         (dwarf2_free_objfile): Now static.  Change signature.
6241
6242 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6243
6244         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
6245         option "-o" to add-symbol-file-load to add an offset to each
6246         section's load address.
6247         * symfile.c (set_objfile_default_section_offset): New function.
6248
6249 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6250
6251         * symfile.c (add_symbol_file_command): Make sure that sections
6252         with the same name are sorted in the same order.
6253
6254 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6255
6256         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
6257         require the second argument.  If omitted, load sections at the
6258         addresses specified in the file.
6259
6260 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6261
6262         * symfile.c (symbol_file_command, symbol_file_add_main_1)
6263         (_initialize_symfile): Add option "-o" to symbol-file to add an
6264         offset to each section of the symbol file.
6265
6266 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6267
6268         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
6269
6270 2018-06-27  Tom Tromey  <tom@tromey.com>
6271
6272         * stack.c (_initialize_stack): Update "func" help text.
6273
6274 2018-06-27  Tom Tromey  <tom@tromey.com>
6275
6276         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
6277         std::vector.
6278         (unwind_infopy_str, pyuw_create_unwind_info)
6279         (unwind_infopy_add_saved_register, pyuw_sniffer)
6280         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
6281         Update.
6282         (struct saved_reg): Add constructor.
6283         <value>: Now a gdbpy_ref<>.
6284
6285 2018-06-27  Tom Tromey  <tom@tromey.com>
6286
6287         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
6288
6289 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6290
6291         * gdb-gdb.py.in: Format using autopep8.
6292
6293 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6294
6295         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
6296         (type_lookup_function): Recognize CORE_ADDR values.
6297
6298 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6299
6300         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
6301         print tag_name.
6302
6303 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6304
6305         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
6306         <__lt__>: Add.
6307
6308 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6309
6310         * gdb-gdb.py: Move to...
6311         * gdb-gdb.py.in: ... here.
6312         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
6313         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
6314         dependencies.
6315         (distclean): Remove gdb-gdb.py when cleaning.
6316         (gdb-gdb.py, gdb-gdb.gdb): New rules.
6317         * configure: Re-generate.
6318
6319 2018-06-27  Pedro Alves  <palves@redhat.com>
6320
6321         * proc-service.c (get_ps_regcache): New.
6322         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
6323         (ps_lsetfpregs): Use it.
6324
6325 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
6326
6327         PR gdb/21695
6328         * dwarf2read.c (lnp_state_machine::check_line_address): Update declaration.
6329         (dwarf_decode_lines_1): Adjust.
6330
6331 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6332
6333         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
6334         override.
6335         <info_proc>: Likewise.
6336
6337 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
6338
6339         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
6340         to windows_fetch_one_register, and only handle the case of
6341         fetching one register.  Move the code that reloads the context
6342         and iterates over all registers if R is negative to...
6343         (windows_nat_target::fetch_registers): ... here.
6344         (do_windows_store_inferior_registers): Rename to
6345         windows_store_one_register, and only handle the case of storing
6346         one register.  Move the code that handles the case where r is
6347         negative to...
6348         (windows_nat_target::store_registers) ... here.
6349
6350 2018-06-26  Tom Tromey  <tom@tromey.com>
6351
6352         PR rust/22574:
6353         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
6354         * rust-lang.c (rust_print_struct_def): Add podata parameter.
6355         Update.
6356         (rust_internal_print_type): Add podata parameter.
6357         (rust_print_type): Update.
6358
6359 2018-06-26  Tom Tromey  <tom@tromey.com>
6360
6361         * typeprint.h (struct print_offset_data) <update, finish,
6362         maybe_print_hole>: New methods.
6363         <indentation>: New constant.
6364         * typeprint.c (print_offset_data::indentation): Define.
6365         (print_offset_data::maybe_print_hole, print_offset_data::update)
6366         (print_offset_data::finish): Move from c-typeprint.c and rename.
6367         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
6368         (print_spaces_filtered_with_print_options): Update.
6369         (c_print_type_union_field_offset, maybe_print_hole)
6370         (c_print_type_struct_field_offset): Move to typeprint.c and
6371         rename.
6372         (c_type_print_base_struct_union): Update.
6373
6374 2018-06-25  Pedro Alves  <palves@redhat.com>
6375
6376         * gdbthread.h (thread_info_ref, delete_thread)
6377         (delete_thread_silent, first_thread_of_inferior)
6378         (any_thread_of_inferior, switch_to_thread)
6379         (enable_thread_stack_temporaries)
6380         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6381         (get_last_thread_stack_temporary)
6382         (value_in_thread_stack_temporaries, can_access_registers_thread):
6383         Spell out "struct thread_info" instead of just "thread_info".
6384         * inferior.h (notice_new_inferior): Likewise.
6385
6386 2018-06-25  Pedro Alves  <palves@redhat.com>
6387
6388         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
6389         pass thread_info pointer to delete_thread.
6390         (windows_nat_target::detach): Pass inferior pointer to
6391         detach_inferior.
6392         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
6393         delete_thread.
6394         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
6395         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
6396         and pass a thread_info pointer to delete_thread.
6397         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
6398         pass thread_info pointer to delete_thread.
6399         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
6400         delete_thread_silent call.
6401         * procfs.c (procfs_target::detach): Pass inferior pointer to
6402         detach_inferior.
6403         (procfs_target::wait): Pass thread_info pointer to delete_thread.
6404         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
6405         delete_thread_silent call.
6406         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
6407         pass thread_info pointer to delete_thread.
6408         (windows_nat_target::detach): Pass inferior pointer to
6409         delete_inferior.
6410
6411 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
6412
6413         * regcache.c (readable_regcache::read_part): Fix asserts.
6414         (reg_buffer::raw_collect_part): New function.
6415         (regcache::write_part): Fix asserts.
6416         (reg_buffer::raw_supply_part): New function.
6417         (regcache::transfer_regset_register): New helper function.
6418         (regcache::transfer_regset): Call new functions.
6419         (regcache_supply_regset): Use gdb_byte*.
6420         (regcache::supply_regset): Likewise.
6421         (regcache_collect_regset): Likewise.
6422         (regcache::collect_regset): Likewise.
6423         * regcache.h (reg_buffer::raw_collect_part): New declaration.
6424         (reg_buffer::raw_supply_part): Likewise.
6425         (regcache::transfer_regset_register): Likewise.
6426         (regcache::transfer_regset): Use gdb_byte*.
6427
6428 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
6429
6430         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
6431
6432 2018-06-21  Pedro Alves  <palves@redhat.com>
6433
6434         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
6435         instead of a ptid_t.  All callers adjusted.
6436         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
6437         adjusted.
6438         (print_ada_task_info, display_current_task_id, task_command_1):
6439         Adjust.
6440         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
6441         inferior_thread.
6442         (breakpoint_kind): Adjust.
6443         (remove_breakpoints_pid): Rename to ...
6444         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
6445         pointer.  All callers adjusted.
6446         (bpstat_clear_actions): Use inferior_thread.
6447         (get_bpstat_thread): New.
6448         (bpstat_do_actions): Use it.
6449         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
6450         to take a thread_info pointer.  All callers adjusted.
6451         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
6452         (breakpoint_re_set_thread): Use inferior_thread.
6453         * breakpoint.h (struct inferior): Forward declare.
6454         (bpstat_stop_status): Update.
6455         (remove_breakpoints_pid): Delete.
6456         (remove_breakpoints_inf): New.
6457         * bsd-uthread.c (bsd_uthread_target::wait)
6458         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
6459         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
6460         (maint_btrace_packet_history_cmd)
6461         (maint_btrace_clear_packet_history_cmd): Adjust.
6462         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
6463         inferior_thread.
6464         * cli/cli-interp.c: Include "inferior.h".
6465         * common/refcounted-object.h (struct
6466         refcounted_object_ref_policy): New.
6467         * compile/compile-object-load.c: Include gdbthread.h.
6468         (store_regs): Use inferior_thread.
6469         * corelow.c (core_target::close): Use current_inferior.
6470         (core_target_open): Adjust to use first_thread_of_inferior and use
6471         the current inferior.
6472         * ctf.c (ctf_target::close): Adjust to use current_inferior.
6473         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
6474         <thread>: ... this new field.  All references adjusted.
6475         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
6476         Take a thread_info pointer instead of a ptid_t.
6477         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
6478         (dummy_frame_discard, register_dummy_frame_dtor): Take a
6479         thread_info pointer instead of a ptid_t.
6480         * elfread.c: Include "inferior.h".
6481         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
6482         Use inferior_thread.
6483         * eval.c (evaluate_subexp): Likewise.
6484         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
6485         inferior_thread.
6486         * gdb_proc_service.h (struct thread_info): Forward declare.
6487         (struct ps_prochandle) <ptid>: Delete, replaced by ...
6488         <thread>: ... this new field.  All references adjusted.
6489         * gdbarch.h, gdbarch.c: Regenerate.
6490         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
6491         'thread' parameter.  All implementations and callers adjusted.
6492         * gdbthread.h (thread_info) <set_running>: New method.
6493         (delete_thread, delete_thread_silent): Take a thread_info pointer
6494         instead of a ptid.
6495         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
6496         (first_thread_of_process): Delete, replaced by ...
6497         (first_thread_of_inferior): ... this new function.  All callers
6498         adjusted.
6499         (any_live_thread_of_process): Delete, replaced by ...
6500         (any_live_thread_of_inferior): ... this new function.  All callers
6501         adjusted.
6502         (switch_to_thread, switch_to_no_thread): Declare.
6503         (is_executing): Delete.
6504         (enable_thread_stack_temporaries): Update comment.
6505         <enable_thread_stack_temporaries>: Take a thread_info pointer
6506         instead of a ptid_t.  Incref the thread.
6507         <~enable_thread_stack_temporaries>: Decref the thread.
6508         <m_ptid>: Delete
6509         <m_thr>: New.
6510         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6511         (get_last_thread_stack_temporary)
6512         (value_in_thread_stack_temporaries, can_access_registers_thread):
6513         Take a thread_info pointer instead of a ptid_t.  All callers
6514         adjusted.
6515         * infcall.c (get_call_return_value): Use inferior_thread.
6516         (run_inferior_call): Work with thread pointers instead of ptid_t.
6517         (call_function_by_hand_dummy): Work with thread pointers instead
6518         of ptid_t.  Use thread_info_ref.
6519         * infcmd.c (proceed_thread_callback): Access thread's state
6520         directly.
6521         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
6522         access thread's state directly.
6523         (continue_command): Use inferior_thread.
6524         (info_program_command): Use find_thread_ptid and access thread
6525         state directly.
6526         (proceed_after_attach_callback): Use thread state directly.
6527         (notice_new_inferior): Take a thread_info pointer instead of a
6528         ptid_t.  All callers adjusted.
6529         (exit_inferior): Take an inferior pointer instead of a pid.  All
6530         callers adjusted.
6531         (exit_inferior_silent): New.
6532         (detach_inferior): Delete.
6533         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
6534         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
6535         (detach_inferior_command, kill_inferior_command): Use
6536         find_inferior_id instead of valid_gdb_inferior_id and
6537         gdb_inferior_id_to_pid.
6538         (inferior_command): Use inferior and thread pointers.
6539         * inferior.h (struct thread_info): Forward declare.
6540         (notice_new_inferior): Take a thread_info pointer instead of a
6541         ptid_t.  All callers adjusted.
6542         (detach_inferior): Delete declaration.
6543         (exit_inferior, exit_inferior_silent): Take an inferior pointer
6544         instead of a pid.  All callers adjusted.
6545         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
6546         (valid_gdb_inferior_id): Delete.
6547         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
6548         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
6549         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
6550         ...
6551         <inf>: ... this new field.
6552         <step_ptid>: Delete, replaced by ...
6553         <step_thread>: ... this new field.
6554         (get_displaced_stepping_state): Take an inferior pointer instead
6555         of a pid.  All callers adjusted.
6556         (displaced_step_in_progress_any_inferior): Adjust.
6557         (displaced_step_in_progress_thread): Take a thread pointer instead
6558         of a ptid_t.  All callers adjusted.
6559         (displaced_step_in_progress, add_displaced_stepping_state): Take
6560         an inferior pointer instead of a pid.  All callers adjusted.
6561         (get_displaced_step_closure_by_addr): Adjust.
6562         (remove_displaced_stepping_state): Take an inferior pointer
6563         instead of a pid.  All callers adjusted.
6564         (displaced_step_prepare_throw, displaced_step_prepare)
6565         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
6566         All callers adjusted.
6567         (start_step_over): Adjust.
6568         (infrun_thread_ptid_changed): Remove bit updating ptids in the
6569         displaced step queue.
6570         (do_target_resume): Adjust.
6571         (fetch_inferior_event): Use inferior_thread.
6572         (context_switch, get_inferior_stop_soon): Take an
6573         execution_control_state pointer instead of a ptid_t.  All callers
6574         adjusted.
6575         (switch_to_thread_cleanup): Delete.
6576         (stop_all_threads): Use scoped_restore_current_thread.
6577         * inline-frame.c: Include "gdbthread.h".
6578         (inline_state) <inline_state>: Take a thread pointer instead of a
6579         ptid_t.  All callers adjusted.
6580         <ptid>: Delete, replaced by ...
6581         <thread>: ... this new field.
6582         (find_inline_frame_state): Take a thread pointer instead of a
6583         ptid_t.  All callers adjusted.
6584         (skip_inline_frames, step_into_inline_frame)
6585         (inline_skipped_frames, inline_skipped_symbol): Take a thread
6586         pointer instead of a ptid_t.  All callers adjusted.
6587         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
6588         (inline_skipped_frames, inline_skipped_symbol): Likewise.
6589         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
6590         pointers directly.
6591         * linux-nat.c (get_detach_signal): Likewise.
6592         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
6593         (thread_db_notice_clone): Adjust.
6594         (thread_db_find_new_threads_silently)
6595         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
6596         a thread pointer instead of a ptid_t.  All callers adjusted.
6597         * mi/mi-cmd-var.c: Include "inferior.h".
6598         (mi_cmd_var_update_iter): Update to use thread pointers.
6599         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
6600         inferior directly.
6601         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
6602         out to ...
6603         (mi_output_running): ... this new function.
6604         (mi_on_resume_1): Adjust to use it.
6605         (mi_user_selected_context_changed): Adjust to use inferior_thread.
6606         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
6607         directly.
6608         (interrupt_thread_callback): : Adjust to use thread and inferior
6609         pointers.
6610         * proc-service.c: Include "gdbthread.h".
6611         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
6612         * progspace-and-thread.c: Include "inferior.h".
6613         * progspace.c: Include "inferior.h".
6614         * python/py-exitedevent.c (create_exited_event_object): Adjust to
6615         hold a reference to an inferior_object.
6616         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
6617         inferior_thread.
6618         * python/py-inferior.c (struct inferior_object): Give the type a
6619         tag name instead of a typedef.
6620         (python_on_normal_stop): No need to check if the current thread is
6621         listed.
6622         (inferior_to_inferior_object): Change return type to
6623         inferior_object.  All callers adjusted.
6624         (find_thread_object): Delete, bits factored out to ...
6625         (thread_to_thread_object): ... this new function.
6626         * python/py-infthread.c (create_thread_object): Use
6627         inferior_to_inferior_object.
6628         (thpy_is_stopped): Use thread pointer directly.
6629         (gdbpy_selected_thread): Use inferior_thread.
6630         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
6631         field, replaced with ...
6632         <thread>: ... this new field.  All users adjusted.
6633         (btpy_insn_or_gap_new): Drop const.
6634         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
6635         callers adjusted.
6636         * python/py-record.c: Include "gdbthread.h".
6637         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6638         a ptid_t.  All callers adjusted.
6639         (gdbpy_current_recording): Use inferior_thread.
6640         * python/py-record.h (recpy_record_object) <ptid>: Delete
6641         field, replaced with ...
6642         <thread>: ... this new field.  All users adjusted.
6643         (recpy_element_object) <ptid>: Delete
6644         field, replaced with ...
6645         <thread>: ... this new field.  All users adjusted.
6646         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6647         a ptid_t.  All callers adjusted.
6648         * python/py-threadevent.c: Include "gdbthread.h".
6649         (get_event_thread): Use thread_to_thread_object.
6650         * python/python-internal.h (struct inferior_object): Forward
6651         declare.
6652         (find_thread_object, find_inferior_object): Delete declarations.
6653         (thread_to_thread_object, inferior_to_inferior_object): New
6654         declarations.
6655         * record-btrace.c: Include "inferior.h".
6656         (require_btrace_thread): Use inferior_thread.
6657         (record_btrace_frame_sniffer)
6658         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
6659         (get_thread_current_frame): Use scoped_restore_current_thread and
6660         switch_to_thread.
6661         (get_thread_current_frame): Use thread pointer directly.
6662         (record_btrace_replay_at_breakpoint): Use thread's inferior
6663         pointer directly.
6664         * record-full.c: Include "inferior.h".
6665         * regcache.c: Include "gdbthread.h".
6666         (get_thread_arch_regcache): Use the inferior's address space
6667         directly.
6668         (get_thread_regcache, registers_changed_thread): New.
6669         * regcache.h (get_thread_regcache(thread_info *thread)): New
6670         overload.
6671         (registers_changed_thread): New.
6672         (remote_target) <remote_detach_1>: Swap order of parameters.
6673         (remote_add_thread): <remote_add_thread>: Return the new thread.
6674         (get_remote_thread_info(ptid_t)): New overload.
6675         (remote_target::remote_notice_new_inferior): Use thread pointers
6676         directly.
6677         (remote_target::process_initial_stop_replies): Use
6678         thread_info::set_running.
6679         (remote_target::remote_detach_1, remote_target::detach)
6680         (extended_remote_target::detach): Adjust.
6681         * stack.c (frame_show_address): Use inferior_thread.
6682         * target-debug.h (target_debug_print_thread_info_pp): New.
6683         * target-delegates.c: Regenerate.
6684         * target.c (default_thread_address_space): Delete.
6685         (memory_xfer_partial_1): Use current_inferior.
6686         (target_detach): Use current_inferior.
6687         (target_thread_address_space): Delete.
6688         (generic_mourn_inferior): Use current_inferior.
6689         * target.h (struct target_ops) <thread_address_space>: Delete.
6690         (target_thread_address_space): Delete.
6691         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
6692         pointers directly.
6693         (delete_thread_1, delete_thread, delete_thread_silent): Take a
6694         thread pointer instead of a ptid_t.  Adjust all callers.
6695         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
6696         (first_thread_of_process): Delete, replaced by ...
6697         (first_thread_of_inferior): ... this new function.  All callers
6698         adjusted.
6699         (any_thread_of_process): Rename to ...
6700         (any_thread_of_inferior): ... this, and take an inferior pointer.
6701         (any_live_thread_of_process): Rename to ...
6702         (any_live_thread_of_inferior): ... this, and take an inferior
6703         pointer.
6704         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6705         (value_in_thread_stack_temporaries)
6706         (get_last_thread_stack_temporary): Take a thread pointer instead
6707         of a ptid_t.  Adjust all callers.
6708         (thread_info::set_running): New.
6709         (validate_registers_access): Use inferior_thread.
6710         (can_access_registers_ptid): Rename to ...
6711         (can_access_registers_thread): ... this, and take a thread
6712         pointer.
6713         (print_thread_info_1): Adjust to compare thread pointers instead
6714         of ptids.
6715         (switch_to_no_thread, switch_to_thread): Make extern.
6716         (scoped_restore_current_thread::~scoped_restore_current_thread):
6717         Use m_thread pointer directly.
6718         (scoped_restore_current_thread::scoped_restore_current_thread):
6719         Use inferior_thread.
6720         (thread_command): Use thread pointer directly.
6721         (thread_num_make_value_helper): Use inferior_thread.
6722         * top.c (execute_command): Use inferior_thread.
6723         * tui/tui-interp.c: Include "inferior.h".
6724         * varobj.c (varobj_create): Use inferior_thread.
6725         (value_of_root_1): Use find_thread_global_id instead of
6726         global_thread_id_to_ptid.
6727
6728 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
6729
6730         * regcache.c (readable_regcache::read_part): Avoid memcpy when
6731         possible.
6732         (regcache::write_part): Likewise.
6733         (readable_regcache::cooked_read_part): Update comment.
6734         (readable_regcache::cooked_write_part): Likewise.
6735         * regcache.h: (readable_regcache::read_part): Likewise.
6736         (regcache::write_part): Likewise.
6737
6738 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
6739             Dirk Schubert  <dirk.schubert@arm.com>
6740
6741         * aarch64-linux-nat.c (post_attach): New.
6742         (aarch64_linux_nat_target::post_attach): Override post_attach to
6743         record the number of hardware debug registers.
6744
6745 2018-06-20  Tom Tromey  <tom@tromey.com>
6746
6747         * python/py-param.c (add_setshow_generic): Make parameters const.
6748         (parmpy_init): Update.
6749
6750 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
6751
6752         * regcache.h (regcache_cooked_read_ftype): Rename to...
6753         (register_read_ftype): ...this, change type to function_view.
6754         (class reg_buffer) <save>: Remove src parameter.
6755         (readonly_detached_regcache) <readonly_detached_regcache>: Make
6756         parameter non-const in first overload.  Remove src parameter in
6757         second overload.
6758         * regcache.c (do_cooked_read): Remove.
6759         (readonly_detached_regcache::readonly_detached_regcache): Make
6760         parameter non-const, adjust call to other constructor.
6761         (reg_buffer::save): Remove src parameter.
6762         * frame.c (do_frame_register_read): Remove.
6763         (frame_save_as_regcache): Use lambda function.
6764         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
6765         parameter to ppu2spu_data *.
6766         (ppu2spu_sniffer): Use lambda function.
6767
6768 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
6769
6770         * record-full.c (record_full_target::insert_breakpoint): Remove
6771         "struct" keyword, add const.
6772
6773 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
6774
6775         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
6776         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
6777         * configure.ac: Remove AC_PREREQ, add missing quoting.
6778         * gnulib/configure.ac: Modernize usage of
6779         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
6780         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
6781         (AUTOMAKE_VERSION): Bump to 1.15.1.
6782         * configure: Re-generate.
6783         * config.in: Re-generate.
6784         * aclocal.m4: Re-generate.
6785         * gnulib/aclocal.m4: Re-generate.
6786         * gnulib/config.in: Re-generate.
6787         * gnulib/configure: Re-generate.
6788         * gnulib/import/Makefile.in: Re-generate.
6789
6790 2018-06-19  Pedro Alves  <palves@redhat.com>
6791
6792         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
6793         (lookup_minimal_symbol_by_pc_section): ... here with
6794         gdb_assert_not_reached added.
6795
6796 2018-06-19  Pedro Alves  <palves@redhat.com>
6797
6798         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
6799         parameter with a block parameter.  Compare location's block symbol
6800         with the frame's block instead of addresses.
6801         (skip_inline_frames): Pass the current block instead of the
6802         frame's address.  Break out as soon as we determine the frame
6803         should not be skipped.
6804
6805 2018-06-18  Tom Tromey  <tom@tromey.com>
6806
6807         * solib-aix.c (solib_aix_get_section_offsets): Return
6808         unique_xmalloc_ptr.
6809         (solib_aix_solib_create_inferior_hook): Update.
6810
6811 2018-06-18  Tom Tromey  <tom@tromey.com>
6812
6813         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
6814
6815 2018-06-18  Tom Tromey  <tom@tromey.com>
6816
6817         * solib-frv.c (frv_relocate_main_executable): Use
6818         unique_xmalloc_ptr.
6819         * solib-dsbt.c (dsbt_relocate_main_executable): Use
6820         unique_xmalloc_ptr.
6821
6822 2018-06-18  Tom Tromey  <tom@tromey.com>
6823
6824         * objfiles.h (inhibit_section_map_updates): Update.
6825         (resume_section_map_updates, resume_section_map_updates_cleanup):
6826         Remove.
6827         * solib-svr4.c (svr4_handle_solib_event): Update.
6828         * objfiles.c (inhibit_section_map_updates): Return
6829         scoped_restore_tmpl<int>.
6830         (resume_section_map_updates, resume_section_map_updates_cleanup):
6831         Remove.
6832
6833 2018-06-18  Tom Tromey  <tom@tromey.com>
6834
6835         * valprint.h (read_string): Update.
6836         * valprint.c (read_string): Change type of "buffer".
6837         (val_print_string): Update.
6838         * python/py-value.c (valpy_string): Update.
6839         * language.h (struct language_defn) <la_get_string>: Change
6840         type of "buffer".
6841         (default_get_string, c_get_string): Update.
6842         * language.c (default_get_string): Change type of "buffer".
6843         * guile/scm-value.c (gdbscm_value_to_string): Update.
6844         * c-lang.c (c_get_string): Change type of "buffer".
6845
6846 2018-06-18  Tom Tromey  <tom@tromey.com>
6847
6848         * ser-mingw.c (struct pipe_state_destroyer): New.
6849         (pipe_state_up): New typedef.
6850         (cleanup_pipe_state): Remove.
6851         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
6852
6853 2018-06-18  Tom Tromey  <tom@tromey.com>
6854
6855         * rust-lang.h (rust_yyerror): Don't declare.
6856         * rust-lang.c (rust_language_defn): Update.
6857         * rust-exp.y (yyerror): Now static.
6858         * parse.c (parse_exp_in_context_1): Update.
6859         * p-lang.h (p_yyerror): Don't declare.
6860         * p-lang.c (p_language_defn): Update.
6861         * p-exp.y (yyerror): Now static.
6862         * opencl-lang.c (opencl_language_defn): Update.
6863         * objc-lang.c (objc_language_defn): Update.
6864         * m2-lang.h (m2_yyerror): Don't declare.
6865         * m2-lang.c (m2_language_defn): Update.
6866         * m2-exp.y (yyerror): Now static.
6867         * language.h (struct language_defn) <la_error>: Remove.
6868         * language.c (unk_lang_error): Remove.
6869         (unknown_language_defn, auto_language_defn): Remove.
6870         * go-lang.h (go_yyerror): Don't declare.
6871         * go-lang.c (go_language_defn): Update.
6872         * go-exp.y (yyerror): Now static.
6873         * f-lang.h (f_yyerror): Don't declare.
6874         * f-lang.c (f_language_defn): Update.
6875         * f-exp.y (yyerror): Now static.
6876         * d-lang.h (d_yyerror): Don't declare.
6877         * d-lang.c (d_language_defn): Update.
6878         * d-exp.y (yyerror): Now static.
6879         * c-lang.h (c_yyerror): Don't declare.
6880         * c-lang.c (c_language_defn, cplus_language_defn)
6881         (asm_language_defn, minimal_language_defn): Update.
6882         * c-exp.y (yyerror): Now static.
6883         * ada-lang.h (ada_yyerror): Don't declare.
6884         * ada-lang.c (ada_language_defn): Update.
6885         * ada-exp.y (yyerror): Now static.
6886
6887 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
6888
6889         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
6890         (store_sveregs_to_thread): Likewise.
6891         (aarch64_linux_fetch_inferior_registers): Check for SVE.
6892         (aarch64_linux_store_inferior_registers): Likewise.
6893         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
6894         function.
6895         (aarch64_sve_regs_copy_to_regcache): Likewise.
6896         (aarch64_sve_regs_copy_from_regcache): Likewise.
6897         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
6898         declaration.
6899         (aarch64_sve_regs_copy_to_regcache): Likewise.
6900         (aarch64_sve_regs_copy_from_regcache): Likewise.
6901         (sve_context): Structure from Linux headers.
6902         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
6903         (SVE_SIG_ZREG_SIZE): Likewise.
6904         (SVE_SIG_PREG_SIZE): Likewise.
6905         (SVE_SIG_FFR_SIZE): Likewise.
6906         (SVE_SIG_REGS_OFFSET): Likewise.
6907         (SVE_SIG_ZREGS_OFFSET): Likewise.
6908         (SVE_SIG_ZREG_OFFSET): Likewise.
6909         (SVE_SIG_ZREGS_SIZE): Likewise.
6910         (SVE_SIG_PREGS_OFFSET): Likewise.
6911         (SVE_SIG_PREG_OFFSET): Likewise.
6912         (SVE_SIG_PREGS_SIZE): Likewise.
6913         (SVE_SIG_FFR_OFFSET): Likewise.
6914         (SVE_SIG_REGS_SIZE): Likewise.
6915         (SVE_SIG_CONTEXT_SIZE): Likewise.
6916         (SVE_PT_REGS_MASK): Likewise.
6917         (SVE_PT_REGS_FPSIMD): Likewise.
6918         (SVE_PT_REGS_SVE): Likewise.
6919         (SVE_PT_VL_INHERIT): Likewise.
6920         (SVE_PT_VL_ONEXEC): Likewise.
6921         (SVE_PT_REGS_OFFSET): Likewise.
6922         (SVE_PT_FPSIMD_OFFSET): Likewise.
6923         (SVE_PT_FPSIMD_SIZE): Likewise.
6924         (SVE_PT_SVE_ZREG_SIZE): Likewise.
6925         (SVE_PT_SVE_PREG_SIZE): Likewise.
6926         (SVE_PT_SVE_FFR_SIZE): Likewise.
6927         (SVE_PT_SVE_FPSR_SIZE): Likewise.
6928         (SVE_PT_SVE_FPCR_SIZE): Likewise.
6929         (__SVE_SIG_TO_PT): Likewise.
6930         (SVE_PT_SVE_OFFSET): Likewise.
6931         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
6932         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
6933         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
6934         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
6935         (SVE_PT_SVE_PREG_OFFSET): Likewise.
6936         (SVE_PT_SVE_PREGS_SIZE): Likewise.
6937         (SVE_PT_SVE_FFR_OFFSET): Likewise.
6938         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
6939         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
6940         (SVE_PT_SVE_SIZE): Likewise.
6941         (SVE_PT_SIZE): Likewise.
6942         (HAS_SVE_STATE): New define.
6943
6944 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
6945
6946         * nat/aarch64-sve-linux-sigcontext.h: New file.
6947         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
6948         new files.
6949         (SVE_VQ_MIN): Likewise.
6950         (SVE_VQ_MAX): Likewise.
6951         (SVE_VL_MIN): Likewise.
6952         (SVE_VL_MAX): Likewise.
6953         (SVE_NUM_ZREGS): Likewise.
6954         (SVE_NUM_PREGS): Likewise.
6955         (sve_vl_valid): Likewise.
6956         (struct user_sve_header): Likewise.
6957
6958 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
6959             Richard Bunt <Richard.Bunt@arm.com>
6960
6961         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
6962         was requested by GDB.
6963
6964 2018-06-15  Tom de Vries  <tdevries@suse.de>
6965
6966         * MAINTAINERS (Write After Approval): Add Tom de Vries.
6967
6968 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
6969
6970         * gnulib/update-gnulib.sh: Print expected versions of
6971         autoconf/aclocal.
6972
6973 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
6974
6975         * arch-utils.c (default_type_align): Use type_length_units.
6976         * gdbtypes.c (type_align): Use type_length_units.
6977
6978 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6979
6980         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
6981         of 'define' command.
6982
6983 2018-06-14  Tom de Vries  <tdevries@suse.de>
6984
6985         PR cli/22573
6986         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
6987         get_no_prettyformat_print_options.
6988
6989 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
6990
6991         * sparc-nat.h: Include target.h.
6992         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
6993         <fetch_registers>: Remove this argument in function call.
6994         <store_registers>: Remove this argument in function call, remove
6995         extra semicolon.
6996         <low_forget_process>: Call sparc64_forget_process instead of
6997         sparc_forget_process.
6998
6999 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
7000
7001         * procfs.c (_initialize_procfs): Use add_inf_child_target.
7002         (procfs_target::make_corefile_notes): Adjust to new
7003         target_read_alloc return type.
7004
7005 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7006             Stephen Roberts  <stephen.roberts@arm.com>
7007
7008         PR gdb/22882
7009         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
7010         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
7011         Move should_notify_stop local into more inner scope.
7012
7013 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7014             Stephen Roberts  <stephen.roberts@arm.com>
7015
7016         PR gdb/22882
7017         * infrun.c (resume_1): Add call to mark_async_event_handler.
7018
7019 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7020
7021         * infrun.c (do_target_wait): Change old version of $pc printed.
7022
7023 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
7024
7025         * dwarf2read.c (read_index_from_section): Rename to...
7026         (read_gdb_index_from_section): ... this, update all callers.
7027         (dwarf2_read_index): Rename to...
7028         (dwarf2_read_gdb_index): ... this, update all callers.
7029
7030 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
7031
7032         * gdb/hppa-linux-nat.c
7033         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
7034         hppa_linux_nat_target::fetch_registers.
7035
7036 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
7037
7038         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
7039         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
7040         (AARCH64_DWARF_SVE_FFR): Likewise.
7041         (AARCH64_DWARF_SVE_P0): Likewise.
7042         (AARCH64_DWARF_SVE_Z0): Likewise.
7043
7044 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
7045
7046         * common/common-regcache.h (raw_compare): New function.
7047         * regcache.c (regcache::raw_compare): Likewise.
7048         * regcache.h (regcache::raw_compare): New declaration.
7049
7050 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
7051
7052         * common/common-regcache.h (reg_buffer_common): New structure.
7053         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
7054         (reg_buffer::raw_supply): Likewise.
7055         (reg_buffer::raw_supply_integer): Likewise.
7056         (reg_buffer::raw_supply_zeroed): Likewise.
7057         (reg_buffer::raw_collect): Likewise.
7058         (reg_buffer::raw_collect_integer): Likewise.
7059         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
7060         (reg_buffer::raw_supply): Likewise.
7061         (reg_buffer::raw_supply_integer): Likewise.
7062         (reg_buffer::raw_supply_zeroed): Likewise.
7063         (reg_buffer::raw_collect): Likewise.
7064         (reg_buffer::raw_collect_integer): Likewise.
7065
7066 2018-06-10  Tom Tromey  <tom@tromey.com>
7067
7068         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
7069         (class remote_state) <stop_reply_queue>: Now std::vector.
7070         (remote_state::~remote_state)
7071         (remote_target::stop_reply_queue_length): Update.
7072         (struct queue_iter_param, remove_child_of_pending_fork)
7073         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
7074         (check_pending_event_prevents_wildcard_vcont_callback)
7075         (remove_stop_reply_for_inferior)
7076         (remove_stop_reply_of_remote_state)
7077         (remote_notif_remove_once_on_match)
7078         (stop_reply_match_ptid_and_ws)
7079         (remote_kill_child_of_pending_fork): Remove.
7080         (remote_target::remove_new_fork_children)
7081         (remote_target::check_pending_events_prevent_wildcard_vcont)
7082         (remote_target::discard_pending_stop_replies)
7083         (remote_target::discard_pending_stop_replies_in_queue)
7084         (remote_target::remote_notif_remove_queued_reply)
7085         (remote_target::queued_stop_reply)
7086         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
7087         (remote_target::wait, remote_target::kill_new_fork_children)
7088         (remote_target::async): Update.
7089
7090 2018-06-10  Tom Tromey  <tom@tromey.com>
7091
7092         * record-full.c (record_full_arch_list_cleanups): Remove.
7093         (record_full_message): Use try/catch.
7094         (record_full_wait_cleanups): Remove.
7095         (record_full_wait_1): Use try/catch.
7096         (record_full_restore): Likewise.
7097
7098 2018-06-10  Tom Tromey  <tom@tromey.com>
7099
7100         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
7101         declare VEC.  Add constructor.
7102         <in_target_beneath>: Now bool.
7103         (record_full_breakpoints): Now a std::vector, static.
7104         (record_full_sync_record_breakpoints)
7105         (record_full_init_record_breakpoints)
7106         (record_full_target::insert_breakpoint)
7107         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
7108
7109 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
7110
7111         * dwarf2read.c (process_cu_includes): Remove struct keyword.
7112         * serial.c (serial_interface_lookup): Remove struct keyword.
7113
7114 2018-06-10  Tom Tromey  <tom@tromey.com>
7115
7116         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
7117         method.
7118         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
7119         a method.
7120         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
7121         method.
7122         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
7123         "beneath" as a method.
7124         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
7125         Use "beneath" as a method.
7126
7127 2018-06-10  Tom Tromey  <tom@tromey.com>
7128
7129         * tracefile.c (struct trace_file_writer_deleter): New.
7130         <operator()>: Rename from trace_file_writer_xfree.
7131         (trace_file_writer_up): New typedef.
7132         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
7133
7134 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
7135
7136         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
7137         <m_registers, m_register_status>: Change type to
7138         std::unique_ptr.
7139         * regcache.c (reg_buffer::reg_buffer): Use new instead of
7140         XCNEWVEC.
7141
7142 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
7143
7144         * common/common-regcache.h (enum register_status): Add
7145         underlying type "signed char".
7146         * regcache.h (reg_buffer) <m_register_status>: Change type to
7147         register_status *.
7148         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
7149         register_status instead of signed char.
7150         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
7151         (reg_buffer::get_register_status): Remove cast.
7152         (readable_regcache::raw_read): Remove cast.
7153         (readable_regcache::cooked_read): Remove cast.
7154
7155 2018-06-09  Tom Tromey  <tom@tromey.com>
7156
7157         * source.c (reverse_search_command, forward_search_command): Use
7158         scoped_fd.
7159
7160 2018-06-09  Tom Tromey  <tom@tromey.com>
7161
7162         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
7163         (serial_ops_list): Now static, std::vector.
7164         (serial_interface_lookup, serial_add_interface): Update.
7165
7166 2018-06-09  Tom Tromey  <tom@tromey.com>
7167
7168         * dwarf2read.c (process_cu_includes): Update.
7169         (process_full_comp_unit): Update.
7170         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
7171         std::vector.
7172
7173 2018-06-08  Paul Koning  <paul_koning@dell.com>
7174
7175         PR gdb/23252
7176
7177         * python/python.c (do_start_initialization):
7178         Avoid call to internal Python API.
7179         (init__gdb_module): New function.
7180
7181 2018-06-08  Gary Benson <gbenson@redhat.com>
7182
7183         * linux-thread-db.c (valprint.h): New include.
7184         (struct check_thread_db_info): New structure.
7185         (check_thread_db_on_load, tdb_testinfo): New static globals.
7186         (check_thread_db, check_thread_db_callback): New functions.
7187         (try_thread_db_load_1): Run integrity checks if requested.
7188         (maintenance_check_libthread_db): New function.
7189         (_initialize_thread_db): Register "maint check libthread-db"
7190         and "maint set/show check-libthread-db".
7191         * NEWS: Mention the above new commands.
7192
7193 2018-06-08  Tom Tromey  <tom@tromey.com>
7194
7195         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
7196         now a method.
7197
7198 2018-06-08  Tom Tromey  <tom@tromey.com>
7199
7200         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
7201
7202 2018-06-08  Tom Tromey  <tom@tromey.com>
7203
7204         * common/btrace-common.h (struct btrace_data): Add constructor,
7205         destructor, move assignment operator.
7206         <empty, clear, fini>: New methods.
7207         <format>: Initialize.
7208         (btrace_data_init, btrace_data_fini, btrace_data_clear)
7209         (btrace_data_empty): Don't declare.
7210         * common/btrace-common.c (btrace_data_init): Remove.
7211         (btrace_data::fini): Rename from btrace_data_fini.
7212         (btrace_data::empty): Rename from btrace_data_empty.
7213         (btrace_data::clear): Rename from btrace_data_clear.  Return
7214         bool.
7215         * btrace.h (make_cleanup_btrace_data): Don't declare.
7216         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
7217         (parse_xml_btrace): Update.
7218         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
7219         (maint_btrace_clear_packet_history_cmd): Update.
7220
7221 2018-06-07  Pedro Alves  <palves@redhat.com>
7222
7223         * target.h (target_ops) <beneath>: Now a method.  All references
7224         updated.
7225         (class target_stack): New.
7226         * target.c (g_target_stack): New.
7227         (g_current_top_target): Delete.
7228         (current_top_target): Get the top target out of g_target_stack.
7229         (target_stack::push, target_stack::unpush): New.
7230         (push_target, unpush_target): Reimplement.
7231         (target_is_pushed): Reimplement in terms of g_target_stack.
7232         (target_ops::beneath, target_stack::find_beneath): New.
7233
7234 2018-06-07  Pedro Alves  <palves@redhat.com>
7235
7236         * target.h (find_target_beneath): Delete declaration.
7237         * target.c (find_target_beneath): Delete definition.
7238         * aix-thread.c: All callers of find_target_beneath adjusted to
7239         call target_ops::beneath instead.
7240         * bsd-uthread.c: Likewise.
7241         * linux-thread-db.c: Likewise.
7242         * ravenscar-thread.c: Likewise.
7243         * sol-thread.c: Likewise.
7244         * spu-multiarch.c: Likewise.
7245
7246 2018-06-07  Pedro Alves  <palves@redhat.com>
7247
7248         * target.h (target_ops) <beneath>: Now a method.  All references
7249         updated.
7250         (target_ops) <m_beneath>: New.
7251         * target.c (target_ops::beneath): New.
7252         * corelow.c: Adjust all references to target_ops::beneath.
7253         * linux-thread-db.c: Likewise.
7254         * make-target-delegates: Likewise.
7255         * record-btrace.c: Likewise.
7256         * record-full.c: Likewise.
7257         * remote.c: Likewise.
7258         * target.c: Likewise.
7259         * target-delegates.c: Regenerate.
7260
7261 2018-06-07  Pedro Alves  <palves@redhat.com>
7262
7263         * target.h (target_stack): Delete.
7264         (current_top_target): Declare function.
7265         * target.c (target_stack): Delete.
7266         (g_current_top_target): New.
7267         (current_top_target): New function.
7268         * auxv.c: Use current_top_target instead of target_stack
7269         throughout.
7270         * avr-tdep.c: Likewise.
7271         * breakpoint.c: Likewise.
7272         * corefile.c: Likewise.
7273         * elfread.c: Likewise.
7274         * eval.c: Likewise.
7275         * exceptions.c: Likewise.
7276         * frame.c: Likewise.
7277         * gdbarch-selftests.c: Likewise.
7278         * gnu-v3-abi.c: Likewise.
7279         * ia64-tdep.c: Likewise.
7280         * ia64-vms-tdep.c: Likewise.
7281         * infcall.c: Likewise.
7282         * infcmd.c: Likewise.
7283         * infrun.c: Likewise.
7284         * linespec.c: Likewise.
7285         * linux-tdep.c: Likewise.
7286         * minsyms.c: Likewise.
7287         * ppc-linux-nat.c: Likewise.
7288         * ppc-linux-tdep.c: Likewise.
7289         * procfs.c: Likewise.
7290         * regcache.c: Likewise.
7291         * remote.c: Likewise.
7292         * rs6000-tdep.c: Likewise.
7293         * s390-linux-nat.c: Likewise.
7294         * s390-tdep.c: Likewise.
7295         * solib-aix.c: Likewise.
7296         * solib-darwin.c: Likewise.
7297         * solib-dsbt.c: Likewise.
7298         * solib-spu.c: Likewise.
7299         * solib-svr4.c: Likewise.
7300         * solib-target.c: Likewise.
7301         * sparc-tdep.c: Likewise.
7302         * sparc64-tdep.c: Likewise.
7303         * spu-tdep.c: Likewise.
7304         * symfile.c: Likewise.
7305         * symtab.c: Likewise.
7306         * target-descriptions.c: Likewise.
7307         * target-memory.c: Likewise.
7308         * target.c: Likewise.
7309         * target.h: Likewise.
7310         * tracefile-tfile.c: Likewise.
7311         * tracepoint.c: Likewise.
7312         * valops.c: Likewise.
7313         * valprint.c: Likewise.
7314         * value.c: Likewise.
7315         * windows-tdep.c: Likewise.
7316         * mi/mi-main.c: Likewise.
7317
7318 2018-06-07  Tom Tromey  <tom@tromey.com>
7319
7320         * valprint.h (build_address_symbolic): Declare.
7321         * printcmd.c (print_address_symbolic): Update.
7322         (build_address_symbolic): Change "name" and "filename" to
7323         std::string.
7324         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
7325         Update.
7326         * defs.h (build_address_symbolic): Remove declaration.
7327
7328 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
7329
7330         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
7331         (aarch64_vnv_type): Add function.
7332         (aarch64_pseudo_register_name): Add V regs for SVE.
7333         (aarch64_pseudo_register_type): Likewise.
7334         (aarch64_pseudo_register_reggroup_p): Likewise.
7335         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
7336         (aarch64_pseudo_read_value): Add V regs for SVE.
7337         (aarch64_pseudo_write_2): Use V0 offset for SVE
7338         (aarch64_pseudo_write): Add V regs for SVE.
7339         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
7340
7341 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
7342
7343         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
7344         (sve_vl_from_vq): Likewise.
7345
7346 2018-06-05  Tom Tromey  <tom@tromey.com>
7347
7348         * cli/cli-cmds.c (show_version): Update.
7349         * top.c (print_gdb_version): Add "interactive" parameter.
7350         Update.
7351         * main.c (captured_main_1): Update.
7352         * top.h (print_gdb_version): Add "interactive" parameter and a
7353         comment.
7354
7355 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
7356
7357         * common/enum-flags.h: Add trailing semicolon to example in
7358         comment.
7359
7360 2018-06-05  Tom Tromey  <tom@tromey.com>
7361
7362         PR cli/12326:
7363         * NEWS: Add entry about pager.
7364         * utils.c (pagination_disabled_for_command): New global.
7365         (prompt_for_continue): Allow "c" response to prompt.
7366         (reinitialize_more_filter): Clear
7367         pagination_disabled_for_command.
7368         (fputs_maybe_filtered): Check pagination_disabled_for_command.
7369
7370 2018-06-04  Tom Tromey  <tom@tromey.com>
7371
7372         * ada-lang.h (ada_lookup_symbol_list): Update.
7373         * ada-lang.c (resolve_subexp): Update.
7374         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
7375         parameter.
7376         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
7377         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
7378         results parameter to std::vector.
7379         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
7380         Update.
7381         * ada-exp.y (block_lookup): Update.
7382         (select_possible_type_sym): Change type of syms.  Remove nsyms
7383         parameter.
7384         (write_var_or_type, write_name_assoc): Update.
7385
7386 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
7387
7388         * windows-nat.c (windows_nat_target::xfer_partial): Return
7389         TARGET_XFER_E_IO if we need to delegate to the target beneath
7390         but BENEATH is NULL.
7391
7392 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
7393
7394         * Makefile.in (config.status): Add configure.nat as a
7395         dependency.
7396
7397 2018-06-04  Tom Tromey  <tom@tromey.com>
7398
7399         * cp-name-parser.y (cpname_state): Add method declarations.
7400         (HANDLE_QUAL): Update.
7401         (cpname_state::d_grab, cpname_state::fill_comp)
7402         (cpname_state::make_operator, cpname_state::make_dtor)
7403         (cpname_state::make_builtin_type, cpname_state::make_name)
7404         (cpname_state::d_qualify, cpname_state::d_int_type)
7405         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
7406         (%union): Move earlier.
7407
7408 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7409
7410         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
7411
7412 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7413
7414         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
7415         (aarch64_pseudo_write_1): Likewise.
7416         (aarch64_pseudo_read_value): Use helper.
7417         (aarch64_pseudo_write): Likewise.
7418
7419 2018-06-04  Pedro Alves  <palves@redhat.com>
7420
7421         * darwin-nat.c (darwin_ops): Delete.
7422         (darwin_attach_pid): Use get_native_target.
7423
7424 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7425
7426         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
7427         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
7428
7429 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7430
7431         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
7432         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
7433         (aarch64_gdbarch_init): Check for SVE.
7434         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
7435
7436 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7437
7438         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
7439         * aarch64-tdep.h (aarch64_read_description): Likewise.
7440         * arch/aarch64.c (aarch64_create_target_description): Likewise.
7441         * arch/aarch64.h (aarch64_create_target_description): Likewise.
7442         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
7443         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
7444         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
7445
7446 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
7447
7448         * value.c (value_fetch_lazy_bitfield): New.
7449         (value_fetch_lazy_memory): New.
7450         (value_fetch_lazy_register): New.
7451         (value_fetch_lazy): Factor out to smaller functions.
7452
7453 2018-06-01  Tom Tromey  <tom@tromey.com>
7454
7455         * cp-name-parser.y (backslashable, represented): Now const.
7456
7457 2018-06-01  Tom Tromey  <tom@tromey.com>
7458
7459         * cp-name-parser.y: Include parser-defs.h.
7460         (parser_fprintf): Remove declaration.
7461
7462 2018-06-01  Tom Tromey  <tom@tromey.com>
7463
7464         * cp-name-parser.y: Use %pure-parser, %lex-param, and
7465         %parse-param.
7466         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
7467         (global_result): Remove globals.
7468         (struct cpname_state): New.
7469         (yyparse): Don't declare.
7470         (yylex, yyerror): Move declarations after %union.
7471         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
7472         (make_name): Add state parameter.
7473         Update all callers.
7474         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
7475         parameter.
7476         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
7477         Update.
7478         (yylex): Add lvalp, state parameters.
7479         (yyerror): Add state parameter.
7480         (cp_demangled_name_to_comp): Update.
7481
7482 2018-06-01  Tom Tromey  <tom@tromey.com>
7483
7484         * cp-name-parser.y (parser_fprintf): Declare.
7485         (GDB_YY_REMAP_PREFIX): Define.
7486         Include yy-remap.h.  Don't redefine yy* identifiers.
7487
7488 2018-06-01  Tom Tromey  <tom@tromey.com>
7489
7490         * python/py-type.c (typy_legacy_template_argument): Update.
7491         * cp-support.h (cp_demangled_name_to_comp): Update.
7492         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
7493         parameter to be a "std::string *".
7494         (main): Update.
7495
7496 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
7497
7498         * ada-lex.l: Include "diagnostics.h" instead of
7499         "common/diagnostics.h".
7500         * unittests/environ-selftests.c: Likewise.
7501         * common/diagnostics.h: Moved to ../include.
7502
7503 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
7504
7505         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
7506         to language_mode_manual while calling breakpoint_re_set_one.
7507
7508 2018-06-01  Tom Tromey  <tom@tromey.com>
7509
7510         * valops.c (value_cast_structs, destructor_name_p): Update.
7511         * symtab.c (gdb_mangle_name): Update.
7512         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
7513         Update.
7514         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
7515         (pascal_object_print_value_fields, pascal_object_print_value):
7516         Update.
7517         * p-typeprint.c (pascal_type_print_derivation_info): Update.
7518         * linespec.c (find_methods): Update.
7519         * gdbtypes.h (type_name_no_tag): Remove.
7520         (type_name_or_error): Rename from type_name_no_tag_or_error.
7521         * gdbtypes.c (type_name_no_tag): Remove.
7522         (type_name_or_error): Rename from type_name_no_tag_or_error.
7523         (lookup_struct_elt_type, check_typedef): Update.
7524         * expprint.c (print_subexp_standard): Update.
7525         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
7526         * d-namespace.c (d_lookup_nested_symbol): Update.
7527         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
7528         (cp_print_class_member): Update.
7529         * cp-namespace.c (cp_lookup_nested_symbol): Update.
7530         * completer.c (add_struct_fields): Update.
7531         * c-typeprint.c (cp_type_print_derivation_info)
7532         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
7533         Update.
7534         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
7535         (ada_prefer_type, ada_is_exception_sym): Update.
7536
7537 2018-06-01  Tom Tromey  <tom@tromey.com>
7538
7539         * valops.c (enum_constant_from_type, value_namespace_elt)
7540         (value_maybe_namespace_elt): Update.
7541         * valarith.c (find_size_for_pointer_math): Update.
7542         * target-descriptions.c (make_gdb_type): Update.
7543         * symmisc.c (print_symbol): Update.
7544         * stabsread.c (define_symbol, read_type)
7545         (complain_about_struct_wipeout, add_undefined_type)
7546         (cleanup_undefined_types_1): Update.
7547         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
7548         (rust_range_type_p, val_print_struct, rust_print_struct_def)
7549         (rust_internal_print_type, rust_composite_type)
7550         (rust_evaluate_funcall, rust_evaluate_subexp)
7551         (rust_inclusive_range_type_p): Update.
7552         * python/py-type.c (typy_get_tag): Update.
7553         * p-typeprint.c (pascal_type_print_base): Update.
7554         * mdebugread.c (parse_symbol, parse_type): Update.
7555         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
7556         Update.
7557         * guile/scm-type.c (gdbscm_type_tag): Update.
7558         * go-lang.c (sixg_string_p): Update.
7559         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
7560         Update.
7561         * gdbtypes.h (struct main_type) <tag_name>: Remove.
7562         (TYPE_TAG_NAME): Remove.
7563         * gdbtypes.c (type_name_no_tag): Simplify.
7564         (check_typedef, check_types_equal, recursive_dump_type)
7565         (copy_type_recursive, arch_composite_type): Update.
7566         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
7567         in summary mode when needed.
7568         * eval.c (evaluate_funcall): Update.
7569         * dwarf2read.c (fixup_go_packaging, read_structure_type)
7570         (process_structure_scope, read_enumeration_type)
7571         (read_namespace_type, read_module_type, determine_prefix): Update.
7572         * cp-support.c (inspect_type): Update.
7573         * coffread.c (process_coff_symbol, decode_base_type): Update.
7574         * c-varobj.c (c_is_path_expr_parent): Update.
7575         * c-typeprint.c (c_type_print_base_struct_union): Update.
7576         (c_type_print_base_1): Update.  Print struct/class/union/enum in
7577         summary when using C language.
7578         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
7579         (gen_maybe_namespace_elt): Update.
7580         * ada-lang.c (ada_type_name): Simplify.
7581         (empty_record, ada_template_to_fixed_record_type_1)
7582         (template_to_static_fixed_type)
7583         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
7584
7585 2018-06-01  Tom Tromey  <tom@tromey.com>
7586
7587         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
7588         c_print_type.
7589         * c-typeprint.c (c_print_type_1): Add "language" parameter.
7590         (c_print_type): Update.
7591         (c_print_type): New overload.
7592         (c_type_print_varspec_prefix, c_type_print_args)
7593         (c_type_print_varspec_suffix, c_print_type_no_offsets)
7594         (c_type_print_base_struct_union, c_type_print_base_1)
7595         (cp_type_print_method_args): Add "language" parameter.
7596         (c_type_print_base): Update.
7597         * c-lang.h (c_print_type): Add new overload.
7598
7599 2018-06-01  Tom Tromey  <tom@tromey.com>
7600
7601         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
7602         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
7603
7604 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
7605
7606         * aarch64-tdep.c (aarch64_sve_register_names): New const
7607         var.
7608         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
7609         (AARCH64_SVE_Z_REGS_NUM): New define.
7610         (AARCH64_SVE_P_REGS_NUM): Likewise.
7611         (AARCH64_SVE_NUM_REGS): Likewise.
7612
7613 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
7614
7615         * nat/linux-ptrace.h [__alpha__]
7616         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
7617         definitions.
7618
7619 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
7620
7621         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
7622         the endianness selected.
7623         * NEWS: Document `set endian auto' mode operation update.
7624
7625 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7626
7627         * Makefile.in: Add new header.
7628         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
7629         (sve_vl_from_vg): Likewise.
7630         (sve_vq_from_vl): Likewise.
7631         (sve_vl_from_vq): Likewise.
7632         (sve_vq_from_vg): Likewise.
7633         (sve_vg_from_vq): Likewise.
7634         * configure.nat: Add new c file.
7635         * nat/aarch64-sve-linux-ptrace.c: New file.
7636         * nat/aarch64-sve-linux-ptrace.h: New file.
7637
7638 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7639
7640         * aarch64-linux-nat.c (aarch64_linux_read_description):
7641         Add parmeter zero.
7642         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
7643         Likewise.
7644         * aarch64-tdep.c (tdesc_aarch64_list): Add.
7645         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
7646         (aarch64_gdbarch_init): Add parmeter zero.
7647         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
7648         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
7649         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
7650         parmeter.
7651         * doc/gdb.texinfo: Describe SVE feature
7652         * features/aarch64-sve.c: New file.
7653
7654 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
7655
7656         PR gdb/23210
7657         * gdbarch.sh (significant_addr_bit): Default to zero when
7658         not set by target architecture.
7659         * gdbarch.c: Re-generated.
7660         * utils.c (address_significant): Update.
7661
7662 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
7663
7664         * stack.c (func_command): Remove trailing newline in call to error.
7665
7666 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7667
7668         * regcache.h (regcache_raw_collect): Remove, update callers to
7669         use regcache::raw_collect.
7670         * regcache.c (regcache_raw_collect): Remove.
7671
7672 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7673
7674         * regcache.h (regcache_raw_supply): Remove, update callers to
7675         use detached_regcache::raw_supply.
7676         * regcache.c (regcache_raw_supply): Remove.
7677
7678 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7679
7680         * regcache.h (regcache_cooked_write_part): Remove, update
7681         callers to use regcache::cooked_write_part.
7682         * regcache.c (regcache_cooked_write_part): Remove.
7683
7684 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7685
7686         * regcache.h (regcache_cooked_read_part): Remove, update callers
7687         to use readable_regcache::cooked_read_part.
7688         * regcache.c (regcache_cooked_read_part): Remove.
7689
7690 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7691
7692         * regcache.h (regcache_cooked_read_value): Remove, update
7693         callers to use readable_regcache::cooked_read_value.
7694         * regcache.c (regcache_cooked_read_value): Remove.
7695
7696 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7697
7698         * regcache.h (regcache_cooked_write): Remove, update callers to
7699         use regcache::cooked_write.
7700         * regcache.c (regcache_cooked_write): Remove.
7701
7702 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7703
7704         * regcache.h (regcache_invalidate): Remove, update callers to
7705         use detached_regcache::invalidate instead.
7706         * regcache.c (regcache_invalidate): Remove.
7707
7708 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7709
7710         * regcache.h (regcache_raw_write_part): Remove, update callers
7711         to use regcache::raw_write_part instead.
7712         * regcache.c (regcache_raw_write_part): Remove.
7713
7714 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7715
7716         * regcache.h (regcache_raw_read_part): Remove, update callers to
7717         use readable_regcache::raw_read_part instead.
7718         * regcache.c (regcache_raw_read_part): Remove.
7719
7720 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7721
7722         * regcache.h (regcache_cooked_read): Remove, update callers to
7723         use readable_regcache::cooked_read instead.
7724         * regcache.c (regcache_cooked_read): Remove.
7725
7726 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7727
7728         * regcache.h (regcache_raw_write): Remove, update callers to use
7729         regcache::raw_write instead.
7730         * regcache.c (regcache_raw_write): Remove.
7731
7732 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7733
7734         * regcache.h (regcache_raw_read): Remove, update callers to use
7735         readable_regcache::raw_read instead.
7736         * regcache.c (regcache_raw_read): Remove.
7737
7738 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7739
7740         * regcache.h (regcache_raw_update): Remove, update callers to
7741         use readable_regcache::raw_update instead.
7742         * regcache.c (regcache_raw_update): Remove.
7743
7744 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7745
7746         * regcache.h (regcache_register_status): Remove, update callers
7747         to use reg_buffer::get_register_status directly instead.
7748         * regcache.c (regcache_register_status): Remove.
7749
7750 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7751
7752         * regcache.h (regcache_get_ptid): Remove, update all callers to
7753         call regcache::ptid instead.
7754         * regcache.c (regcache_get_ptid): Remove.
7755
7756 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7757
7758         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
7759
7760 2018-05-30  Pedro Alves  <palves@redhat.com>
7761
7762         * common/common-exceptions.h (exception_rethrow): Use
7763         ATTRIBUTE_NORETURN.
7764
7765 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
7766
7767         * breakpoint.c (print_solib_event, check_status_catch_solib):
7768         Remove struct keyword in range-based for loops.
7769         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
7770         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
7771         Likewise.
7772         * linespec.c (find_superclass_methods, search_minsyms_for_name):
7773         Likewise.
7774         * symfile.c (addr_info_make_relative): Likewise.
7775         * thread.c (value_in_thread_stack_temporaries): Likewise.
7776
7777 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
7778
7779         PR gdb/16841
7780         * valops.c (value_struct_elt_for_reference): Call check_typedef on
7781         aggregate type to get its real type before accessing it.
7782
7783 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
7784
7785         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
7786         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
7787         * coff-pe-read.c (add_pe_forwarded_sym): Replace
7788         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
7789         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
7790         * jit.c (jit_breakpoint_re_set_internal): Likewise.
7791         * printcmd.c (info_address_command): Likewise.
7792
7793 2018-05-29  Tom Tromey  <tom@tromey.com>
7794
7795         * windows-nat.c (handle_exception): Update fall-through comment.
7796
7797 2018-05-29  Tom Tromey  <tom@tromey.com>
7798
7799         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
7800         (struct program_space) <added_solibs>: Now a std::vector.
7801         * breakpoint.c (print_solib_event): Update.
7802         (check_status_catch_solib): Update.
7803         * progspace.c (clear_program_space_solib_cache): Update.
7804         * solib.c (update_solib_list): Update.
7805
7806 2018-05-29  Tom Tromey  <tom@tromey.com>
7807
7808         * python/py-type.c (typy_richcompare): Update.
7809         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
7810         * gdbtypes.h (types_deeply_equal): Return bool.
7811         (types_equal): Likewise.
7812         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
7813         declare VEC.
7814         (check_types_equal): Change worklist to std::vector.  Return
7815         bool.
7816         (struct type_equality_entry): Add constructor.
7817         (compare_maybe_null_strings): Return bool.
7818         (check_types_worklist): Return bool.  Change worklist to
7819         std::vector.
7820         (types_deeply_equal): Use std::vector.
7821         (types_equal): Return bool.
7822         (compare_maybe_null_strings): Simplify.
7823
7824 2018-05-29  Tom Tromey  <tom@tromey.com>
7825
7826         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
7827
7828 2018-05-29  Tom Tromey  <tom@tromey.com>
7829
7830         * objc-lang.h: Don't include cp-support.h.
7831         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
7832         declare VEC.
7833
7834 2018-05-27  Tom Tromey  <tom@tromey.com>
7835
7836         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
7837
7838 2018-05-25  Tom Tromey  <tom@tromey.com>
7839
7840         * value.c (value::location): Initialize.
7841
7842 2018-05-25  Tom Tromey  <tom@tromey.com>
7843
7844         * dbxread.c (init_bincl_list): Remove.
7845         (bincl_list): Now a std::vector.
7846         (bincls_allocated, next_bincl): Remove.
7847         (free_bincl_list, do_free_bincl_list_cleanup)
7848         (make_cleanup_free_bincl_list): Remove.
7849         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
7850         unique_xmalloc_ptr.
7851         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
7852         (struct header_file_location): Add constructor.
7853         (add_bincl_to_list): Remove.
7854
7855 2018-05-25  Tom Tromey  <tom@tromey.com>
7856
7857         * tui/tui.c (tui_enable): Update.
7858         * mi/mi-interp.c (mi_interp::init): Update.
7859         * interps.h (class interp) <name>: New method.
7860         <m_name>: Rename from name.
7861         (~scoped_restore_interp): Update.
7862         * interps.c (interp::interp): Update.
7863         (interp_add, interp_set, interp_lookup_existing)
7864         (current_interp_named_p): Update.
7865
7866 2018-05-25  Tom Tromey  <tom@tromey.com>
7867
7868         * interps.c (interp_name): Remove.
7869         * mi/mi-interp.c (mi_interp::init): Update.
7870         * interps.h (interp_name): Remove.
7871         (~scoped_restore_interp): Update.
7872         * tui/tui.c (tui_enable): Update.
7873
7874 2018-05-25  Tom Tromey  <tom@tromey.com>
7875
7876         * utils.c (fputs_maybe_filtered): Update.
7877         * linespec.c (decode_line_full): Update.
7878         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
7879         (mi_print_breakpoint_for_event, mi_solib_loaded)
7880         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
7881         (mi_user_selected_context_changed): Update.
7882         * mi/mi-main.c (mi_execute_command): Update.
7883         * cli/cli-script.c (execute_control_command): Update.
7884         * python/python.c (execute_gdb_command): Update.
7885         * solib.c (info_sharedlibrary_command): Update.
7886         * interps.c (interp_ui_out): Remove.
7887         * interps.h (interp_ui_out): Remove.
7888
7889 2018-05-25  Tom Tromey  <tom@tromey.com>
7890
7891         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
7892         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
7893         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
7894
7895 2018-05-25  Tom Tromey  <tom@tromey.com>
7896
7897         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
7898         * interps.c (interp_exec): Use scoped_restore.
7899
7900 2018-05-25  Tom Tromey  <tom@tromey.com>
7901
7902         * remote.c (remote_target::remote_file_get): Use
7903         gdb::byte_vector.
7904         (remote_target::remote_file_put): Likewise.
7905
7906 2018-05-25  Tom Tromey  <tom@tromey.com>
7907
7908         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
7909         a std::string.
7910         (get_pe_section_index, add_pe_exported_sym): Update.
7911         (read_pe_exported_syms): Use gdb::def_vector.
7912
7913 2018-05-25  Tom Tromey  <tom@tromey.com>
7914
7915         * frame.c (remove_prev_frame): Remove.
7916         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
7917
7918 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
7919
7920         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
7921         Remove prototypes.
7922         * mips-linux-nat.c (supply_fpregset): Always call
7923         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
7924         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
7925         `mips_fill_fpregset'.
7926         * mips-linux-tdep.c (mips_supply_fpregset)
7927         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
7928         (mips_fill_fpregset_wrapper): Remove functions.
7929         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
7930         (mips_linux_fpregset): Remove variable.
7931         (mips_linux_iterate_over_regset_sections): Use
7932         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
7933         (mips_linux_o32_sigframe_init): Remove comment.
7934
7935 2018-05-25  Pedro Alves  <palves@redhat.com>
7936
7937         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
7938         (struct readahead_cache, struct packet_reg, struct
7939         remote_arch_state, class remote_state): Move higher up in the
7940         file.
7941         (remote_target::m_remote_state): Now an object instead of a pointer.
7942         (remote_target::get_remote_state): Adjust.
7943
7944 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
7945
7946         * stack.c (select_and_print_frame): Delete.
7947         (struct function_bounds): Move struct within function.
7948         (func_command): Most content moved into new function
7949         find_frame_for_function, use new function, print result, add
7950         function comment.
7951         (find_frame_for_function): New function, now returns a result.
7952
7953 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7954
7955         * stack.c (iterate_over_block_arg_vars): Fix comment.
7956         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
7957
7958 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
7959
7960         PR gdb/23203
7961         * frame.c
7962         (scoped_restore_selected_frame::scoped_restore_selected_frame):
7963         Define.
7964         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
7965         Define.
7966         * frame.h (class scoped_restore_selected_frame): New class.
7967         * stack.c (print_frame_local_vars): Remove catching and rethrowing
7968         of any exception, use scoped_restore_selected_frame to restore the
7969         frame instead.
7970
7971 2018-05-24  Pedro Alves  <palves@redhat.com>
7972
7973         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
7974         override.
7975
7976 2018-05-23  Tom Tromey  <tom@tromey.com>
7977
7978         * complaints.c (struct complaints): Remove.
7979         (symfile_complaint_book): Remove.
7980         (series): New global.
7981         (complaint_internal): Update.
7982         (clear_complaints): Update.
7983
7984 2018-05-23  Tom Tromey  <tom@tromey.com>
7985
7986         * complaints.c (counters): New global.
7987         (struct complain): Remove.
7988         (struct complaints) <root>: Remove.
7989         (complaint_sentinel): Remove.
7990         (symfile_complaint_book): Update.
7991         (find_complaint) Remove.
7992         (complaint_internal, clear_complaints): Update.
7993
7994 2018-05-23  Tom Tromey  <tom@tromey.com>
7995
7996         * complaints.c (struct complain) <file, line>: Remove.
7997         (find_complaint): Remove file, line parameters.
7998         (complaint_internal): Update.
7999
8000 2018-05-23  Tom Tromey  <tom@tromey.com>
8001
8002         * complaints.c (vcomplaint): Remove.
8003         (complaint_internal) Merge in contents of vcomplaint.
8004
8005 2018-05-23  Tom Tromey  <tom@tromey.com>
8006
8007         * complaints.c (struct complaints) <explanation>: Remove.
8008         (symfile_explanations): Remove.
8009         (symfile_complaint_book): Update.
8010         (vcomplaint): Update.
8011         (struct explanation): Remove.
8012
8013 2018-05-23  Tom Tromey  <tom@tromey.com>
8014
8015         * complaints.c (symfile_complaints): Remove.
8016         (complaint_internal): Remove "complaints" parameter.
8017         (clear_complaints, vcomplaint): Remove "c" parameter.
8018         (get_complaints): Remove.
8019         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
8020         (dwarf2_debug_line_missing_file_complaint)
8021         (dwarf2_debug_line_missing_end_sequence_complaint)
8022         (dwarf2_complex_location_expr_complaint)
8023         (dwarf2_const_value_length_mismatch_complaint)
8024         (dwarf2_section_buffer_overflow_complaint)
8025         (dwarf2_macro_malformed_definition_complaint)
8026         (dwarf2_invalid_attrib_class_complaint)
8027         (create_addrmap_from_index, dw2_symtab_iter_next)
8028         (dw2_expand_marked_cus)
8029         (dw2_debug_names_iterator::find_vec_in_debug_names)
8030         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
8031         (create_debug_type_hash_table, init_cutu_and_read_dies)
8032         (partial_die_parent_scope, add_partial_enumeration)
8033         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
8034         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
8035         (read_import_statement, read_file_scope, create_dwo_cu_reader)
8036         (create_cus_hash_table, create_dwp_hash_table)
8037         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
8038         (dwarf2_rnglists_process, dwarf2_ranges_process)
8039         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
8040         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
8041         (handle_struct_member_die, process_structure_scope)
8042         (read_array_type, read_common_block, read_module_type)
8043         (read_tag_pointer_type, read_typedef, read_base_type)
8044         (read_subrange_type, load_partial_dies, partial_die_info::read)
8045         (partial_die_info::read, partial_die_info::read)
8046         (partial_die_info::read, read_checked_initial_length_and_offset)
8047         (dwarf2_string_attr, read_formatted_entries)
8048         (dwarf_decode_line_header)
8049         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
8050         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
8051         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
8052         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
8053         (get_signatured_type, get_DW_AT_signature_type)
8054         (decode_locdesc, file_file_name, consume_improper_spaces)
8055         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
8056         (dwarf_decode_macro_bytes, dwarf_decode_macros)
8057         (dwarf2_symbol_mark_computed, set_die_type)
8058         (read_attribute_value): Update.
8059         * stap-probe.c (handle_stap_probe, get_stap_base_address):
8060         Update.
8061         * dbxread.c (unknown_symtype_complaint)
8062         (lbrac_mismatch_complaint, repeated_header_complaint)
8063         (set_namestring, function_outside_compilation_unit_complaint)
8064         (read_dbx_symtab, process_one_symbol): Update.
8065         * gdbtypes.c (stub_noname_complaint): Update.
8066         * windows-nat.c (handle_unload_dll): Update.
8067         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
8068         (decode_base_type): Update.
8069         * xcoffread.c (bf_notfound_complaint, ef_complaint)
8070         (eb_complaint, record_include_begin, record_include_end)
8071         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
8072         (process_xcoff_symbol, read_symbol)
8073         (function_outside_compilation_unit_complaint)
8074         (scan_xcoff_symtab): Update.
8075         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
8076         * buildsym.c (finish_block_internal, make_blockvector)
8077         (end_symtab_get_static_block, augment_type_symtab): Update.
8078         * dtrace-probe.c (dtrace_process_dof)
8079         (dtrace_static_probe_ops::get_probes): Update.
8080         * complaints.h (struct complaint): Don't declare.
8081         (symfile_complaints): Remove.
8082         (complaint_internal): Remove "complaints" parameter.
8083         (complaint): Likewise.
8084         (clear_complaints): Likewise.
8085         * symfile.c (syms_from_objfile_1, finish_new_objfile)
8086         (reread_symbols): Update.
8087         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
8088         (dwarf2_frame_cache, decode_frame_entry): Update.
8089         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
8090         * objc-lang.c (lookup_objc_class, lookup_child_selector)
8091         (info_selectors_command): Update.
8092         * macrotab.c (macro_include, check_for_redefinition)
8093         (macro_undef): Update.
8094         * objfiles.c (filter_overlapping_sections): Update.
8095         * stabsread.c (invalid_cpp_abbrev_complaint)
8096         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
8097         (define_symbol, error_type, read_type, rs6000_builtin_type)
8098         (stabs_method_name_from_physname, read_member_functions)
8099         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
8100         (attach_fields_to_type, complain_about_struct_wipeout)
8101         (read_range_type, read_args, common_block_start)
8102         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
8103         Update.
8104         * mdebugread.c (index_complaint, unknown_ext_complaint)
8105         (basic_type_complaint, bad_tag_guess_complaint)
8106         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
8107         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
8108         (parse_procedure, parse_lines)
8109         (function_outside_compilation_unit_complaint)
8110         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
8111         (bad_tag_guess_complaint, reg_value_complaint): Update.
8112         * cp-support.c (demangled_name_complaint): Update.
8113         * macroscope.c (sal_macro_scope): Update.
8114         * dwarf-index-write.c (class debug_names): Update.
8115
8116 2018-05-23  Tom Tromey  <tom@tromey.com>
8117
8118         * complaints.c (clear_complaints): Remove "noisy" parameter.
8119         * complaints.h (clear_complaints): Update.
8120         * symfile.c (syms_from_objfile_1, finish_new_objfile)
8121         (reread_symbols): Update.
8122
8123 2018-05-23  Tom Tromey  <tom@tromey.com>
8124
8125         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
8126         SUBSEQUENT_MESSAGE.
8127         (vcomplaint, clear_complaints): Update.
8128         (symfile_explanations): Remove some messages.
8129
8130 2018-05-23  Tom Tromey  <tom@tromey.com>
8131
8132         * complaints.c (internal_complaint): Remove.
8133         * complaints.h (internal_complaint): Remove.
8134
8135 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
8136
8137         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
8138
8139 2018-05-22  Pedro Alves  <palves@redhat.com>
8140
8141         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
8142         (remote_fileio_badfd, remote_fileio_return_errno)
8143         (remote_fileio_return_success, remote_fileio_func_open)
8144         (remote_fileio_func_open, remote_fileio_func_close)
8145         (remote_fileio_func_read, remote_fileio_func_write)
8146         (remote_fileio_func_lseek, remote_fileio_func_rename)
8147         (remote_fileio_func_unlink, remote_fileio_func_stat)
8148         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
8149         (remote_fileio_func_isatty, remote_fileio_func_system): Add
8150         remote_target parameter.
8151         (remote_fio_func_map) <func>: Add remote_target parameter.
8152         (do_remote_fileio_request, remote_fileio_request):
8153         * remote-fileio.h (remote_fileio_request):
8154         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
8155         remote_target parameter.
8156         (remote_notif_process, handle_notification): Adjust to pass down
8157         the remote.
8158         (remote_notif_state_allocate): Add remote_target parameter.  Save
8159         it.
8160         * remote-notif.h (struct remote_target): Forward declare.
8161         (struct notif_client) <parse, ack, can_get_pending_events>: Add
8162         remote_target parameter.
8163         (struct remote_notif_state) <remote>: New field.
8164         (remote_notif_ack, remote_notif_parse): Add remote_target
8165         parameter.
8166         (remote_notif_state_allocate, remote_notif_state_allocate): Add
8167         remote_target parameter.
8168         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
8169         (threads_listing_context, rmt_thread_action, protocol_feature)
8170         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
8171         (packet_result, struct threads_listing_context, remote_state):
8172         Move definitions and declarations higher up.
8173         (remote_target) <~remote_target>: Declare.
8174         (remote_download_command_source, remote_file_put, remote_file_get)
8175         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
8176         (remote_hostio_pread_vFile, remote_hostio_send_command)
8177         (remote_hostio_set_filesystem, remote_hostio_open)
8178         (remote_hostio_close, remote_hostio_unlink, remote_state)
8179         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
8180         (get_memory_write_packet_size, get_memory_read_packet_size)
8181         (append_pending_thread_resumptions, remote_detach_1)
8182         (append_resumption, remote_resume_with_vcont)
8183         (add_current_inferior_and_thread, wait_ns, wait_as)
8184         (process_stop_reply, remote_notice_new_inferior)
8185         (process_initial_stop_replies, remote_add_thread)
8186         (btrace_sync_conf, remote_btrace_maybe_reopen)
8187         (remove_new_fork_children, kill_new_fork_children)
8188         (discard_pending_stop_replies, stop_reply_queue_length)
8189         (check_pending_events_prevent_wildcard_vcont)
8190         (discard_pending_stop_replies_in_queue, stop_reply)
8191         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
8192         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
8193         (remote_interrupt_as, remote_interrupt_ns)
8194         (remote_get_noisy_reply, remote_query_attached)
8195         (remote_add_inferior, remote_current_thread, get_current_thread)
8196         (set_thread, set_general_thread, set_continue_thread)
8197         (set_general_process, write_ptid)
8198         (remote_unpack_thread_info_response, remote_get_threadinfo)
8199         (parse_threadlist_response, remote_get_threadlist)
8200         (remote_threadlist_iterator, remote_get_threads_with_ql)
8201         (remote_get_threads_with_qxfer)
8202         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
8203         (get_offsets, remote_check_symbols, remote_supported_packet)
8204         (remote_query_supported, remote_packet_size)
8205         (remote_serial_quit_handler, remote_detach_pid)
8206         (remote_vcont_probe, remote_resume_with_hc)
8207         (send_interrupt_sequence, interrupt_query)
8208         (remote_notif_get_pending_events, fetch_register_using_p)
8209         (send_g_packet, process_g_packet, fetch_registers_using_g)
8210         (store_register_using_P, store_registers_using_G)
8211         (set_remote_traceframe, check_binary_download)
8212         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
8213         (remote_xfer_live_readonly_partial, remote_read_bytes)
8214         (remote_send_printf, remote_flash_write, readchar)
8215         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
8216         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
8217         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
8218         (extended_remote_disable_randomization, extended_remote_run)
8219         (send_environment_packet, extended_remote_environment_support)
8220         (extended_remote_set_inferior_cwd, remote_write_qxfer)
8221         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
8222         (packet_command): Now methods of ...
8223         (remote_target): ... this class.
8224         (m_remote_state) <remote_target>: New field.
8225         (struct remote_state) <stop_reply_queue,
8226         remote_async_inferior_event_token, wait_forever_enabled_p>: New
8227         fields.
8228         (remote_state::remote_state): Allocate stop_reply_queue.
8229         (remote_state): Delete global.
8230         (get_remote_state_raw): Delete.
8231         (remote_target::get_remote_state): Allocate m_remote_state on
8232         demand.
8233         (get_current_remote_target): New.
8234         (remote_ops, extended_remote_ops): Delete.
8235         (wait_forever_enabled_p, remote_async_inferior_event_token):
8236         Delete, moved to struct remote_state.
8237         (remote_target::close): Delete self.  Destruction bits split to
8238         ...
8239         (remote_target::~remote_target): ... this.
8240         (show_memory_packet_size): Adjust to use
8241         get_current_remote_target.
8242         (struct protocol_feature) <func>: Add remote_target parameter.
8243         All callers adjusted.
8244         (curr_quit_handler_target): New.
8245         (remote_serial_quit_handler): Reimplement.
8246         (remote_target::open_1): Adjust to use get_current_remote_target.
8247         Heap-allocate remote_target/extended_remote_target instances.
8248         (vcont_builder::vcont_builder): Add remote_target parameter, and
8249         save it in m_remote.  All callers adjusted.
8250         (vcont_builder::m_remote): New field.
8251         (vcont_builder::restart, vcont_builder::flush)
8252         (vcont_builder::push_action): Use it.
8253         (remote_target::commit_resume): Use it.
8254         (struct queue_iter_param) <remote>: New field.
8255         (remote_target::remove_new_fork_children): Fill in 'remote' field.
8256         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
8257         (check_pending_event_prevents_wildcard_vcont_callback)
8258         (remote_target::check_pending_events_prevent_wildcard_vcont)
8259         (remote_target::discard_pending_stop_replies)
8260         (remote_target::discard_pending_stop_replies_in_queue)
8261         (remote_target::remote_notif_remove_queued_reply): Fill in
8262         'remote' field.
8263         (remote_notif_get_pending_events): New.
8264         (remote_target::readchar, remote_target::remote_serial_write):
8265         Save/restore curr_quit_handler_target.
8266         (putpkt): New.
8267         (kill_new_fork_children): Fill in 'remote' field.
8268         (packet_command): Use get_current_remote_target, defer to
8269         remote_target method of same name.
8270         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
8271         parameter, and save it in m_remote.  All callers adjusted.
8272         (scoped_remote_fd::release): Use m_remote.
8273         (scoped_remote_fd::m_remote): New field.
8274         (remote_file_put, remote_file_get, remote_file_delete): Use
8275         get_current_remote_target, defer to remote_target method of same
8276         name.
8277         (remote_btrace_reset): Add remote_state paremeter.  Update all
8278         callers.
8279         (remote_async_inferior_event_handler). Pass down 'data'.
8280         (remote_new_objfile): Use get_current_remote_target.
8281         (remote_target::vcont_r_supported): New.
8282         (set_range_stepping): Use get_current_remote_target and
8283         remote_target::vcont_r_supported.
8284         (_initialize_remote): Don't allocate 'remote_state' and
8285         'stop_reply_queue' globals.
8286         * remote.h (struct remote_target): Forward declare.
8287         (getpkt, putpkt, remote_notif_get_pending_events): Add
8288         'remote_target' parameter.
8289
8290 2018-05-22  Pedro Alves  <palves@redhat.com>
8291
8292         * remote.c (vcont_builder): Now a class.  Make all data members
8293         private.
8294         (vcont_builder) <vcont_builder, restart, flush, push_action>:
8295         Declare methods.
8296         (vcont_builder_restart): Rename to ...
8297         (vcont_builder::restart): ... this.
8298         (vcont_builder_flush): Rename to ...
8299         (vcont_builder::flush): ... this.
8300         (vcont_builder_push_action): Rename to ...
8301         (vcont_builder::push_action): ... this.
8302         (remote_target::commit_resume): Adjust.
8303
8304 2018-05-22  Pedro Alves  <palves@redhat.com>
8305
8306         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
8307         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
8308         (get_fixed_memory_packet_size): New.
8309         (get_memory_packet_size): Use it.
8310         (set_memory_packet_size): Don't override the config size with
8311         DEFAULT_MAX_MEMORY_PACKET_SIZE.
8312         (show_memory_packet_size): Use get_fixed_memory_packet_size.
8313         Don't refer to get_memory_packet_size if not connected to a remote
8314         target.  Show "(default)" if configured size is 0.
8315
8316 2018-05-22  Pedro Alves  <palves@redhat.com>
8317
8318         * remote.c (remote_target::mourn_inferior): Move
8319         discard_pending_stop_replies call here from ...
8320         (_initialize_remote): ... here.
8321
8322 2018-05-22  Pedro Alves  <palves@redhat.com>
8323
8324         * remote.c (compare_section_command): Remove set_general_process
8325         call.
8326
8327 2018-05-22  Pedro Alves  <palves@redhat.com>
8328
8329         * remote.c (struct packet_reg, struct remote_arch_state):
8330         Move higher up in the file.
8331         (remote_state) <m_arch_states>: Store remote_arch_state values
8332         instead of remote_arch_state pointers.
8333         (remote_state::get_remote_arch_state): Adjust.
8334
8335 2018-05-22  Pedro Alves  <palves@redhat.com>
8336
8337         * remote.c: Include <unordered_map>.
8338         (remote_state): Now a class.
8339         (remote_state) <get_remote_arch_state>: Declare method.
8340         <get_remote_arch_state>: New field.
8341         (remote_arch_state) <remote_arch_state>: Declare ctor.
8342         <regs>: Now a unique_ptr.
8343         (remote_gdbarch_data_handle): Delete.
8344         (get_remote_arch_state): Delete.
8345         (remote_state::get_remote_arch_state): New.
8346         (get_remote_state): Adjust to call remote_state's
8347         get_remote_arch_state method.
8348         (init_remote_state): Delete, bits factored out to ...
8349         (remote_arch_state::remote_arch_state): ... this new method.
8350         (get_remote_packet_size, get_memory_packet_size)
8351         (process_g_packet, remote_target::fetch_registers)
8352         (remote_target::prepare_to_store, store_registers_using_G)
8353         (remote_target::store_registers, remote_target::get_trace_status):
8354         Adjust to call remote_state's method.
8355         (_initialize_remote): Remove reference to
8356         remote_gdbarch_data_handle.
8357
8358 2018-05-22  Pedro Alves  <palves@redhat.com>
8359
8360         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
8361         pread>: New method declarations.
8362         (remote_target::open_1): Adjust.
8363         (readahead_cache_invalidate): Rename to ...
8364         (readahead_cache::invalidate): ... this, and adjust to be a class
8365         method.
8366         (readahead_cache_invalidate_fd): Rename to ...
8367         (readahead_cache::invalidate_fd): ... this, and adjust to be a
8368         class method.
8369         (remote_hostio_pwrite): Adjust.
8370         (remote_hostio_pread_from_cache): Rename to ...
8371         (readahead_cache::pread): ... this, and adjust to be a class
8372         method.
8373         (remote_hostio_close): Adjust.
8374
8375 2018-05-22  Pedro Alves  <palves@redhat.com>
8376
8377         * remote.c (remote_hostio_close_cleanup): Delete.
8378         (class scoped_remote_fd): New.
8379         (remote_file_put, remote_file_get): Use it.
8380
8381 2018-05-22  Pedro Alves  <palves@redhat.com>
8382
8383         (struct vCont_action_support): Use bool and initialize all fields.
8384         (struct readahead_cache): Initialize all fields.
8385         (remote_state): Use bool and initialize all fields.
8386         (remote_state::remote_state, remote_state::~remote_state): New.
8387         (new_remote_state): Delete.
8388         (_initialize_remote): Use new to allocate remote_state.
8389
8390 2018-05-22  Pedro Alves  <palves@redhat.com>
8391             張俊芝  <zjz@zjz.name>
8392
8393         PR gdb/22973
8394         * c-exp.y: Include "c-support.h".
8395         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
8396         of tolower.  Use c_ident_is_alpha to scan names.
8397         * c-lang.c: Include "c-support.h".
8398         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
8399         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
8400         * c-support.h: New file, with bits factored out from ...
8401         * cp-name-parser.y: ... this file.
8402         Include "c-support.h".
8403         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
8404         c-support.h and renamed.
8405         (symbol_end, yylex): Adjust.
8406
8407 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8408
8409         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
8410         parameter type to CORE_ADDR.
8411         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
8412         parameter type in declaration to CORE_ADDR.
8413         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
8414         target_auxv_search to get AT_HWCAP and use the result to get the
8415         target description.
8416         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
8417         to CORE_ADDR. Remove the cast of the return value to unsigned
8418         long. Fix error predicate of target_auxv_search.
8419         (ppc_linux_nat_target::read_description): Change the type of the
8420         hwcap variable to CORE_ADDR.
8421
8422 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8423
8424         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
8425         if the size of fpscr is larger than 32 bits.
8426
8427 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8428
8429         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
8430         (ppc32_linux_vsxregmap): New global.
8431         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
8432         regcache_supply_regset, and regcache_collect_regset.
8433         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
8434         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
8435         (fetch_vsx_register, store_vsx_register): Remove.
8436         (fetch_vsx_registers): Add regno parameter. Get regset using
8437         ppc_linux_vsxregset. Use regset to supply registers.
8438         (store_vsx_registers): Add regno parameter. Get regset using
8439         ppc_linux_vsxregset. Use regset to collect registers.
8440         (fetch_register): Call fetch_vsx_registers instead of
8441         fetch_vsx_register.
8442         (store_register): Call store_vsx_registers instead of
8443         store_vsx_register.
8444         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
8445         new regno parameter.
8446         (store_ppc_registers): Call store_vsx_registers with -1 for the
8447         new regno parameter.
8448         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
8449         (ppc_collect_vsxregset): Remove.
8450
8451 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8452
8453         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
8454         offset fields.
8455         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
8456         for vector register offset fields.
8457         (ppc64_fbsd_reg_offsets): Likewise.
8458         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
8459         to vector register offset fields.
8460         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
8461         to vector register offset fields.
8462         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
8463         vector register offset fields.
8464         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
8465         initializers for vector register offset fields.
8466         (rs6000_aix64_reg_offsets): Likewise.
8467         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
8468         (ppc_supply_vrregset): Remove.
8469         (ppc_collect_vrregset): Remove.
8470         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
8471         (ppc_linux_vrregset) : New function.
8472         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
8473         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
8474         (ppc32_linux_vrregset): Remove.
8475         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
8476         and use result instead of ppc32_linux_vrregset.
8477         (ppc32_linux_reg_offsets): Remove initializers for vector register
8478         offset fields.
8479         (ppc64_linux_reg_offsets): Likewise.
8480         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
8481         * ppc-linux-nat.c: Include regset.h.
8482         (gdb_vrregset_t): Adjust comment to account for little-endian
8483         mode.
8484         (supply_vrregset, fill_vrregset): Remove.
8485         (fetch_altivec_register, store_altivec_register): Remove.
8486         (fetch_altivec_registers): Add regno parameter. Get regset using
8487         ppc_linux_vrregset. Use regset to supply registers.
8488         (store_altivec_registers): Add regno parameter. Get regset using
8489         ppc_linux_vrregset. Use regset to collect registers.
8490         (fetch_register): Call fetch_altivec_registers instead of
8491         fetch_altivec_register.
8492         (store_register): Call store_altivec_registers instead of
8493         store_altivec_register.
8494         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
8495         the new regno parameter.
8496         (store_ppc_registers): Call store_altivec_registers with -1 for
8497         the new regno parameter.
8498
8499 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8500
8501         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
8502         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
8503         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
8504         (gdb_vrregset_t): Change array type size to
8505         PPC_LINUX_SIZEOF_VRREGSET.
8506         (gdb_vsxregset_t): Change array type size to
8507         PPC_LINUX_SIZEOF_VSXREGSET.
8508         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
8509         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
8510         PPC_LINUX_SIZEOF_VSXREGSET.
8511
8512 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8513
8514         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
8515         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
8516         nat/ppc-linux.c.
8517         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
8518         ppc_linux_target_wordsize with tid.
8519         (ppc_linux_nat_target::read_description): Call ppc_linux_target
8520         wordsize with tid.
8521         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
8522         (ppc64_64bit_inferior_p): Add static and inline specifiers.
8523         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
8524         tid parameter. Remove static specifier.
8525         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
8526         (ppc_linux_target_wordsize): New declaration.
8527
8528 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8529
8530         * arch/ppc-linux-common.c: New file.
8531         * arch/ppc-linux-common.h: New file.
8532         * arch/ppc-linux-tdesc.h: New file.
8533         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
8534         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
8535         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
8536         arch/ppc-linux-tdesc.h.
8537         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
8538         arch/ppc-linux-tdesc.h.
8539         (ppc_linux_nat_target::read_description): Remove target
8540         description matching code. Fill a ppc_linux_features struct and
8541         call ppc_linux_match_description with it. Move comment about ISA
8542         2.05 to ppc-linux-common.c.
8543         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
8544         arch/ppc-linux-tdesc.h.
8545         (ppc_linux_core_read_description): Remove target description
8546         matching code. Fill a ppc_linux_features struct and call
8547         ppc_linux_match_description with it.
8548         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
8549         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
8550         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
8551         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
8552         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
8553         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
8554         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
8555         (tdesc_powerpc_e500l): Remove.
8556
8557 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
8558
8559         * ada-lang.c (catch_assert_command): Pass empty string instead
8560         of NULL for excep_string argument.
8561
8562 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
8563
8564         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
8565         the width of the requested register exceeds the width of the
8566         `ptrace' data type.
8567
8568 2018-05-21  Tom Tromey  <tom@tromey.com>
8569
8570         * printcmd.c (output_command): Remove.
8571         (output_command_const): Rename to output_command.
8572         * valprint.h (output_command): Rename from output_command_const.
8573         * tracepoint.c (trace_dump_actions): Call output_command.
8574
8575 2018-05-21  Tom Tromey  <tom@tromey.com>
8576
8577         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
8578         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
8579         * ada-lang.h (create_ada_exception_catchpoint): Update.
8580         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
8581         std::string.
8582         (create_excep_cond_exprs, ~ada_catchpoint)
8583         (should_stop_exception, print_one_exception)
8584         (print_mention_exception, print_recreate_exception): Update.
8585         (ada_get_next_arg): Remove.
8586         (catch_ada_exception_command_split): Use std::string.  Change type
8587         of "excep_string", "cond_string".
8588         (catch_ada_exception_command): Update.
8589         (create_ada_exception_catchpoint): Change type of excep_string.
8590         (ada_exception_sal): Remove excep_string parameter.
8591         (~ada_catchpoint): Remove.
8592
8593 2018-05-21  Tom Tromey  <tom@tromey.com>
8594
8595         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
8596         cleanup.
8597
8598 2018-05-21  Tom Tromey  <tom@tromey.com>
8599
8600         * ada-lang.c (ada_exception_message_1, ada_exception_message):
8601         Return unique_xmalloc_ptr.
8602         (print_it_exception): Update.
8603
8604 2018-05-21  Tom Tromey  <tom@tromey.com>
8605
8606         * tracepoint.c (trace_dump_actions): Use std::string.
8607
8608 2018-05-21  Tom Tromey  <tom@tromey.com>
8609
8610         * symfile.c (reread_symbols): Use std::string for original_name.
8611
8612 2018-05-21  Tom Tromey  <tom@tromey.com>
8613
8614         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
8615         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
8616         constructor.
8617
8618 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
8619
8620         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
8621         instance to...
8622         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
8623         * objfiles.c (get_objfile_bfd_data): Allocate
8624         objfile_per_bfd_storage with obstack_new when allocating on
8625         obstack.
8626
8627 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8628
8629         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
8630         OBSTACK_ZALLOC.
8631         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
8632         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
8633         * mdebugread.c (mdebug_build_psymtabs): Likewise.
8634         (add_pending): Likewise.
8635         (parse_symbol): Likewise.
8636         (parse_partial_symbols): Likewise.
8637         (psymtab_to_symtab_1): Likewise.
8638         (new_psymtab): Likewise.
8639         (elfmdebug_build_psymtabs): Likewise.
8640         * minsyms.c (terminate_minimal_symbol_table): Likewise.
8641         * objfiles.c (get_objfile_bfd_data): Likewise.
8642         (objfile_register_static_link): Likewise.
8643         * psymtab.c (allocate_psymtab): Likewise.
8644         * stabsread.c (read_member_functions): Likewise.
8645         * xcoffread.c (xcoff_end_psymtab): Likewise.
8646
8647 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8648
8649         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
8650         compiler supports std::is_trivially_constructible.
8651         * common/poison.h: Include obstack.h.
8652         (IsMallocable): Define to is_trivially_constructible if the
8653         compiler supports it, define to true_type otherwise.
8654         (xobnew): New.
8655         (XOBNEW): Redefine.
8656         (xobnewvec): New.
8657         (XOBNEWVEC): Redefine.
8658         * gdb_obstack.h (obstack_zalloc): New.
8659         (OBSTACK_ZALLOC): Redefine.
8660         (obstack_calloc): New.
8661         (OBSTACK_CALLOC): Redefine.
8662         (obstack_new): New.
8663         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
8664         (gdbarch_obstack): New declaration in gdbarch.h, definition in
8665         gdbarch.c.
8666         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
8667         obstack_calloc/obstack_zalloc.
8668         (gdbarch_obstack_zalloc): Remove.
8669         * target-descriptions.c (tdesc_data_init): Use obstack_new.
8670
8671 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8672
8673         * stack.c (backtrace_command_1): Remove useless variable int i.
8674
8675 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8676
8677         * stack.c (print_frame_info): Fix comment.
8678
8679 2018-05-18  Tom Tromey  <tom@tromey.com>
8680
8681         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
8682         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
8683         (~dwarf2_per_objfile): Update
8684         (dwarf2_get_dwz_file): Use new.
8685         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
8686         unique_ptr.
8687
8688 2018-05-18  Tom Tromey  <tom@tromey.com>
8689
8690         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
8691         unique_ptr.
8692         * dwarf2read.c (struct dwp_file): Add constructor and
8693         initializers.
8694         (open_and_init_dwp_file): Return a unique_ptr.
8695         (dwarf2_per_objfile, create_dwp_hash_table)
8696         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
8697         (lookup_dwo_unit_in_dwp): Update.
8698         (open_and_init_dwp_file, get_dwp_file): Update.
8699
8700 2018-05-18  Tom Tromey  <tom@tromey.com>
8701
8702         * dwarf2read.c (dwarf2_per_objfile): Update.
8703         (struct mapped_index): Add initializers.
8704         (dwarf2_read_index): Use new.
8705         (dw2_symtab_iter_init): Update.
8706         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
8707         unique_ptr.
8708
8709 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8710
8711         * dwarf2read.c (mapped_index) <total_size>: Remove.
8712
8713 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8714
8715         * unittests/format_pieces-selftests.c (test_format_specifier):
8716         Add ARI comments.
8717
8718 2018-05-18  Tom Tromey  <tom@tromey.com>
8719
8720         * c-typeprint.c (maybe_print_hole): New function.
8721         (c_print_type_struct_field_offset): Update.
8722         (c_type_print_base_struct_union): Call maybe_print_hole.
8723
8724 2018-05-17  Keith Seitz  <keiths@redhat.com>
8725
8726         * breakpoint.c (build_bpstat_chain): New function, moved from
8727         bpstat_stop_status.
8728         (bpstat_stop_status): Add optional parameter, `stop_chain'.
8729         If no stop chain is passed, call build_bpstat_chain to build it.
8730         * breakpoint.h (build_bpstat_chain): Declare.
8731         (bpstat_stop_status): Move documentation here from breakpoint.c.
8732         * infrun.c (handle_signal_stop): Before eliding inlined frames,
8733         build the stop chain and pass it to skip_inline_frames.
8734         Pass this stop chain to bpstat_stop_status.
8735         * inline-frame.c: Include breakpoint.h.
8736         (stopped_by_user_bp_inline_frame): New function.
8737         (skip_inline_frames): Add parameter `stop_chain'.
8738         Move documention to inline-frame.h.
8739         If non-NULL, use stopped_by_user_bp_inline_frame to determine
8740         whether the frame should be elided.
8741         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
8742         Add moved documentation and update for new parameter.
8743
8744 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
8745
8746         PR cli/14975
8747         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
8748         unittests/format_pieces-selftests.c.
8749         * common/format.h (format_piece) <operator==>: New.
8750         (format_pieces) <operator[]>: Remove.
8751         * common/format.c (format_pieces::format_pieces): Handle \e.
8752         * unittests/format_pieces-selftests.c: New.
8753
8754 2018-05-17  Tom Tromey  <tom@tromey.com>
8755
8756         PR symtab/23010:
8757         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
8758         (dw2_instantiate_symtab): Add skip_partial parameter.
8759         (dw2_find_last_source_symtab, dw2_map_expand_apply)
8760         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
8761         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
8762         (dw2_expand_symtabs_matching_one)
8763         (dw2_find_pc_sect_compunit_symtab)
8764         (dw2_debug_names_lookup_symbol)
8765         (dw2_debug_names_expand_symtabs_for_function): Update.
8766         (init_cutu_and_read_dies): Add skip_partial parameter.
8767         (process_psymtab_comp_unit, build_type_psymtabs_1)
8768         (process_skeletonless_type_unit, load_partial_comp_unit)
8769         (psymtab_to_symtab_1): Update.
8770         (load_full_comp_unit): Add skip_partial parameter.
8771         (process_imported_unit_die, dwarf2_read_addr_index)
8772         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
8773         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
8774         (read_signatured_type): Update.
8775
8776 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
8777
8778         * value.c (release_value): Remove unused variable.
8779         (record_latest_value): Likewise.
8780         (access_value_history): Likewise.
8781         (preserve_values): Likewise.
8782
8783 2018-05-17  Tom Tromey  <tom@tromey.com>
8784
8785         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
8786         Initialize.
8787
8788 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
8789
8790         PR gdb/22286
8791         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
8792         Also handle registers whose width is not a multiple of
8793         PTRACE_TYPE_RET.
8794         (linux_nat_trad_target::store_register): Likewise.
8795
8796 2018-05-16  Tom Tromey  <tom@tromey.com>
8797
8798         * gdbcore.h (core_bfd): Redefine.
8799         * corelow.c (core_target::close): Update.
8800         (core_target_open): Update.
8801         * progspace.h (struct program_space) <cbfd>: Now a
8802         gdb_bfd_ref_ptr.
8803
8804 2018-05-16  Tom Tromey  <tom@tromey.com>
8805
8806         PR cli/19551:
8807         * symfile-add-flags.h (enum symfile_add_flags)
8808         <SYMFILE_NOT_FILENAME>: New constant.
8809         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
8810         objfile name from BFD.
8811         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
8812         * minidebug.c (find_separate_debug_file_in_section): Put
8813         ".gnu_debugdata" into BFD's file name.
8814
8815 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
8816
8817         * regcache.c (regcache_read_ftype, regcache_write_ftype):
8818         Remove.
8819
8820 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
8821
8822         PR binutils/21446
8823         * aarch64-tdep.c (aarch64_analyze_prologue,
8824         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
8825         Indicate not interested in errors.
8826
8827 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
8828
8829         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
8830         Supply the MIPS_ZERO_REGNUM register.
8831
8832 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
8833
8834         * mips-tdep.c (mask_address_var): Make variable static.
8835
8836 2018-05-14  Tom Tromey  <tom@tromey.com>
8837
8838         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
8839
8840 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
8841
8842         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
8843         FXSAVE_ADDR for the mxcsr register.
8844
8845 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
8846
8847         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
8848
8849 2018-05-11  Pedro Alves  <palves@redhat.com>
8850
8851         * corelow.c (core_target) <core_target>: No longer inline.
8852         Initialize m_core_gdbarch, m_core_vec and build the section table
8853         here.
8854         <~core_target>: New.
8855         <core_gdbarch, get_core_register_section>: New methods.
8856         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
8857         factored out from ...
8858         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
8859         (core_ops): Delete.
8860         (sniff_core_bfd): Add gdbarch parameter.
8861         (core_close): Delete, merged into ...
8862         (core_target::close): ... here.  Delete self.
8863         (core_close_cleanup): Delete.
8864         (core_target_open): Allocate a core_target on the heap.  Use a
8865         unique_ptr instead of a cleanup.  Bits moved into the core_target
8866         ctor.  Adjust to use core_target methods instead of globals.
8867         (get_core_register_section): Rename to ...
8868         (core_target::get_core_register_section): ... this and adjust.
8869         (struct get_core_registers_cb_data): New.
8870         (get_core_registers_cb): Use it.  Use bool.
8871         (core_target::fetch_registers, core_target::files_info)
8872         (core_target::xfer_partial, core_target::read_description)
8873         (core_target::pid_to, core_target::thread_name): Adjust to
8874         reference class fields instead of globals.
8875         * target.h (struct target_ops_deleter, target_ops_up): New.
8876
8877 2018-05-11  Pedro Alves  <palves@redhat.com>
8878
8879         * corefile.c (core_file_command): Move to corelow.c.
8880         * corelow.c (the_core_target): Delete.
8881         (core_file_command): Moved from corefile.c.  Check exec_bfd
8882         instead of the_core_target.  Use target_detach instead of calling
8883         into the_core_target directly.
8884         (maybe_say_no_core_file_now): New.
8885         (core_target::detach): Use it.
8886         (_initialize_corelow): Remove references to the_core_target.
8887         * gdbcore.h (the_core_target): Delete.
8888
8889 2018-05-11  Tom Tromey  <tromey@redhat.com>
8890             Pedro Alves  <palves@redhat.com>
8891
8892         * corefile.c (core_bfd): Remove.
8893         * gdbcore.h (core_bfd): Now a macro.
8894         * progspace.h (struct program_space) <cbfd>: New field.
8895
8896 2018-05-11  Tom Tromey  <tom@tromey.com>
8897
8898         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
8899         gdb::def_vector.
8900
8901 2018-05-10  Tom Tromey  <tom@tromey.com>
8902
8903         * configure: Rebuild.
8904         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
8905
8906 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
8907
8908         PR server/23158:
8909         * regformats/regdat.sh: Adjust script, following the addition
8910         of the new expedite_regs parameter to init_target_desc.
8911
8912 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
8913     
8914         PR gdb/23127
8915         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
8916         set_gdbarch_significant_addr_bit.
8917         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
8918         set_gdbarch_significant_addr_bit.
8919         * utils.c (address_significant): Update to sign extend addr.
8920
8921 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
8922
8923         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
8924         (xtensa_linux_init_abi): Limit tdep->num_regs by
8925         tdep->num_nopriv_regs.
8926         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
8927         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
8928         not initialized.
8929
8930 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
8931
8932         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
8933
8934 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
8935
8936         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
8937         (I387_MXCSR_INIT_VAL): New constant.
8938         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
8939         buffer if it was supplied by the inferior.
8940         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
8941         (i387_xsave_get_clear_bv): New function.
8942         (i387_supply_xsave): Only read x87 control registers from the
8943         xsave buffer if the feature is enabled, and the state will have
8944         been written, otherwise, provide a suitable default.
8945         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
8946         including x87 control registers.  Update control registers if they
8947         have changed from the default value, and mark features as enabled
8948         as required.
8949         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
8950
8951 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
8952
8953         * spu-tdep.c (info_spu_event_command): Fix output formatting.
8954
8955 2018-05-07  Tom Tromey  <tom@tromey.com>
8956
8957         * configure: Rebuild.
8958         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
8959
8960 2018-05-07  Tom Tromey  <tom@tromey.com>
8961
8962         PR tdep/20362:
8963         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
8964         bit.  Use correct value for VDIV.
8965
8966 2018-05-04  Tom Tromey  <tom@tromey.com>
8967
8968         * configure: Rebuild.
8969         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
8970
8971 2018-05-04  Tom Tromey  <tom@tromey.com>
8972
8973         * linux-record.c (record_linux_system_call) <case
8974         RECORD_SYS_RECVFROM>: Add "break".
8975
8976 2018-05-04  Tom Tromey  <tom@tromey.com>
8977
8978         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
8979         Add missing "break".
8980         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
8981         Add missing "break".
8982
8983 2018-05-04  Tom Tromey  <tom@tromey.com>
8984
8985         * rs6000-tdep.c (ppc_process_record_op4)
8986         (ppc_process_record_op63): Add fall-through comment.
8987
8988 2018-05-04  Tom Tromey  <tom@tromey.com>
8989
8990         * i386-tdep.c (i386_process_record): Add fall-through comment.
8991
8992 2018-05-04  Tom Tromey  <tom@tromey.com>
8993
8994         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
8995         comment.
8996
8997 2018-05-04  Tom Tromey  <tom@tromey.com>
8998
8999         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
9000         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
9001         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
9002         comment.
9003         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
9004         comment.
9005         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
9006         comment.
9007
9008 2018-05-04  Tom Tromey  <tom@tromey.com>
9009
9010         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
9011
9012 2018-05-04  Tom Tromey  <tom@tromey.com>
9013
9014         * s390-tdep.c (s390_process_record): Fix fall-through comments.
9015         * xcoffread.c (scan_xcoff_symtab): Move comment later.
9016         * symfile.c (section_is_mapped): Fix fall-through comment.
9017         * stabsread.c (define_symbol, read_member_functions): Fix
9018         fall-through comment.
9019         * s390-linux-tdep.c (s390_process_record): Fix fall-through
9020         comment.
9021         * remote.c (remote_wait_as): Fix fall-through comment.
9022         * p-exp.y (yylex): Fix fall-through comment.
9023         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
9024         comment.
9025         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
9026         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
9027         * jv-exp.y (yylex): Fix fall-through comment.
9028         * go-exp.y (lex_one_token): Fix fall-through comment.
9029         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
9030         fall-through comment.
9031         * f-exp.y (yylex): Fix fall-through comment.
9032         * dwarf2read.c (process_die): Fix fall-through comments.
9033         * dbxread.c (process_one_symbol): Fix fall-through comment.
9034         * d-exp.y (lex_one_token): Fix fall-through comment.
9035         * cp-name-parser.y (yylex): Fix fall-through comment.
9036         * coffread.c (coff_symtab_read): Fix fall-through comment.
9037         * c-exp.y (lex_one_token): Fix fall-through comment.
9038         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
9039         comment.
9040         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
9041         comment.
9042
9043 2018-05-04  Tom Tromey  <tom@tromey.com>
9044
9045         PR python/22730:
9046         * NEWS: Mention gdb.execute change.
9047         * gdbcmd.h (execute_control_command): Don't declare.
9048         * python/python.c (execute_gdb_command): Use read_command_lines_1,
9049         execute_control_commands, execute_control_commands_to_string.
9050         * cli/cli-script.h (execute_control_commands)
9051         (execute_control_commands_to_string): Declare.
9052         (execute_control_command): Add from_tty parameter.
9053         * cli/cli-script.c (execute_control_commands)
9054         (execute_control_commands_to_string): New functions.
9055         (execute_user_command): Use execute_control_commands.
9056         (execute_control_command_1): Add "from_tty" parameter.  Update.
9057         (execute_control_command): Likewise.
9058
9059 2018-05-04  Tom Tromey  <tom@tromey.com>
9060
9061         PR python/22731:
9062         * NEWS: Mention that breakpoint commands are writable.
9063         * python/py-breakpoint.c (bppy_set_commands): New function.
9064         (breakpoint_object_getset) <"commands">: Use it.
9065
9066 2018-05-04  Tom Tromey  <tom@tromey.com>
9067
9068         * tracepoint.c (actions_command): Update.
9069         * mi/mi-cmd-break.c (mi_command_line_array)
9070         (mi_command_line_array_cnt, mi_command_line_array_ptr)
9071         (mi_read_next_line): Remove.
9072         (mi_cmd_break_commands): Update.
9073         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
9074         function_view.
9075         * cli/cli-script.c (get_command_line): Update.
9076         (process_next_line): Use function_view.  Constify.
9077         (recurse_read_control_structure, read_command_lines)
9078         (read_command_lines_1): Change argument types to function_view.
9079         (do_define_command, document_command): Update.
9080         * breakpoint.h (check_tracepoint_command): Don't declare.
9081         * breakpoint.c (check_tracepoint_command): Remove.
9082         (commands_command_1, create_tracepoint_from_upload): Update.
9083
9084 2018-05-04  Tom Tromey  <tom@tromey.com>
9085
9086         PR gdb/11750:
9087         * cli/cli-script.h (enum command_control_type) <define_control>:
9088         New constant.
9089         * cli/cli-script.c (multi_line_command_p): Handle define_control.
9090         (build_command_line, execute_control_command_1)
9091         (process_next_line): Likewise.
9092         (do_define_command): New function, extracted from define_command.
9093         (define_command): Use it.
9094
9095 2018-05-04  Tom Tromey  <tom@tromey.com>
9096
9097         * tracepoint.c (actions_command): Update.
9098         * cli/cli-script.h (read_command_lines): Update.
9099         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
9100         (MAX_TMPBUF): Remove define.
9101         (define_command): Use string_printf.
9102         (document_command): Likewise.
9103         * breakpoint.c (commands_command_1): Update.
9104
9105 2018-05-04  Tom Tromey  <tom@tromey.com>
9106
9107         * top.c (execute_command): Update.
9108         * cli/cli-script.h (print_command_lines): Now varargs.
9109         * cli/cli-script.c (print_command_lines): Now varargs.
9110         (execute_control_command_1) <case while_control, case if_control>:
9111         Update.
9112
9113 2018-05-04  Tom Tromey  <tom@tromey.com>
9114
9115         * tracepoint.c (all_tracepoint_actions): Rename from
9116         all_tracepoint_actions_and_cleanup.  Change return type.
9117         (actions_command, encode_actions_1, encode_actions)
9118         (trace_dump_actions, tdump_command): Update.
9119         * remote.c (remote_download_command_source): Update.
9120         * python/python.c (gdbpy_eval_from_control_command)
9121         (python_command, python_interactive_command): Update.
9122         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
9123         * guile/guile.c (guile_command)
9124         (gdbscm_eval_from_control_command, guile_command): Update.
9125         * compile/compile.c (compile_code_command)
9126         (compile_print_command, compile_to_object): Update.
9127         * cli/cli-script.h (struct command_lines_deleter): New.
9128         (counted_command_line): New typedef.
9129         (struct command_line): Add constructor, destructor.
9130         <body_list>: Remove.
9131         <body_list_0, body_list_1>: New members.
9132         (command_line_up): Remove typedef.
9133         (read_command_lines, read_command_lines_1, get_command_line):
9134         Update.
9135         (copy_command_lines): Don't declare.
9136         * cli/cli-script.c (build_command_line): Use "new".
9137         (get_command_line): Return counted_command_line.
9138         (print_command_lines, execute_user_command)
9139         (execute_control_command_1, while_command, if_command): Update.
9140         (realloc_body_list): Remove.
9141         (process_next_line, recurse_read_control_structure): Update.
9142         (read_command_lines, read_command_lines_1): Return counted_command_line.
9143         (free_command_lines): Use "delete".
9144         (copy_command_lines): Remove.
9145         (define_command, document_command, show_user_1): Update.
9146         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
9147         a counted_command_line.
9148         * breakpoint.h (counted_command_line): Remove typedef.
9149         (breakpoint_set_commands): Update.
9150         * breakpoint.c (check_no_tracepoint_commands)
9151         (validate_commands_for_breakpoint): Update.
9152         (breakpoint_set_commands): Change commands to be a
9153         counted_command_line.
9154         (commands_command_1, update_dprintf_command_list)
9155         (create_tracepoint_from_upload): Update.
9156
9157 2018-05-04  Tom Tromey  <tom@tromey.com>
9158
9159         * cli/cli-decode.h (cmd_list_element): New constructor.
9160         (~cmd_list_element): New destructor.
9161         (struct cmd_list_element): Add initializers.
9162         * cli/cli-decode.c (do_add_cmd): Use "new".
9163         (delete_cmd): Use "delete".
9164
9165 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
9166             Pedro Alves <palves@redhat.com>
9167
9168         PR breakpoints/19806 and support for PR external/20207.
9169         * NEWS: Mention Aarch64 watchpoint improvements.
9170         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
9171         watchpoints and PR external/20207 watchpoints.
9172         * nat/aarch64-linux-hw-point.c
9173         (kernel_supports_any_contiguous_range): New.
9174         (aarch64_watchpoint_offset): New.
9175         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
9176         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
9177         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
9178         (aarch64_align_watchpoint): New parameters aligned_offset_p and
9179         next_addr_orig_p.  Support PR external/20207 watchpoints.
9180         (aarch64_downgrade_regs): New.
9181         (aarch64_dr_state_insert_one_point): New parameters offset and
9182         addr_orig.
9183         (aarch64_dr_state_remove_one_point): Likewise.
9184         (aarch64_handle_breakpoint): Update caller.
9185         (aarch64_handle_aligned_watchpoint): Likewise.
9186         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
9187         aligned_offset.
9188         (aarch64_linux_set_debug_regs): Remove const from state.  Call
9189         aarch64_downgrade_regs.
9190         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
9191         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
9192         (DR_CONTROL_MASK): ... this.
9193         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
9194         (unsigned int aarch64_watchpoint_offset): New prototype.
9195         (aarch64_linux_set_debug_regs): Remove const from state.
9196         * utils.c (align_up, align_down): Move to ...
9197         * common/common-utils.c (align_up, align_down): ... here.
9198         * utils.h (align_up, align_down): Move to ...
9199         * common/common-utils.h (align_up, align_down): ... here.
9200
9201 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
9202
9203         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
9204         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
9205         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
9206         Re-implement to match the ABI as summarized in GCC's
9207         gcc/config/sparc/sparc.c.  All callers updated.
9208         (sparc32_store_arguments): Remove assertion.
9209
9210 2018-05-04  Tom Tromey  <tom@tromey.com>
9211
9212         * printcmd.c: Don't include tui.h.
9213         (decode_format): Use skip_spaces.
9214
9215 2018-05-04  Tom Tromey  <tom@tromey.com>
9216
9217         PR gdb/22619:
9218         * printcmd.c (last_count): New global.
9219         (x_command): Use saved count when repeating.
9220
9221 2018-05-04  Tom Tromey  <tom@tromey.com>
9222
9223         * nto-procfs.c (do_closedir_cleanup): Remove.
9224         (procfs_pidlist): Use gdb_dir_up.
9225         * procfs.c (do_closedir_cleanup): Remove.
9226         (proc_update_threads): Use gdb_dir_up.
9227         * common/filestuff.h (struct gdb_dir_deleter): New.
9228         (gdb_dir_up): New typedef.
9229
9230 2018-05-04  Tom Tromey  <tom@tromey.com>
9231
9232         * ada-lang.c (print_mention_exception): Use std::string.
9233
9234 2018-05-04  Tom Tromey  <tom@tromey.com>
9235
9236         * ada-lang.c (create_excep_cond_exprs): Update.
9237         (ada_exception_catchpoint_cond_string): Use std::string.
9238
9239 2018-05-04  Tom Tromey  <tom@tromey.com>
9240
9241         * ada-lang.c (xget_renaming_scope): Return std::string.
9242         (old_renaming_is_invisible): Update.
9243
9244 2018-05-04  Tom Tromey  <tom@tromey.com>
9245
9246         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
9247         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
9248
9249 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
9250
9251         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
9252
9253 2018-05-04  Tom Tromey  <tom@tromey.com>
9254
9255         * remote.c (remote_query_supported_append): Change type.
9256         (remote_check_symbols): Update.
9257
9258 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
9259
9260         PR gdb/11420
9261         * configure.ac: Prepend libpython.
9262         * python/python-config.py: Likewise.
9263         * configure: Regenerate.
9264
9265 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
9266
9267         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
9268
9269 2018-05-03  Pedro Alves  <palves@redhat.com>
9270
9271         * s390-linux-nat.c
9272         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
9273         override.  Write 'true' instead of '1'.
9274         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
9275         declaration.
9276
9277 2018-05-02  Pedro Alves  <palves@redhat.com>
9278
9279         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
9280         add_inf_child_target.
9281         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
9282         add_inf_child_target.
9283         * aix-thread.c (aix_thread_target_info): New.
9284         (aix_thread_target) <shortname, longname, doc>: Delete.
9285         <info>: New.
9286         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
9287         add_inf_child_target.
9288         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
9289         add_inf_child_target.
9290         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
9291         add_inf_child_target.
9292         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
9293         add_inf_child_target.
9294         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
9295         add_inf_child_target.
9296         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
9297         add_inf_child_target.
9298         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
9299         add_inf_child_target.
9300         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
9301         add_inf_child_target.
9302         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
9303         add_inf_child_target.
9304         * bfd-target.c (target_bfd_target_info): New.
9305         (target_bfd) <shortname, longname, doc>: Delete.
9306         <info>: New.
9307         * bsd-kvm.c (bsd_kvm_target_info): New.
9308         (bsd_kvm_target) <shortname, longname, doc>: Delete.
9309         <info>: New.
9310         (bsd_kvm_target::open): Rename to ...
9311         (bsd_kvm_target_open): ... this.  Adjust.
9312         * bsd-uthread.c (bsd_uthread_target_info): New.
9313         (bsd_uthread_target) <shortname, longname, doc>: Delete.
9314         <info>: New.
9315         * corefile.c (core_file_command): Adjust.
9316         * corelow.c (core_target_info): New.
9317         (core_target) <shortname, longname, doc>: Delete.
9318         <info>: New.
9319         (core_target::open): Rename to ...
9320         (core_target_open): ... this.  Adjust.
9321         * ctf.c (ctf_target_info): New.
9322         (ctf_target) <shortname, longname, doc>: Delete.
9323         <info>: New.
9324         (ctf_target::open): Rename to ...
9325         (ctf_target_open): ... this.
9326         (_initialize_ctf): Adjust.
9327         * exec.c (exec_target_info): New.
9328         (exec_target) <shortname, longname, doc>: Delete.
9329         <info>: New.
9330         (exec_target::open): Rename to ...
9331         (exec_target_open): ... this.
9332         * gdbcore.h (core_target_open): Declare.
9333         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
9334         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
9335         add_inf_child_target.
9336         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
9337         add_inf_child_target.
9338         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
9339         add_inf_child_target.
9340         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
9341         add_inf_child_target.
9342         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
9343         add_inf_child_target.
9344         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
9345         add_inf_child_target.
9346         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
9347         add_inf_child_target.
9348         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
9349         add_inf_child_target.
9350         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
9351         add_inf_child_target.
9352         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
9353         add_inf_child_target.
9354         * inf-child.c (inf_child_target_info): New.
9355         (inf_child_target::info): New.
9356         (inf_child_open_target): Remove 'target' parameter.  Use
9357         get_native_target instead.
9358         (inf_child_target::open): Delete.
9359         (add_inf_child_target): New.
9360         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
9361         Delete.
9362         <info>: New.
9363         (add_inf_child_target): Declare.
9364         (inf_child_open_target): Declare.
9365         * linux-thread-db.c (thread_db_target_info): New.
9366         (thread_db_target) <shortname, longname, doc>: Delete.
9367         <info>: New.
9368         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
9369         add_inf_child_target.
9370         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
9371         add_inf_child_target.
9372         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
9373         add_inf_child_target.
9374         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
9375         add_inf_child_target.
9376         * make-target-delegates (print_class): Adjust.
9377         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
9378         add_inf_child_target.
9379         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
9380         add_inf_child_target.
9381         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
9382         add_inf_child_target.
9383         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
9384         add_inf_child_target.
9385         * nto-procfs.c (nto_native_target_info): New.
9386         (nto_procfs_target_native) <shortname, longname, doc>:
9387         Delete.
9388         <info>: New.
9389         (nto_procfs_target_info): New.
9390         (nto_procfs_target_procfs) <shortname, longname, doc>:
9391         Delete.
9392         <info>: New.
9393         (init_procfs_targets): Adjust.
9394         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
9395         add_inf_child_target.
9396         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
9397         add_inf_child_target.
9398         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
9399         add_inf_child_target.
9400         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
9401         add_inf_child_target.
9402         * ravenscar-thread.c (ravenscar_target_info): New.
9403         (ravenscar_thread_target) <shortname, longname, doc>:
9404         Delete.
9405         <info>: New.
9406         * record-btrace.c (record_btrace_target_info):
9407         (record_btrace_target) <shortname, longname, doc>: Delete.
9408         <info>: New.
9409         (record_btrace_target::open): Rename to ...
9410         (record_btrace_target_open): ... this.  Adjust.
9411         * record-full.c (record_longname, record_doc): New.
9412         (record_full_base_target) <shortname, longname, doc>: Delete.
9413         <info>: New.
9414         (record_full_target_info): New.
9415         (record_full_target): <shortname>: Delete.
9416         <info>: New.
9417         (record_full_core_open_1, record_full_open_1): Update comments.
9418         (record_full_base_target::open): Rename to ...
9419         (record_full_open): ... this.
9420         (cmd_record_full_restore): Update.
9421         (_initialize_record_full): Update.
9422         * remote-sim.c (remote_sim_target_info): New.
9423         (gdbsim_target) <shortname, longname, doc>: Delete.
9424         <info>: New.
9425         (gdbsim_target::open): Rename to ...
9426         (gdbsim_target_open): ... this.
9427         (_initialize_remote_sim): Adjust.
9428         * remote.c (remote_doc): New.
9429         (remote_target_info): New.
9430         (remote_target) <shortname, longname, doc>: Delete.
9431         <info>: New.
9432         (extended_remote_target_info): New.
9433         (extended_remote_target) <shortname, longname, doc>: Delete.
9434         <info>: New.
9435         (remote_target::open_1): Make static.  Adjust.
9436         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
9437         * s390-linux-nat.c (_initialize_s390_nat): Use
9438         add_inf_child_target.
9439         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
9440         add_inf_child_target.
9441         * sol-thread.c (thread_db_target_info): New.
9442         (sol_thread_target) <shortname, longname, doc>: Delete.
9443         <info>: New.
9444         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
9445         add_inf_child_target.
9446         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
9447         add_inf_child_target.
9448         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
9449         add_inf_child_target.
9450         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
9451         add_inf_child_target.
9452         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
9453         add_inf_child_target.
9454         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
9455         add_inf_child_target.
9456         * spu-linux-nat.c (_initialize_spu_nat): Use
9457         add_inf_child_target.
9458         * spu-multiarch.c (spu_multiarch_target_info): New.
9459         (spu_multiarch_target) <shortname, longname, doc>: Delete.
9460         <info>: New.
9461         * target-delegates.c: Regenerate.
9462         * target.c: Include <unordered_map>.
9463         (target_ops_p): Delete.
9464         (DEF_VEC_P(target_ops_p)): Delete.
9465         (target_factories): New.
9466         (test_target_info): New.
9467         (test_target_ops::info): New.
9468         (open_target): Adjust to use target_factories.
9469         (add_target_with_completer): Rename to ...
9470         (add_target): ... this.  Change prototype.  Register target_info
9471         and open callback in target_factories.  Register target_info in
9472         command context instead of target_ops.
9473         (add_target): Delete old implementation.
9474         (add_deprecated_target_alias): Change prototype.  Adjust.
9475         (the_native_target): New.
9476         (set_native_target, get_native_target): New.
9477         (find_default_run_target): Use the_native_target.
9478         (find_attach_target, find_run_target): Simplify.
9479         (target_ops::open): Delete.
9480         (dummy_target_info): New.
9481         (dummy_target::shortname, dummy_target::longname)
9482         (dummy_target::doc): Delete.
9483         (dummy_target::info): New.
9484         (debug_target::shortname, debug_target::longname)
9485         (debug_target::doc): Delete.
9486         (debug_target::info): New.
9487         * target.h (struct target_info): New.
9488         (target_ops::~target_ops): Add comment.
9489         (target_ops::info): New.
9490         (target_ops::shortname, target_ops::longname, target_ops::doc): No
9491         longer virtual.  Implement in terms of target_info.
9492         (set_native_target, get_native_target): Declare.
9493         (target_open_ftype): New.
9494         (add_target, add_target_with_completer)
9495         (add_deprecated_target_alias): Change prototype.
9496         (test_target) <shortname, longname, doc>: Delete.
9497         <info>: New.
9498         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
9499         add_inf_child_target.
9500         * tracefile-tfile.c (tfile_target_info): New.
9501         (tfile_target) <shortname, longname, doc>: Delete.
9502         <info>: New.
9503         (tfile_target::open): Rename to ...
9504         (tfile_target_open): ... this.
9505         (_initialize_tracefile_tfile): Adjust.
9506         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
9507         add_inf_child_target.
9508         * windows-nat.c (_initialize_windows_nat): Use
9509         add_inf_child_target.
9510         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
9511         add_inf_child_target.
9512
9513 2018-05-02  Pedro Alves  <palves@redhat.com>
9514
9515         * linux-nat.h (linux_nat_target) <low_new_thread,
9516         low_delete_thread, low_new_fork, low_forget_process,
9517         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
9518         New virtual methods.
9519         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
9520         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
9521         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
9522         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
9523         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
9524         Delete.
9525         * linux-fork.c (delete_fork): Adjust to call low method.
9526         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
9527         (linux_nat_new_fork, linux_nat_forget_process_hook)
9528         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
9529         (linux_nat_status_is_event):
9530         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
9531         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
9532         to call low method.
9533         (sigtrap_is_event): Rename to ...
9534         (linux_nat_target::low_status_is_event): ... this.
9535         (linux_nat_set_status_is_event): Delete.
9536         (save_stop_reason, linux_nat_wait_1)
9537         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
9538         low methods.
9539         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
9540         (linux_nat_set_new_fork, linux_nat_set_forget_process)
9541         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
9542         (linux_nat_set_prepare_to_resume): Delete.
9543         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
9544         low virtual methods.
9545         * amd64-linux-nat.c: Likewise.
9546         * arm-linux-nat.c: Likewise.
9547         * i386-linux-nat.c: Likewise.
9548         * ia64-linux-nat.c: Likewise.
9549         * mips-linux-nat.c: Likewise.
9550         * ppc-linux-nat.c: Likewise.
9551         * s390-linux-nat.c: Likewise.
9552         * sparc64-linux-nat.c: Likewise.
9553         * x86-linux-nat.c: Likewise.
9554         * x86-linux-nat.h: Include "nat/x86-linux.h".
9555         (x86_linux_nat_target) <low_new_fork, low_forget_process,
9556         low_prepare_to_resume, low_new_thread, low_delete_thread>:
9557         Override methods.
9558
9559 2018-05-02  Pedro Alves  <palves@redhat.com>
9560
9561         * target.h (target_ops)
9562         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
9563         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
9564         stopped_by_watchpoint, have_continuable_watchpoint,
9565         stopped_data_address, watchpoint_addr_within_range,
9566         can_accel_watchpoint_condition, can_run, thread_alive,
9567         has_all_memory, has_memory, has_stack, has_registers,
9568         has_execution, can_async_p, is_async_p, supports_non_stop,
9569         always_non_stop_p, can_execute_reverse, supports_multi_process,
9570         supports_enable_disable_tracepoint,
9571         supports_disable_randomization, supports_string_tracing,
9572         supports_evaluation_of_breakpoint_conditions,
9573         can_run_breakpoint_commands, filesystem_is_local,
9574         can_download_tracepoint, get_trace_state_variable_value,
9575         set_trace_notes, get_tib_address, use_agent, can_use_agent,
9576         record_is_replaying, record_will_replay,
9577         augmented_libraries_svr4_read>: Adjust to return bool.
9578         * aarch64-linux-nat.c: All implementations adjusted.
9579         * aix-thread.c: All implementations adjusted.
9580         * arm-linux-nat.c: All implementations adjusted.
9581         * breakpoint.c: All implementations adjusted.
9582         * bsd-kvm.c: All implementations adjusted.
9583         * bsd-uthread.c: All implementations adjusted.
9584         * corelow.c: All implementations adjusted.
9585         * ctf.c: All implementations adjusted.
9586         * darwin-nat.c: All implementations adjusted.
9587         * darwin-nat.h: All implementations adjusted.
9588         * exec.c: All implementations adjusted.
9589         * fbsd-nat.c: All implementations adjusted.
9590         * fbsd-nat.h: All implementations adjusted.
9591         * gnu-nat.c: All implementations adjusted.
9592         * gnu-nat.h: All implementations adjusted.
9593         * go32-nat.c: All implementations adjusted.
9594         * ia64-linux-nat.c: All implementations adjusted.
9595         * inf-child.c: All implementations adjusted.
9596         * inf-child.h: All implementations adjusted.
9597         * inf-ptrace.c: All implementations adjusted.
9598         * inf-ptrace.h: All implementations adjusted.
9599         * linux-nat.c: All implementations adjusted.
9600         * linux-nat.h: All implementations adjusted.
9601         * mips-linux-nat.c: All implementations adjusted.
9602         * nto-procfs.c: All implementations adjusted.
9603         * ppc-linux-nat.c: All implementations adjusted.
9604         * procfs.c: All implementations adjusted.
9605         * ravenscar-thread.c: All implementations adjusted.
9606         * record-btrace.c: All implementations adjusted.
9607         * record-full.c: All implementations adjusted.
9608         * remote-sim.c: All implementations adjusted.
9609         * remote.c: All implementations adjusted.
9610         * s390-linux-nat.c: All implementations adjusted.
9611         * sol-thread.c: All implementations adjusted.
9612         * spu-multiarch.c: All implementations adjusted.
9613         * target-delegates.c: All implementations adjusted.
9614         * target.c: All implementations adjusted.
9615         * target.h: All implementations adjusted.
9616         * tracefile-tfile.c: All implementations adjusted.
9617         * tracefile.c: All implementations adjusted.
9618         * tracefile.h: All implementations adjusted.
9619         * windows-nat.c: All implementations adjusted.
9620         * x86-linux-nat.h: All implementations adjusted.
9621         * x86-nat.h: All implementations adjusted.
9622
9623 2018-05-02  Pedro Alves  <palves@redhat.com>
9624
9625         * make-target-delegates (scan_target_h): Don't trim lines here.
9626         Replace sequences of tabs and/or whitespace with a single
9627         whitespace.
9628         (top level, parsing methods): Trim each line before processing it
9629         here.
9630
9631 2018-05-02  Pedro Alves  <palves@redhat.com>
9632             John Baldwin  <jhb@freebsd.org>
9633
9634         * target.h (enum strata) <debug_stratum>: New.
9635         (struct target_ops) <all delegation methods>: Replace by C++
9636         virtual methods, and drop "to_" prefix.  All references updated
9637         throughout.
9638         <to_shortname, to_longname, to_doc, to_data,
9639         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
9640         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
9641         virtual methods.  All references updated throughout.
9642         <can_attach, supports_terminal_ours, can_create_inferior,
9643         get_thread_control_capabilities, attach_no_wait>: New
9644         virtual methods.
9645         <insert_breakpoint, remove_breakpoint>: Now
9646         TARGET_DEFAULT_NORETURN methods.
9647         <info_proc>: Now returns bool.
9648         <to_magic>: Delete.
9649         (OPS_MAGIC): Delete.
9650         (current_target): Delete.  All references replaced by references
9651         to ...
9652         (target_stack): ... this.  New.
9653         (target_shortname, target_longname): Adjust.
9654         (target_can_run): Now a function declaration.
9655         (default_child_has_all_memory, default_child_has_memory)
9656         (default_child_has_stack, default_child_has_registers)
9657         (default_child_has_execution): Remove target_ops parameter.
9658         (complete_target_initialization): Delete.
9659         (memory_breakpoint_target): New template class.
9660         (test_target_ops): Refactor as a C++ class with virtual methods.
9661         * make-target-delegates (NAME_PART): Tighten.
9662         (POINTER_PART, CP_SYMBOL): New.
9663         (SIMPLE_RETURN_PART): Reimplement.
9664         (VEC_RETURN_PART): Expect less.
9665         (RETURN_PART, VIRTUAL_PART): New.
9666         (METHOD): Adjust to C++ virtual methods.
9667         (scan_target_h): Remove reference to C99.
9668         (dname): Output "target_ops::" prefix.
9669         (write_function_header): Adjust to output a C++ class method.
9670         (write_declaration): New.
9671         (write_delegator): Adjust to output a C++ class method.
9672         (tdname): Output "dummy_target::" prefix.
9673         (write_tdefault, write_debugmethod): Adjust to output a C++ class
9674         method.
9675         (tdefault_names, debug_names): Delete.
9676         (return_types, tdefaults, styles, argtypes_array): New.
9677         (top level): All methods are delegators.
9678         (print_class): New.
9679         (top level): Print dummy_target and debug_target classes.
9680         * target-delegates.c: Regenerate.
9681         * target-debug.h (target_debug_print_enum_info_proc_what)
9682         (target_debug_print_thread_control_capabilities)
9683         (target_debug_print_thread_info_p): New.
9684         * target.c (dummy_target): Delete.
9685         (the_dummy_target, the_debug_target): New.
9686         (target_stack): Now extern.
9687         (set_targetdebug): Push/unpush debug target.
9688         (default_child_has_all_memory, default_child_has_memory)
9689         (default_child_has_stack, default_child_has_registers)
9690         (default_child_has_execution): Remove target_ops parameter.
9691         (complete_target_initialization): Delete.
9692         (add_target_with_completer): No longer call
9693         complete_target_initialization.
9694         (target_supports_terminal_ours): Use regular delegation.
9695         (update_current_target): Delete.
9696         (push_target): No longer check magic number.  Don't call
9697         update_current_target.
9698         (unpush_target): Don't call update_current_target.
9699         (target_is_pushed): No longer check magic number.
9700         (target_require_runnable): Skip for all stratums over
9701         process_stratum.
9702         (target_ops::info_proc): New.
9703         (target_info_proc): Use find_target_at and
9704         find_default_run_target.
9705         (target_supports_disable_randomization): Use regular delegation.
9706         (target_get_osdata): Use find_target_at.
9707         (target_ops::open, target_ops::close, target_ops::can_attach)
9708         (target_ops::attach, target_ops::can_create_inferior)
9709         (target_ops::create_inferior, target_ops::can_run)
9710         (target_can_run): New.
9711         (default_fileio_target): Use regular delegation.
9712         (target_ops::fileio_open, target_ops::fileio_pwrite)
9713         (target_ops::fileio_pread, target_ops::fileio_fstat)
9714         (target_ops::fileio_close, target_ops::fileio_unlink)
9715         (target_ops::fileio_readlink): New.
9716         (target_fileio_open_1, target_fileio_unlink)
9717         (target_fileio_readlink): Always call the target method.  Handle
9718         FILEIO_ENOSYS.
9719         (return_zero, return_zero_has_execution): Delete.
9720         (init_dummy_target): Delete.
9721         (dummy_target::dummy_target, dummy_target::shortname)
9722         (dummy_target::longname, dummy_target::doc)
9723         (debug_target::debug_target, debug_target::shortname)
9724         (debug_target::longname, debug_target::doc): New.
9725         (target_supports_delete_record): Use regular delegation.
9726         (setup_target_debug): Delete.
9727         (maintenance_print_target_stack): Skip debug_stratum.
9728         (initialize_targets): Instantiate the_dummy_target and
9729         the_debug_target.
9730         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
9731         use target_stack.
9732         (target_auxv_search, fprint_target_auxv): Adjust.
9733         (info_auxv_command): Adjust to use target_stack.
9734         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
9735         * exceptions.c (print_flush): Handle a NULL target_stack.
9736         * regcache.c (target_ops_no_register): Refactor as class with
9737         virtual methods.
9738
9739         * exec.c (exec_target): New class.
9740         (exec_ops): Now an exec_target.
9741         (exec_open, exec_close_1, exec_get_section_table)
9742         (exec_xfer_partial, exec_files_info, exec_has_memory)
9743         (exec_make_note_section): Refactor as exec_target methods.
9744         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
9745         Delete.
9746         (exec_target::find_memory_regions): New.
9747         (_initialize_exec): Don't call init_exec_ops.
9748         * gdbcore.h (exec_file_clear): Delete.
9749
9750         * corefile.c (core_target): Delete.
9751         (core_file_command): Adjust.
9752         * corelow.c (core_target): New class.
9753         (the_core_target): New.
9754         (core_close): Remove target_ops parameter.
9755         (core_close_cleanup): Adjust.
9756         (core_target::close): New.
9757         (core_open, core_detach, get_core_registers, core_files_info)
9758         (core_xfer_partial, core_thread_alive, core_read_description)
9759         (core_pid_to_str, core_thread_name, core_has_memory)
9760         (core_has_stack, core_has_registers, core_info_proc): Rework as
9761         core_target methods.
9762         (ignore, core_remove_breakpoint, init_core_ops): Delete.
9763         (_initialize_corelow): Initialize the_core_target.
9764         * gdbcore.h (core_target): Delete.
9765         (the_core_target): New.
9766
9767         * ctf.c: (ctf_target): New class.
9768         (ctf_ops): Now a ctf_target.
9769         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
9770         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
9771         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
9772         methods.
9773         (init_ctf_ops): Delete.
9774         (_initialize_ctf): Don't call it.
9775         * tracefile-tfile.c (tfile_target): New class.
9776         (tfile_ops): Now a tfile_target.
9777         (tfile_open, tfile_close, tfile_files_info)
9778         (tfile_get_tracepoint_status, tfile_trace_find)
9779         (tfile_fetch_registers, tfile_xfer_partial)
9780         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
9781         Refactor as tfile_target methods.
9782         (tfile_xfer_partial_features): Remove target_ops parameter.
9783         (init_tfile_ops): Delete.
9784         (_initialize_tracefile_tfile): Don't call it.
9785         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
9786         (tracefile_has_stack, tracefile_has_registers)
9787         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
9788         tracefile_target methods.
9789         (init_tracefile_ops): Delete.
9790         (tracefile_target::tracefile_target): New.
9791         * tracefile.h: Include "target.h".
9792         (tracefile_target): New class.
9793         (init_tracefile_ops): Delete.
9794
9795         * spu-multiarch.c (spu_multiarch_target): New class.
9796         (spu_ops): Now a spu_multiarch_target.
9797         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
9798         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
9799         (spu_search_memory, spu_mourn_inferior): Refactor as
9800         spu_multiarch_target methods.
9801         (init_spu_ops): Delete.
9802         (_initialize_spu_multiarch): Remove references to init_spu_ops,
9803         complete_target_initialization.
9804
9805         * ravenscar-thread.c (ravenscar_thread_target): New class.
9806         (ravenscar_ops): Now a ravenscar_thread_target.
9807         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
9808         (ravenscar_thread_alive, ravenscar_pid_to_str)
9809         (ravenscar_fetch_registers, ravenscar_store_registers)
9810         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
9811         (ravenscar_stopped_by_hw_breakpoint)
9812         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
9813         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
9814         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
9815         methods.
9816         (init_ravenscar_thread_ops): Delete.
9817         (_initialize_ravenscar): Remove references to
9818         init_ravenscar_thread_ops and complete_target_initialization.
9819
9820         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
9821         (bsd_uthread_target): New class.
9822         (bsd_uthread_ops): Now a bsd_uthread_target.
9823         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
9824         (bsd_uthread_close, bsd_uthread_mourn_inferior)
9825         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
9826         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
9827         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
9828         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
9829         (bsd_uthread_target): Delete function.
9830         (_initialize_bsd_uthread): Remove reference to
9831         complete_target_initialization.
9832
9833         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
9834         (target_bfd): ... this new class.
9835         (target_bfd_xfer_partial, target_bfd_get_section_table)
9836         (target_bfd_close): Refactor as target_bfd methods.
9837         (target_bfd::~target_bfd): New.
9838         (target_bfd_reopen): Adjust.
9839         (target_bfd::close): New.
9840
9841         * record-btrace.c (record_btrace_target): New class.
9842         (record_btrace_ops): Now a record_btrace_target.
9843         (record_btrace_open, record_btrace_stop_recording)
9844         (record_btrace_disconnect, record_btrace_close)
9845         (record_btrace_async, record_btrace_info)
9846         (record_btrace_insn_history, record_btrace_insn_history_range)
9847         (record_btrace_insn_history_from, record_btrace_call_history)
9848         (record_btrace_call_history_range)
9849         (record_btrace_call_history_from, record_btrace_record_method)
9850         (record_btrace_is_replaying, record_btrace_will_replay)
9851         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
9852         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
9853         (record_btrace_store_registers, record_btrace_prepare_to_store)
9854         (record_btrace_to_get_unwinder)
9855         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
9856         (record_btrace_commit_resume, record_btrace_wait)
9857         (record_btrace_stop, record_btrace_can_execute_reverse)
9858         (record_btrace_stopped_by_sw_breakpoint)
9859         (record_btrace_supports_stopped_by_sw_breakpoint)
9860         (record_btrace_stopped_by_hw_breakpoint)
9861         (record_btrace_supports_stopped_by_hw_breakpoint)
9862         (record_btrace_update_thread_list, record_btrace_thread_alive)
9863         (record_btrace_goto_begin, record_btrace_goto_end)
9864         (record_btrace_goto, record_btrace_stop_replaying_all)
9865         (record_btrace_execution_direction)
9866         (record_btrace_prepare_to_generate_core)
9867         (record_btrace_done_generating_core): Refactor as
9868         record_btrace_target methods.
9869         (init_record_btrace_ops): Delete.
9870         (_initialize_record_btrace): Remove reference to
9871         init_record_btrace_ops.
9872         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
9873         the execution_direction global.
9874         (record_full_base_target, record_full_target)
9875         (record_full_core_target): New classes.
9876         (record_full_ops): Now a record_full_target.
9877         (record_full_core_ops): Now a record_full_core_target.
9878         (record_full_target::detach, record_full_target::disconnect)
9879         (record_full_core_target::disconnect)
9880         (record_full_target::mourn_inferior, record_full_target::kill):
9881         New.
9882         (record_full_open, record_full_close, record_full_async): Refactor
9883         as methods of the record_full_base_target class.
9884         (record_full_resume, record_full_commit_resume): Refactor
9885         as methods of the record_full_target class.
9886         (record_full_wait, record_full_stopped_by_watchpoint)
9887         (record_full_stopped_data_address)
9888         (record_full_stopped_by_sw_breakpoint)
9889         (record_full_supports_stopped_by_sw_breakpoint)
9890         (record_full_stopped_by_hw_breakpoint)
9891         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
9892         methods of the record_full_base_target class.
9893         (record_full_store_registers, record_full_xfer_partial)
9894         (record_full_insert_breakpoint, record_full_remove_breakpoint):
9895         Refactor as methods of the record_full_target class.
9896         (record_full_can_execute_reverse, record_full_get_bookmark)
9897         (record_full_goto_bookmark, record_full_execution_direction)
9898         (record_full_record_method, record_full_info, record_full_delete)
9899         (record_full_is_replaying, record_full_will_replay)
9900         (record_full_goto_begin, record_full_goto_end, record_full_goto)
9901         (record_full_stop_replaying): Refactor as methods of the
9902         record_full_base_target class.
9903         (record_full_core_resume, record_full_core_kill)
9904         (record_full_core_fetch_registers)
9905         (record_full_core_prepare_to_store)
9906         (record_full_core_store_registers, record_full_core_xfer_partial)
9907         (record_full_core_insert_breakpoint)
9908         (record_full_core_remove_breakpoint)
9909         (record_full_core_has_execution): Refactor
9910         as methods of the record_full_core_target class.
9911         (record_full_base_target::supports_delete_record): New.
9912         (init_record_full_ops): Delete.
9913         (init_record_full_core_ops): Delete.
9914         (record_full_save): Refactor as method of the
9915         record_full_base_target class.
9916         (_initialize_record_full): Remove references to
9917         init_record_full_ops and init_record_full_core_ops.
9918
9919         * remote.c (remote_target, extended_remote_target): New classes.
9920         (remote_ops): Now a remote_target.
9921         (extended_remote_ops): Now an extended_remote_target.
9922         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
9923         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
9924         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
9925         (remote_pass_signals, remote_set_syscall_catchpoint)
9926         (remote_program_signals, )
9927         (remote_thread_always_alive): Remove target_ops parameter.
9928         (remote_thread_alive, remote_thread_name)
9929         (remote_update_thread_list, remote_threads_extra_info)
9930         (remote_static_tracepoint_marker_at)
9931         (remote_static_tracepoint_markers_by_strid)
9932         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
9933         (remote_open): Refactor as methods of remote_target.
9934         (extended_remote_open, extended_remote_detach)
9935         (extended_remote_attach, extended_remote_post_attach):
9936         (extended_remote_supports_disable_randomization)
9937         (extended_remote_create_inferior): : Refactor as method of
9938         extended_remote_target.
9939         (remote_set_permissions, remote_open_1, remote_detach)
9940         (remote_follow_fork, remote_follow_exec, remote_disconnect)
9941         (remote_resume, remote_commit_resume, remote_stop)
9942         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
9943         (remote_terminal_ours, remote_wait, remote_fetch_registers)
9944         (remote_prepare_to_store, remote_store_registers)
9945         (remote_flash_erase, remote_flash_done, remote_files_info)
9946         (remote_kill, remote_mourn, remote_insert_breakpoint)
9947         (remote_remove_breakpoint, remote_insert_watchpoint)
9948         (remote_watchpoint_addr_within_range)
9949         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
9950         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
9951         (remote_supports_stopped_by_sw_breakpoint)
9952         (remote_stopped_by_hw_breakpoint)
9953         (remote_supports_stopped_by_hw_breakpoint)
9954         (remote_stopped_by_watchpoint, remote_stopped_data_address)
9955         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
9956         (remote_verify_memory): Refactor as methods of remote_target.
9957         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
9958         parameter.
9959         (remote_xfer_partial, remote_get_memory_xfer_limit)
9960         (remote_search_memory, remote_rcmd, remote_memory_map)
9961         (remote_pid_to_str, remote_get_thread_local_address)
9962         (remote_get_tib_address, remote_read_description): Refactor as
9963         methods of remote_target.
9964         (remote_target::fileio_open, remote_target::fileio_pwrite)
9965         (remote_target::fileio_pread, remote_target::fileio_close): New.
9966         (remote_hostio_readlink, remote_hostio_fstat)
9967         (remote_filesystem_is_local, remote_can_execute_reverse)
9968         (remote_supports_non_stop, remote_supports_disable_randomization)
9969         (remote_supports_multi_process, remote_supports_cond_breakpoints)
9970         (remote_supports_enable_disable_tracepoint)
9971         (remote_supports_string_tracing)
9972         (remote_can_run_breakpoint_commands, remote_trace_init)
9973         (remote_download_tracepoint, remote_can_download_tracepoint)
9974         (remote_download_trace_state_variable, remote_enable_tracepoint)
9975         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
9976         (remote_trace_start, remote_get_trace_status)
9977         (remote_get_tracepoint_status, remote_trace_stop)
9978         (remote_trace_find, remote_get_trace_state_variable_value)
9979         (remote_save_trace_data, remote_get_raw_trace_data)
9980         (remote_set_disconnected_tracing, remote_core_of_thread)
9981         (remote_set_circular_trace_buffer, remote_traceframe_info)
9982         (remote_get_min_fast_tracepoint_insn_len)
9983         (remote_set_trace_buffer_size, remote_set_trace_notes)
9984         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
9985         (remote_disable_btrace, remote_teardown_btrace)
9986         (remote_read_btrace, remote_btrace_conf)
9987         (remote_augmented_libraries_svr4_read, remote_load)
9988         (remote_pid_to_exec_file, remote_can_do_single_step)
9989         (remote_execution_direction, remote_thread_handle_to_thread_info):
9990         Refactor as methods of remote_target.
9991         (init_remote_ops, init_extended_remote_ops): Delete.
9992         (remote_can_async_p, remote_is_async_p, remote_async)
9993         (remote_thread_events, remote_upload_tracepoints)
9994         (remote_upload_trace_state_variables): Refactor as methods of
9995         remote_target.
9996         (_initialize_remote): Remove references to init_remote_ops and
9997         init_extended_remote_ops.
9998
9999         * remote-sim.c (gdbsim_target): New class.
10000         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
10001         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
10002         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
10003         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
10004         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
10005         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
10006         Refactor as methods of gdbsim_target.
10007         (gdbsim_ops): Now a gdbsim_target.
10008         (init_gdbsim_ops): Delete.
10009         (gdbsim_cntrl_c): Adjust.
10010         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
10011
10012         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
10013         (the_amd64_linux_nat_target): New.
10014         (amd64_linux_fetch_inferior_registers)
10015         (amd64_linux_store_inferior_registers): Refactor as methods of
10016         amd64_linux_nat_target.
10017         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
10018         * i386-linux-nat.c: Don't include "linux-nat.h".
10019         (i386_linux_nat_target): New class.
10020         (the_i386_linux_nat_target): New.
10021         (i386_linux_fetch_inferior_registers)
10022         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
10023         as methods of i386_linux_nat_target.
10024         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
10025         * inf-child.c (inf_child_ops): Delete.
10026         (inf_child_fetch_inferior_registers)
10027         (inf_child_store_inferior_registers): Delete.
10028         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
10029         methods of inf_child_target.
10030         (inf_child_target::supports_terminal_ours)
10031         (inf_child_target::terminal_init)
10032         (inf_child_target::terminal_inferior)
10033         (inf_child_target::terminal_ours_for_output)
10034         (inf_child_target::terminal_ours, inf_child_target::interrupt)
10035         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
10036         New.
10037         (inf_child_open, inf_child_disconnect, inf_child_close)
10038         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
10039         (inf_child_post_startup_inferior, inf_child_can_run)
10040         (inf_child_pid_to_exec_file): Refactor as methods of
10041         inf_child_target.
10042         (inf_child_follow_fork): Delete.
10043         (inf_child_target::can_create_inferior)
10044         (inf_child_target::can_attach): New.
10045         (inf_child_target::has_all_memory, inf_child_target::has_memory)
10046         (inf_child_target::has_stack, inf_child_target::has_registers)
10047         (inf_child_target::has_execution): New.
10048         (inf_child_fileio_open, inf_child_fileio_pwrite)
10049         (inf_child_fileio_pread, inf_child_fileio_fstat)
10050         (inf_child_fileio_close, inf_child_fileio_unlink)
10051         (inf_child_fileio_readlink, inf_child_use_agent)
10052         (inf_child_can_use_agent): Refactor as methods of
10053         inf_child_target.
10054         (return_zero, inf_child_target): Delete.
10055         (inf_child_target::inf_child_target): New.
10056         * inf-child.h: Include "target.h".
10057         (inf_child_target): Delete function prototype.
10058         (inf_child_target): New class.
10059         (inf_child_open_target, inf_child_mourn_inferior)
10060         (inf_child_maybe_unpush_target): Delete.
10061         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
10062         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
10063         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
10064         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
10065         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
10066         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
10067         (inf_ptrace_wait, inf_ptrace_xfer_partial)
10068         (inf_ptrace_thread_alive, inf_ptrace_files_info)
10069         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
10070         methods of inf_ptrace_target.
10071         (inf_ptrace_target): Delete function.
10072         * inf-ptrace.h: Include "inf-child.h".
10073         (inf_ptrace_target): Delete function declaration.
10074         (inf_ptrace_target): New class.
10075         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
10076         * linux-nat.c (linux_target): New.
10077         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
10078         (linux_nat_target::~linux_nat_target): New.
10079         (linux_child_post_attach, linux_child_post_startup_inferior)
10080         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
10081         (linux_child_remove_fork_catchpoint)
10082         (linux_child_insert_vfork_catchpoint)
10083         (linux_child_remove_vfork_catchpoint)
10084         (linux_child_insert_exec_catchpoint)
10085         (linux_child_remove_exec_catchpoint)
10086         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
10087         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
10088         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
10089         (linux_nat_stopped_data_address)
10090         (linux_nat_stopped_by_sw_breakpoint)
10091         (linux_nat_supports_stopped_by_sw_breakpoint)
10092         (linux_nat_stopped_by_hw_breakpoint)
10093         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
10094         (linux_nat_kill, linux_nat_mourn_inferior)
10095         (linux_nat_xfer_partial, linux_nat_thread_alive)
10096         (linux_nat_update_thread_list, linux_nat_pid_to_str)
10097         (linux_nat_thread_name, linux_child_pid_to_exec_file)
10098         (linux_child_static_tracepoint_markers_by_strid)
10099         (linux_nat_is_async_p, linux_nat_can_async_p)
10100         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
10101         (linux_nat_supports_multi_process)
10102         (linux_nat_supports_disable_randomization, linux_nat_async)
10103         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
10104         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
10105         (linux_nat_fileio_open, linux_nat_fileio_readlink)
10106         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
10107         methods of linux_nat_target.
10108         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
10109         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
10110         parameter.
10111         (check_stopped_by_watchpoint): Adjust.
10112         (linux_xfer_partial): Delete.
10113         (linux_target_install_ops, linux_target, linux_nat_add_target):
10114         Delete.
10115         (linux_nat_target::linux_nat_target): New.
10116         * linux-nat.h: Include "inf-ptrace.h".
10117         (linux_nat_target): New.
10118         (linux_target, linux_target_install_ops, linux_nat_add_target):
10119         Delete function declarations.
10120         (linux_target): Declare global.
10121         * linux-thread-db.c (thread_db_target): New.
10122         (thread_db_target::thread_db_target): New.
10123         (thread_db_ops): Delete.
10124         (the_thread_db_target): New.
10125         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
10126         (thread_db_update_thread_list, thread_db_pid_to_str)
10127         (thread_db_extra_thread_info)
10128         (thread_db_thread_handle_to_thread_info)
10129         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
10130         (thread_db_resume): Refactor as methods of thread_db_target.
10131         (init_thread_db_ops): Delete.
10132         (_initialize_thread_db): Remove reference to init_thread_db_ops.
10133         * x86-linux-nat.c: Don't include "linux-nat.h".
10134         (super_post_startup_inferior): Delete.
10135         (x86_linux_nat_target::~x86_linux_nat_target): New.
10136         (x86_linux_child_post_startup_inferior)
10137         (x86_linux_read_description, x86_linux_enable_btrace)
10138         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
10139         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
10140         methods of x86_linux_nat_target.
10141         (x86_linux_create_target): Delete.  Bits folded ...
10142         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
10143         pointer.
10144         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
10145         (x86_linux_nat_target): New class.
10146         (x86_linux_create_target): Delete.
10147         (x86_linux_add_target): Now takes a linux_nat_target pointer.
10148         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
10149         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
10150         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
10151         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
10152         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
10153         make extern.
10154         (x86_use_watchpoints): Delete.
10155         * x86-nat.h: Include "breakpoint.h" and "target.h".
10156         (x86_use_watchpoints): Delete.
10157         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
10158         (x86_stopped_by_watchpoint, x86_stopped_data_address)
10159         (x86_insert_watchpoint, x86_remove_watchpoint)
10160         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
10161         (x86_stopped_by_hw_breakpoint): New declarations.
10162         (x86_nat_target): New template class.
10163
10164         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
10165         (the_ppc_linux_nat_target): New.
10166         (ppc_linux_fetch_inferior_registers)
10167         (ppc_linux_can_use_hw_breakpoint)
10168         (ppc_linux_region_ok_for_hw_watchpoint)
10169         (ppc_linux_ranged_break_num_registers)
10170         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
10171         (ppc_linux_insert_mask_watchpoint)
10172         (ppc_linux_remove_mask_watchpoint)
10173         (ppc_linux_can_accel_watchpoint_condition)
10174         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
10175         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
10176         (ppc_linux_watchpoint_addr_within_range)
10177         (ppc_linux_masked_watch_num_registers)
10178         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
10179         (ppc_linux_read_description): Refactor as methods of
10180         ppc_linux_nat_target.
10181         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
10182
10183         * procfs.c (procfs_xfer_partial): Delete forward declaration.
10184         (procfs_target): New class.
10185         (the_procfs_target): New.
10186         (procfs_target): Delete function.
10187         (procfs_auxv_parse, procfs_attach, procfs_detach)
10188         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
10189         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
10190         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
10191         (procfs_create_inferior, procfs_update_thread_list)
10192         (procfs_thread_alive, procfs_pid_to_str)
10193         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
10194         (procfs_stopped_data_address, procfs_insert_watchpoint)
10195         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
10196         (proc_find_memory_regions, procfs_info_proc)
10197         (procfs_make_note_section): Refactor as methods of procfs_target.
10198         (_initialize_procfs): Adjust.
10199         * sol-thread.c (sol_thread_target): New class.
10200         (sol_thread_ops): Now a sol_thread_target.
10201         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
10202         (sol_thread_fetch_registers, sol_thread_store_registers)
10203         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
10204         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
10205         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
10206         (init_sol_thread_ops): Delete.
10207         (_initialize_sol_thread): Adjust.  Remove references to
10208         init_sol_thread_ops and complete_target_initialization.
10209
10210         * windows-nat.c (windows_nat_target): New class.
10211         (windows_fetch_inferior_registers)
10212         (windows_store_inferior_registers, windows_resume, windows_wait)
10213         (windows_attach, windows_detach, windows_pid_to_exec_file)
10214         (windows_files_info, windows_create_inferior)
10215         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
10216         (windows_close, windows_pid_to_str, windows_xfer_partial)
10217         (windows_get_tib_address, windows_get_ada_task_ptid)
10218         (windows_thread_name, windows_thread_alive): Refactor as
10219         windows_nat_target methods.
10220         (do_initial_windows_stuff): Adjust.
10221         (windows_target): Delete function.
10222         (_initialize_windows_nat): Adjust.
10223
10224         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
10225         (darwin_mourn_inferior, darwin_kill_inferior)
10226         (darwin_create_inferior, darwin_attach, darwin_detach)
10227         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
10228         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
10229         (darwin_supports_multi_process): Refactor as darwin_nat_target
10230         methods.
10231         (darwin_resume_to, darwin_files_info): Delete.
10232         (_initialize_darwin_inferior): Rename to ...
10233         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
10234         * darwin-nat.h: Include "inf-child.h".
10235         (darwin_nat_target): New class.
10236         (darwin_complete_target): Delete.
10237         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
10238         (darwin_target): New.
10239         (i386_darwin_fetch_inferior_registers)
10240         (i386_darwin_store_inferior_registers): Refactor as methods of
10241         darwin_nat_target.
10242         (darwin_complete_target): Delete, with ...
10243         (_initialize_i386_darwin_nat): ... bits factored out here.
10244
10245         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
10246         (the_alpha_linux_nat_target): New.
10247         (alpha_linux_register_u_offset): Refactor as
10248         alpha_linux_nat_target method.
10249         (_initialize_alpha_linux_nat): Adjust.
10250         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
10251         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
10252         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
10253         methods of linux_nat_trad_target.
10254         (linux_trad_target): Delete.
10255         * linux-nat-trad.h (linux_trad_target): Delete function.
10256         (linux_nat_trad_target): New class.
10257         * mips-linux-nat.c (mips_linux_nat_target): New class.
10258         (super_fetch_registers, super_store_registers, super_close):
10259         Delete.
10260         (the_mips_linux_nat_target): New.
10261         (mips64_linux_regsets_fetch_registers)
10262         (mips64_linux_regsets_store_registers)
10263         (mips64_linux_fetch_registers, mips64_linux_store_registers)
10264         (mips_linux_register_u_offset, mips_linux_read_description)
10265         (mips_linux_can_use_hw_breakpoint)
10266         (mips_linux_stopped_by_watchpoint)
10267         (mips_linux_stopped_data_address)
10268         (mips_linux_region_ok_for_hw_watchpoint)
10269         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
10270         (mips_linux_close): Refactor as methods of mips_linux_nat.
10271         (_initialize_mips_linux_nat): Adjust to C++ification.
10272
10273         * aix-thread.c (aix_thread_target): New class.
10274         (aix_thread_ops): Now an aix_thread_target.
10275         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
10276         (aix_thread_fetch_registers, aix_thread_store_registers)
10277         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
10278         (aix_thread_thread_alive, aix_thread_pid_to_str)
10279         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
10280         Refactor as methods of aix_thread_target.
10281         (init_aix_thread_ops): Delete.
10282         (_initialize_aix_thread): Remove references to init_aix_thread_ops
10283         and complete_target_initialization.
10284         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
10285         (rs6000_nat_target): New class.
10286         (the_rs6000_nat_target): New.
10287         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
10288         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
10289         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
10290         (super_create_inferior): Delete.
10291         (_initialize_rs6000_nat): Adjust to C++ification.
10292
10293         * arm-linux-nat.c (arm_linux_nat_target): New class.
10294         (the_arm_linux_nat_target): New.
10295         (arm_linux_fetch_inferior_registers)
10296         (arm_linux_store_inferior_registers, arm_linux_read_description)
10297         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
10298         (arm_linux_remove_hw_breakpoint)
10299         (arm_linux_region_ok_for_hw_watchpoint)
10300         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
10301         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
10302         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
10303         arm_linux_nat_target.
10304         (_initialize_arm_linux_nat): Adjust to C++ification.
10305
10306         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
10307         (the_aarch64_linux_nat_target): New.
10308         (aarch64_linux_fetch_inferior_registers)
10309         (aarch64_linux_store_inferior_registers)
10310         (aarch64_linux_child_post_startup_inferior)
10311         (aarch64_linux_read_description)
10312         (aarch64_linux_can_use_hw_breakpoint)
10313         (aarch64_linux_insert_hw_breakpoint)
10314         (aarch64_linux_remove_hw_breakpoint)
10315         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
10316         (aarch64_linux_region_ok_for_hw_watchpoint)
10317         (aarch64_linux_stopped_data_address)
10318         (aarch64_linux_stopped_by_watchpoint)
10319         (aarch64_linux_watchpoint_addr_within_range)
10320         (aarch64_linux_can_do_single_step): Refactor as methods of
10321         aarch64_linux_nat_target.
10322         (super_post_startup_inferior): Delete.
10323         (_initialize_aarch64_linux_nat): Adjust to C++ification.
10324
10325         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
10326         (the_hppa_linux_nat_target): New.
10327         (hppa_linux_fetch_inferior_registers)
10328         (hppa_linux_store_inferior_registers): Refactor as methods of
10329         hppa_linux_nat_target.
10330         (_initialize_hppa_linux_nat): Adjust to C++ification.
10331
10332         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
10333         (the_ia64_linux_nat_target): New.
10334         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
10335         (ia64_linux_stopped_data_address)
10336         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
10337         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
10338         ia64_linux_nat_target methods.
10339         (super_xfer_partial): Delete.
10340         (_initialize_ia64_linux_nat): Adjust to C++ification.
10341
10342         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
10343         (the_m32r_linux_nat_target): New.
10344         (m32r_linux_fetch_inferior_registers)
10345         (m32r_linux_store_inferior_registers): Refactor as
10346         m32r_linux_nat_target methods.
10347         (_initialize_m32r_linux_nat): Adjust to C++ification.
10348
10349         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
10350         (the_m68k_linux_nat_target): New.
10351         (m68k_linux_fetch_inferior_registers)
10352         (m68k_linux_store_inferior_registers): Refactor as
10353         m68k_linux_nat_target methods.
10354         (_initialize_m68k_linux_nat): Adjust to C++ification.
10355
10356         * s390-linux-nat.c (s390_linux_nat_target): New class.
10357         (the_s390_linux_nat_target): New.
10358         (s390_linux_fetch_inferior_registers)
10359         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
10360         (s390_insert_watchpoint, s390_remove_watchpoint)
10361         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
10362         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
10363         (s390_auxv_parse, s390_read_description): Refactor as methods of
10364         s390_linux_nat_target.
10365         (_initialize_s390_nat): Adjust to C++ification.
10366
10367         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
10368         (the_sparc_linux_nat_target): New.
10369         (_initialize_sparc_linux_nat): Adjust to C++ification.
10370         * sparc-nat.c (sparc_fetch_inferior_registers)
10371         (sparc_store_inferior_registers): Remove target_ops parameter.
10372         * sparc-nat.h (sparc_fetch_inferior_registers)
10373         (sparc_store_inferior_registers): Remove target_ops parameter.
10374         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
10375         (the_sparc64_linux_nat_target): New.
10376         (_initialize_sparc64_linux_nat): Adjust to C++ification.
10377
10378         * spu-linux-nat.c (spu_linux_nat_target): New class.
10379         (the_spu_linux_nat_target): New.
10380         (spu_child_post_startup_inferior, spu_child_post_attach)
10381         (spu_child_wait, spu_fetch_inferior_registers)
10382         (spu_store_inferior_registers, spu_xfer_partial)
10383         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
10384         methods.
10385         (_initialize_spu_nat): Adjust to C++ification.
10386
10387         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
10388         (the_tilegx_linux_nat_target): New.
10389         (fetch_inferior_registers, store_inferior_registers):
10390         Refactor as methods.
10391         (_initialize_tile_linux_nat): Adjust to C++ification.
10392
10393         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
10394         (the_xtensa_linux_nat_target): New.
10395         (xtensa_linux_fetch_inferior_registers)
10396         (xtensa_linux_store_inferior_registers): Refactor as
10397         xtensa_linux_nat_target methods.
10398         (_initialize_xtensa_linux_nat): Adjust to C++ification.
10399
10400         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
10401         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
10402         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
10403         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
10404         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
10405         (fbsd_stopped_by_sw_breakpoint)
10406         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
10407         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
10408         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
10409         (fbsd_post_startup_inferior, fbsd_post_attach)
10410         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
10411         (fbsd_set_syscall_catchpoint)
10412         (super_xfer_partial, super_resume, super_wait)
10413         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
10414         (fbsd_handle_debug_trap): Remove target_ops parameter.
10415         (fbsd_nat_add_target): Delete.
10416         * fbsd-nat.h: Include "inf-ptrace.h".
10417         (fbsd_nat_add_target): Delete.
10418         (USE_SIGTRAP_SIGINFO): Define.
10419         (fbsd_nat_target): New class.
10420
10421         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
10422         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
10423         (amd64bsd_target): Delete.
10424         * amd64-bsd-nat.h: New file.
10425         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
10426         "x86-bsd-nat.h".
10427         (amd64_fbsd_nat_target): New class.
10428         (the_amd64_fbsd_nat_target): New.
10429         (amd64fbsd_read_description): Refactor as method of
10430         amd64_fbsd_nat_target.
10431         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
10432         (_initialize_amd64fbsd_nat): Adjust to C++ification.
10433         * amd64-nat.h (amd64bsd_target): Delete function declaration.
10434         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
10435         (i386bsd_store_inferior_registers): Remove target_ops parameter.
10436         (i386bsd_target): Delete.
10437         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
10438         (i386bsd_fetch_inferior_registers)
10439         (i386bsd_store_inferior_registers): Declare.
10440         (i386_bsd_nat_target): New class.
10441         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
10442         (the_i386_fbsd_nat_target): New.
10443         (i386fbsd_resume, i386fbsd_read_description): Refactor as
10444         i386_fbsd_nat_target methods.
10445         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
10446         (_initialize_i386fbsd_nat): Adjust to C++ification.
10447         * x86-bsd-nat.c (super_mourn_inferior): Delete.
10448         (x86bsd_mourn_inferior, x86bsd_target): Delete.
10449         (_initialize_x86_bsd_nat): Adjust to C++ification.
10450         * x86-bsd-nat.h: Include "x86-nat.h".
10451         (x86bsd_target): Delete declaration.
10452         (x86bsd_nat_target): New class.
10453
10454         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
10455         (the_aarch64_fbsd_nat_target): New.
10456         (aarch64_fbsd_fetch_inferior_registers)
10457         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
10458         aarch64_fbsd_nat_target.
10459         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
10460         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
10461         (the_alpha_bsd_nat_target): New.
10462         (alphabsd_fetch_inferior_registers)
10463         (alphabsd_store_inferior_registers): Refactor as
10464         alpha_bsd_nat_target methods.
10465         (_initialize_alphabsd_nat): Refactor as methods of
10466         alpha_bsd_nat_target.
10467         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
10468         (the_amd64_nbsd_nat_target): New.
10469         (_initialize_amd64nbsd_nat): Adjust to C++ification.
10470         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
10471         (the_amd64_obsd_nat_target): New.
10472         (_initialize_amd64obsd_nat): Adjust to C++ification.
10473         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
10474         (the_arm_fbsd_nat_target): New.
10475         (arm_fbsd_fetch_inferior_registers)
10476         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
10477         (_initialize_arm_fbsd_nat): Refactor as methods of
10478         arm_fbsd_nat_target.
10479         (_initialize_arm_fbsd_nat): Adjust to C++ification.
10480         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
10481         (the_arm_netbsd_nat_target): New.
10482         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
10483         arm_netbsd_nat_target.
10484         (_initialize_arm_netbsd_nat): Adjust to C++ification.
10485         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
10486         (the_hppa_nbsd_nat_target): New.
10487         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
10488         hppa_nbsd_nat_target methods.
10489         (_initialize_hppanbsd_nat): Adjust to C++ification.
10490         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
10491         (the_hppa_obsd_nat_target): New.
10492         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
10493         methods of hppa_obsd_nat_target.
10494         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
10495         add_target.
10496         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
10497         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
10498         add_target.
10499         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
10500         (_initialize_i386obsd_nat): Use add_target.
10501         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
10502         (the_m68k_bsd_nat_target): New.
10503         (m68kbsd_fetch_inferior_registers)
10504         (m68kbsd_store_inferior_registers): Refactor as methods of
10505         m68k_bsd_nat_target.
10506         (_initialize_m68kbsd_nat): Adjust to C++ification.
10507         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
10508         (the_mips_fbsd_nat_target): New.
10509         (mips_fbsd_fetch_inferior_registers)
10510         (mips_fbsd_store_inferior_registers): Refactor as methods of
10511         mips_fbsd_nat_target.
10512         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
10513         add_target.
10514         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
10515         (the_mips_nbsd_nat_target): New.
10516         (mipsnbsd_fetch_inferior_registers)
10517         (mipsnbsd_store_inferior_registers): Refactor as methods of
10518         mips_nbsd_nat_target.
10519         (_initialize_mipsnbsd_nat): Adjust to C++ification.
10520         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
10521         (the_mips64_obsd_nat_target): New.
10522         (mips64obsd_fetch_inferior_registers)
10523         (mips64obsd_store_inferior_registers): Refactor as methods of
10524         mips64_obsd_nat_target.
10525         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
10526         add_target.
10527         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
10528         nbsd_nat_target.
10529         * nbsd-nat.h: Include "inf-ptrace.h".
10530         (nbsd_nat_target): New class.
10531         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
10532         (obsd_wait): Refactor as methods of obsd_nat_target.
10533         (obsd_add_target): Delete.
10534         * obsd-nat.h: Include "inf-ptrace.h".
10535         (obsd_nat_target): New class.
10536         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
10537         (the_ppc_fbsd_nat_target): New.
10538         (ppcfbsd_fetch_inferior_registers)
10539         (ppcfbsd_store_inferior_registers): Refactor as methods of
10540         ppc_fbsd_nat_target.
10541         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
10542         add_target.
10543         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
10544         (the_ppc_nbsd_nat_target): New.
10545         (ppcnbsd_fetch_inferior_registers)
10546         (ppcnbsd_store_inferior_registers): Refactor as methods of
10547         ppc_nbsd_nat_target.
10548         (_initialize_ppcnbsd_nat): Adjust to C++ification.
10549         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
10550         (the_ppc_obsd_nat_target): New.
10551         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
10552         methods of ppc_obsd_nat_target.
10553         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
10554         add_target.
10555         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
10556         (the_sh_nbsd_nat_target): New.
10557         (shnbsd_fetch_inferior_registers)
10558         (shnbsd_store_inferior_registers): Refactor as methods of
10559         sh_nbsd_nat_target.
10560         (_initialize_shnbsd_nat): Adjust to C++ification.
10561         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
10562         (inf_ptrace_xfer_partial): Delete.
10563         (sparc_xfer_partial, sparc_target): Delete.
10564         * sparc-nat.h (sparc_fetch_inferior_registers)
10565         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
10566         (sparc_target): Delete function declaration.
10567         (sparc_target): New template class.
10568         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
10569         (_initialize_sparcnbsd_nat): Adjust to C++ification.
10570         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
10571         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
10572         add_target.
10573         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
10574         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
10575         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
10576         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
10577         add_target.
10578         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
10579         (the_vax_bsd_nat_target): New.
10580         (vaxbsd_fetch_inferior_registers)
10581         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
10582         methods.
10583         (_initialize_vaxbsd_nat): Adjust to C++ification.
10584
10585         * bsd-kvm.c (bsd_kvm_target): New class.
10586         (bsd_kvm_ops): Now a bsd_kvm_target.
10587         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
10588         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
10589         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
10590         bsd_kvm_target.
10591         (bsd_kvm_return_one): Delete.
10592         (bsd_kvm_add_target): Adjust to C++ification.
10593
10594         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
10595         (nto_procfs_target_procfs): New classes.
10596         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
10597         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
10598         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
10599         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
10600         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
10601         (procfs_remove_hw_breakpoint, procfs_resume)
10602         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
10603         (procfs_kill_inferior, procfs_store_registers)
10604         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
10605         as methods of nto_procfs_target.
10606         (nto_procfs_ops): Now an nto_procfs_target_procfs.
10607         (nto_native_ops): Delete.
10608         (procfs_open, procfs_native_open): Delete.
10609         (nto_native_ops): Now an nto_procfs_target_native.
10610         (init_procfs_targets): Adjust to C++ification.
10611         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
10612         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
10613         Refactor as methods of nto_procfs_target.
10614
10615         * go32-nat.c (go32_nat_target): New class.
10616         (the_go32_nat_target): New.
10617         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
10618         (go32_store_registers, go32_xfer_partial, go32_files_info)
10619         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
10620         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
10621         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
10622         (go32_pid_to_str): Refactor as methods of go32_nat_target.
10623         (go32_target): Delete.
10624         (_initialize_go32_nat): Adjust to C++ification.
10625
10626         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
10627         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
10628         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
10629         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
10630         gnu_nat_target.
10631         (gnu_target): Delete.
10632         * gnu-nat.h (gnu_target): Delete.
10633         (gnu_nat_target): New class.
10634         * i386-gnu-nat.c (gnu_base_target): New.
10635         (i386_gnu_nat_target): New class.
10636         (the_i386_gnu_nat_target): New.
10637         (_initialize_i386gnu_nat): Adjust to C++ification.
10638
10639 2018-05-02  Pedro Alves  <palves@redhat.com>
10640
10641         * bfd-target.c (target_bfd_xclose): Rename to ...
10642         (target_bfd_close): ... this.
10643         (target_bfd_reopen): Adjust.
10644         * target.c (target_close): Remove references to to_xclose.
10645         * target.h (target_ops::to_xclose): Delete.
10646         (target_ops::to_close): Update comments.
10647
10648 2018-05-02  Pedro Alves  <palves@redhat.com>
10649
10650         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
10651         "linux-nat.h".
10652         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
10653         * inf-ptrace.c (inf_ptrace_register_u_offset)
10654         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
10655         (inf_ptrace_store_register, inf_ptrace_store_registers)
10656         (inf_ptrace_trad_target): Move to ...
10657         * linux-nat-trad.c: ... this new file.
10658         * linux-nat-trad.h: New file.
10659         * linux-nat.c (linux_target_install_ops): Make extern.
10660         (linux_trad_target): Delete.
10661         * linux-nat.h (linux_trad_target): Delete declaration.
10662         (linux_target_install_ops): Declare.
10663         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
10664         "linux-nat.h".
10665
10666 2018-05-02  Pedro Alves  <palves@redhat.com>
10667
10668         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10669         procfs_target/add_target here.
10670         * procfs.c (procfs_target): Make static.
10671         (_initialize_procfs): Call add_target here.
10672         * procfs.h (struct target_ops): Remove forward declaration.
10673         (procfs_target): Remove declaration.
10674         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
10675
10676 2018-05-02  Pedro Alves  <palves@redhat.com>
10677
10678         * procfs.c (procfs_stopped_by_watchpoint)
10679         (procfs_insert_watchpoint, procfs_remove_watchpoint)
10680         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
10681         Forward declare.
10682         (procfs_use_watchpoints): Delete, move contents...
10683         (procfs_target): ... here.
10684         * procfs.h (procfs_use_watchpoints): Delete declaration.
10685         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10686         procfs_use_watchpoints.
10687         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
10688         procfs_use_watchpoints.
10689
10690 2018-05-02  Tom Tromey  <tom@tromey.com>
10691
10692         PR python/20084:
10693         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
10694         and var_zuinteger_unlimited.
10695         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
10696         and PARAM_ZUINTEGER_UNLIMITED.
10697         (set_parameter_value): Handle var_zuinteger and
10698         var_zuinteger_unlimited.
10699         (add_setshow_generic): Likewise.
10700         (parmpy_init): Likewise.
10701
10702 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
10703
10704         PR rust/23124
10705         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
10706         pointer is not null before dereferencing it.
10707
10708 2018-04-30  Tom Tromey  <tom@tromey.com>
10709
10710         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
10711         is_mi_like_p.
10712
10713 2018-04-30  Tom Tromey  <tom@tromey.com>
10714
10715         * breakpoint.c (mention): Remove use of is_mi_like_p.
10716         (print_mention_ranged_breakpoint): Likewise.
10717         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
10718         of is_mi_like_p.
10719
10720 2018-04-30  Tom Tromey  <tom@tromey.com>
10721
10722         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
10723
10724 2018-04-30  Tom Tromey  <tom@tromey.com>
10725
10726         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
10727         (info_spu_event_command): Remove some uses of is_mi_like_p.
10728
10729 2018-04-30  Tom Tromey  <tom@tromey.com>
10730
10731         * python/py-framefilter.c (py_print_single_arg)
10732         (enumerate_locals, py_print_args, py_print_frame): Remove some
10733         uses of is_mi_like_p.
10734
10735 2018-04-30  Tom Tromey  <tom@tromey.com>
10736
10737         * ui-out.c: Update.
10738         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
10739         * ui-out.h (ui_out::is_mi_like_p): Now const.
10740         (ui_out::do_is_mi_like_p): Now const.
10741         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
10742
10743 2018-04-30  Tom Tromey  <tom@tromey.com>
10744
10745         * varobj.c (varobj_set_visualizer): Use new_reference.
10746         * python/python.c (gdbpy_decode_line): Use new_reference.
10747         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
10748         new_reference.
10749
10750 2018-04-30  Tom Tromey  <tom@tromey.com>
10751
10752         * varobj.c (install_new_value): Use new_reference.
10753         * value.h (value_incref): Return void.  Swap intro comment with
10754         value_decref.
10755         * value.c (set_value_parent): Use new_reference.
10756         (value_incref): Return void.  Update intro comment.
10757         (release_value): Use new_reference.
10758         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
10759
10760 2018-04-30  Tom Tromey  <tom@tromey.com>
10761
10762         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
10763         * gdb_bfd.h (new_bfd_ref): Remove.
10764         (gdb_bfd_open): Update comment.
10765         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
10766         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
10767         (gdb_bfd_fdopenr): Use new_reference.
10768         * exec.c (exec_file_attach): Use new_reference.
10769
10770 2018-04-30  Tom Tromey  <tom@tromey.com>
10771
10772         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
10773         method.
10774
10775 2018-04-30  Tom Tromey  <tom@tromey.com>
10776
10777         * jit.c (jit_read_code_entry): Use type_align.
10778         * i386-tdep.c (i386_gdbarch_init): Don't call
10779         set_gdbarch_long_long_align_bit.
10780         * gdbarch.sh: Remove long_long_align_bit.
10781         * gdbarch.c, gdbarch.h: Rebuild.
10782         * arc-tdep.c (arc_type_align): New function.
10783         (arc_gdbarch_init): Use arc_type_align.  Don't call
10784         set_gdbarch_long_long_align_bit.
10785
10786 2018-04-30  Tom Tromey  <tom@tromey.com>
10787
10788         * rust-lang.c (rust_type_alignment): Remove.
10789         (rust_composite_type): Use type_align.
10790
10791 2018-04-30  Tom Tromey  <tom@tromey.com>
10792
10793         * NEWS: Mention Type.align.
10794         * python/py-type.c (typy_get_alignof): New function.
10795         (type_object_getset): Add "alignof".
10796
10797 2018-04-30  Tom Tromey  <tom@tromey.com>
10798
10799         PR exp/17095:
10800         * NEWS: Update.
10801         * std-operator.def (UNOP_ALIGNOF): New operator.
10802         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
10803         New.
10804         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
10805         * c-lang.c (c_op_print_tab): Add alignof.
10806         * c-exp.y (ALIGNOF): New token.
10807         (exp): Add "ALIGNOF" production.
10808         (ident_tokens): Add _Alignof and alignof.
10809
10810 2018-04-30  Tom Tromey  <tom@tromey.com>
10811
10812         * i386-tdep.c (i386_type_align): New function.
10813         (i386_gdbarch_init): Update.
10814         * gdbarch.sh (type_align): New method.
10815         * gdbarch.c, gdbarch.h: Rebuild.
10816         * arch-utils.h (default_type_align): Declare.
10817         * arch-utils.c (default_type_align): New function.
10818         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
10819         (struct type) <align_log2>: New field.
10820         <instance_flags>: Now a bitfield.
10821         (TYPE_RAW_ALIGN): New macro.
10822         (type_align, type_raw_align, set_type_align): Declare.
10823         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
10824         functions.
10825         * dwarf2read.c (quirk_rust_enum): Set type alignment.
10826         (get_alignment, maybe_set_alignment): New functions.
10827         (read_structure_type, read_enumeration_type, read_array_type)
10828         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
10829         (read_subrange_type, read_base_type): Set type alignment.
10830
10831 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
10832
10833         * dwarf2read.c (read_index_from_section): Use bool.
10834
10835 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
10836
10837         PR gdb/22950
10838         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
10839         with #ifdef.
10840
10841 2018-04-29  John Reiser  <jreiser@BitWagon.com>
10842
10843         PR build/22873
10844         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
10845         last step, and do it atomically.
10846
10847 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
10848
10849         * compile/compile-c-types.c (convert_int, convert_float):
10850         Update for C FE v1.
10851
10852 2018-04-27  Tom Tromey  <tom@tromey.com>
10853
10854         PR rust/22545:
10855         * rust-lang.c (rust_inclusive_range_type_p): New function.
10856         (rust_range): Handle inclusive ranges.
10857         (rust_compute_range): Likewise.
10858         * rust-exp.y (struct rust_op) <inclusive>: New field.
10859         (DOTDOTEQ): New constant.
10860         (range_expr): Add "..=" productions.
10861         (operator_tokens): Add "..=" token.
10862         (ast_range): Add "inclusive" parameter.
10863         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
10864         ranges.
10865         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
10866         bounds values.
10867         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
10868         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
10869         Update comments.
10870         * expprint.c (print_subexp_standard): Handle new bounds values.
10871         (dump_subexp_body_standard): Likewise.
10872
10873 2018-04-27  Tom Tromey  <tom@tromey.com>
10874
10875         * configure: Rebuild.
10876         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
10877         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
10878         "OVERRIDE".
10879         (class symbol_needs_eval_context): Likewise.
10880         * dwarf2read.c (mock_mapped_index::symbol_name_count)
10881         (mock_mapped_index::symbol_name_at): Use "override".  Remove
10882         "virtual".
10883         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
10884         "override".
10885         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
10886         * aarch64-tdep.c (instruction_reader::read): Use "override".
10887         (instruction_reader_test::read): Likewise.
10888         * arm-tdep.c (instruction_reader::read): Use "override".
10889         (instruction_reader_thumb::read): Likewise.
10890
10891 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
10892
10893         PR remote/9665
10894         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
10895         instead of remote_send.
10896         (remote_send): Remove.
10897
10898 2018-04-26  Pedro Alves  <palves@redhat.com>
10899
10900         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
10901         find_function_start_sal instead of find_pc_line.
10902
10903 2018-04-26  Pedro Alves  <palves@redhat.com>
10904
10905         * breakpoint.c (set_breakpoint_location_function): Handle
10906         mst_data_gnu_ifunc.
10907         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
10908         * elfread.c (elf_symtab_read): Give data symbols with
10909         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
10910         (elf_rel_plt_read): Update comment.
10911         * linespec.c (convert_linespec_to_sals): Handle
10912         mst_data_gnu_ifunc.
10913         (minsym_found): Handle mst_data_gnu_ifunc.
10914         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
10915         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
10916         * parse.c (find_minsym_type_and_address): Handle
10917         mst_data_gnu_ifunc.
10918         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
10919         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
10920         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
10921         comment.
10922         <mst_data_gnu_ifunc>: New enumerator.
10923
10924 2018-04-26  Pedro Alves  <palves@redhat.com>
10925
10926         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
10927         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
10928         'want_trampoline' parameter by a lookup_msym_prefer parameter.
10929         Handle it.
10930         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
10931         (lookup_minimal_symbol_by_pc): Adjust.
10932         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
10933         (lookup_solib_trampoline_symbol_by_pc): Adjust.
10934         * minsyms.h (lookup_msym_prefer): New enum.
10935         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
10936         parameter by a lookup_msym_prefer parameter.
10937
10938 2018-04-26  Pedro Alves  <palves@redhat.com>
10939
10940         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
10941         ends in "@plt" instead of looking at the symbol's section.
10942
10943 2018-04-26  Pedro Alves  <palves@redhat.com>
10944
10945         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
10946         all references.
10947         (find_pc_partial_function_gnu_ifunc): Rename to ...
10948         (find_pc_partial_function): ... this, and remove references to
10949         'is_gnu_ifunc_p'.
10950         (find_pc_partial_function): Delete old implementation.
10951         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
10952
10953 2018-04-26  Pedro Alves  <palves@redhat.com>
10954
10955         * linespec.c (struct bound_minimal_symbol_search_key): New.
10956         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
10957         skip first line if we found a GNU ifunc minimal symbol by name.
10958         (compare_msymbols): Change parameters to work with a destructured
10959         lhs minsym.
10960         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
10961         functions.
10962
10963 2018-04-26  Pedro Alves  <palves@redhat.com>
10964
10965         * breakpoint.c (set_breakpoint_location_function): Don't resolve
10966         ifunc targets here.  Instead, if we have an ifunc minsym, use its
10967         address/name.
10968         (add_location_to_breakpoint): Store the minsym and the objfile in
10969         the breakpoint location.
10970         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
10971         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
10972         Record the minsym in the sal.
10973         * symtab.h (symtab_and_line) <msymbol>: New field.
10974
10975 2018-04-26  Pedro Alves  <palves@redhat.com>
10976
10977         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
10978         unless we actually resolved the ifunc.
10979
10980 2018-04-26  Pedro Alves  <palves@redhat.com>
10981
10982         * c-exp.y (variable production): Prefer ifunc minsyms over
10983         regular function symbols.
10984         * symtab.c (find_gnu_ifunc): New function.
10985         * minsyms.h (lookup_msym_prefer): New enum.
10986         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
10987         parameter by a lookup_msym_prefer parameter.
10988         * symtab.h (find_gnu_ifunc): New declaration.
10989
10990 2018-04-26  Pedro Alves  <palves@redhat.com>
10991
10992         * blockframe.c (find_gnu_ifunc_target_type): New function.
10993         (find_function_type): New.
10994         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
10995         return a value with a memory address.
10996         (eval_call): For calls to GNU ifunc functions, try to find the
10997         type of the target function from the type that the resolver
10998         returns.
10999         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
11000         symbols.
11001         * infcall.c (find_function_return_type): Delete.
11002         (find_function_addr): Add 'function_type' parameter.  For calls to
11003         GNU ifunc functions, try to find the type of the target function
11004         from the type that the resolver returns, and return it via
11005         FUNCTION_TYPE.
11006         (call_function_by_hand_dummy): Adjust to use the function type
11007         returned by find_function_addr.
11008         (find_function_addr): Add 'function_type' parameter and move
11009         description here.
11010         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
11011         declarations.
11012
11013 2018-04-26  Pedro Alves  <palves@redhat.com>
11014
11015         * c-exp.y (variable production): Skip finding an alias for ifunc
11016         symbols.
11017
11018 2018-04-26  Pedro Alves  <palves@redhat.com>
11019
11020         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
11021
11022 2018-04-25  Pedro Alves  <palves@redhat.com>
11023
11024         * infcmd.c (kill_command): Print the pid as string, not the whole
11025         thread's ptid.  Add comment.  s/has been killed/killed/ in output
11026         message.
11027         * remote.c (remote_detach_1): Print the pid as string, not the
11028         whole thread's ptid.
11029
11030 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
11031             Sergio Durigan Junior  <sergiodj@redhat.com>
11032             Pedro Alves  <palves@redhat.com>
11033
11034         * infcmd.c (kill_command): Print message when inferior has
11035         been killed.
11036         * inferior.c (print_inferior_events): Remove 'static'.  Set as
11037         '1'.
11038         (add_inferior): Improve message printed when
11039         'print_inferior_events' is on.
11040         (exit_inferior): Remove message printed when
11041         'print_inferior_events' is on.
11042         (detach_inferior): Improve message printed when
11043         'print_inferior_events' is on.
11044         (initialize_inferiors): Use 'add_inferior_silent' to set
11045         'current_inferior_'.
11046         * inferior.h (print_inferior_events): Declare here as
11047         'extern'.
11048         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
11049         '[Detaching...]' messages when 'print_inferior_events' is on.
11050         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
11051         as prefix/suffix for messages.  Remove periods.  Fix erroneous
11052         'Detaching after fork from child...', replace it by '... from
11053         parent...'.
11054         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
11055         prefix/suffix when printing 'Detaching...' messages.  Print
11056         them when 'print_inferior_events' is on.
11057         * remote.c (remote_detach_1): Print message when detaching
11058         from inferior and '!is_fork_parent'.
11059
11060 2018-04-24  Tom Tromey  <tom@tromey.com>
11061
11062         * cli-out.h: Reindent.
11063
11064 2018-04-24  Tom Tromey  <tom@tromey.com>
11065
11066         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
11067         (cli_ui_out::do_field_string): Use fputs_filtered.
11068         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
11069
11070 2018-04-23  Tom Tromey  <tom@tromey.com>
11071
11072         * guile/scm-frame.c (gdbscm_frame_read_var): Use
11073         gdb::unique_xmalloc_ptr.
11074
11075 2018-04-23  Tom Tromey  <tom@tromey.com>
11076
11077         * configure: Rebuild.
11078
11079 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
11080
11081         PR gdb/23095
11082         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
11083         prepare_for_testing.  Set normal_bp to r_debug_state if target
11084         is bsd.
11085
11086 2018-04-21  Pedro Alves  <palves@redhat.com>
11087             Rajendra SY  <rajendra.sy@gmail.com>
11088
11089         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
11090         * remote.c (extended_remote_attach): In all-stop mode, mark the
11091         thread as executing.
11092
11093 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
11094
11095         * thread.c (thread_apply_all_command): Fix comment.
11096         (thread_command): Fix comment.
11097
11098 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
11099
11100         * common/tdesc.h (tdesc_create_feature): Remove xml filename
11101         parameter.
11102         * features/aarch64-core.c (create_feature_aarch64_core):
11103         Regenerate.
11104         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
11105         Likewise.
11106         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
11107         Likewise.
11108         * features/i386/32bit-avx512.c
11109         (create_feature_i386_32bit_avx512): Likewise.
11110         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
11111         Likewise.
11112         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
11113         Likewise.
11114         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
11115         Likewise.
11116         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
11117         Likewise.
11118         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
11119         Likewise.
11120         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
11121         Likewise.
11122         * features/i386/64bit-avx512.c
11123         (create_feature_i386_64bit_avx512): Likewise.
11124         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
11125         Likewise.
11126         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
11127         Likewise.
11128         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
11129         Likewise.
11130         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
11131         Likewise.
11132         * features/i386/64bit-segments.c
11133         (create_feature_i386_64bit_segments): Likewise.
11134         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
11135         Likewise.
11136         * features/i386/x32-core.c
11137         (create_feature_i386_x32_core): Likewise.
11138         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
11139         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
11140         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
11141         * target-descriptions.c: In generated code, don't pass xml
11142         filename.
11143
11144 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11145
11146         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
11147         (print_xml_feature::visit_post): Likewise.
11148         (print_xml_feature::visit): Likewise.
11149         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
11150         (print_xml_feature): Add new class.
11151         * regformats/regdat.sh: Null xmltarget on feature targets.
11152         * target-descriptions.c (struct target_desc): Add xmltarget.
11153         (maintenance_check_tdesc_xml_convert): Add unittest function.
11154         (tdesc_get_features_xml): Add function to get xml.
11155         (maintenance_check_xml_descriptions): Test xml generation.
11156         * xml-tdesc.c (string_read_description_xml): Add function.
11157         * xml-tdesc.h (string_read_description_xml): Add declaration.
11158
11159 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11160
11161         * features/Makefile: Add feature marker to targets with new style
11162         target descriptions.
11163         * regformats/aarch64.dat: Regenerate.
11164         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
11165         * regformats/i386/amd64-avx-linux.dat: Likewise.
11166         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
11167         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
11168         * regformats/i386/amd64-linux.dat: Likewise.
11169         * regformats/i386/amd64-mpx-linux.dat: Likewise.
11170         * regformats/i386/amd64.dat: Likewise.
11171         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
11172         * regformats/i386/i386-avx-linux.dat: Likewise.
11173         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
11174         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
11175         * regformats/i386/i386-linux.dat: Likewise.
11176         * regformats/i386/i386-mmx-linux.dat: Likewise.
11177         * regformats/i386/i386-mpx-linux.dat: Likewise.
11178         * regformats/i386/i386.dat: Likewise.
11179         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
11180         * regformats/i386/x32-avx-linux.dat: Likewise.
11181         * regformats/i386/x32-linux.dat: Likewise.
11182         * regformats/tic6x-c62x-linux.dat: Likewise.
11183         * regformats/tic6x-c64x-linux.dat: Likewise.
11184         * regformats/tic6x-c64xp-linux.dat: Likewise.
11185         * regformats/regdat.sh: Parse feature marker.
11186
11187 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11188
11189         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
11190         (tdesc_osabi_name): Likewise.
11191         * target-descriptions.c (tdesc_architecture_name): Add new
11192         function.
11193         (tdesc_osabi_name): Likewise.
11194
11195 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11196
11197         * common/tdesc.c (tdesc_predefined_type): Move to here.
11198         (tdesc_named_type): Likewise.
11199         (tdesc_create_vector): Likewise.
11200         (tdesc_create_struct): Likewise.
11201         (tdesc_set_struct_size): Likewise.
11202         (tdesc_create_union): Likewise.
11203         (tdesc_create_flags): Likewise.
11204         (tdesc_create_enum): Likewise.
11205         (tdesc_add_field): Likewise.
11206         (tdesc_add_typed_bitfield): Likewise.
11207         (tdesc_add_bitfield): Likewise.
11208         (tdesc_add_flag): Likewise.
11209         (tdesc_add_enum_value): Likewise.
11210         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
11211         (struct tdesc_type_vector): Likewise.
11212         (struct tdesc_type_field): Likewise.
11213         (struct tdesc_type_with_fields): Likewise.
11214         (tdesc_create_enum): Add declaration.
11215         (tdesc_add_typed_bitfield): Likewise.
11216         (tdesc_add_enum_value): Likewise.
11217         * target-descriptions.c (tdesc_type_field): Move from here.
11218         (tdesc_type_builtin): Likewise.
11219         (tdesc_type_vector): Likewise.
11220         (tdesc_type_with_fields): Likewise.
11221         (tdesc_predefined_types): Likewise.
11222         (tdesc_named_type): Likewise.
11223         (tdesc_create_vector): Likewise.
11224         (tdesc_create_struct): Likewise.
11225         (tdesc_set_struct_size): Likewise.
11226         (tdesc_create_union): Likewise.
11227         (tdesc_create_flags): Likewise.
11228         (tdesc_create_enum): Likewise.
11229         (tdesc_add_field): Likewise.
11230         (tdesc_add_typed_bitfield): Likewise.
11231         (tdesc_add_bitfield): Likewise.
11232         (tdesc_add_flag): Likewise.
11233         (tdesc_add_enum_value): Likewise.
11234         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
11235         (tdesc_add_typed_bitfield): Likewise.
11236         (tdesc_add_enum_value): Likewise.
11237
11238 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11239
11240         * common/tdesc.c (tdesc_feature::accept): Move to here.
11241         (tdesc_feature::operator==): Likewise.
11242         (tdesc_create_reg): Likewise.
11243         * common/tdesc.h (tdesc_type_kind): Likewise.
11244         (struct tdesc_type): Likewise.
11245         (struct tdesc_feature): Likewise.
11246         * regformats/regdat.sh: Create a feature.
11247         * target-descriptions.c (tdesc_type_kind): Move from here.
11248         (tdesc_type): Likewise.
11249         (tdesc_type_up): Likewise.
11250         (tdesc_feature): Likewise.
11251         (tdesc_create_reg): Likewise.
11252
11253 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11254
11255         * Makefile.in: Add arch/tdesc.c
11256         * common/tdesc.c: New file.
11257         * common/tdesc.h (tdesc_element_visitor): Move to here.
11258         (tdesc_element): Likewise.
11259         (tdesc_reg): Likewise.
11260         (tdesc_reg_up): Likewise.
11261         * regformats/regdef.h (reg): Add offset to constructors.
11262         * target-descriptions.c (tdesc_element_visitor): Move from here.
11263         (tdesc_element): Likewise.
11264         (tdesc_reg): Likewise.
11265         (tdesc_reg_up): Likewise.
11266
11267 2018-04-17  Tom Tromey  <tom@tromey.com>
11268
11269         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
11270         discriminant field.
11271
11272 2018-04-17  Tom Tromey  <tom@tromey.com>
11273
11274         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
11275
11276 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11277
11278         * symtab.c (print_symbol_info): Skip printing filename and line
11279         number when `last' is NULL.
11280         (symtab_symbol_info): Use empty string instead of NULL for first
11281         invocation of print_symbol_info.
11282         (rbreak_command): Pass NULL to `last' parameter of
11283         print_symbol_info.
11284
11285 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
11286
11287         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
11288         instead of nullptr.
11289
11290 2018-04-16  Pedro Alves  <palves@redhat.com>
11291
11292         * MAINTAINERS (sh): Remove.
11293         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
11294         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
11295         (ALLDEPFILES): Remove sh64-tdep.c.
11296         * NEWS: Mentions that support for SH-5/SH64 is removed.
11297         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
11298         (sh*-*-openbsd*): Ditto.
11299         (sh64-*-elf*): Remove.
11300         (sh*): Remove.
11301         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
11302         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
11303         * sh-tdep.c: No longer include "sh64-tdep.h".
11304         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
11305         * sh64-tdep.c, sh64-tdep.h: Remove files.
11306
11307 2018-04-16  Pedro Alves  <palves@redhat.com>
11308
11309         * MAINTAINERS: Remove m88k.
11310         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
11311         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
11312         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
11313         * NEWS: Mention that support for m88k was removed.
11314         * configure.host (m88*-*-*): Remove support.
11315         * configure.nat (m88k-*-*): Remove support.
11316         * configure.tgt (m88*-*-openbsd*): Remove.
11317         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
11318
11319 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
11320
11321         * configure.tgt (x86_tobjs): New variable.
11322         (amd64_tobjs, i386_tobjs): Use it.
11323
11324 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11325
11326         * symtab.c (print_symbol_info): Precede the symbol definition by
11327         the line number when available.
11328         * NEWS: Advertise this enhancement.
11329
11330 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11331
11332         * NEWS (New options): announce set/show record btrace cpu.
11333         * btrace.c: Include record-btrace.h.
11334         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
11335         the vendor is unknown.
11336         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
11337         Maybe overwrite the btrace configuration's cpu.
11338         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
11339         (btrace_fetch): Add cpu parameter.  Update callers.
11340         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
11341         Maybe overwrite the btrace configuration's cpu.  Skip enabling
11342         errata workarounds if the vendor is unknown.
11343         * python/py-record-btrace.c: Include record-btrace.h.
11344         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
11345         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
11346         * record-btrace.c (record_btrace_cpu_state_kind): New.
11347         (record_btrace_cpu): New.
11348         (set_record_btrace_cpu_cmdlist): New.
11349         (record_btrace_get_cpu): New.
11350         (require_btrace_thread, record_btrace_info)
11351         (record_btrace_resume_thread): Call record_btrace_get_cpu.
11352         (cmd_set_record_btrace_cpu_none): New.
11353         (cmd_set_record_btrace_cpu_auto): New.
11354         (cmd_set_record_btrace_cpu): New.
11355         (cmd_show_record_btrace_cpu): New.
11356         (_initialize_record_btrace): Initialize set/show record btrace cpu
11357         commands.
11358         * record-btrace.h (record_btrace_get_cpu): New.
11359
11360 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11361
11362         * record.c (set_record_command): Fix typo in message.
11363
11364 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11365
11366         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
11367
11368 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11369
11370         * infrun.c (process_event_stop_test): Call
11371         gdbarch_in_indirect_branch_thunk.
11372         * gdbarch.sh (in_indirect_branch_thunk): New.
11373         * gdbarch.c: Regenerated.
11374         * gdbarch.h: Regenerated.
11375         * x86-tdep.h: New.
11376         * x86-tdep.c: New.
11377         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
11378         (HFILES_NO_SRCDIR): Add x86-tdep.h.
11379         (ALLDEPFILES): Add x86-tdep.c.
11380         * arch-utils.h (default_in_indirect_branch_thunk): New.
11381         * arch-utils.c (default_in_indirect_branch_thunk): New.
11382         * i386-tdep: Include x86-tdep.h.
11383         (i386_in_indirect_branch_thunk): New.
11384         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
11385         function.
11386         * amd64-tdep: Include x86-tdep.h.
11387         (amd64_in_indirect_branch_thunk): New.
11388         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
11389
11390 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
11391
11392         PR gdb/23053
11393         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
11394         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
11395         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
11396         regression.
11397
11398 2018-04-12  Tom Tromey  <tom@tromey.com>
11399
11400         * rust-lang.c (rust_print_struct_def): Remove univariant code.
11401         (rust_evaluate_subexp): Likewise.
11402
11403 2018-04-12  Pedro Alves  <palves@redhat.com>
11404
11405         * procfs.c (procfs_detach): Make forward declaration's prototype
11406         match definition's protototype.
11407         (proc_get_LDT_entry): Remove stale do_cleanups call.
11408
11409 2018-04-12  Pedro Alves  <palves@redhat.com>
11410
11411         * target.h (target_ops::to_has_exited): Delete.
11412         (target_has_exited): Delete.
11413         * target-delegates.c: Regenerate.
11414
11415 2018-04-11  Pedro Alves  <palves@redhat.com>
11416
11417         * target.c (fileio_fh_t::t): Add comment.
11418         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
11419         (target_fileio_close): Handle a NULL target.
11420         (invalidate_fileio_fh): New.
11421         (target_close): Call it.
11422         * remote.c (remote_hostio_send_command): No longer check whether
11423         remote_desc is open.
11424
11425 2018-04-11  Pedro Alves  <palves@redhat.com>
11426
11427         * target.c (fileio_fh_t): Make it a named struct instead of a
11428         typedef.
11429         (fileio_fh_t::is_closed): New method.
11430         (DEF_VEC_O (fileio_fh_t)): Remove.
11431         (fileio_fhandles): Now a std::vector.
11432         (is_closed_fileio_fh): Delete.
11433         (acquire_fileio_fd): Adjust.  Rename parameters.
11434         (release_fileio_fd): Adjust.
11435         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
11436         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
11437         (target_fileio_close): Adjust.
11438
11439 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
11440
11441         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
11442         index.
11443
11444 2018-04-10  Pedro Alves  <palves@redhat.com>
11445
11446         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
11447         (scoped_finish_thread_state): New class.
11448         * infcmd.c (run_command_1): Use it instead of finish_thread_state
11449         cleanup.
11450         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
11451         (fetch_inferior_event, normal_stop): Likewise.
11452         * thread.c (finish_thread_state_cleanup): Delete.
11453
11454 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11455             Pedro Alves  <palves@redhat.com>
11456
11457         * value.c: Include "selftest.h" and "common/array-view.h".
11458         (struct range) <operator ==>: New.
11459         (test_ranges_contain): New.
11460         (check_ranges_vector): New.
11461         (test_insert_into_bit_range_vector): New.
11462         (_initialize_values): Register selftests.
11463         * common/array-view.h (operator==, operator!=): New.
11464
11465 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11466
11467         * common/gdb_vecs.h (unordered_remove): Add overload that takes
11468         an iterator.
11469         * inline-frame.c: Include <algorithm>.
11470         (struct inline_state): Add constructor.
11471         (inline_state_s): Remove.
11472         (DEF_VEC_O(inline_state_s)): Remove.
11473         (inline_states): Change type to std::vector.
11474         (find_inline_frame_state): Adjust to std::vector.
11475         (allocate_inline_frame_state): Remove.
11476         (clear_inline_frame_state): Adjust to std::vector.
11477         (skip_inline_frames): Adjust to std::vector.
11478
11479 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11480
11481         * tracepoint.h (struct trace_state_variable): Add constructor.
11482         <name>: Change type to std::string.
11483         * tracepoint.c (tsv_s): Remove.
11484         (DEF_VEC_O(tsv_s)): Remove.
11485         (tvariables): Change to std::vector.
11486         (create_trace_state_variable): Adjust to std::vector.
11487         (find_trace_state_variable): Likewise.
11488         (find_trace_state_variable_by_number): Likewise.
11489         (delete_trace_state_variable): Likewise.
11490         (trace_variable_command): Adjust to std::string.
11491         (delete_trace_variable_command): Likewise.
11492         (tvariables_info_1): Adjust to std::vector.
11493         (save_trace_state_variables): Likewise.
11494         (start_tracing): Likewise.
11495         (merge_uploaded_trace_state_variables): Adjust to std::vector
11496         and std::string.
11497         * target.h (struct target_ops)
11498         <to_download_trace_state_variable>: Pass reference to
11499         trace_state_variable.
11500         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
11501         * target-delegates.c: Re-generate.
11502         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
11503         (mi_tsv_deleted): Likewise.
11504         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
11505         * remote.c (remote_download_trace_state_variable): Change
11506         pointer to reference and adjust.
11507         * make-target-delegates (parse_argtypes): Handle references.
11508         (write_function_header): Likewise.
11509         (munge_type): Likewise.
11510
11511 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11512
11513         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11514         string_view-selftests.c.
11515         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
11516         testsuite.
11517         * unittests/basic_string_view/cons/char/1.cc: Likewise.
11518         * unittests/basic_string_view/cons/char/2.cc: Likewise.
11519         * unittests/basic_string_view/cons/char/3.cc: Likewise.
11520         * unittests/basic_string_view/element_access/char/1.cc:
11521         Likewise.
11522         * unittests/basic_string_view/element_access/char/empty.cc:
11523         Likewise.
11524         * unittests/basic_string_view/element_access/char/front_back.cc:
11525         Likewise.
11526         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
11527         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
11528         Likewise.
11529         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
11530         Likewise.
11531         * unittests/basic_string_view/modifiers/swap/char/1.cc:
11532         Likewise.
11533         * unittests/basic_string_view/operations/compare/char/1.cc:
11534         Likewise.
11535         * unittests/basic_string_view/operations/compare/char/13650.cc:
11536         Likewise.
11537         * unittests/basic_string_view/operations/copy/char/1.cc:
11538         Likewise.
11539         * unittests/basic_string_view/operations/data/char/1.cc:
11540         Likewise.
11541         * unittests/basic_string_view/operations/find/char/1.cc:
11542         Likewise.
11543         * unittests/basic_string_view/operations/find/char/2.cc:
11544         Likewise.
11545         * unittests/basic_string_view/operations/find/char/3.cc:
11546         Likewise.
11547         * unittests/basic_string_view/operations/find/char/4.cc:
11548         Likewise.
11549         * unittests/basic_string_view/operations/rfind/char/1.cc:
11550         Likewise.
11551         * unittests/basic_string_view/operations/rfind/char/2.cc:
11552         Likewise.
11553         * unittests/basic_string_view/operations/rfind/char/3.cc:
11554         Likewise.
11555         * unittests/basic_string_view/operations/substr/char/1.cc:
11556         Likewise.
11557         * unittests/basic_string_view/operators/char/2.cc: Likewise.
11558         * unittests/string_view-selftests.c: New file.
11559
11560 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11561
11562         * unittests/basic_string_view/capacity/1.cc: New file.
11563         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
11564         * unittests/basic_string_view/cons/char/1.cc: New file.
11565         * unittests/basic_string_view/cons/char/2.cc: New file.
11566         * unittests/basic_string_view/cons/char/3.cc: New file.
11567         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
11568         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
11569         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
11570         * unittests/basic_string_view/element_access/char/1.cc: New file.
11571         * unittests/basic_string_view/element_access/char/2.cc: New file.
11572         * unittests/basic_string_view/element_access/char/empty.cc: New file.
11573         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
11574         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
11575         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
11576         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
11577         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
11578         * unittests/basic_string_view/include.cc: New file.
11579         * unittests/basic_string_view/inserters/char/1.cc: New file.
11580         * unittests/basic_string_view/inserters/char/2.cc: New file.
11581         * unittests/basic_string_view/inserters/char/3.cc: New file.
11582         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
11583         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
11584         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
11585         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
11586         * unittests/basic_string_view/literals/types.cc: New file.
11587         * unittests/basic_string_view/literals/values.cc: New file.
11588         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
11589         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
11590         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
11591         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
11592         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
11593         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
11594         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
11595         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
11596         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
11597         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
11598         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
11599         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
11600         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
11601         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
11602         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
11603         * unittests/basic_string_view/operations/data/char/1.cc: New file.
11604         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
11605         * unittests/basic_string_view/operations/find/char/1.cc: New file.
11606         * unittests/basic_string_view/operations/find/char/2.cc: New file.
11607         * unittests/basic_string_view/operations/find/char/3.cc: New file.
11608         * unittests/basic_string_view/operations/find/char/4.cc: New file.
11609         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
11610         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
11611         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
11612         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
11613         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
11614         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
11615         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
11616         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
11617         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
11618         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
11619         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
11620         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
11621         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
11622         * unittests/basic_string_view/operators/char/2.cc: New file.
11623         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
11624         * unittests/basic_string_view/range_access/char/1.cc: New file.
11625         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
11626         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
11627         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
11628         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
11629         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
11630         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
11631         * unittests/basic_string_view/requirements/typedefs.cc: New file.
11632         * unittests/basic_string_view/typedefs.cc: New file.
11633         * unittests/basic_string_view/types/1.cc: New file.
11634
11635 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11636
11637         * common/gdb_string_view.h: Remove libstdc++ implementation
11638         details, adjust to gdb reality.
11639         * common/gdb_string_view.tcc: Likewise.
11640         * cli/cli-script.c (struct string_view): Remove.
11641         (user_args) <m_args>: Change element type to gdb::string_view.
11642         (user_args::insert_args): Adjust.
11643
11644 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11645
11646         * common/gdb_string_view.h: New file.
11647         * common/gdb_string_view.tcc: New file.
11648
11649 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11650
11651         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
11652         * configure: Re-generate.
11653
11654 2018-04-09  Pedro Alves  <palves@redhat.com>
11655
11656         * gdbarch.sh: Include "observable.h" instead of "observer.h".
11657         (set_target_gdbarch): Call
11658         gdb::observers::architecture_changed.notify instead of
11659         observer_notify_architecture_changed.
11660
11661 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11662
11663         * tracepoint.c (struct current_traceframe_cleanup): Remove.
11664         (do_restore_current_traceframe_cleanup): Remove.
11665         (restore_current_traceframe_cleanup_dtor): Remove.
11666         (make_cleanup_restore_current_traceframe): Remove.
11667         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
11668         New.
11669         * tracepoint.h (struct scoped_restore_current_traceframe): New.
11670         * infrun.c (fetch_inferior_event): Use
11671         scoped_restore_current_traceframe.
11672
11673 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11674
11675         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
11676         Remove.
11677         <n_allocated_type_units>: Remove.
11678         <all_type_units>: Change to std::vector.
11679         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11680         to std::vector change.
11681         (dwarf2_per_objfile::get_cutu): Likewise.
11682         (dwarf2_per_objfile::get_tu): Likewise.
11683         (create_signatured_type_table_from_index): Likewise.
11684         (create_signatured_type_table_from_debug_names): Likewise.
11685         (dw2_symtab_iter_next): Likewise.
11686         (dw2_print_stats): Likewise.
11687         (dw2_expand_all_symtabs): Likewise.
11688         (dw2_expand_marked_cus): Likewise.
11689         (dw2_debug_names_iterator::next): Likewise.
11690         (dwarf2_initialize_objfile): Likewise.
11691         (add_signatured_type_cu_to_table): Likewise.
11692         (create_all_type_units): Likewise.
11693         (add_type_unit): Likewise.
11694         (struct tu_abbrev_offset): Add constructor.
11695         (build_type_psymtabs_1): Adjust to std::vector change.
11696         (print_tu_stats): Likewise.
11697         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
11698         (write_debug_names): Likewise.
11699
11700 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11701
11702         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
11703         Make an std::vector.
11704         <n_comp_units>: Remove.
11705         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11706         to std::vector change.
11707         (dwarf2_per_objfile::get_cutu): Likewise.
11708         (dwarf2_per_objfile::get_cu): Likewise.
11709         (create_cus_from_index): Likewise.
11710         (create_addrmap_from_index): Likewise.
11711         (create_addrmap_from_aranges): Likewise.
11712         (dwarf2_read_index): Likewise.
11713         (dw2_find_last_source_symtab): Likewise.
11714         (dw2_map_symtabs_matching_filename): Likewise.
11715         (dw2_symtab_iter_next): Likewise.
11716         (dw2_print_stats): Likewise.
11717         (dw2_expand_all_symtabs): Likewise.
11718         (dw2_expand_symtabs_with_fullname): Likewise.
11719         (dw2_expand_marked_cus): Likewise.
11720         (dw2_map_symbol_filenames): Likewise.
11721         (create_cus_from_debug_names): Likewise.
11722         (dwarf2_read_debug_names): Likewise.
11723         (dw2_debug_names_iterator::next): Likewise.
11724         (dwarf2_initialize_objfile): Likewise.
11725         (set_partial_user): Likewise.
11726         (dwarf2_build_psymtabs_hard): Likewise.
11727         (read_comp_units_from_section): Remove arguments, adjust to
11728         std::vector change.
11729         (create_all_comp_units): Adjust to std::vector and
11730         read_comp_units_from_section changes.
11731         (dwarf2_find_containing_comp_unit): Adjust to std::vector
11732         change.
11733         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
11734         (psyms_seen_size): Likewise.
11735         (write_gdbindex): Likewise.
11736         (write_debug_names): Likewise.
11737
11738 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11739
11740         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
11741         with dwarf2_per_objfile.
11742         (create_cus_from_index): Likewise.
11743         (create_signatured_type_table_from_index): Likewise.
11744         (dwarf2_read_index): Likewise.
11745         (dwarf2_initialize_objfile): Likewise.
11746         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
11747         per_cu rather than get_dwarf2_per_objfile.
11748
11749 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11750
11751         * dwarf2read.h (struct signatured_type): Forward declare.
11752         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
11753         New methods.
11754         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
11755         (dw2_get_cutu): ...this.
11756         (dwarf2_per_objfile::get_cu): Rename from...
11757         (dw2_get_cu): ...this.
11758         (dwarf2_per_objfile::get_tu): New.
11759         (create_addrmap_from_index): Adjust.
11760         (create_addrmap_from_aranges): Adjust.
11761         (dw2_find_last_source_symtab): Adjust.
11762         (dw2_map_symtabs_matching_filename): Adjust.
11763         (dw2_symtab_iter_next): Adjust.
11764         (dw2_print_stats): Adjust.
11765         (dw2_expand_all_symtabs): Adjust.
11766         (dw2_expand_symtabs_with_fullname): Adjust.
11767         (dw2_expand_marked_cus): Adjust.
11768         (dw_expand_symtabs_matching_file_matcher): Adjust.
11769         (dw2_map_symbol_filenames): Adjust.
11770         (dw2_debug_names_iterator::next): Adjust.
11771         (dwarf2_initialize_objfile): Adjust.
11772         (set_partial_user): Adjust.
11773         (dwarf2_build_psymtabs_hard): Adjust.
11774
11775 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11776
11777         * dwarf2read.c (create_signatured_type_table_from_debug_names):
11778         Remove unused variables.
11779         (dw2_map_symtabs_matching_filename): Likewise.
11780         (dwarf2_record_block_ranges): Likewise.
11781         (dwarf2_read_addr_index): Likewise.
11782         (follow_die_offset): Likewise.
11783
11784 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11785
11786         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
11787         to symbol_file_add_main.
11788
11789 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11790
11791         PR mi/22299
11792         * mi/mi-console.c (do_fputc_async_safe): New.
11793         (mi_console_file::write_async_safe): New.
11794         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
11795         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
11796         New.
11797         * ui-file.c (ui_file::putstrn): Adjust call to
11798         fputstrn_unfiltered.
11799         * utils.c (printchar): Replace do_fputs and do_fprintf
11800         parameters by do_fputc.
11801         (fputstr_filtered): Adjust call to printchar.
11802         (fputstr_unfiltered): Likewise.
11803         (fputstrn_filtered): Likewise.
11804         (fputstrn_unfiltered): Add do_fputc parameter, pass to
11805         printchar.
11806         * utils.h (do_fputc_ftype): New typedef.
11807         (fputstrn_unfiltered): Add do_fputc parameter.
11808
11809 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11810
11811         * regformats/i386/i386-avx.dat: Remove.
11812
11813 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11814
11815         PR gdb/22979
11816         * amd64-tdep.c (amd64_none_init_abi): New function.
11817         (amd64_x32_none_init_abi): New function.
11818         (_initialize_amd64_tdep): Register handlers for x86-64 and
11819         x64_32 with GDB_OSABI_NONE.
11820         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
11821         GDB_OSABI_NONE osabi.
11822
11823 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11824
11825         PR gdb/22980
11826         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
11827         GDB_OSABI_NONE.
11828         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
11829         * osabi.c (gdb_osabi_names): Add "unknown" entry.
11830
11831 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11832
11833         * common/byte-vector.h (char_vector): New type.
11834         * target.h (target_read_alloc): Return
11835         gdb::optional<byte_vector>.
11836         (target_read_stralloc): Return gdb::optional<char_vector>.
11837         (target_get_osdata): Return gdb::optional<char_vector>.
11838         * target.c (target_read_alloc_1): Templatize.  Replacement
11839         manual memory management with vector.
11840         (target_read_alloc): Change return type, adjust.
11841         (target_read_stralloc): Change return type, adjust.
11842         (target_get_osdata): Change return type, adjust.
11843         * auxv.c (struct auxv_info) <length>: Remove.
11844         <data>: Change type to gdb::optional<byte_vector>.
11845         (auxv_inferior_data_cleanup): Free auxv_info with delete.
11846         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
11847         (target_auxv_search): Adjust.
11848         (fprint_target_auxv): Adjust.
11849         * avr-tdep.c (avr_io_reg_read_command): Adjust.
11850         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
11851         (linux_make_corefile_notes): Adjust.
11852         * osdata.c (get_osdata): Adjust.
11853         * remote.c (remote_get_threads_with_qxfer): Adjust.
11854         (remote_memory_map): Adjust.
11855         (remote_traceframe_info): Adjust.
11856         (btrace_read_config): Adjust.
11857         (remote_read_btrace): Adjust.
11858         (remote_pid_to_exec_file): Adjust.
11859         * solib-aix.c (solib_aix_get_library_list): Adjust.
11860         * solib-dsbt.c (decode_loadmap): Don't free buf.
11861         (dsbt_get_initial_loadmaps): Adjust.
11862         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
11863         * solib-target.c (solib_target_current_sos): Adjust.
11864         * tracepoint.c (sdata_make_value): Adjust.
11865         * xml-support.c (xinclude_start_include): Adjust.
11866         (xml_fetch_content_from_file): Adjust.
11867         * xml-support.h (xml_fetch_another): Change return type.
11868         (xml_fetch_content_from_file): Change return type.
11869         * xml-syscall.c (xml_init_syscalls_info): Adjust.
11870         * xml-tdesc.c (file_read_description_xml): Adjust.
11871         (fetch_available_features_from_target): Change return type.
11872         (target_fetch_description_xml): Adjust.
11873         (target_read_description_xml): Adjust.
11874
11875 2018-04-06  Tom Tromey  <tom@tromey.com>
11876
11877         * value.c (~value): Update.
11878         (struct value) <contents>: Now unique_xmalloc_ptr.
11879         (value_contents_bits_eq, allocate_value_contents)
11880         (value_contents_raw, value_contents_all_raw)
11881         (value_contents_for_printing, value_contents_for_printing_const)
11882         (set_value_enclosing_type): Update.
11883
11884 2018-04-06  Tom Tromey  <tom@tromey.com>
11885
11886         * value.c (range_s): Remove typedef, VEC.
11887         (struct range): Add operator<.
11888         (range_lessthan): Remove.
11889         (ranges_contain): Change type.
11890         (~value): Update.
11891         (struct value) <unavailable, optimized_out>: Now std::vector.
11892         (value_entirely_available)
11893         (value_entirely_covered_by_range_vector)
11894         (value_entirely_unavailable, value_entirely_optimized_out):
11895         Update.
11896         (insert_into_bit_range_vector): Change argument type.
11897         (find_first_range_overlap): Likewise.
11898         (struct ranges_and_idx, value_contents_bits_eq)
11899         (require_not_optimized_out, require_available): Update.
11900         (ranges_copy_adjusted): Change argument types.
11901         (value_optimized_out, value_copy, value_fetch_lazy): Update.
11902
11903 2018-04-06  Tom Tromey  <tom@tromey.com>
11904
11905         * value.c (~value): Update.
11906         (struct value) <parent>: Now a value_ref_ptr.
11907         (value_parent, set_value_parent, value_address, value_copy):
11908         Update.
11909
11910 2018-04-06  Tom Tromey  <tom@tromey.com>
11911
11912         * value.c (struct value): Add constructor, destructor, and member
11913         initializers.
11914         (allocate_value_lazy, value_decref): Update.
11915
11916 2018-04-06  Tom Tromey  <tom@tromey.com>
11917
11918         * value.c (struct value) <released, next>: Remove.
11919         (all_values): Now a std::vector.
11920         (allocate_value_lazy): Update.
11921         (value_next): Remove.
11922         (value_mark, value_free_to_mark, release_value)
11923         (value_release_to_mark): Update.
11924
11925 2018-04-06  Tom Tromey  <tom@tromey.com>
11926
11927         * value.h (fetch_subexp_value, value_release_to_mark): Update.
11928         (free_value_chain): Remove.
11929         * value.c (free_value_chain): Remove.
11930         (value_release_to_mark): Return a std::vector.
11931         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
11932         std::vector.
11933         (check_condition): Update.
11934         * eval.c (fetch_subexp_value): Change "val_chain" to a
11935         std::vector.
11936         * breakpoint.c (update_watchpoint): Update.
11937         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
11938
11939 2018-04-06  Tom Tromey  <tom@tromey.com>
11940
11941         * value.h (free_all_values): Remove.
11942         * value.c (free_all_values): Remove.
11943
11944 2018-04-06  Tom Tromey  <tom@tromey.com>
11945
11946         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
11947         (value_history_chain, value_history_count): Remove.
11948         (value_history): New global.
11949         (record_latest_value, access_value_history, show_values)
11950         (preserve_values): Update.
11951
11952 2018-04-06  Tom Tromey  <tom@tromey.com>
11953
11954         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
11955         * varobj.c (varobj_set_display_format, varobj_set_value)
11956         (install_default_visualizer, construct_visualizer)
11957         (install_new_value, ~varobj, varobj_get_value_type)
11958         (my_value_of_variable, varobj_editable_p): Update.
11959         * c-varobj.c (c_describe_child, c_value_of_variable)
11960         (cplus_number_of_children, cplus_describe_child): Update.
11961         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
11962         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
11963         (ada_value_of_variable, ada_value_is_changeable_p): Update.
11964
11965 2018-04-06  Tom Tromey  <tom@tromey.com>
11966
11967         * printcmd.c (last_examine_address): Change type to
11968         value_ref_ptr.
11969         (do_examine, x_command): Update.
11970
11971 2018-04-06  Tom Tromey  <tom@tromey.com>
11972
11973         * value.c (release_value): Update.
11974         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
11975         (struct bpstats) <val>: Now a value_ref_ptr.
11976         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
11977         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
11978         (~watchpoint, print_it_watchpoint, watch_command_1)
11979         (invalidate_bp_value_on_memory_change): Update.
11980
11981 2018-04-06  Tom Tromey  <tom@tromey.com>
11982
11983         * varobj.c (varobj_clear_saved_item)
11984         (update_dynamic_varobj_children, install_new_value, ~varobj):
11985         Update.
11986         * value.h (value_incref): Move declaration earlier.
11987         (value_decref): Rename from value_free.
11988         (struct value_ref_policy): New.
11989         (value_ref_ptr): New typedef.
11990         (struct value_deleter): Remove.
11991         (gdb_value_up): Remove typedef.
11992         (release_value): Change return type.
11993         (release_value_or_incref): Remove.
11994         * value.c (set_value_parent): Update.
11995         (value_incref): Change return type.
11996         (value_decref): Rename from value_free.
11997         (value_free_to_mark, free_all_values, free_value_chain): Update.
11998         (release_value): Return value_ref_ptr.
11999         (release_value_or_incref): Remove.
12000         (record_latest_value, set_internalvar, clear_internalvar):
12001         Update.
12002         * stack.c (info_frame_command): Don't call value_free.
12003         * python/py-value.c (valpy_dealloc, valpy_new)
12004         (value_to_value_object): Update.
12005         * printcmd.c (do_examine): Update.
12006         * opencl-lang.c (lval_func_free_closure): Update.
12007         * mi/mi-main.c (register_changed_p): Don't call value_free.
12008         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
12009         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
12010         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
12011         value_free.
12012         * guile/scm-value.c (vlscm_free_value_smob)
12013         (vlscm_scm_from_value): Update.
12014         * frame.c (frame_register_unwind, frame_unwind_register_signed)
12015         (frame_unwind_register_unsigned, get_frame_register_bytes)
12016         (put_frame_register_bytes): Don't call value_free.
12017         * findvar.c (address_from_register): Don't call value_free.
12018         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
12019         * dwarf2loc.c (entry_data_value_free_closure)
12020         (value_of_dwarf_reg_entry, free_pieced_value_closure)
12021         (dwarf2_evaluate_loc_desc_full): Update.
12022         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
12023         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
12024         (~watchpoint, watch_command_1)
12025         (invalidate_bp_value_on_memory_change): Update.
12026         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
12027
12028 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
12029
12030         PR gdb/23022
12031         * warning.m4: Add -Wno-error=deprecated-register.
12032         * configure: Re-generate.
12033
12034 2018-04-05  Tom Tromey  <tom@tromey.com>
12035
12036         * linespec.h: Remove include of "vec.h".
12037
12038 2018-04-05  Tom Tromey  <tom@tromey.com>
12039
12040         * linespec.c (typep): Remove typedef.
12041         (find_methods, find_superclass_methods): Take a std::vector.
12042         (find_method): Use std::vector.
12043
12044 2018-04-05  Tom Tromey  <tom@tromey.com>
12045
12046         * utils.c (compare_strings): Remove.
12047         * utils.h (compare_strings): Remove.
12048         * objc-lang.h (find_imps): Update.
12049         * objc-lang.c (find_methods): Take a std::vector.
12050         (uniquify_strings, find_imps): Likewise.
12051         * linespec.c (find_methods): Take a std::vector.
12052         (decode_objc): Use std::vector.
12053         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
12054         a std::vector.
12055         (find_method, find_function_symbols): Use std::vector.
12056
12057 2018-04-05  Tom Tromey  <tom@tromey.com>
12058
12059         * completer.c (completion_tracker::completion_tracker): Remove
12060         cast.
12061         (completion_tracker::discard_completions): Likewise.
12062         * breakpoint.c (ambiguous_names_p): Remove cast.
12063         * ada-lang.c (_initialize_ada_language): Remove cast.
12064         * utils.h (streq): Update.
12065         (streq_hash): Add new declaration.
12066         * utils.c (streq): Return bool.
12067         (streq_hash): New function.
12068
12069 2018-04-05  Tom Tromey  <tom@tromey.com>
12070
12071         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
12072         Remove a string copy.
12073
12074 2018-04-05  Tom Tromey  <tom@tromey.com>
12075
12076         * linespec.c (filter_results): Use std::vector.
12077         (decode_line_2, decode_line_full): Update.
12078
12079 2018-04-05  Tom Tromey  <tom@tromey.com>
12080
12081         * linespec.c (canonical_to_fullform): Return std::string.
12082         (filter_results): Update.
12083         (struct decode_line_2_item): Add constructor.
12084         <fullform, displayform>: Now std::string.
12085         (decode_line_2_compare_items): Now a std::sort comparator.
12086         (decode_line_2): Update.
12087
12088 2018-04-05  Tom Tromey  <tom@tromey.com>
12089
12090         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
12091         (unexpected_linespec_error): Update.
12092         (linespec_parse_basic, parse_linespec): Update.
12093
12094 2018-04-05  Tom Tromey  <tom@tromey.com>
12095
12096         * linespec.c (linespec_parse_basic): Reindent.
12097
12098 2018-04-05  Tom Tromey  <tom@tromey.com>
12099
12100         * minsyms.h (iterate_over_minimal_symbols): Update.
12101         * minsyms.c (iterate_over_minimal_symbols): Take a
12102         gdb::function_view.
12103         * linespec.c (struct collect_minsyms): Remove.
12104         (compare_msyms): Now a std::sort comparator.
12105         (add_minsym): Add parameters.
12106         (search_minsyms_for_name): Update.  Use std::vector.
12107
12108 2018-04-03  Tom Tromey  <tom@tromey.com>
12109
12110         * mipsread.c (read_alphacoff_dynamic_symtab): Use
12111         gdb::byte_vector.
12112
12113 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
12114
12115         * MAINTAINERS (Write After Approval): Add Weimin Pan.
12116
12117 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
12118
12119         PR gdb/16959
12120         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
12121         printing static type.
12122
12123 2018-04-01  Tom Tromey  <tom@tromey.com>
12124
12125         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
12126         (rs6000_xfer_shared_libraries): Update.
12127
12128 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
12129
12130         * common/gdb_vecs.h (char_ptr): Remove.
12131         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
12132
12133 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
12134
12135         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
12136         with std::vector.
12137         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
12138
12139 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
12140
12141         * tracepoint.h (struct uploaded_tp): Initialize fields.
12142         <actions, step_actions, cmd_strings>: Change type to
12143         std::vector<char *>.
12144         * tracepoint.c (get_uploaded_tp): Allocate with new.
12145         (free_uploaded_tps): Free with delete.
12146         (parse_tracepoint_definition): Adjust to std::vector change.
12147         * breakpoint.c (read_uploaded_action): Likewise.
12148         (create_tracepoint_from_upload): Likewise.
12149         * ctf.c (ctf_write_uploaded_tp): Likewise.
12150         (SET_ARRAY_FIELD): Likewise.
12151         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
12152
12153 2018-03-30  Tom Tromey  <tom@tromey.com>
12154
12155         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
12156         std::unique_ptr.
12157         (svr4_keep_data_in_core): Update.
12158         (svr4_read_so_list): Update.
12159
12160 2018-03-30  Tom Tromey  <tom@tromey.com>
12161
12162         * windows-nat.c (handle_output_debug_string, handle_exception):
12163         Update.
12164         * target.h (target_read_string): Update.
12165         * target.c (target_read_string): Change "string" to
12166         unique_xmalloc_ptr.
12167         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
12168         Update.
12169         * solib-frv.c (frv_current_sos): Update.
12170         * solib-dsbt.c (dsbt_current_sos): Update.
12171         * solib-darwin.c (darwin_current_sos): Update.
12172         * linux-thread-db.c (inferior_has_bug): Update.
12173         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
12174         Update.  Remove alloca.
12175         * ada-lang.c (ada_main_name): Update.
12176
12177 2018-03-30  Tom Tromey  <tom@tromey.com>
12178
12179         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
12180         (struct dwo_file_deleter): New.
12181         (dwo_file_up): New typedef.
12182         (open_and_init_dwo_file): Use dwo_file_up.
12183         (free_dwo_file_cleanup): Remove.
12184
12185 2018-03-30  Tom Tromey  <tom@tromey.com>
12186
12187         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
12188         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
12189
12190 2018-03-30  Tom Tromey  <tom@tromey.com>
12191
12192         * dwarf2read.c (class free_cached_comp_units): New class.
12193         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
12194         (free_cached_comp_units): Remove function.
12195
12196 2018-03-30  Tom Tromey  <tom@tromey.com>
12197
12198         * utils.h (make_cleanup_unpush_target): Remove.
12199         * inf-ptrace.c (struct target_unpusher): New.
12200         (target_unpush_up) New typedef.
12201         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
12202         target_unpush_up.
12203         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
12204
12205 2018-03-27  Tom Tromey  <tom@tromey.com>
12206
12207         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
12208
12209 2018-03-27  Pedro Alves  <palves@redhat.com>
12210             Tom Tromey  <tom@tromey.com>
12211
12212         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
12213         destructor.  Now a class.
12214         (gdb_readline_wrapper_cleanup): Remove function.
12215         (gdb_readline_wrapper): Remove cleanups.
12216
12217 2018-03-27  Tom Tromey  <tom@tromey.com>
12218
12219         * typeprint.h (struct type_print_options) <local_typedefs,
12220         global_typedefs>: Remove "struct" keyword.
12221         (class typedef_hash_table): New class.
12222         (recursively_update_typedef_hash, add_template_parameters)
12223         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
12224         (find_typedef_in_hash): Don't declare.
12225         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
12226         (typedef_hash_table::recursively_update): Rename from
12227         recursively_update_typedef_hash.  Now a member.
12228         (typedef_hash_table::add_template_parameters): Rename from
12229         add_template_parameters.  Now a member.
12230         (typedef_hash_table::typedef_hash_table): Now a constructor;
12231         rename from create_typedef_hash.
12232         (typedef_hash_table::~typedef_hash_table): Now a destructor;
12233         rename from free_typedef_hash.
12234         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
12235         (do_free_global_table): Remove.
12236         (typedef_hash_table::typedef_hash_table): New constructor; renamed
12237         from copy_type_recursive.
12238         (create_global_typedef_table): Remove.
12239         (typedef_hash_table::find_global_typedef): Now a member of
12240         typedef_hash_table.
12241         (typedef_hash_table::find_typedef): Rename from
12242         find_typedef_in_hash; now a member.
12243         (whatis_exp): Update.
12244         * extension.h (struct ext_lang_type_printers): Add constructor and
12245         destructor.
12246         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
12247         declare.
12248         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
12249         Now a constructor; rename from start_ext_lang_type_printers.
12250         (ext_lang_type_printers): Now a destructor; rename from
12251         free_ext_lang_type_printers.
12252         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
12253         Update.
12254         (c_type_print_base_struct_union): Update.  Remove cleanups.
12255
12256 2018-03-27  Tom Tromey  <tom@tromey.com>
12257
12258         * dwarf-index-write.c: Include <cmath>.
12259
12260 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
12261
12262         * NEWS: Add entry describing new "set|show varsize-limit" command.
12263         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
12264         command.
12265         * printcmd.c (_initialize_printcmd): Add "set var" alias of
12266         "set variable".
12267
12268 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
12269
12270         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
12271         dwarf-index-write.c
12272         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
12273         * dwarf-index-common.c: New file.
12274         * dwarf-index-common.h: New file.
12275         * dwarf-index-write.c: New file.
12276         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
12277         (struct dwarf2_section_info): Move from here.
12278         (dwarf2_section_info_def): Likewise.
12279         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
12280         (offset_type): Likewise.
12281         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
12282         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
12283         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
12284         (byte_swap): Likewise.
12285         (MAYBE_SWAP): Likewise.
12286         (dwarf2_per_cu_ptr): Likewise.
12287         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
12288         (struct tu_stats): Likewise.
12289         (struct dwarf2_per_objfile): Likewise.
12290         (struct dwarf2_per_cu_data): Likewise.
12291         (struct signatured_type): Likewise.
12292         (sig_type_ptr): Likewise.
12293         (DEF_VEC_P (sig_type_ptr)): Likewise.
12294         (INDEX4_SUFFIX): Likewise.
12295         (INDEX5_SUFFIX): Likewise.
12296         (DEBUG_STR_SUFFIX): Likewise.
12297         (dwarf2_read_section): Make non-static.
12298         (mapped_index_string_hash): Move from here.
12299         (dwarf5_djb_hash): Likewise.
12300         (file_write): Likewise.
12301         (class data_buf): Likewise.
12302         (struct symtab_index_entry): Likewise.
12303         (struct mapped_symtab): Likewise.
12304         (find_slot): Likewise.
12305         (hash_expand): Likewise.
12306         (add_index_entry): Likewise.
12307         (uniquify_cu_indices): Likewise.
12308         (class c_str_view): Likewise.
12309         (class c_str_view_hasher): Likewise.
12310         (class vector_hasher): Likewise.
12311         (write_hash_table): Likewise.
12312         (psym_index_map): Likewise.
12313         (struct addrmap_index_data): Likewise.
12314         (add_address_entry): Likewise.
12315         (add_address_entry_worker): Likewise.
12316         (write_address_map): Likewise.
12317         (symbol_kind): Likewise.
12318         (write_psymbols): Likewise.
12319         (struct signatured_type_index_data): Likewise.
12320         (write_one_signatured_type): Likewise.
12321         (recursively_count_psymbols): Likewise.
12322         (recursively_write_psymbols): Likewise.
12323         (class debug_names): Likewise.
12324         (check_dwarf64_offsets): Likewise.
12325         (psyms_seen_size): Likewise.
12326         (write_gdbindex): Likewise.
12327         (write_debug_names): Likewise.
12328         (assert_file_size): Likewise.
12329         (write_psymtabs_to_index): Likewise.
12330         (save_gdb_index_command): Likewise.
12331         (_initialize_dwarf2_read): Don't register the "save gdb-index"
12332         command.
12333         * dwarf2read.h: New file.
12334
12335 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
12336
12337         PR gdb/22670
12338         * dwarf2read.c (dwarf2_physname): Do not return the demangled
12339         symbol name if the CU's language stores symbol names in linkage
12340         format.
12341         * language.h (struct language_defn)
12342         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
12343         all instances of this struct.
12344
12345 2018-03-26  Tom Tromey  <tom@tromey.com>
12346
12347         * stack.c (backtrace_command_1): Remove verbose code.
12348
12349 2018-03-26  Tom Tromey  <tom@tromey.com>
12350
12351         * python/py-framefilter.c (py_print_type): Don't catch
12352         exceptions.  Return void.
12353         (py_print_value): Likewise.
12354         (py_print_single_arg): Likewise.
12355         (enumerate_args): Don't catch exceptions.
12356         (py_print_args): Likewise.
12357         (py_print_frame): Likewise.
12358         (gdbpy_apply_frame_filter): Catch exceptions here.
12359
12360 2018-03-26  Tom Tromey  <tom@tromey.com>
12361
12362         * stack.c (_initialize_stack): Remove trailing newlines from help
12363         text.  Add "Usage" line to "backtrace" help.
12364
12365 2018-03-26  Tom Tromey  <tom@tromey.com>
12366
12367         PR python/16486:
12368         * python/py-framefilter.c (py_print_args): Call wrap_hint.
12369
12370 2018-03-26  Tom Tromey  <tom@tromey.com>
12371
12372         * python/py-framefilter.c (py_print_single_arg): Return
12373         EXT_LANG_BT_ERROR from catch.
12374
12375 2018-03-26  Tom Tromey  <tom@tromey.com>
12376
12377         PR backtrace/15584:
12378         * stack.c (backtrace_command_1): Move some code into no-filters
12379         "if".
12380
12381 2018-03-26  Tom Tromey  <tom@tromey.com>
12382
12383         * python/py-framefilter.c (throw_quit_or_print_exception): New
12384         function.
12385         (gdbpy_apply_frame_filter): Use it.
12386
12387 2018-03-26  Tom Tromey  <tom@tromey.com>
12388
12389         PR cli/17716:
12390         * python/py-framefilter.c (py_print_type, py_print_value)
12391         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
12392         RETURN_MASK_ERROR.
12393
12394 2018-03-26  Tom Tromey  <tom@tromey.com>
12395
12396         * python/py-framefilter.c (enumerate_args): Use
12397         gdb::unique_xmalloc_ptr.
12398
12399 2018-03-26  Tom Tromey  <tom@tromey.com>
12400
12401         * python/py-framefilter.c (py_print_frame): Return
12402         EXT_LANG_BT_OK.
12403         (gdbpy_apply_frame_filter): Update comment.
12404         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
12405         Remove.
12406         <EXT_LANG_BT_NO_FILTERS>: Change value.
12407
12408 2018-03-26  Tom Tromey  <tom@tromey.com>
12409
12410         PR backtrace/15582:
12411         * stack.c (backtrace_command): Parse "hide" argument.
12412         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
12413         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
12414         constant.
12415
12416 2018-03-26  Tom Tromey  <tom@tromey.com>
12417
12418         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
12419         add "flags".
12420         (backtrace_command): Remove "fulltrace", add "flags".
12421
12422 2018-03-26  Tom Tromey  <tom@tromey.com>
12423
12424         * stack.c (backtrace_command): Rewrite command line parsing.
12425
12426 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
12427
12428         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
12429
12430 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
12431
12432         * filename-seen-cache.h: Add include guard.
12433
12434 2018-03-26  Keith Seitz  <keiths@redhat.com>
12435
12436         * symfile.c (place_section): Remove "struct" from section_addr_info
12437         in comment.
12438         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
12439         "struct" keyword from section_addr_info.
12440
12441 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
12442
12443         * regformats/regdef.h (reg): Add constructors.
12444
12445 2018-03-25  Pedro Alves  <palves@redhat.com>
12446
12447         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
12448         if then/else bodies in var_func_name extraction.
12449
12450 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
12451
12452         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
12453         lookup_minimal_symbol() to find symbol entry.
12454         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
12455
12456 2018-03-23  Keith Seitz  <keiths@redhat.com>
12457
12458         PR c++/22968
12459         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
12460         nested type definitions for C++, too.
12461
12462 2018-03-23  Tom Tromey  <tom@tromey.com>
12463
12464         * machoread.c (struct oso_el): Add a constructor.  Don't define as
12465         a typedef.
12466         (macho_register_oso): Remove.
12467         (macho_symtab_read): Take a std::vector.
12468         (oso_el_compare_name): Now a std::sort comparator.
12469         (macho_symfile_read_all_oso): Take a std::vector.
12470         (macho_symfile_read): Use std::vector.  Remove cleanups.
12471
12472 2018-03-22  Tom Tromey  <tom@tromey.com>
12473
12474         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
12475         (record_full_goto_bookmark): Use std::string.
12476
12477 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12478
12479         PR tdep/18295
12480         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
12481         a single mask.
12482
12483 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12484
12485         * rs6000-tdep.c (store_insn_p): New function.
12486         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
12487         and cr_reg to their unshifted values. Use store_insn_p to
12488         match LR saves using either R1 or fdata->alloca_reg. Use
12489         store_insn_p to match CR saves. Set alloca_reg_offset
12490         when alloca_reg and framep are set. Remove lr_reg shift
12491         when assigning to fdata->lr_register.
12492
12493 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12494
12495         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
12496         command line args instead of emitting a warning.
12497
12498 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
12499
12500         * tracepoint.h (struct static_tracepoint_marker): Initialize
12501         fields, define default constructor, move constructor and move
12502         assignment, disable the rest.
12503         <str_id, extra>: Make std::string.
12504         (release_static_tracepoint_marker): Remove.
12505         (free_current_marker): Remove.
12506         * tracepoint.c (free_current_marker): Remove.
12507         (parse_static_tracepoint_marker_definition): Adjust to
12508         std::string, use new hex2str overload.
12509         (release_static_tracepoint_marker): Remove.
12510         (print_one_static_tracepoint_marker): Get marker by reference
12511         and adjust to std::string.
12512         (info_static_tracepoint_markers_command): Adjust to std::vector
12513         changes
12514         * target.h (static_tracepoint_marker_p): Remove typedef.
12515         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
12516         (struct target_ops) <to_static_tracepoint_marker_at>: Return
12517         bool.
12518         <to_static_tracepoint_markers_by_strid>: Return std::vector.
12519         * target-debug.h
12520         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
12521         (target_debug_print_std_vector_static_tracepoint_marker): New.
12522         (target_debug_print_struct_static_tracepoint_marker_p): Rename
12523         to...
12524         (target_debug_print_static_tracepoint_marker_p): ... this.
12525         * target-delegates.c: Re-generate.
12526         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
12527         Make std::string.
12528         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
12529         (decode_static_tracepoint_spec): Adjust to std::vector.
12530         (tracepoint_print_one_detail): Adjust to std::string.
12531         (strace_marker_decode_location): Adjust to std::string.
12532         (update_static_tracepoint): Adjust to std::string, remove call
12533         to release_static_tracepoint_marker.
12534         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
12535         Adjust to std::vector.
12536         * remote.c (remote_static_tracepoint_marker_at): Return bool.
12537         (remote_static_tracepoint_markers_by_strid): Adjust to
12538         std::vector.
12539         * common/rsp-low.h (hex2str): New overload with explicit count
12540         of bytes.
12541         * common/rsp-low.c (hex2str): New overload with explicit count
12542         of bytes.
12543         * unittests/rsp-low-selftests.c (test_hex2str): New function.
12544         (_initialize_rsp_low_selftests): Add test_hex2str test.
12545         * unittests/tracepoint-selftests.c
12546         (test_parse_static_tracepoint_marker_definition): Adjust to
12547         std::string.
12548
12549 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
12550
12551         * tracepoint.c (parse_static_tracepoint_marker_definition):
12552         Consider case where the definition is followed by more
12553         definitions.
12554         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12555         tracepoint-selftests.c.
12556         * unittests/tracepoint-selftests.c: New.
12557
12558 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12559
12560         * MAINTAINERS (Write After Approval): Add Pedro Franco de
12561         Carvalho.
12562
12563 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
12564
12565         * symtab.c (find_pc_sect_line): fixed indentation.
12566
12567 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
12568
12569         * symtab.c (find_pc_sect_line): now uses binary search.
12570
12571 2018-03-19  Tom Tromey  <tom@tromey.com>
12572
12573         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
12574         "IDENT" production.
12575
12576 2018-03-19  Pedro Alves  <palves@redhat.com>
12577             Tom Tromey  <tom@tromey.com>
12578
12579         * unittests/observable-selftests.c: New file.
12580         * common/observable.h: New file.
12581         * observable.h: New file.
12582         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
12583         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
12584         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
12585         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
12586         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
12587         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
12588         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
12589         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
12590         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
12591         python/py-breakpoint.c, python/py-finishbreakpoint.c,
12592         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
12593         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
12594         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
12595         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
12596         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
12597         tui/tui-interp.c, valops.c: Update all users.
12598         * tui/tui-hooks.c (tui_bp_created_observer)
12599         (tui_bp_deleted_observer, tui_bp_modified_observer)
12600         (tui_inferior_exit_observer, tui_before_prompt_observer)
12601         (tui_normal_stop_observer, tui_register_changed_observer):
12602         Remove.
12603         (tui_observers_token): New global.
12604         (attach_or_detach, tui_attach_detach_observers): New functions.
12605         (tui_install_hooks, tui_remove_hooks): Use
12606         tui_attach_detach_observers.
12607         * record-btrace.c (record_btrace_thread_observer): Remove.
12608         (record_btrace_thread_observer_token): New global.
12609         * observer.sh: Remove.
12610         * observer.c: Rename to observable.c.
12611         * observable.c (namespace gdb_observers): Define new objects.
12612         (observer_debug): Move into gdb_observers namespace.
12613         (struct observer, struct observer_list, xalloc_observer_list_node)
12614         (xfree_observer_list_node, generic_observer_attach)
12615         (generic_observer_detach, generic_observer_notify): Remove.
12616         (_initialize_observer): Update.
12617         Don't include observer.inc.
12618         * Makefile.in (generated_files): Remove observer.h, observer.inc.
12619         (clean mostlyclean): Likewise.
12620         (observer.h, observer.inc): Remove targets.
12621         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
12622         (COMMON_SFILES): Use observable.c, not observer.c.
12623         * .gitignore: Remove observer.h.
12624
12625 2018-03-18  Tom Tromey  <tom@tromey.com>
12626
12627         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
12628         gdb::def_vector.
12629         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
12630
12631 2018-03-17  Tom Tromey  <tom@tromey.com>
12632
12633         * auto-load.c (auto_load_objfile_script_1): Use std::string.
12634
12635 2018-03-17  Tom Tromey  <tom@tromey.com>
12636
12637         * target.c (class scoped_target_fd): New.
12638         (target_fileio_close_cleanup): Remove.
12639         (target_fileio_read_alloc_1): Use scoped_target_fd.
12640
12641 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
12642
12643         * silent-rules.mk: New.
12644         * Makefile.in: Include silent-rules.mk
12645         (srcdir, VPATH, top_srcdir): Move up.
12646         (COMPILE): Add ECHO_CXX.
12647         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
12648         (init.c): Add ECHO_INIT_C.
12649         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
12650         (version.c): Add ECHO_GEN.
12651         (printcmd.o): Add ECHO_CXX.
12652         (target-float.o): Add ECHO_CXX.
12653         (ada-exp.o): Add ECHO_CXX.
12654         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
12655         (insight$(EXEEXT)): Add ECHO_CXXLD.
12656         * gnulib/configure.ac: Add AM_SILENT_RULES.
12657         * gnulib/aclocal.m4: Re-generate.
12658         * gnulib/configure: Re-generate.
12659         * gnulib/import/Makefile.in: Re-generate.
12660
12661 2018-03-16  Tom Tromey  <tom@tromey.com>
12662
12663         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
12664         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
12665         * utils.c (do_free_section_addr_info)
12666         (make_cleanup_free_section_addr_info): Remove.
12667         * symfile.h (struct other_sections): Add constructor.
12668         (struct section_addr_info): Remove.
12669         (section_addr_info): New typedef.
12670         (struct sym_fns) <sym_offsets>: Change type of parameter.
12671         (build_section_addr_info_from_objfile)
12672         (relative_addr_info_to_section_offsets, addr_info_make_relative)
12673         (default_symfile_offsets, symbol_file_add)
12674         (symbol_file_add_from_bfd)
12675         (build_section_addr_info_from_section_table): Update.
12676         (alloc_section_addr_info, free_section_addr_info): Don't declare.
12677         * symfile.c (alloc_section_addr_info): Remove.
12678         (build_section_addr_info_from_section_table): Change return type.
12679         Update.
12680         (build_section_addr_info_from_bfd)
12681         (build_section_addr_info_from_objfile): Likewise.
12682         (free_section_addr_info): Remove.
12683         (relative_addr_info_to_section_offsets): Change type of "addrs".
12684         (addrs_section_compar): Now a std::sort comparator.
12685         (addrs_section_sort): Change return type.
12686         (addr_info_make_relative): Change type of "addrs".  Update.
12687         (default_symfile_offsets, syms_from_objfile_1)
12688         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
12689         (symbol_file_add_separate): Update.
12690         (symbol_file_add): Change type of "addrs".  Update.
12691         (add_symbol_file_command): Update.  Remove cleanups.
12692         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
12693         cleanups.
12694         * symfile-debug.c (debug_sym_offsets): Change type of "info".
12695         * solib.c (solib_read_symbols): Update.
12696         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
12697         * machoread.c (macho_symfile_offsets): Update.
12698         * jit.c (jit_bfd_try_read_symtab): Update.
12699
12700 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
12701
12702         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12703         unittests/utils-selftests.c.
12704         * unittests/utils-selftests.c: New file.
12705
12706 2018-03-14  Tom Tromey  <tom@tromey.com>
12707
12708         PR cli/14977:
12709         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
12710         for NULL.
12711
12712 2018-03-14  Tom Tromey  <tom@tromey.com>
12713
12714         PR cli/19918:
12715         * printcmd.c (printf_pointer): Allow "-" in format.
12716
12717 2018-03-14  Tom Tromey  <tom@tromey.com>
12718
12719         * printcmd.c (_initialize_printcmd): Add usage to printf.
12720
12721 2018-03-14  Yao Qi  <qiyao@sourceware.org>
12722
12723         * MAINTAINERS: Update my email address.
12724
12725 2018-03-13  Tom Tromey  <tom@tromey.com>
12726
12727         * machoread.c (macho_check_dsym): Change filenamep to a
12728         std::string*.
12729         (macho_symfile_read): Update.
12730         * symfile.c (load_command): Use std::string.
12731
12732 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
12733
12734         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
12735         to error message string.
12736         (riscv_register_name): Use xsnprintf instead of sprintf.
12737         (riscv_insn::fetch_instruction): Use gdb_assert instead of
12738         internal_error.
12739         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
12740         error.
12741         (riscv_push_dummy_call): Likewise.
12742
12743 2018-03-12  Tom Tromey  <tom@tromey.com>
12744
12745         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
12746         Use gdb::byte_vector.
12747         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
12748
12749 2018-03-12  Yao Qi  <yao.qi@linaro.org>
12750
12751         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
12752         parameter type to readable_regcache.
12753         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
12754         the declaration.
12755
12756 2018-03-11  Tom Tromey  <tom@tromey.com>
12757
12758         * dwarf2read.c (struct nextfield): Add initializers.
12759         (struct nextfnfield): Remove.
12760         (struct fnfieldlist): Add initializers.  Remove "length" and
12761         "head", use std::vector.
12762         (struct decl_field_list): Remove.
12763         (struct field_info): Add initializers.
12764         <fields, baseclasses>: Now std::vector.
12765         <nbaseclasses, nfnfields, typedef_field_list_count,
12766         nested_types_list_count>: Remove.
12767         (dwarf2_add_field, dwarf2_add_type_defn)
12768         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
12769         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
12770         (process_structure_scope): Update.
12771
12772 2018-03-11  Tom Tromey  <tom@tromey.com>
12773
12774         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
12775         for use by std::sort.
12776         (build_type_psymtabs_1): Use std::vector.
12777
12778 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
12779
12780         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
12781         and LIBMPFR in the printed configuration.
12782
12783 2018-03-08  Tom Tromey  <tom@tromey.com>
12784
12785         * source.c (get_filename_and_charpos): Use scoped_fd.
12786         * nto-procfs.c (procfs_open_1): Use scoped_fd.
12787         (procfs_pidlist): Likewise.
12788         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
12789         (iterate_over_mappings): Likewise.
12790
12791 2018-03-08  Tom Tromey  <tom@tromey.com>
12792
12793         * infcall.c (struct call_return_meta_info)
12794         <stack_temporaries_enabled>: Remove.
12795         (get_call_return_value, call_function_by_hand_dummy): Update.
12796         * thread.c (disable_thread_stack_temporaries): Remove.
12797         (enable_thread_stack_temporaries): Remove.
12798         (thread_stack_temporaries_enabled_p): Return bool.
12799         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
12800         (get_last_thread_stack_temporary): Update.
12801         * eval.c (evaluate_subexp): Update.
12802         * gdbthread.h (class enable_thread_stack_temporaries): Now a
12803         class, not a function.
12804         (value_ptr, value_vec): Remove typedefs.
12805         (class thread_info) <stack_temporaries_enabled>: Now bool.
12806         <stack_temporaries>: Now a std::vector.
12807         (thread_stack_temporaries_enabled_p)
12808         (value_in_thread_stack_temporaries): Return bool.
12809
12810 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
12811
12812         * remote.c (putpkt_binary): Fix omitted bytes reporting.
12813         (getpkt_or_notif_sane_1): Likewise.
12814
12815 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12816
12817         * build-id.c (build_id_to_debug_bfd): Use std::string.
12818
12819 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12820
12821         * build-id.c (find_separate_debug_file_by_buildid): Return
12822         std::string.
12823         * build-id.h (find_separate_debug_file_by_buildid): Return
12824         std::string.
12825         * coffread.c (coff_symfile_read): Adjust to std::string.
12826         * elfread.c (elf_symfile_read): Adjust to std::string.
12827         * symfile.c (separate_debug_file_exists): Change parameter to
12828         std::string.
12829         (find_separate_debug_file): Return std::string.
12830         (find_separate_debug_file_by_debuglink): Return std::string.
12831         * symfile.h (find_separate_debug_file_by_debuglink): Return
12832         std::string.
12833
12834 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12835
12836         * common/xml-utils.c (xml_escape_text): Move code to...
12837         (xml_escape_text_append): ... this new function.
12838         * common/xml-utils.h (xml_escape_text_append): New declaration.
12839         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
12840         New function.
12841         (_initialize_xml_utils): register test_xml_escape_text_append as
12842         a selftest.
12843
12844 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
12845
12846         * defs.h: Remove MAX_REGISTER_SIZE.
12847         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
12848         asserts.
12849         * python/py-unwind.c (pyuw_sniffer): Likewise.
12850
12851 2018-03-07  Tom Tromey  <tom@tromey.com>
12852
12853         * linux-tdep.c (linux_info_proc): Update.
12854         * target.h (struct target_ops) <to_fileio_readlink>: Return
12855         optional<string>.
12856         (target_fileio_readlink): Return optional<string>.
12857         * remote.c (remote_hostio_readlink): Return optional<string>.
12858         * inf-child.c (inf_child_fileio_readlink): Return
12859         optional<string>.
12860         * target.c (target_fileio_readlink): Return optional<string>.
12861
12862 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
12863
12864         * regcache.c (cooked_read_test): Add riscv to the list of
12865         architectures that have a save_reggroup.
12866
12867 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12868
12869         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
12870         value is not a dynamic class object.
12871
12872 2018-03-06  Tom Tromey  <tom@tromey.com>
12873
12874         * rust-exp.y: Formatting fixes.
12875
12876 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12877
12878         * riscv-tdep.c (riscv_register_name): Remove target description
12879         support.
12880         (riscv_gdbarch_init): Remove target description check.
12881
12882 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12883
12884         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
12885         comment.
12886         * riscv-tdep.h: Likewise.
12887
12888 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12889
12890         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
12891         (riscv_pseudo_register_write): Delete.
12892         (riscv_gdbarch_init): Remove all use of pseudo registers.
12893
12894 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12895
12896         * record-btrace.c (btrace_print_lines): Replace cleanup
12897         parameter with RAII equivalents.
12898         (btrace_insn_history): Replace cleanup with RAII equivalents.
12899         * ui-out.h (make_cleanup_ui_out_list_begin_end,
12900         make_cleanup_ui_out_tuple_begin_end): Remove.
12901         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
12902         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
12903         make_cleanup_ui_out_list_begin_end): Remove.
12904
12905 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12906
12907         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
12908         parameter types to std::vector.  Use bool.
12909         (record_btrace_wait): Replace VEC(tp_t) with
12910         std::vector<thread_info *>.
12911         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
12912
12913 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12914
12915         * record-btrace.c (record_btrace_disable_callback): Remove.
12916         (struct scoped_btrace_disable): New.
12917         (record_btrace_open): Use scoped_btrace_disable.
12918
12919 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12920
12921         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
12922         reading values from registers.
12923
12924 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12925
12926         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
12927         where appropriate.
12928
12929 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12930
12931         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
12932         change parameter type.  Use GDB's print functions, and use
12933         core_addr_to_string where appropriate.
12934         (riscv_push_dummy_call): Use core_addr_to_string where
12935         appropriate, update call to riscv_print_arg_location, and reindent
12936         a few lines.
12937         (riscv_return_value): Update call to riscv_print_arg_location.
12938
12939 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12940             Tim Newsome <tim@sifive.com>
12941             Albert Ou <a0u@eecs.berkeley.edu>
12942             Darius Rad <darius@bluespec.com>
12943
12944         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
12945         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
12946         (ALLDEPFILES): Add riscv-tdep.c
12947         * configure.tgt: Add riscv support.
12948         * riscv-tdep.c: New file.
12949         * riscv-tdep.h: New file.
12950         * NEWS: Mention new target.
12951         * MAINTAINERS: Add entry for riscv.
12952
12953 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12954
12955         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
12956         fields within aggregates.
12957
12958 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
12959
12960         * record-btrace.c (btrace_print_lines): Change type of flags to
12961         gdb_disassembly_flags.
12962
12963 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12964
12965         * fbsd-nat.c: Include "inf-ptrace.h".
12966         (USE_SIGTRAP_SIGINFO): Conditionally define.
12967         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
12968         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
12969         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
12970         function.
12971         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
12972         Likewise.
12973         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
12974         Likewise.
12975         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
12976         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
12977         "supports_stopped_by_hw_breakpoint" target methods.
12978
12979 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12980
12981         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
12982         * fbsd-nat.c (debug_fbsd_nat): New variable.
12983         (show_fbsd_nat_debug): New function.
12984         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
12985         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
12986
12987 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12988
12989         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
12990         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
12991         prototype.
12992         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
12993         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
12994         method.
12995
12996 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12997
12998         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
12999         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
13000
13001 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13002
13003         * charset.c (struct charset_vector): New.
13004         (charsets): Change type to charset_vector.
13005         (find_charset_names): Adjust.
13006         (add_one): Adjust.
13007         (_initialize_charset): Adjust.
13008
13009 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13010
13011         * progspace.h (struct program_space) <deleted_solibs>: Change
13012         type to std::vector<std::string>.
13013         * progspace.c (clear_program_space_solib_cache): Adjust.
13014         * breakpoint.c (print_solib_event): Adjust.
13015         (check_status_catch_solib): Adjust.
13016         * solib.c (update_solib_list): Adjust.
13017         * ui-out.h (class ui_out) <field_string>: New overload.
13018         * ui-out.c (ui_out::field_string): New overload.
13019
13020 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13021
13022         * progspace.h (struct program_space): Add constructor and
13023         destructor, initialize fields.
13024         (add_program_space): Remove.
13025         * progspace.c (add_program_space): Rename to...
13026         (program_space::program_space): ... this.
13027         (release_program_space): Rename to...
13028         (program_space::~program_space): ... this.
13029         (delete_program_space): Use delete to delete program_space.
13030         (initialize_progspace): Use new to allocate program_space.
13031         * inferior.c (add_inferior_with_spaces): Likewise.
13032         (clone_inferior_command): Likewise.
13033         * infrun.c (follow_fork_inferior): Likewise.
13034         (handle_vfork_child_exec_or_exit): Likewise.
13035
13036 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13037
13038         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
13039         (delim_string_to_char_ptr_vec): Return std::vector of
13040         gdb::unique_xmalloc_ptr.
13041         (dirnames_to_char_ptr_vec_append): Take std::vector of
13042         gdb::unique_xmalloc_ptr.
13043         (dirnames_to_char_ptr_vec): Return std::vector of
13044         gdb::unique_xmalloc_ptr.
13045         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
13046         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
13047         (delim_string_to_char_ptr_vec): Return an std::vector of
13048         gdb::unique_xmalloc_ptr, adjust the code.
13049         (dirnames_to_char_ptr_vec_append): Take an std::vector of
13050         gdb::unique_xmalloc_ptr, adjust the code.
13051         (dirnames_to_char_ptr_vec): Return an std::vector of
13052         gdb::unique_xmalloc_ptr, adjust the code.
13053         * auto-load.c (auto_load_safe_path_vec): Change type to
13054         std::vector of gdb::unique_xmalloc_ptr.
13055         (auto_load_expand_dir_vars): Return an std::vector of
13056         gdb::unique_xmalloc_ptr, adjust the code.
13057         (auto_load_safe_path_vec_update): Adjust.
13058         (filename_is_in_auto_load_safe_path_vec): Adjust.
13059         (auto_load_objfile_script_1): Adjust.
13060         * build-id.c (build_id_to_debug_bfd): Adjust.
13061         * linux-thread-db.c (thread_db_load_search): Adjust.
13062         * source.c (add_path): Adjust.
13063         (openp): Adjust.
13064         * symfile.c (find_separate_debug_file): Adjust.
13065         * utils.c (do_free_char_ptr_vec): Remove.
13066         (make_cleanup_free_char_ptr_vec): Remove.
13067
13068 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
13069
13070         PR gdb/22907
13071         * common/pathstuff.c: Conditionally include "<windows.h>".
13072
13073 2018-03-01  Georg Sauthoff  <mail@georg.so>
13074
13075         PR gdb/22888
13076         * gcore.in: Quote variables and switch interpreter to bash.
13077
13078 2018-03-01  Tom Tromey  <tom@tromey.com>
13079
13080         * dwarf2read.c (alloc_discriminant_info): Fix default_index
13081         assertion.  Add assertion for discriminant_index.
13082         (quirk_rust_enum): Use correct base type name in univariant case.
13083
13084 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
13085
13086         * record.c (get_call_history_modifiers): Return a
13087         record_print_flags.
13088         (cmd_record_call_history): Adjust.
13089         * record-btrace.c (record_btrace_call_history): Adjust.
13090         (record_btrace_call_history_range): Adjust.
13091         (record_btrace_call_history_from): Adjust.
13092         * target-debug.h (target_debug_print_record_print_flags): New.
13093         * target-delegates.c: Re-generate.
13094         * target.c (target_call_history): Change flags type.
13095         (target_call_history_from): Likewise.
13096         (target_call_history_range): Likewise.
13097         * target.h (struct target_ops) <target_call_history>: Likewise.
13098         (target_call_history_from): Likewise.
13099         (target_call_history_range): Likewise.
13100
13101 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
13102             Simon Marchi  <simon.marchi@polymtl.ca>
13103
13104         * common/common-utils.c: Include "sys/stat.h".
13105         (is_regular_file): Move here from "source.c"; change return
13106         type to "bool".
13107         * common/common-utils.h (is_regular_file): New prototype.
13108         * common/pathstuff.c (contains_dir_separator): New function.
13109         * common/pathstuff.h (contains_dir_separator): New prototype.
13110         * source.c: Don't include "sys/stat.h".
13111         (is_regular_file): Move to "common/common-utils.c".
13112
13113 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
13114
13115         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
13116         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
13117         * auto-load.c: Include "common/pathstuff.h".
13118         * common/common-def.h (current_directory): Move here.
13119         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
13120         function.
13121         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
13122         prototype.
13123         * common/pathstuff.c: New file.
13124         * common/pathstuff.h: New file.
13125         * compile/compile.c: Include "common/pathstuff.h".
13126         * defs.h (current_directory): Move to "common/common-defs.h".
13127         * dwarf2read.c: Include "common/pathstuff.h".
13128         * exec.c: Likewise.
13129         * guile/scm-safe-call.c: Likewise.
13130         * linux-thread-db.c: Likewise.
13131         * main.c: Likewise.
13132         * nto-tdep.c: Likewise.
13133         * objfiles.c: Likewise.
13134         * source.c: Likewise.
13135         * symtab.c: Likewise.
13136         * utils.c: Include "common/pathstuff.h".
13137         (gdb_realpath): Move to "common/pathstuff.c".
13138         (gdb_realpath_keepfile): Likewise.
13139         (gdb_abspath): Likewise.
13140         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
13141         (gdb_realpath_keepfile): Likewise.
13142         (gdb_abspath): Likewise.
13143
13144 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
13145
13146         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
13147         wildcard process pid for super_resume for kernels with a
13148         specific bug.
13149
13150 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
13151
13152         * compile/compile.c (get_args): Add additional comments
13153         explaining function.
13154
13155 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
13156             Tom Tromey  <tom@tromey.com>
13157
13158         * target.h (memory_write_request_s): Remove typedef.  Don't define
13159         VEC.
13160         (target_write_memory_blocks): Change argument to std::vector.
13161         (struct memory_write_request): Add constructor.
13162         * target-memory.c (compare_block_starting_address): Return bool.
13163         Change argument types.
13164         (claim_memory): Change arguments to use std::vector.
13165         (split_regular_and_flash_blocks, blocks_to_erase)
13166         (compute_garbled_blocks): Likewise.
13167         (cleanup_request_data, cleanup_write_requests_vector): Remove.
13168         (target_write_memory_blocks): Change argument to std::vector.
13169         * symfile.c (struct load_section_data): Add constructor and
13170         destructor.  Use std::vector for "requests".
13171         (struct load_progress_data): Add initializers.
13172         (load_section_callback): Update.  Use "new".
13173         (clear_memory_write_data): Remove.
13174         (generic_load): Update.
13175
13176 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
13177
13178         * arch/aarch64.h: Use common/tdesc.h.
13179
13180 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
13181
13182         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
13183         architecture with a 64-bit ABI.
13184
13185 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
13186
13187         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
13188         ahead of target description loading.
13189
13190 2018-02-26  Tom Tromey  <tom@tromey.com>
13191
13192         * stack.c (backtrace_command_1): Update.
13193         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
13194         of "flags".
13195         * python/py-framefilter.c (py_print_frame)
13196         (gdbpy_apply_frame_filter): Change type of "flags".
13197         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
13198         of "flags".
13199         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
13200         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
13201         * extension.h (enum frame_filter_flag): Rename from
13202         frame_filter_flags.
13203         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
13204         (apply_ext_lang_frame_filter): Change type of "flags".
13205         * extension.c (apply_ext_lang_frame_filter): Change type of
13206         "flags".
13207         * extension-priv.h (struct extension_language_ops)
13208         <apply_frame_filter>: Change type of "flags".
13209
13210 2018-02-26  Tom Tromey  <tom@tromey.com>
13211
13212         PR python/16497:
13213         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
13214         off-by-one in py_end computation.
13215         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
13216         PRINT_MORE_FRAMES.
13217         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
13218         constant.
13219
13220 2018-02-26  Tom Tromey  <tom@tromey.com>
13221
13222         * dwarf2read.c (struct variant_field): New.
13223         (struct nextfield) <variant>: New field.
13224         (dwarf2_add_field): Handle DW_TAG_variant_part.
13225         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
13226         discriminated union.
13227         (read_structure_type): Handle DW_TAG_variant_part.
13228         (handle_struct_member_die): New function, extracted from
13229         process_structure_scope.  Handle DW_TAG_variant.
13230         (process_structure_scope): Handle discriminated unions.  Call
13231         handle_struct_member_die.
13232
13233 2018-02-26  Tom Tromey  <tom@tromey.com>
13234
13235         * rust-lang.h (rust_last_path_segment): Declare.
13236         * rust-lang.c (rust_last_path_segment): Now public.  Change
13237         contract.
13238         (struct disr_info): Remove.
13239         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
13240         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
13241         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
13242         (rust_enum_p, rust_enum_variant): New function.
13243         (rust_underscore_fields): Remove "offset" parameter.
13244         (rust_print_enum): New function.
13245         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
13246         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
13247         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
13248         enums.
13249         (rust_internal_print_type): New function, from rust_print_type.
13250         Remove enum code.
13251         (rust_print_type): Call rust_internal_print_type.
13252         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
13253         Update enum handling.
13254         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
13255         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
13256         (rust_union_quirks): New functions.
13257         (process_full_comp_unit, process_full_type_unit): Call
13258         rust_union_quirks.
13259         (process_structure_scope): Update rust_unions if necessary.
13260
13261 2018-02-26  Tom Tromey  <tom@tromey.com>
13262
13263         * value.h (value_union_variant): Declare.
13264         * valops.c (value_union_variant): New function.
13265         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
13266         (struct discriminant_info): New.
13267         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
13268         enumerator.
13269         (struct main_type) <flag_discriminated_union>: New field.
13270
13271 2018-02-26  Tom Tromey  <tom@tromey.com>
13272
13273         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13274         unittests/unpack-selftests.c.
13275         * unittests/unpack-selftests.c: New file.
13276         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
13277
13278 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13279
13280         * dwarf2read.c (struct partial_die_info) <read>: New method.
13281         (read_partial_die): Remove the declaration.
13282         (load_partial_dies): Update.
13283         (partial_die_info::partial_die_info):
13284         (read_partial_die): Change it to partial_die_info::read.
13285
13286 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13287
13288         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
13289         (fixup_partial_die): Remove declaration.
13290         (scan_partial_symbols): Update.
13291         (partial_die_parent_scope): Likewise.
13292         (partial_die_full_name): Likewise.
13293         (fixup_partial_die): Change it to partial_die_info::fixup.
13294
13295 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13296
13297         * dwarf2read.c (read_partial_die): Update the declaration.
13298         (load_partial_dies): Caller update.
13299         (read_partial_die): Remove one argument abbrev_len.
13300
13301 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13302
13303         * dwarf2read.c (struct partial_die_info): Add ctor, delete
13304         assignment operator.
13305         (load_partial_dies): Use ctor and copy ctor.
13306         (read_partial_die): Update.
13307         (dwarf2_cu::find_partial_die): Use ctor.
13308
13309 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13310
13311         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
13312         (find_partial_die_in_comp_unit): Change it to
13313         dwarf2_cu::find_partial_die.
13314         (find_partial_die): Update.
13315
13316 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13317
13318         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
13319         is NULL.
13320
13321 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13322
13323         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
13324
13325 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
13326
13327         * arch/amd64.h: Use common/tdesc.h.
13328         * arch/i386.c: Likewise.
13329         * arch/i386.h: Likewise.
13330         * arch/tic6x.c: Likewise.
13331         * arch/tdesc.h: Move file from here...
13332         * common/tdesc.h: ...to here.
13333         * features/aarch64-core.c: Regenerate.
13334         * features/aarch64-fpu.c: Regenerate.
13335         * features/i386/32bit-avx.c: Regenerate.
13336         * features/i386/32bit-avx512.c: Regenerate.
13337         * features/i386/32bit-core.c: Regenerate.
13338         * features/i386/32bit-linux.c: Regenerate.
13339         * features/i386/32bit-mpx.c: Regenerate.
13340         * features/i386/32bit-pkeys.c: Regenerate.
13341         * features/i386/32bit-sse.c: Regenerate.
13342         * features/i386/64bit-avx.c: Regenerate.
13343         * features/i386/64bit-avx512.c: Regenerate.
13344         * features/i386/64bit-core.c: Regenerate.
13345         * features/i386/64bit-linux.c: Regenerate.
13346         * features/i386/64bit-mpx.c: Regenerate.
13347         * features/i386/64bit-pkeys.c: Regenerate.
13348         * features/i386/64bit-segments.c: Regenerate.
13349         * features/i386/64bit-sse.c: Regenerate.
13350         * features/i386/x32-core.c: Regenerate.
13351         * features/tic6x-c6xp.c: Regenerate.
13352         * features/tic6x-core.c: Regenerate.
13353         * features/tic6x-gp.c: Regenerate.
13354         * target-descriptions.c: Use common/tdesc.h.
13355         * target-descriptions.h: Likewise.
13356
13357 2018-02-24  Tom Tromey  <tom@tromey.com>
13358
13359         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
13360         (try_thread_db_load_from_dir, thread_db_load_search): Use
13361         std::string.
13362         (info_auto_load_libthread_db_compare): Return bool.  Change
13363         argument types.
13364         (info_auto_load_libthread_db): Use std::vector, std::string.
13365         Remove cleanups.
13366
13367 2018-02-24  Tom Tromey  <tom@tromey.com>
13368
13369         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
13370         std::string.
13371         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
13372         std::string*.
13373         * gdbarch.c: Rebuild.
13374         * gdbarch.h: Rebuild.
13375         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
13376         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
13377         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
13378         std::string*.
13379
13380 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
13381
13382         * gdbtypes.h (sect_offset): Change type to uint64_t.
13383         (sect_offset_str): New function.
13384         * dwarf2read.c (create_addrmap_from_aranges): Use
13385         sect_offset_str.
13386         (error_check_comp_unit_head): Likewise.
13387         (create_debug_type_hash_table): Likewise.
13388         (read_cutu_die_from_dwo): Likewise.
13389         (init_cutu_and_read_dies): Likewise.
13390         (init_cutu_and_read_dies_no_follow): Likewise.
13391         (process_psymtab_comp_unit_reader): Likewise.
13392         (partial_die_parent_scope): Likewise.
13393         (peek_die_abbrev): Likewise.
13394         (process_queue): Likewise.
13395         (dwarf2_physname): Likewise.
13396         (read_namespace_alias): Likewise.
13397         (read_import_statement): Likewise.
13398         (create_dwo_cu_reader): Likewise.
13399         (create_cus_hash_table): Likewise.
13400         (lookup_dwo_cutu): Likewise.
13401         (inherit_abstract_dies): Likewise.
13402         (read_func_scope): Likewise.
13403         (read_call_site_scope): Likewise.
13404         (dwarf2_add_member_fn): Likewise.
13405         (read_common_block): Likewise.
13406         (read_module_type): Likewise.
13407         (read_typedef): Likewise.
13408         (read_subrange_type): Likewise.
13409         (load_partial_dies): Likewise.
13410         (read_partial_die): Likewise.
13411         (find_partial_die): Likewise.
13412         (read_str_index): Likewise.
13413         (dwarf2_string_attr): Likewise.
13414         (build_error_marker_type): Likewise.
13415         (lookup_die_type): Likewise.
13416         (dump_die_shallow): Likewise.
13417         (follow_die_ref): Likewise.
13418         (dwarf2_fetch_die_loc_sect_off): Likewise.
13419         (dwarf2_fetch_constant_bytes): Likewise.
13420         (follow_die_sig): Likewise.
13421         (get_signatured_type): Likewise.
13422         (get_DW_AT_signature_type): Likewise.
13423         (dwarf2_find_containing_comp_unit): Likewise.
13424         (set_die_type): Likewise.
13425
13426 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
13427
13428         * arch/aarch64.c: Include "common-defs.h".
13429         * arch/amd64.c: Likewise.
13430         * arch/i386.c: Likewise.
13431
13432 2018-02-21  Tom Tromey  <tom@tromey.com>
13433
13434         * value.h: (extract_field_op): Update.
13435         * eval.c (extract_field_op): Return a const char *.
13436         * expression.h (parse_expression_for_completion): Update.
13437         * completer.c (complete_expression): Update.
13438         (add_struct_fields): Make fieldname const.
13439         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
13440         (mark_completion_tag, parse_exp_in_context_1): Update.
13441         (parse_expression_for_completion): Change "name" to
13442         unique_xmalloc_ptr*.
13443
13444 2018-02-21  Tom Tromey  <tom@tromey.com>
13445
13446         * infcall.c (call_function_by_hand_dummy): Use std::vector.
13447
13448 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13449
13450         * avr-tdep.c (avr_read_pc): Change parameter type to
13451         readable_regcache.
13452         * gdbarch.sh (read_pc): Likewise.
13453         * gdbarch.c: Re-generated.
13454         * gdbarch.h: Re-generated.
13455         * hppa-tdep.c (hppa_read_pc): Change parameter type to
13456         readable_regcache.
13457         * ia64-tdep.c (ia64_read_pc): Likewise.
13458         * mips-tdep.c (mips_read_pc): Likewise.
13459         * spu-tdep.c (spu_read_pc): Likewise.
13460
13461 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13462
13463         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
13464         * regcache-dump.c: New file.
13465         * regcache.c: Move register_dump to regcache-dump.c.
13466         (maintenance_print_registers): Likewise.
13467         (maintenance_print_raw_registers): Likewise.
13468         (maintenance_print_cooked_registers): Likewise.
13469         (maintenance_print_register_groups): Likewise.
13470         (maintenance_print_remote_registers): Likewise.
13471         (_initialize_regcache): Likewise.
13472         * regcache.h (register_dump): Moved from regcache.c.
13473
13474 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13475
13476         * regcache.c (regcache::regcache): Update.
13477         (regcache::invalidate): Move it to detached_regcache::invalidate.
13478         (get_thread_arch_aspace_regcache): Update.
13479         (regcache::raw_update): Update.
13480         (regcache::cooked_read): Remove some code.
13481         (regcache::cooked_read_value): Likewise.
13482         (regcache::raw_write): Remove assert on m_readonly_p.
13483         (regcache::raw_supply_integer): Move it to
13484         detached_regcache::raw_supply_integer.
13485         (regcache::raw_supply_zeroed): Likewise.
13486         * regcache.h (detached_regcache) <raw_supply_integer>: New
13487         declaration.
13488         <raw_supply_zeroed, invalidate>: Likewise.
13489         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
13490         <invalidate>: Likewise.
13491         <m_readonly_p>: Removed.
13492
13493 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13494
13495         * infcmd.c (get_return_value): Let stop_regs point to
13496         get_current_regcache.
13497         * regcache.c (regcache::regcache): Remove.
13498         (register_dump_reg_buffer): New class.
13499         (regcache_print): Adjust.
13500         * regcache.h (regcache): Remove constructors.
13501
13502 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13503
13504         * regcache.c (class register_dump): New class.
13505         (register_dump_regcache, register_dump_none): New class.
13506         (register_dump_remote, register_dump_groups): New class.
13507         (regcache_print): Update.
13508         * regcache.h (regcache_dump_what): Move it to regcache.c.
13509         (regcache) <dump>: Remove.
13510
13511 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13512
13513         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
13514          reg_buffer_rw *.
13515         (jit_unwind_reg_set_impl): Call raw_supply.
13516         (jit_frame_sniffer): Use reg_buffer_rw.
13517         * record-full.c (record_full_core_regbuf): Change its type.
13518         (record_full_core_open_1): Use reg_buffer_rw.
13519         (record_full_close): Likewise.
13520         (record_full_core_fetch_registers): Use regcache->raw_supply.
13521         (record_full_core_store_registers): Likewise.
13522         * regcache.c (regcache::get_register_status): Move it to
13523         reg_buffer.
13524         (regcache_raw_set_cached_value): Remove.
13525         (regcache::raw_set_cached_value): Remove.
13526         (regcache::raw_write): Call raw_supply.
13527         (regcache::raw_supply): Move it to reg_buffer_rw.
13528         * regcache.h (regcache_raw_set_cached_value): Remove.
13529         (reg_buffer_rw): New class.
13530
13531 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13532
13533         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
13534         readonly_detached_regcache.
13535         (dummy_frame_prev_register): Use regcache->cooked_read.
13536         * frame.c (frame_save_as_regcache): Change return type.
13537         (frame_pop): Update.
13538         * frame.h (frame_save_as_regcache): Update declaration.
13539         * inferior.h (get_infcall_suspend_state_regcache): Update
13540         declaration.
13541         * infrun.c (infcall_suspend_state) <registers>: use
13542         readonly_detached_regcache.
13543         (save_infcall_suspend_state): Don't use regcache_dup.
13544         (get_infcall_suspend_state_regcache): Change return type.
13545         * linux-fork.c (struct fork_info) <savedregs>: Change to
13546         readonly_detached_regcache.
13547         <pc>: New field.
13548         (fork_save_infrun_state): Don't use regcache_dup.
13549         (info_checkpoints_command): Adjust.
13550         * mi/mi-main.c (register_changed_p): Update declaration.
13551         (mi_cmd_data_list_changed_registers): Use
13552         readonly_detached_regcache.
13553         (register_changed_p): Change parameter type to
13554         readonly_detached_regcache.
13555         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
13556         readonly_detached_regcache.
13557         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
13558         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
13559         New.
13560         (regcache::save): Move it to reg_buffer.
13561         (regcache::restore): Change parameter type.
13562         (regcache_dup): Remove.
13563         * regcache.h (reg_buffer) <save>: New method.
13564         (readonly_detached_regcache): New class.
13565         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
13566         readonly_detached_regcache.
13567         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
13568
13569 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13570
13571         * frame.c (frame_save_as_regcache): Use regcache method save.
13572         (frame_pop): Use regcache method restore.
13573         * infrun.c (restore_infcall_suspend_state): Likewise.
13574         * linux-fork.c (fork_load_infrun_state): Likewise.
13575         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
13576         save.
13577         * regcache.c (regcache_save): Remove.
13578         (regcache::restore): More asserts.
13579         (regcache_cpy): Remove.
13580         * regcache.h (regcache_save): Remove the declaration.
13581         (regcache::restore): Move from private to public.
13582         Remove the friend declaration of regcache_cpy.
13583         (regcache_cpy): Remove declaration.
13584
13585 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13586
13587         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
13588         parameter type to 'readable_regcache *'.
13589         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
13590         * arm-tdep.c (arm_neon_quad_read): Likewise.
13591         (arm_pseudo_read): Likewise.
13592         * avr-tdep.c (avr_pseudo_register_read): Likewise.
13593         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
13594         * frv-tdep.c (frv_pseudo_register_read): Likewise.
13595         * gdbarch.c: Re-generated.
13596         * gdbarch.h: Re-generated.
13597         * gdbarch.sh (pseudo_register_read): Change parameter type to
13598         'readable_regcache *'.
13599         (pseudo_register_read_value): Likewise.
13600         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
13601         (h8300_pseudo_register_read): Likewise.
13602         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
13603         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
13604         (i386_pseudo_register_read_into_value): Likewise.
13605         (i386_pseudo_register_read_value): Likewise.
13606         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
13607         declaration.
13608         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
13609         * m32c-tdep.c (m32c_raw_read): Likewise.
13610         (m32c_read_flg): Likewise.
13611         (m32c_banked_register): Likewise.
13612         (m32c_banked_read): Likewise.
13613         (m32c_sb_read): Likewise.
13614         (m32c_part_read): Likewise.
13615         (m32c_cat_read): Likewise.
13616         (m32c_r3r2r1r0_read): Likewise.
13617         (m32c_pseudo_register_read): Likewise.
13618         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
13619         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
13620         (mep_pseudo_cr64_read): Likewise.
13621         (mep_pseudo_register_read): Likewise.
13622         * mips-tdep.c (mips_pseudo_register_read): Likewise.
13623         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
13624         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
13625         * regcache.c (regcache::raw_read): Move it to readable_regcache.
13626         (regcache::cooked_read): Likewise.
13627         (regcache::cooked_read_value): Likewise.
13628         (regcache_cooked_read_signed):
13629         (regcache::cooked_read): Likewise.
13630         * regcache.h (readable_regcache): New class.
13631         (regcache): Inherit readable_regcache.  Move some methods to
13632         readable_regcache.
13633         * rl78-tdep.c (rl78_pseudo_register_read): Change
13634         parameter type to 'readable_regcache *'.
13635         * rs6000-tdep.c (do_regcache_raw_read): Remove.
13636         (e500_pseudo_register_read): Change parameter type to
13637         'readable_regcache *'.
13638         (dfp_pseudo_register_read): Likewise.
13639         (vsx_pseudo_register_read): Likewise.
13640         (efpr_pseudo_register_read): Likewise.
13641         * s390-tdep.c (s390_pseudo_register_read): Likewise.
13642         * sh-tdep.c (sh_pseudo_register_read): Likewise.
13643         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
13644         (sh64_pseudo_register_read): Likewise.
13645         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
13646         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
13647         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
13648         (spu_pseudo_register_read): Likewise.
13649         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
13650         (xtensa_pseudo_register_read): Likewise.
13651
13652 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13653
13654         * regcache.c (regcache::regcache): Call reg_buffer ctor.
13655         (regcache::arch): Move it to reg_buffer::arch.
13656         (regcache::register_buffer): Likewise.
13657         (regcache::assert_regnum): Likewise.
13658         (regcache::num_raw_registers): Likewise.
13659         * regcache.h (reg_buffer): New class.
13660         (regcache): Inherit reg_buffer.
13661
13662 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
13663
13664         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
13665         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
13666
13667 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
13668
13669         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
13670
13671 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
13672
13673         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
13674         (SFILES): Remove common/*.c files.
13675         (COMMON_OBS): Remove some *.o files built from common/*.c files.
13676         * common/common.host: Add common reference.
13677         * configure.ac: Likewise.
13678         * configure: Regenerate.
13679
13680 2018-02-16  Yao Qi  <yao.qi@linaro.org>
13681
13682         * block.c (block_namespace_info): Inherit allocate_on_obstack.
13683         (block_initialize_namespace): Use new.
13684         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
13685         (dwarf2_free_objfile): Use delete.
13686         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
13687         (copy_type_recursive): Use new.
13688         * gdb_obstack.h (allocate_on_obstack): New.
13689
13690 2018-02-15  Yao Qi  <yao.qi@linaro.org>
13691
13692         PR gdb/22849
13693         * inferior.c (exit_inferior_1): Reset inf->control.
13694
13695 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
13696
13697         * ada-lang.c (ada_to_fixed_value_create): Delete advance
13698         declaration.
13699
13700 2018-02-14  Pedro Alves  <palves@redhat.com>
13701
13702         * frame-unwind.c (frame_unwind_try_unwinder): Always call
13703         frame_cleanup_after_sniffer on exception.
13704
13705 2018-02-14  Tom Tromey  <tom@tromey.com>
13706
13707         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
13708         const.
13709         (solib_bfd_open): Make pathname const.
13710         * solib.c (solib_bfd_open): Make pathname const.
13711         * solib-spu.c (spu_bfd_fopen): Make name const.
13712         (spu_bfd_open): Make pathname const.
13713         * solib-darwin.c (darwin_bfd_open): Make pathname const.
13714         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
13715
13716 2018-02-14  Tom Tromey  <tom@tromey.com>
13717
13718         * symfile.c (symfile_bfd_open): Update.
13719         * source.h (openp, source_full_path_of, find_and_open_source):
13720         Change argument type to unique_xmalloc_ptr.
13721         * source.c (openp): Take a unique_xmalloc_ptr.
13722         (source_full_path_of, find_and_open_source): Likewise.
13723         (open_source_file, symtab_to_fullname): Update.
13724         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
13725         unique_xmalloc_ptr.
13726         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
13727         (exec_file_find): Update.
13728         * psymtab.c (psymtab_to_fullname): Update.
13729         * nto-tdep.h (nto_find_and_open_solib): Update.
13730         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
13731         unique_xmalloc_ptr.
13732         * exec.c (exec_file_attach): Update.
13733         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
13734         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
13735
13736 2018-02-14  Tom Tromey  <tom@tromey.com>
13737
13738         * solib.c: Include source.h.
13739         * nto-tdep.c: Include source.h.
13740         * mi/mi-cmd-env.c: Include source.h.
13741         * infcmd.c: Include source.h.
13742         * exec.c: Include source.h.
13743         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
13744         (add_path, directory_switch, source_path, init_source_path): Move
13745         declarations...
13746         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
13747         (add_path, directory_switch, source_path, init_source_path):
13748         ...here.
13749
13750 2018-02-14  Tom Tromey  <tom@tromey.com>
13751
13752         * solist.h (exec_file_find, solib_find): Return
13753         unique_xmalloc_ptr.
13754         (solib_bfd_fopen): Take a const char *.
13755         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
13756         (exec_file_find, solib_find): Likewise.
13757         (solib_bfd_fopen): Do not take ownership of "pathname".
13758         (solib_bfd_open): Use unique_xmalloc_ptr.
13759         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
13760         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
13761         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
13762         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
13763
13764 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
13765
13766         * ada-lang.c (name_match_type_from_name): Remove reference to
13767         ada_name_for_lookup in function's documentation.
13768         * ada-lang.h (ada_name_for_lookup): Delete declaration.
13769
13770 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
13771
13772         * defs.h (enum openp_flags): New enum.
13773         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
13774         Move to enum openp_flags.
13775         (openp_flags): New enum flags.
13776         (openp): Change parameter type to openp_flags.
13777         * source.c (openp): Change parameter type to openp_flags.
13778         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
13779         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
13780
13781 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
13782
13783         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
13784         per-command.
13785
13786 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
13787
13788         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
13789         into...
13790         (class dwarf2_queue_guard): ...the destructor of this new class.
13791         (dw2_do_instantiate_symtab): Create instance of the new class
13792         dwarf2_queue_guard, remove cleanup.
13793
13794 2018-02-09  Tom Tromey  <tom@tromey.com>
13795
13796         * source.c (find_source_lines): Don't reference past the end of
13797         the vector.
13798
13799 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13800
13801         * remote.c (remote_btrace_maybe_reopen): Change error message.
13802         * btrace.c (btrace_enable): Likewise.
13803         (parse_xml_btrace): Likewise.
13804         (parse_xml_btrace_conf): Likewise.
13805
13806 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13807
13808         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
13809         (linux_enable_pt, linux_enable_bts): Call
13810         diagnose_perf_event_open_fail.
13811
13812 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13813
13814         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
13815         Remove parameter and change return type.  Update callers.  Move it.
13816         (linux_enable_bts, linux_enable_pt): Improve error message.
13817         (linux_enable_pt): Remove zero buffer size check.
13818         (linux_enable_btrace): Improve error messages.  Remove NULL return
13819         check.
13820
13821 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13822
13823         * btrace.c (btrace_enable): Remove target_supports_btrace call.
13824         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
13825         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
13826         (linux_supports_pt, linux_supports_btrace): Remove.
13827         (linux_enable_bts): Call cpu_supports_bts.
13828         * nat/linux-btrace.h (linux_supports_btrace): Remove.
13829         * remote.c (remote_supports_btrace): Remove.
13830         (init_remote_ops): Remove remote_supports_btrace.
13831         * target-delegates.c: Regenerated.
13832         * target.c (target_supports_btrace): Remove.
13833         * target.h (target_ops) <to_supports_btrace>: Remove
13834         (target_supports_btrace): Remove.
13835         * x86-linux-nat.c (x86_linux_create_target): Remove
13836         linux_supports_btrace.
13837
13838 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13839
13840         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
13841         btrace failed.
13842         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
13843         exception and use message in own exception.
13844
13845 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13846
13847         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
13848         (perf_event_pt_event_type): Use gdb_file_up.
13849         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
13850         scoped_fd, and scoped_mmap.
13851
13852 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13853
13854         * common/scoped_mmap.h: New.
13855         * unittests/scoped_mmap-selftest.c: New.
13856         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13857         unittests/scoped_mmap-selftest.c.
13858
13859 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13860
13861         * common/scoped_fd.h: New.
13862         * unittests/scoped_fd-selftest.c: New.
13863         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13864         unittests/scoped_fd-selftest.c.
13865
13866 2018-02-09  Tom Tromey  <tom@tromey.com>
13867
13868         * auto-load.c (auto_load_section_scripts): Use
13869         gdb::unique_xmalloc_ptr.
13870
13871 2018-02-09  Tom Tromey  <tom@tromey.com>
13872
13873         * auto-load.c (execute_script_contents): Use std::string.
13874
13875 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
13876
13877         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
13878         Python function, rather than a new command.
13879
13880 2018-02-08  Tom Tromey  <tom@tromey.com>
13881
13882         * solib.c (solib_find_1): Use std::string.
13883         (solib_bfd_fopen): Use unique_xmalloc_ptr.
13884
13885 2018-02-08  Tom Tromey  <tom@tromey.com>
13886
13887         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
13888
13889 2018-02-08  Tom Tromey  <tom@tromey.com>
13890
13891         * source.c (find_source_lines): Use gdb::def_vector.
13892
13893 2018-02-08  Tom Tromey  <tom@tromey.com>
13894
13895         * macrocmd.c (struct temporary_macro_definition): New.
13896         (macro_define_command): Use temporary_macro_definition.  Remove
13897         cleanups.
13898         (free_macro_definition_ptr): Remove.
13899
13900 2018-02-08  Tom Tromey  <tom@tromey.com>
13901
13902         * macroexp.c (maybe_expand): Use std::string.
13903
13904 2018-02-08  Tom Tromey  <tom@tromey.com>
13905
13906         * macroexp.c (struct macro_buffer): Add initializers for some
13907         members.
13908         (init_buffer, init_shared_buffer, free_buffer)
13909         (free_buffer_return_text): Remove.
13910         (macro_buffer): New constructors.
13911         (~macro_buffer): New destructor.
13912         (macro_buffer::set_shared): New method.
13913         (macro_buffer::resize_buffer, macro_buffer::appendc)
13914         (macro_buffer::appendmem): Now methods, not free functions.
13915         (set_token, append_tokens_without_splicing, stringify)
13916         (macro_stringify): Update.
13917         (gather_arguments): Change return type.  Remove argc_p argument,
13918         add args_ptr argument.  Use std::vector.
13919         (substitute_args): Remove argc argument.  Accept std::vector.
13920         (expand): Update.  Use std::vector.
13921         (scan, macro_expand, macro_expand_next): Update.
13922
13923 2018-02-08  Tom Tromey  <tom@tromey.com>
13924
13925         * symtab.c (default_collect_symbol_completion_matches_break_on):
13926         Use unique_xmalloc_ptr.
13927         * macroscope.h: (sal_macro_scope, user_macro_scope)
13928         (default_macro_scope): Return unique_xmalloc_ptr.
13929         * macroscope.c (sal_macro_scope, user_macro_scope)
13930         (default_macro_scope): Return unique_xmalloc_ptr.
13931         * macroexp.h (macro_expand, macro_expand_once): Return
13932         unique_xmalloc_ptr.
13933         * macroexp.c (macro_expand, macro_expand_once): Return
13934         unique_xmalloc_ptr.
13935         * macrocmd.c (macro_expand_command, macro_expand_once_command)
13936         (info_macro_command, info_macros_command): Use
13937         unique_xmalloc_ptr.
13938         * compile/compile-c-support.c (write_macro_definitions): Use
13939         unique_xmalloc_ptr.
13940         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
13941
13942 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
13943
13944         * value.c (value_static_field): Assign field type instead of
13945         containing type when returning an optimized out value.
13946
13947 2018-02-06  Yao Qi  <yao.qi@linaro.org>
13948
13949         * ft32-tdep.c (ft32_read_pc): Remove.
13950         (ft32_write_pc): Remove.
13951         (ft32_gdbarch_init): Update.
13952         * m32r-tdep.c (m32r_read_pc): Remove.
13953         (m32r_gdbarch_init): Update.
13954         * mep-tdep.c (mep_read_pc): Remove.
13955         (mep_gdbarch_init): Update.
13956         * microblaze-tdep.c (microblaze_write_pc): Remove.
13957         (microblaze_gdbarch_init): Update.
13958         * mn10300-tdep.c (mn10300_read_pc): Remove.
13959         (mn10300_write_pc): Remove.
13960         (mn10300_gdbarch_init): Update.
13961         * moxie-tdep.c (moxie_read_pc): Remove.
13962         (moxie_write_pc): Remove.
13963         (moxie_gdbarch_init): Update.
13964
13965 2018-02-06  Yao Qi  <yao.qi@linaro.org>
13966
13967         * expprint.c (print_subexp_standard): Handle
13968         OP_F77_UNDETERMINED_ARGLIST.
13969         (dump_subexp_body_standard): Likewise.
13970
13971 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
13972
13973         * target-descriptions.c (tdesc_element_visitor) Add empty
13974         implementations.
13975         (tdesc_type): Move make_gdb_type from here.
13976         (tdesc_type_builtin): Likewise.
13977         (tdesc_type_vector): Likewise.
13978         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
13979         (make_gdb_type_struct): Move from tdesc_type_with_fields.
13980         (make_gdb_type_union): Likewise.
13981         (make_gdb_type_flags): Likewise.
13982         (make_gdb_type_enum): Likewise.
13983         (make_gdb_type): New function.
13984         (tdesc_register_type): Use static make_gdb_type.
13985
13986 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
13987
13988         * infcmd.c (default_print_one_register_info): Align natural-format
13989         column values consistently one under another.
13990         (pad_to_column): New function.
13991
13992 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
13993
13994         * dwarf2read.c (dwarf2_physname): Move commment.
13995
13996 2018-02-01  Leszek Swirski  <leszeks@google.com>
13997
13998         * varobj.c (varobj_formatted_print_options): Allow recursive
13999         pretty printing if pretty printing is enabled.
14000
14001 2018-02-01  Leszek Swirski  <leszeks@google.com>
14002
14003         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
14004         names after a structop as a filename.
14005
14006 2018-02-01  Yao Qi  <yao.qi@linaro.org>
14007
14008         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
14009         (arm_record_coproc_data_proc): Likewise.
14010
14011 2018-02-01  Yao Qi  <yao.qi@linaro.org>
14012
14013         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
14014
14015 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
14016
14017         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
14018         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
14019
14020 2018-01-31  Pedro Alves  <palves@redhat.com>
14021
14022         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
14023         * inflow.c (child_terminal_save_inferior): Wrap reference to
14024         tcgetpgrp in HAVE_TERMIOS_H.
14025         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
14026         _WIN32.
14027         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
14028         always iterate over all inferiors.
14029         (gdbsim_cntrl_c): Adjust.
14030         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
14031
14032 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
14033
14034         * gdbtypes.c (lookup_array_range_type): Make sure the array's
14035         index type is objfile-owned if the element type is as well.
14036
14037 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
14038
14039         GDB 8.1 released.
14040
14041 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14042
14043         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
14044         "features/s390x-linux64.c".
14045         (_initialize_s390_linux_tdep): Remove initialization of tdescs
14046         s390_linux32 and s390x_linux64.
14047         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
14048         default tdesc.
14049         * s390-tdep.c: Include "features/s390-linux32.c" and
14050         "features/s390x-linux64.c".
14051         (s390_tdesc_valid): Add check for tdesc_has_registers.
14052         (s390_gdbarch_init): Make sure there is always a valid tdesc.
14053         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
14054         tdesc_s390x_linux64.
14055         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
14056         tdesc_s390x_linux64 to...
14057         * s390-tdep.h: ...here.
14058
14059 2018-01-30  Pedro Alves  <palves@redhat.com>
14060
14061         PR gdb/13211
14062         * config.in, configure: Regenerate.
14063         * configure.ac: Check for getpgid.
14064         * go32-nat.c (go32_pass_ctrlc): New.
14065         (go32_target): Install it.
14066         * inf-child.c (inf_child_target): Install
14067         child_terminal_save_inferior, child_pass_ctrlc and
14068         child_interrupt.
14069         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
14070         (inf_ptrace_target): No longer install it.
14071         * infcmd.c (interrupt_target_1): Adjust.
14072         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
14073         (child_interrupt): Declare.
14074         (inferior::terminal_state): New.
14075         * inflow.c (struct terminal_info): Update comments.
14076         (inferior_process_group): Delete.
14077         (terminal_is_ours): Delete.
14078         (gdb_tty_state): New.
14079         (child_terminal_init): Adjust.
14080         (is_gdb_terminal, sharing_input_terminal_1)
14081         (sharing_input_terminal): New functions.
14082         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
14083         Set the process's actual process group in the foreground if
14084         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
14085         mark terminal as the inferior's if not sharing GDB's terminal.
14086         Don't check attach_flag.
14087         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
14088         pass down a target_terminal_state.
14089         (child_terminal_save_inferior): New, factored out from ...
14090         (child_terminal_ours_1): ... this.  Handle
14091         target_terminal_state::is_ours_for_output.
14092         (child_interrupt, child_pass_ctrlc): New.
14093         (inflow_inferior_exit): Clear the inferior's terminal_state.
14094         (copy_terminal_info): Copy the inferior's terminal state.
14095         (_initialize_inflow): Remove reference to terminal_is_ours.
14096         * inflow.h (inferior_process_group): Delete.
14097         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
14098         * procfs.c (procfs_target): Don't install procfs_interrupt.
14099         (procfs_interrupt): Delete.
14100         * remote.c (remote_serial_quit_handler): Adjust.
14101         (remote_interrupt): Remove ptid parameter.  Adjust.
14102         * target-delegates.c: Regenerate.
14103         * target.c: Include "terminal.h".
14104         (target_terminal::terminal_state): Rename to ...
14105         (target_terminal::m_terminal_state): ... this.
14106         (target_terminal::init): Adjust.
14107         (target_terminal::inferior): Adjust to per-inferior
14108         terminal_state.
14109         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
14110         (target_terminal::ours, target_terminal::ours_for_output): Use
14111         target_terminal_is_ours_kind.
14112         (target_interrupt): Remove ptid parameter.  Adjust.
14113         (default_target_pass_ctrlc): Adjust.
14114         * target.h (target_ops::to_terminal_save_inferior): New field.
14115         (target_ops::to_interrupt): Remove ptid_t parameter.
14116         (target_interrupt): Remove ptid_t parameter.  Update comment.
14117         (target_pass_ctrlc): Update comment.
14118         * target/target.h (target_terminal_state): New scoped enum,
14119         factored out of ...
14120         (target_terminal::terminal_state): ... here.
14121         (target_terminal::inferior): Update comments.
14122         (target_terminal::restore_inferior): New.
14123         (target_terminal::is_inferior, target_terminal::is_ours)
14124         (target_terminal::is_ours_for_output): Adjust.
14125         (target_terminal::scoped_restore_terminal_state): Adjust to
14126         rename, and call restore_inferior() instead of inferior().
14127         (target_terminal::scoped_restore_terminal_state::m_state): Change
14128         type.
14129         (target_terminal::terminal_state): Rename to ...
14130         (target_terminal::m_terminal_state): ... this and change type.
14131
14132 2018-01-30  Pedro Alves  <palves@redhat.com>
14133
14134         * linux-nat.c (wait_for_signal): New function.
14135         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
14136         directly.
14137         (async_terminal_is_ours)
14138         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
14139         (linux_nat_add_target): Don't override
14140         to_terminal_inferior/to_terminal_ours.
14141
14142 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
14143
14144         * remote.c (remote_follow_fork): Don't call "detach_inferior".
14145
14146 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
14147
14148         * dwarf2read.c (free_dwo_files): Add forward-declaration.
14149         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
14150         dwarf2_per_objfile_free here.
14151         (dwarf2_per_objfile_free): Remove.
14152         (_initialize_dwarf2_read): Don't register
14153         dwarf2_per_objfile_free as a registry cleanup.
14154
14155 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
14156
14157         Avoid compilation errors in MinGW native builds
14158
14159         The error is triggered by including python-internal.h, and the
14160         error message is:
14161
14162              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
14163                       from build-gnulib/import/math.h:27,
14164                       from d:/usr/Python26/include/pyport.h:235,
14165                       from d:/usr/Python26/include/Python.h:58,
14166                       from python/python-internal.h:94,
14167                       from python/py-arch.c:24:
14168              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
14169         using ::hypot;
14170                 ^~~~~
14171
14172         This happens because Python headers define 'hypot' to expand t
14173         '_hypot' in the Windows builds.
14174         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
14175         'hypoth'.  This avoids a compilation error.
14176
14177 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
14178
14179         * MAINTAINERS (Write After Approval): Fix ordering.
14180
14181 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
14182
14183         * MAINTAINERS (Write After Approval): Add Alan Hayward.
14184
14185 2018-01-26  Alan Modra  <amodra@gmail.com>
14186
14187         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
14188         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
14189         Remove nop.  Make const.  Comment.
14190         (powerpc32_plt_stub_so_2): New.
14191         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
14192         Correct count.  Update uses.
14193         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
14194         Move common code reading PLT entry word.  Correct
14195         powerpc32_plt_stub PLT address calculation.
14196         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
14197         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
14198         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
14199         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
14200         (ppc64_standard_linkage8): Likewise.
14201         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
14202         Correct insns description.
14203         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
14204
14205 2018-01-24  Pedro Alves  <palves@redhat.com>
14206
14207         GCC PR libstdc++/83906
14208         * gdbtypes.c (operator==(const dynamic_prop &,
14209         const dynamic_prop &)): New.
14210         (operator==(const range_bounds &, const range_bounds &)): New.
14211         (check_types_equal): Use them instead of memcmp.
14212         * gdbtypes.h (operator==(const dynamic_prop &,
14213         const dynamic_prop &)): Declare.
14214         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
14215         (operator==(const range_bounds &, const range_bounds &)): Declare.
14216         (operator!=(const range_bounds &, const range_bounds &)): Declare.
14217
14218 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14219
14220         * s390-linux-tdep.c (s390_record_address_mask)
14221         (s390_record_calc_disp_common, s390_record_calc_disp)
14222         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
14223         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
14224         (s390_process_record): Move to s390-tdep.c.
14225         (s390_linux_init_abi_any): Adjust.
14226         * s390-tdep.c (s390_record_address_mask)
14227         (s390_record_calc_disp_common, s390_record_calc_disp)
14228         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
14229         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
14230         (s390_process_record): Moved from s390-linux-tdep.c
14231         (s390_gdbarch_init): Adjust.
14232
14233 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14234
14235         * s390-linux-nat.c (s390-tdep.h): New include.
14236         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
14237         (HFILES_NO_SRCDIR): Add s390-tdep.h.
14238         (ALLDEPFILES): Add s390-tdep.c.
14239         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
14240         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
14241         * s390-tdep.h: ...this.  New file.
14242         * s390-linux-tdep.c (s390-tdep.h): New include.
14243         (_initialize_s390_tdep): Rename to...
14244         (_initialize_s390_linux_tdep): ...this and adjust.
14245         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
14246         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
14247         s390-tdep.h.
14248         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
14249         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
14250         (s390_is_partial_instruction, s390_software_single_step)
14251         (is_non_branch_ril, s390_displaced_step_copy_insn)
14252         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
14253         (s390_prologue_data, s390_addr, s390_store, s390_load)
14254         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
14255         (s390_register_call_saved, s390_guess_tracepoint_registers)
14256         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
14257         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
14258         (s390_pseudo_register_name, s390_pseudo_register_type)
14259         (s390_pseudo_register_read, s390_pseudo_register_write)
14260         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
14261         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
14262         (s390_addr_bits_remove, s390_address_class_type_flags)
14263         (s390_address_class_type_flags_to_name)
14264         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
14265         (s390_function_arg_float, s390_function_arg_vector)
14266         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
14267         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
14268         (s390_frame_align, s390_register_return_value, s390_return_value)
14269         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
14270         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
14271         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
14272         (s390_trad_frame_prev_register, s390_unwind_cache)
14273         (s390_prologue_frame_unwind_cache)
14274         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
14275         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
14276         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
14277         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
14278         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
14279         (s390_frame_base_address, s390_local_base_address)
14280         (s390_frame_base, s390_gcc_target_options)
14281         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
14282         (s390_validate_reg_range, s390_tdesc_valid)
14283         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
14284         * s390-tdep.c: ...this.  New file.
14285
14286 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14287
14288         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
14289         (s390_process_record, s390_gdbarch_tdep_alloc)
14290         (s390_linux_init_abi_any): Use/set new hook.
14291
14292 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14293
14294         * s390-linux-tdep.c (osabi.h): New include.
14295         (s390_linux_init_abi_31, s390_linux_init_abi_64)
14296         (s390_linux_init_abi_any): New functions.
14297         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
14298
14299 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14300
14301         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
14302         tdesc_has_registers check
14303
14304 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14305
14306         * s390-linux-tdep.c (s390_tdesc_valid): New function.
14307         (s390_validate_reg_range): New macro.
14308         (s390_gdbarch_init): Adjust.
14309
14310 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14311
14312         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
14313         (s390_gdbarch_tdep_alloc): Adjust.
14314         (s390_gdbarch_init): Adjust.
14315
14316 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14317
14318         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
14319         <have_tdb>: Change type to bool.
14320         (s390_gdbarch_tdep_alloc): Adjust.
14321         (s390_gdbarch_init): Adjust.
14322
14323 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14324
14325         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
14326         (gdbarch_tdep) <have_upper, have_vx>: New fields.
14327         (s390_gdbarch_tdep_alloc): New function.
14328         (s390_gdbarch_init): Allocate tdep at start and use its fields
14329         instead of separate variables.
14330
14331 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14332
14333         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
14334         when looking for cached gdbarch and add comment for remaining.
14335
14336 2018-01-22  Pedro Alves  <palves@redhat.com>
14337             Sergio Durigan Junior  <sergiodj@redhat.com>
14338
14339         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
14340         case.
14341
14342 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
14343
14344         * MAINTAINERS: Update my company e-mail address.
14345
14346 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14347
14348         * regcache.c (cooked_write_test): New function.
14349         (_initialize_regcache): Register the test.
14350
14351 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14352
14353         * ia64-tdep.c (ia64_pseudo_register_read): Call
14354         regcache->cooked_read instead of regcache_cooked_read_unsigned.
14355         * m32c-tdep.c (m32c_cat_read): Likewise.
14356         (m32c_r3r2r1r0_read): Likewise.
14357         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
14358         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
14359
14360 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14361
14362         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
14363         method raw_read instead of regcache_raw_read.
14364         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
14365         * arm-tdep.c (arm_neon_quad_read): Likewise.
14366         * avr-tdep.c (avr_pseudo_register_read): Likewise.
14367         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
14368         * frv-tdep.c (frv_pseudo_register_read): Likewise.
14369         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
14370         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
14371         (i386_pseudo_register_read_into_value): Likewise.
14372         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
14373         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
14374         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
14375         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
14376         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
14377         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
14378         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
14379         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
14380         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
14381
14382 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14383
14384         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
14385         * configure.tgt: Remove target mt.
14386         * mt-tdep.c: Remove.
14387         * regcache.c (cooked_read_test): Remove the check for mt.
14388
14389 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14390
14391         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
14392         instead of gdbarch_pseudo_register_read_value.
14393
14394 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
14395
14396         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
14397         language is Ada.
14398
14399 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
14400
14401         * linespec.c (create_sals_line_offset): Remove code that preserved
14402         the symtab_and_line's line number.
14403
14404 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14405
14406         * varobj.c (varobj_create): Don't set valid_block when creating a
14407         floating varobj.
14408
14409 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14410
14411         * varobj.c (varobj_create): Remove out of date comment.
14412
14413 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14414
14415         PR mi/20395
14416         * ada-exp.y (write_var_from_sym): Pass extra parameter when
14417         updating innermost block.
14418         * parse.c (innermost_block_tracker::update): Take extra type
14419         parameter, and check types match before updating innermost block.
14420         (write_dollar_variable): Update innermost block for registers.
14421         * parser-defs.h (enum innermost_block_tracker_type): New enum.
14422         (innermost_block_tracker::innermost_block_tracker): Initialise
14423         m_types member.
14424         (innermost_block_tracker::reset): Take type parameter.
14425         (innermost_block_tracker::update): Take type parameter, and pass
14426         type through as needed.
14427         (innermost_block_tracker::m_types): New member.
14428         * varobj.c (varobj_create): Pass type when reseting innermost
14429         block.
14430
14431 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14432
14433         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
14434         * ada-lang.c (resolve_subexp): Likewise.
14435         * breakpoint.c (set_breakpoint_condition) Likewise.
14436         (watch_command_1) Likewise.
14437         * c-exp.y (variable): Likewise.
14438         * d-exp.y (PrimaryExpression): Likewise.
14439         * f-exp.y (variable): Likewise.
14440         * go-exp.y (variable): Likewise.
14441         * m2-exp.y (variable): Likewise.
14442         * objfiles.c (objfile::~objfile): Likewise.
14443         * p-exp.y (variable): Likewise.
14444         * parse.c (innermost_block): Change type.
14445         * parser-defs.h (class innermost_block_tracker): New.
14446         (innermost_block): Change to innermost_block_tracker.
14447         * printcmd.c (display_command): Switch to innermost_block API.
14448         (do_one_display): Likewise.
14449         * rust-exp.y (do_one_display): Likewise.
14450         * symfile.c (clear_symtab_users): Likewise.
14451         * varobj.c (varobj_create): Switch to innermost_block API, replace
14452         use of innermost_block with block stored on varobj object.
14453
14454 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14455
14456         * expression.h (innermost_block): Remove declaration.
14457         * varobj.c: Add 'parser-defs.h' include.
14458
14459 2018-01-19  Tom Tromey  <tom@tromey.com>
14460
14461         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
14462         symbols in the static and global blocks.
14463
14464 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
14465
14466         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
14467         gdb_ptrace.h, and move including gdb_wait.h ...
14468         * nat/linux-ptrace.h: ... to here.
14469
14470 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14471
14472         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
14473         inf_ptrace_detach_success.
14474         (inf_ptrace_detach_success): Add inferior parameter, use it
14475         instead of inferior_ptid, pass it to detach_inferior.
14476         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
14477         parameter.
14478         * inferior.c (detach_inferior): Add overload that takes an
14479         inferior object.
14480         * inferior.h (detach_inferior): Likewise.
14481         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
14482         use inferior_ptid, adjust call to inf_ptrace_detach_success.
14483         * linux-thread-db.c (thread_db_detach): Use inf parameter.
14484
14485 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14486
14487         * target.h (struct target_ops) <to_detach>: Add inferior
14488         parameter.
14489         (target_detach): Likewise.
14490         * target.c (dispose_inferior): Pass inferior down.
14491         (target_detach): Pass inferior down.  Assert that it is equal to
14492         the current inferior.
14493         * aix-thread.c (aix_thread_detach): Pass inferior down.
14494         * corefile.c (core_file_command): Pass current_inferior() down.
14495         * corelow.c (core_detach): Add inferior parameter.
14496         * darwin-nat.c (darwin_detach): Likewise.
14497         * gnu-nat.c (gnu_detach): Likewise.
14498         * inf-ptrace.c (inf_ptrace_detach): Likewise.
14499         * infcmd.c (detach_command): Pass current_inferior() down to
14500         target_detach.
14501         * infrun.c (follow_fork_inferior): Pass parent_inf to
14502         target_detach.
14503         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
14504         target_detach.
14505         * linux-nat.c (linux_nat_detach): Add inferior parameter.
14506         * linux-thread-db.c (thread_db_detach): Likewise.
14507         * nto-procfs.c (procfs_detach): Likewise.
14508         * procfs.c (procfs_detach): Likewise.
14509         * record.c (record_detach): Likewise.
14510         * record.h (struct inferior): Forward-declare.
14511         (record_detach): Add inferior parameter.
14512         * remote-sim.c (gdbsim_detach): Likewise.
14513         * remote.c (remote_detach_1): Likewise.
14514         (remote_detach): Likewise.
14515         (extended_remote_detach): Likewise.
14516         * sol-thread.c (sol_thread_detach): Likewise.
14517         * target-debug.h (target_debug_print_inferior_p): New macro.
14518         * target-delegates.c: Re-generate.
14519         * top.c (kill_or_detach): Pass inferior down to target_detach.
14520         * windows-nat.c (windows_detach): Add inferior parameter.
14521
14522 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14523
14524         * target.h (struct target_ops) <to_detach>: Remove args
14525         parameter.
14526         (target_detach): Likewise.
14527         * target.c (dispose_inferior): Adjust.
14528         (target_detach): Remove args parameter, adjust.
14529         * aix-thread.c (aix_thread_detach): Adjust.
14530         * corefile.c (core_file_command): Adjust.
14531         * corelow.c (core_detach): Adjust.
14532         * darwin-nat.c (darwin_detach): Adjust.
14533         * gnu-nat.c (gnu_detach): Adjust.
14534         * inf-ptrace.c (inf_ptrace_detach): Adjust.
14535         * infcmd.c (detach_command): Adjust
14536         * infrun.c (follow_fork_inferior): Adjust.
14537         (handle_vfork_child_exec_or_exit): Adjust.
14538         * linux-fork.c (linux_fork_detach): Remove args parameter.
14539         * linux-fork.h (linux_fork_detach): Likewise.
14540         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
14541         * linux-thread-db.c (thread_db_detach): Likewise.
14542         * nto-procfs.c (procfs_detach): Likewise.
14543         * procfs.c (procfs_detach): Likewise.
14544         (do_detach): Remove signo parameter.
14545         * record.c (record_detach): Remove args parameter.
14546         * record.h (record_detach): Likewise.
14547         * remote-sim.c (gdbsim_detach): Likewise.
14548         * remote.c (remote_detach_1): Likewise.
14549         (remote_detach): Likewise.
14550         (extended_remote_detach): Likewise.
14551         * sol-thread.c (sol_thread_detach): Likewise.
14552         * target-delegates.c: Re-generate.
14553         * top.c (struct qt_args) <args>: Remove field.
14554         (kill_or_detach): Don't pass args.
14555         (quit_force): Don't set args.
14556         * windows-nat.c (windows_detach): Remove args parameter.
14557
14558 2018-01-19  Yao Qi  <yao.qi@linaro.org>
14559
14560         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
14561         (arm_linux_init_abi): Install it.
14562
14563 2018-01-19  Yao Qi  <yao.qi@linaro.org>
14564
14565         * osabi.c (gdb_osabi_names): Extend the regexp for
14566         arm-linux-gnueabihf.
14567
14568 2018-01-18  Yao Qi  <yao.qi@linaro.org>
14569
14570         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
14571         m_abbrevs.
14572         (abbrev_table::add_abbrev): Update.
14573         (abbrev_table::lookup_abbrev): Update.
14574
14575 2018-01-18  Yao Qi  <yao.qi@linaro.org>
14576
14577         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
14578
14579 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
14580
14581         * compile/compile.c (compile_to_object): Convert "triplet_rx"
14582         to "std::string".
14583
14584 2018-01-17  Tom Tromey  <tom@tromey.com>
14585
14586         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
14587
14588 2018-01-17  Tom Tromey  <tom@tromey.com>
14589
14590         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
14591         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
14592         (create_array_type_with_stride): Update.
14593         * dwarf2read.c (set_die_type): Update.
14594
14595 2018-01-17  Tom Tromey  <tom@tromey.com>
14596
14597         * dwarf2read.c (delayed_method_info): Remove typedef.
14598         (dwarf2_cu::method_info): Now a std::vector.
14599         (add_to_method_list): Update.
14600         (free_delayed_list): Remove.
14601         (compute_delayed_physnames): Update.
14602         (process_full_comp_unit, process_full_type_unit): Clear the method
14603         list.  Remove cleanups.
14604         (psymtab_include_file_name): Add name_holder parameter.  Use
14605         unique_xmalloc_ptr.
14606         (dwarf_decode_lines): Update.
14607
14608 2018-01-17  Tom Tromey  <tom@tromey.com>
14609             Simon Marchi  <simon.marchi@ericsson.com>
14610
14611         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
14612         (dwarf2_per_objfile::free_cached_comp_units)
14613         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
14614         (init_cutu_and_read_dies_no_follow): Update.
14615         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
14616         (dwarf2_cu::~dwarf2_cu): New.
14617         (free_heap_comp_unit, free_stack_comp_unit): Remove.
14618         (age_cached_comp_units, free_one_cached_comp_unit): Update.
14619
14620 2018-01-17  Tom Tromey  <tom@tromey.com>
14621             Simon Marchi  <simon.marchi@ericsson.com>
14622
14623         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
14624         (struct die_reader_specs) <abbrev_table>: New member.
14625         (struct abbrev_table): Add constructor.
14626         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
14627         <abbrev_obstack>: Now an auto_obstack.
14628         (abbrev_table_up): New typedef.
14629         (init_cu_die_reader): Add abbrev_table parameter.
14630         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
14631         Add result_dwo_abbrev_table.
14632         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
14633         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
14634         Update.
14635         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
14636         parameter.
14637         (skip_children): Update.
14638         (abbrev_table::alloc_abbrev): Rename from
14639         abbrev_table_alloc_abbrev.
14640         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
14641         (abbrev_table::lookup_abbrev): Rename from
14642         abbrev_table_lookup_abbrev.
14643         (abbrev_table_read_table): Return abbrev_table_up.
14644         (abbrev_table_free, abbrev_table_free_cleanup)
14645         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
14646         (load_partial_dies): Update.
14647
14648 2018-01-17  Tom Tromey  <tom@tromey.com>
14649
14650         * dwarf2read.c (dwarf2_compute_name): Update comment.
14651         (read_func_scope, read_variable): Update.
14652         (new_symbol): Remove.
14653         (new_symbol_full): Rename to new_symbol.
14654
14655 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
14656
14657         PR gdb/16577
14658         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
14659         a warning instead of throwing an error, set section size to 0 and return
14660         NULL.
14661         * gdb_bfd.h (gdb_bfd_map_section): Update description.
14662
14663 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14664
14665         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
14666         std::string.
14667         (linux_ptrace_attach_fail_reason_string): Likewise.
14668         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
14669         Likewise.
14670         (linux_ptrace_attach_fail_reason_string): Likewise.
14671         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
14672
14673 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14674
14675         * linux-nat.c (linux_nat_attach): Remove xstrdup.
14676
14677 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
14678
14679         PR gdb/21559
14680         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
14681         checking for fs_base/gs_base fields in struct user_regs_struct.
14682         * configure: Regenerate.
14683
14684 2018-01-17  Yao Qi  <yao.qi@linaro.org>
14685
14686         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
14687         function.
14688         (aarch64_linux_init_abi): Install it to gdbarch hook
14689         gcc_target_options.
14690
14691 2018-01-15  Pedro Alves  <palves@redhat.com>
14692
14693         * common/signals-state-save-restore.c
14694         (save_original_signals_state): Fix typos.
14695
14696 2017-01-12  Tom Tromey  <tom@tromey.com>
14697             Sergio Durigan Junior  <sergiodj@redhat.com>
14698
14699         * Makefile.in (install-only): Install gdb-add-index.
14700
14701 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
14702
14703         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
14704
14705 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
14706
14707         * infrun.c (keep_going_pass_signal): Clear step-over info when
14708         insert_breakpoints fails.
14709
14710 2018-01-11  Pedro Alves  <palves@redhat.com>
14711
14712         PR gdb/22583
14713         * infrun.c (resume): Rename to ...
14714         (resume_1): ... this.
14715         (resume): Reimplement as wrapper around resume_1.
14716
14717 2018-01-11  Pedro Alves  <palves@redhat.com>
14718
14719         PR remote/22597
14720         * remote.c (remote_parse_stop_reply): Default to the last-set
14721         general thread instead of to 'magic_null_ptid'.
14722
14723 2018-01-10  Pedro Alves  <palves@redhat.com>
14724
14725         * language.h (language_get_symbol_name_matcher): Rename ...
14726         (get_symbol_name_matcher): ... this.
14727         * language.c (language_get_symbol_name_matcher): Ditto.
14728         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
14729         callers adjusted.
14730
14731 2018-01-10  Pedro Alves  <palves@redhat.com>
14732
14733         PR gdb/22670
14734         * dwarf2read.c
14735         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
14736         Adjust to use language_get_symbol_name_matcher instead of
14737         language_defn::la_get_symbol_name_matcher.
14738         * language.c (language_get_symbol_name_matcher): If in Ada mode
14739         and the lookup name is a verbatim match, return Ada's matcher.
14740         * language.h (language_get_symbol_name_matcher): Adjust comment.
14741         (ada_lookup_name_info::verbatim_p):: New method.
14742
14743 2018-01-10  Pedro Alves  <palves@redhat.com>
14744
14745         PR gdb/22670
14746         * ada-lang.c (ada_collect_symbol_completion_matches): If the
14747         minsym's language is language_auto or language_cplus, pass down
14748         language_ada instead.
14749         * symtab.c (compare_symbol_name): Don't frob symbol language here.
14750
14751 2018-01-10  Pedro Alves  <palves@redhat.com>
14752
14753         PR gdb/22670
14754         * minsyms.c (linkage_name_str): New function.
14755         (iterate_over_minimal_symbols): Use it.
14756
14757 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14758
14759         * NEWS: Document that 'info proc' now works on FreeBSD.
14760
14761 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14762
14763         * configure.ac: Check for kinfo_getfile in libutil.
14764         * configure: Regenerate.
14765         * config.in: Regenerate.
14766         * fbsd-nat.c: Include "fbsd-tdep.h".
14767         (fbsd_fetch_cmdline): New.
14768         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
14769         rather than calling error.
14770         (fbsd_info_proc): New.
14771         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
14772         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
14773         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
14774
14775 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14776
14777         * fbsd-nat.c (struct free_deleter): Remove.
14778         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
14779
14780 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14781
14782         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
14783         NULL for an empty pathname.
14784
14785 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14786
14787         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
14788         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
14789         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
14790         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
14791         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
14792         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
14793         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
14794         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
14795         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
14796         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
14797         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
14798         (fbsd_core_fetch_timeval, fbsd_print_sigset)
14799         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
14800         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
14801         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
14802
14803 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
14804
14805         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
14806         (gnu_xfer_auxv): New function.
14807         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
14808         TARGET_OBJECT_AUXV.
14809
14810 2018-01-08  Yao Qi  <yao.qi@linaro.org>
14811             Simon Marchi  <simon.marchi@ericsson.com>
14812
14813         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
14814         common/selftest.c.
14815         (COMMON_OBS): Remove selftest.o.
14816         * configure.ac: Append selftest-arch.c and common/selftest.c to
14817         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
14818         * configure: Re-generated.
14819         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
14820         GDB_SELF_TEST.
14821         (maintenance_info_selftests): Likewise.
14822
14823 2018-01-08  Xavier Roirand  <roirand@adacore.com>
14824
14825         * ada-valprint.c (val_print_packed_array_elements): Use
14826         proper number of elements when printing an array indexed
14827         by an enumeration type.
14828
14829 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14830
14831         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
14832         (dw2_get_file_names_reader): Adjust.
14833         (lookup_dwo_signatured_type): Adjust.
14834         (lookup_dwp_signatured_type): Adjust.
14835         (lookup_signatured_type): Adjust.
14836         (create_type_unit_group): Adjust.
14837         (get_type_unit_group): Adjust.
14838         (process_psymtab_comp_unit_reader): Adjust.
14839         (build_type_psymtabs_reader): Adjust.
14840         (scan_partial_symbols): Adjust.
14841         (add_partial_symbol): Adjust.
14842         (add_partial_subprogram): Adjust.
14843         (peek_die_abbrev): Adjust.
14844         (fixup_go_packaging): Adjust.
14845         (process_imported_unit_die): Adjust.
14846         (dwarf2_compute_name): Adjust.
14847         (dwarf2_physname): Adjust.
14848         (read_import_statement): Adjust.
14849         (handle_DW_AT_stmt_list): Adjust.
14850         (read_file_scope): Adjust.
14851         (read_func_scope): Adjust.
14852         (read_lexical_block_scope): Adjust.
14853         (read_call_site_scope): Adjust.
14854         (read_variable): Adjust.
14855         (dwarf2_rnglists_process): Adjust.
14856         (dwarf2_ranges_process): Adjust.
14857         (dwarf2_ranges_read): Adjust.
14858         (dwarf2_get_pc_bounds): Adjust.
14859         (dwarf2_record_block_ranges): Adjust.
14860         (dwarf2_add_field): Adjust.
14861         (dwarf2_add_member_fn): Adjust.
14862         (read_structure_type): Adjust.
14863         (process_structure_scope): Adjust.
14864         (read_enumeration_type): Adjust.
14865         (read_array_type): Adjust.
14866         (mark_common_block_symbol_computed): Adjust.
14867         (read_common_block): Adjust.
14868         (read_namespace_type): Adjust.
14869         (read_namespace): Adjust.
14870         (read_module_type): Adjust.
14871         (read_tag_pointer_type): Adjust.
14872         (read_tag_ptr_to_member_type): Adjust.
14873         (read_tag_string_type): Adjust.
14874         (read_subroutine_type): Adjust.
14875         (read_typedef): Adjust.
14876         (read_base_type): Adjust.
14877         (attr_to_dynamic_prop): Adjust.
14878         (read_subrange_type): Adjust.
14879         (read_unspecified_type): Adjust.
14880         (dwarf2_read_abbrevs): Adjust.
14881         (load_partial_dies): Adjust.
14882         (read_partial_die): Adjust.
14883         (find_partial_die): Adjust.
14884         (guess_partial_die_structure_name): Adjust.
14885         (fixup_partial_die): Adjust.
14886         (read_attribute_value): Adjust.
14887         (read_addr_index): Adjust.
14888         (read_addr_index_from_leb128): Adjust.
14889         (read_str_index): Adjust.
14890         (dwarf2_string_attr): Adjust.
14891         (get_debug_line_section): Adjust.
14892         (dwarf_decode_line_header): Adjust.
14893         (lnp_state_machine::check_line_address): Adjust.
14894         (dwarf_decode_lines_1): Adjust.
14895         (dwarf_decode_lines): Adjust.
14896         (dwarf2_start_symtab): Adjust.
14897         (var_decode_location): Adjust.
14898         (new_symbol_full): Adjust.
14899         (dwarf2_const_value_data): Adjust.
14900         (dwarf2_const_value_attr): Adjust.
14901         (dwarf2_const_value): Adjust.
14902         (die_type): Adjust.
14903         (die_containing_type): Adjust.
14904         (build_error_marker_type): Adjust.
14905         (lookup_die_type): Adjust.
14906         (guess_full_die_structure_name): Adjust.
14907         (anonymous_struct_prefix): Adjust.
14908         (determine_prefix): Adjust.
14909         (dwarf2_name): Adjust.
14910         (follow_die_ref_or_sig): Adjust.
14911         (follow_die_offset): Adjust.
14912         (follow_die_ref): Adjust.
14913         (follow_die_sig_1): Adjust.
14914         (follow_die_sig): Adjust.
14915         (get_signatured_type): Adjust.
14916         (get_DW_AT_signature_type): Adjust.
14917         (decode_locdesc): Adjust.
14918         (dwarf_decode_macros): Adjust.
14919         (cu_debug_loc_section): Adjust.
14920         (fill_in_loclist_baton): Adjust.
14921         (dwarf2_symbol_mark_computed): Adjust.
14922         (init_one_comp_unit): Don't assign
14923         dwarf2_cu::dwarf2_per_objfile.
14924         (set_die_type): Adjust.
14925
14926 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14927
14928         * dwarf2read.c (struct mapped_debug_names): Add constructor.
14929         <dwarf2_per_objfile>: New field.
14930         (dwarf2_per_objfile): Remove global.
14931         (get_dwarf2_per_objfile): New function.
14932         (set_dwarf2_per_objfile): New function.
14933         (dwarf2_build_psymtabs_hard): Change objfile parameter to
14934         dwarf2_per_objfile.
14935         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
14936         (read_abbrev_offset): Likewise.
14937         (read_indirect_string): Likewise.
14938         (read_indirect_line_string): Likewise.
14939         (read_indirect_string_at_offset): Likewise.
14940         (read_indirect_string_from_dwz): Likewise.
14941         (dwarf2_find_containing_comp_unit): Change objfile parameter to
14942         dwarf2_per_objfile.
14943         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
14944         (create_all_comp_units): Change objfile parameter to
14945         dwarf2_per_objfile.
14946         (create_all_type_units): Likewise.
14947         (process_queue): Add dwarf2_per_objfile parameter.
14948         (read_and_check_comp_unit_head): Likewise.
14949         (lookup_dwo_unit_in_dwp): Likewise.
14950         (get_dwp_file): Likewise.
14951         (process_cu_includes): Likewise.
14952         (struct free_dwo_file_cleanup_data): New struct.
14953         (dwarf2_has_info): Use get_dwarf2_per_objfile and
14954         set_dwarf2_per_objfile.
14955         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
14956         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
14957         context, adjust calls.
14958         (dw2_instantiate_symtab): Likewise.
14959         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
14960         (dw2_get_cu): Likewise.
14961         (create_cu_from_index_list): Change objfile parameter to
14962         dwarf2_per_objfile.
14963         (create_cus_from_index_list): Get dwarf2_per_objfile from
14964         context, adjust calls.
14965         (create_cus_from_index): Likewise.
14966         (create_signatured_type_table_from_index): Change objfile
14967         parameter to dwarf2_per_objfile.
14968         (create_signatured_type_table_from_debug_names): Change objfile
14969         parameter to dwarf2_per_objfile.
14970         (create_addrmap_from_index): Likewise.
14971         (create_addrmap_from_aranges): Likewise.
14972         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
14973         (dw2_setup): Remove.
14974         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
14975         context.
14976         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
14977         get_dwarf2_per_objfile.
14978         (dw2_forget_cached_source_info): Likewise.
14979         (dw2_map_symtabs_matching_filename): Likewise.
14980         (struct dw2_symtab_iterator) <index>: Remove.
14981         <dwarf2_per_objfile>: New field.
14982         (dw2_symtab_iter_init): Replace index parameter with
14983         dwarf2_per_objfile.
14984         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
14985         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
14986         (dw2_print_stats): Likewise.
14987         (dw2_dump): Likewise.
14988         (dw2_expand_symtabs_for_function): Likewise.
14989         (dw2_expand_all_symtabs): Likewise.
14990         (dw2_expand_symtabs_with_fullname): Likewise.
14991         (dw2_expand_marked_cus): Replace index and objfile parameters
14992         with dwarf2_per_objfile.
14993         (dw_expand_symtabs_matching_file_matcher): Add
14994         dwarf2_per_objfile parameter and adjust calls.
14995         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
14996         adjust calls.
14997         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
14998         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
14999         adjust calls.
15000         (create_cus_from_debug_names_list): Replace objfile parameter
15001         with dwarf2_per_objfile and adjust calls.
15002         (create_cus_from_debug_names): Likewise.
15003         (dwarf2_read_debug_names): Likewise.
15004         (mapped_debug_names::namei_to_name): Adjust call.
15005         (dw2_debug_names_iterator::next): Likewise.
15006         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
15007         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
15008         (dw2_debug_names_dump): Likewise.
15009         (dw2_debug_names_expand_symtabs_for_function): Likewise.
15010         (dw2_debug_names_expand_symtabs_matching): Likewise.
15011         (dwarf2_initialize_objfile): Likewise.
15012         (dwarf2_build_psymtabs): Likewise.
15013         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
15014         this_cu.
15015         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
15016         (read_and_check_comp_unit_head): Likewise.
15017         (read_abbrev_offset): Likewise.
15018         (create_debug_type_hash_table): Likewise.
15019         (create_debug_types_hash_table): Likewise.
15020         (create_all_type_units): Replace objfile parameter with
15021         dwarf2_per_objfile.
15022         (add_type_unit): Add dwarf2_per_objfile parameter.
15023         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
15024         with dwarf2_per_objfile.
15025         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
15026         (lookup_dwp_signatured_type): Likewise.
15027         (lookup_signatured_type): Likewise.
15028         (read_cutu_die_from_dwo): Likewise.
15029         (init_tu_and_read_dwo_dies): Likewise.
15030         (init_cutu_and_read_dies): Likewise.
15031         (init_cutu_and_read_dies_no_follow): Likewise.
15032         (allocate_type_unit_groups_table): Add objfile parameter.
15033         (create_type_unit_group): Use dwarf2_per_objfile from cu.
15034         (get_type_unit_group): Likewise.
15035         (process_psymtab_comp_unit): Update call.
15036         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
15037         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
15038         (print_tu_stats): Likewise.
15039         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
15040         in void* parameter.
15041         (build_type_psymtabs): Change objfile parameter to
15042         dwarf2_per_objfile.
15043         (process_skeletonless_type_unit): Use dwarf2_per_objfile
15044         passed in void* parameter.
15045         (process_skeletonless_type_units): Change objfile parameter to
15046         dwarf2_per_objfile.
15047         (set_partial_user): Likewise.
15048         (dwarf2_build_psymtabs_hard): Likewise.
15049         (read_comp_units_from_section): Likewise.
15050         (create_all_comp_units): Likewise.
15051         (scan_partial_symbols): Update calls.
15052         (add_partial_symbol): Likewise.
15053         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
15054         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
15055         (process_queue): Add dwarf2_per_objfile parameter.
15056         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
15057         (compute_compunit_symtab_includes): Likewise.
15058         (process_cu_includes): Add dwarf2_per_objfile parameter.
15059         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
15060         (process_full_type_unit): Likewise.
15061         (process_imported_unit_die): Update call.
15062         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
15063         (read_file_scope): Likewise.
15064         (allocate_dwo_file_hash_table): Add objfile parameter.
15065         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
15066         (create_cus_hash_table): Likewise.
15067         (create_dwp_hash_table): Likewise.
15068         (create_dwo_unit_in_dwp_v1): Likewise.
15069         (create_dwp_v2_section): Likewise.
15070         (create_dwo_unit_in_dwp_v2): Likewise.
15071         (lookup_dwo_unit_in_dwp): Likewise.
15072         (try_open_dwop_file): Likewise.
15073         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
15074         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
15075         cleanup to include a reference to dwarf2_per_objfile.
15076         (open_dwp_file): Add dwarf2_per_objfile parameter.
15077         (open_and_init_dwp_file): Likewise.
15078         (get_dwp_file): Likewise.
15079         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
15080         (queue_and_load_all_dwo_tus): Update call.
15081         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
15082         data.
15083         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
15084         (dwarf2_ranges_process): Likewise.
15085         (dwarf2_get_pc_bounds): Likewise.
15086         (mark_common_block_symbol_computed): Likewise.
15087         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
15088         (dwarf2_read_abbrevs): Update call.
15089         (read_partial_die): Use dwarf2_per_objfile from cu.
15090         (find_partial_die): Likewise.
15091         (fixup_partial_die): Likewise.
15092         (read_attribute_value): Likewise.
15093         (read_indirect_string_at_offset_from): Add objfile parameter.
15094         (read_indirect_string_at_offset): Add dwarf2_per_objfile
15095         parameter.
15096         (read_indirect_string_from_dwz): Add objfile parameter.
15097         (read_indirect_string): Add objfile parameter.
15098         (read_addr_index_1): Add dwarf2_per_objfile parameter.
15099         (read_addr_index): Use dwarf2_per_objfile from cu.
15100         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
15101         call dw2_setup.
15102         (read_str_index): Use dwarf2_per_objfile from cu.
15103         (get_debug_line_section): Likewise.
15104         (read_formatted_entries): Add dwarf2_per_objfile parameter.
15105         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
15106         (new_symbol_full): Use dwarf2_per_objfile from cu.
15107         (build_error_marker_type): Likewise.
15108         (lookup_die_type): Likewise.
15109         (determine_prefix): Likewise.
15110         (follow_die_offset): Likewise.
15111         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
15112         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
15113         (dwarf2_fetch_die_type_sect_off): Likewise.
15114         (dwarf2_get_die_type): Likewise.
15115         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
15116         (get_signatured_type): Likewise.
15117         (get_DW_AT_signature_type): Likewise.
15118         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
15119         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
15120         (cu_debug_loc_section): Likewise.
15121         (fill_in_loclist_baton): Likewise.
15122         (dwarf2_symbol_mark_computed): Likewise.
15123         (dwarf2_find_containing_comp_unit): Change objfile parameter to
15124         dwarf2_per_objfile.
15125         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
15126         parameter.
15127         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
15128         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
15129         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
15130         (set_die_type): Use dwarf2_free_objfile from cu.
15131         (get_die_type_at_offset): Likewise.
15132         (dwarf2_per_objfile_free): Don't assign global variable.
15133         (debug_names) <constructor>: Add dwarf2_per_objfile
15134         parameter, update m_debugstrlookup construction.
15135         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
15136         parameter.
15137         <m_dwarf2_per_objfile>: New field.
15138         <lookup>: Use m_dwarf2_per_objfile.
15139         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
15140         (psyms_seen_size): Likewise.
15141         (write_gdbindex): Replace objfile parameter with
15142         dwarf2_per_objfile.
15143         (write_debug_names): Likewise.
15144         (write_psymtabs_to_index): Likewise.
15145         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
15146         calls.
15147
15148 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15149
15150         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
15151         <dwarf2_per_objfile>: New field.
15152         (struct dwarf2_per_cu_data) <objfile>: Remove.
15153         <dwarf2_per_objfile>: New field.
15154         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
15155         of objfile.
15156         (create_signatured_type_table_from_index): Likewise.
15157         (create_debug_type_hash_table): Likewise.
15158         (fill_in_sig_entry_from_dwo_entry): Likewise.
15159         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
15160         (create_type_unit_group): Assign dwarf2_per_objfile instead of
15161         objfile.
15162         (create_partial_symtab): Access objfile through
15163         dwarf2_per_objfile.
15164         (process_psymtab_comp_unit_reader): Likewise.
15165         (read_comp_units_from_section): Likewise.
15166         (scan_partial_symbols): Likewise.
15167         (add_partial_symbol): Likewise.
15168         (add_partial_subprogram): Likewise.
15169         (peek_die_abbrev): Likewise.
15170         (fixup_go_packaging): Likewise.
15171         (process_full_comp_unit): Likewise.
15172         (process_full_type_unit): Likewise.
15173         (process_imported_unit_die): Likewise.
15174         (dwarf2_compute_name): Likewise.
15175         (dwarf2_physname): Likewise.
15176         (read_import_statement): Likewise.
15177         (create_cus_hash_table): Assign dwarf2_physname instead of
15178         objfile.
15179         (read_func_scope): Access objfile through dwarf2_per_objfile.
15180         (read_lexical_block_scope): Likewise.
15181         (read_call_site_scope): Likewise.
15182         (read_variable): Likewise.
15183         (dwarf2_rnglists_process): Likewise.
15184         (dwarf2_ranges_process): Likewise.
15185         (dwarf2_ranges_read): Likewise.
15186         (dwarf2_record_block_ranges): Likewise.
15187         (dwarf2_add_field): Likewise.
15188         (dwarf2_add_member_fn): Likewise.
15189         (read_structure_type): Likewise.
15190         (process_structure_scope): Likewise.
15191         (read_enumeration_type): Likewise.
15192         (read_array_type): Likewise.
15193         (read_common_block): Likewise.
15194         (read_namespace_type): Likewise.
15195         (read_namespace): Likewise.
15196         (read_module_type): Likewise.
15197         (read_tag_pointer_type): Likewise.
15198         (read_tag_ptr_to_member_type): Likewise.
15199         (read_tag_string_type): Likewise.
15200         (read_subroutine_type): Likewise.
15201         (read_typedef): Likewise.
15202         (read_base_type): Likewise.
15203         (attr_to_dynamic_prop): Likewise.
15204         (read_subrange_type): Likewise.
15205         (read_unspecified_type): Likewise.
15206         (load_partial_dies): Likewise.
15207         (read_partial_die): Likewise.
15208         (find_partial_die): Likewise.
15209         (guess_partial_die_structure_name): Likewise.
15210         (fixup_partial_die): Likewise.
15211         (read_attribute_value): Likewise.
15212         (read_addr_index_from_leb128): Likewise.
15213         (dwarf2_read_addr_index): Likewise.
15214         (dwarf2_string_attr): Likewise.
15215         (lnp_state_machine::check_line_address): Likewise.
15216         (dwarf_decode_lines_1): Likewise.
15217         (dwarf_decode_lines): Likewise.
15218         (dwarf2_start_symtab): Likewise.
15219         (var_decode_location): Likewise.
15220         (new_symbol_full): Likewise.
15221         (dwarf2_const_value_data): Likewise.
15222         (dwarf2_const_value_attr): Likewise.
15223         (dwarf2_const_value): Likewise.
15224         (die_type): Likewise.
15225         (die_containing_type): Likewise.
15226         (lookup_die_type): Likewise.
15227         (guess_full_die_structure_name): Likewise.
15228         (anonymous_struct_prefix): Likewise.
15229         (dwarf2_name): Likewise.
15230         (follow_die_ref_or_sig): Likewise.
15231         (follow_die_offset): Likewise.
15232         (follow_die_ref): Likewise.
15233         (dwarf2_fetch_die_loc_sect_off): Likewise.
15234         (dwarf2_fetch_constant_bytes): Likewise.
15235         (dwarf2_fetch_die_type_sect_off): Likewise.
15236         (dwarf2_get_die_type): Likewise.
15237         (follow_die_sig): Likewise.
15238         (decode_locdesc): Likewise.
15239         (dwarf2_per_cu_objfile): Likewise.
15240         (dwarf2_per_cu_text_offset): Likewise.
15241         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
15242         objfile.
15243         (set_die_type): Access objfile through
15244         dwarf2_per_objfile.
15245
15246 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15247
15248         * valprint.c (converted_character_d): Remove typedef.
15249         (DEF_VEC_O (converted_character_d)): Remove.
15250         (count_next_character): Use std::vector.
15251         (print_converted_chars_to_obstack): Likewise.
15252         (generic_printstr): Likewise.
15253
15254 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15255
15256         * xml-support.h (struct gdb_xml_value): Add constructor.
15257         <value>: Change type to unique_xmalloc_ptr.
15258         (gdb_xml_value_s): Remove typedef.
15259         (DEF_VEC_O (gdb_xml_value_s)): Remove.
15260         (gdb_xml_element_start_handler): Change parameter type to
15261         std::vector.
15262         (xml_find_attribute): Likewise.
15263         * xml-support.c (xml_find_attribute): Change parameter type to
15264         std::vector and adjust.
15265         (gdb_xml_values_cleanup): Remove.
15266         (gdb_xml_parser::start_element): Adjust to std::vector.
15267         (xinclude_start_include): Change paraeter type to std::vector
15268         and adjust.
15269         * btrace.c (check_xml_btrace_version): Likewise.
15270         (parse_xml_btrace_block): Likewise.
15271         (parse_xml_btrace_pt_config_cpu): Likewise.
15272         (parse_xml_btrace_pt): Likewise.
15273         (parse_xml_btrace_conf_bts): Likewise.
15274         (parse_xml_btrace_conf_pt): Likewise.
15275         * memory-map.c (memory_map_start_memory): Likewise.
15276         (memory_map_start_property): Likewise.
15277         * osdata.c (osdata_start_osdata): Likewise.
15278         (osdata_start_item): Likewise.
15279         (osdata_start_column): Likewise.
15280         * remote.c (start_thread): Likewise.
15281         * solib-aix.c (library_list_start_library): Likewise.
15282         (library_list_start_list): Likewise.
15283         * solib-svr4.c (library_list_start_library): Likewise.
15284         (svr4_library_list_start_list): Likewise.
15285         * solib-target.c (library_list_start_segment): Likewise.
15286         (library_list_start_section): Likewise.
15287         (library_list_start_library): Likewise.
15288         (library_list_start_list): Likewise.
15289         * tracepoint.c (traceframe_info_start_memory): Likewise.
15290         (traceframe_info_start_tvar): Likewise.
15291         * xml-syscall.c (syscall_start_syscall): Likewise.
15292         * xml-tdesc.c (tdesc_start_target): Likewise.
15293         (tdesc_start_feature): Likewise.
15294         (tdesc_start_reg): Likewise.
15295         (tdesc_start_union): Likewise.
15296         (tdesc_start_struct): Likewise.
15297         (tdesc_start_flags): Likewise.
15298         (tdesc_start_enum): Likewise.
15299         (tdesc_start_field): Likewise.
15300         (tdesc_start_enum_value): Likewise.
15301         (tdesc_start_vector): Likewise.
15302
15303 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15304
15305         * extension.h (struct xmethod_worker) <clone>: Remove.
15306         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
15307         Remove.
15308         (python_xmethod_worker::clone): Remove.
15309         * valops.c (find_overload_match): Use std::move instead of
15310         clone.
15311
15312 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15313
15314         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
15315         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
15316         <free_xmethod_worker_data>: Remove.
15317         <get_matching_xmethod_workers>: Chance VEC to std::vector.
15318         <get_xmethod_arg_types>: Remove.
15319         <get_xmethod_result_type>: Remove.
15320         <invoke_xmethod>: Remove.
15321         * extension.c (new_xmethod_worker): Remove.
15322         (clone_xmethod_worker): Remove.
15323         (get_matching_xmethod_workers): Return void, pass std::vector by
15324         pointer.
15325         (get_xmethod_arg_types): Rename to...
15326         (xmethod_worker::get_arg_types): ... this, and adjust.
15327         (get_xmethod_result_type): Rename to...
15328         (xmethod_worker::get_result_type): ... this, and adjust.
15329         (invoke_xmethod): Remove.
15330         (free_xmethod_worker): Remove.
15331         (free_xmethod_worker_vec): Remove.
15332         * extension.h (enum ext_lang_rc): Move here from
15333         extension-priv.h.
15334         (struct xmethod_worker): Add constructor and destructor.
15335         <data>: Remove.
15336         <value>: Remove.
15337         <invoke, clone, do_get_result_type, do_get_arg_types>: New
15338         virtual pure methods.
15339         <get_arg_types, get_result_type>: New methods.
15340         (xmethod_worker_ptr): Remove typedef.
15341         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
15342         (xmethod_worker_vec): Remove typedef.
15343         (xmethod_worker_up): New typedef.
15344         (invoke_xmethod): Remove.
15345         (clone_xmethod_worker): Remove.
15346         (free_xmethod_worker): Remove.
15347         (free_xmethod_worker_vec): Remove.
15348         (get_xmethod_arg_types): Remove.
15349         (get_xmethod_result_type): Remove.
15350         * valops.c (find_method_list): Use std::vector, don't use
15351         intermediate vector.
15352         (value_find_oload_method_list): Use std::vector.
15353         (find_overload_match): Use std::vector.
15354         (find_oload_champ): Use std::vector.
15355         * value.c (value_free): Use operator delete.
15356         (value_of_xmethod): Rename to...
15357         (value_from_xmethod): ... this.  Don't assign
15358         xmethod_worker::value, take rvalue-reference.
15359         (result_type_of_xmethod): Adjust.
15360         (call_xmethod): Adjust.
15361         * value.h: Include extension.h.
15362         (struct xmethod_worker): Don't forward-declare.
15363         (value_of_xmethod): Rename to...
15364         (value_from_xmethod): ... this, take rvalue-reference.
15365         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
15366         (struct python_xmethod_worker): ... this, add constructor and
15367         destructor.
15368         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
15369         (gdbpy_free_xmethod_worker_data): Rename to...
15370         (python_xmethod_worker::~python_xmethod_worker): ... this and
15371         adjust.
15372         (gdbpy_clone_xmethod_worker_data): Rename to...
15373         (python_xmethod_worker::clone): ... this and adjust.
15374         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
15375         temporary vector.
15376         (gdbpy_get_xmethod_arg_types): Rename to...
15377         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
15378         (gdbpy_get_xmethod_result_type): Rename to...
15379         (python_xmethod_worker::do_get_result_type): ... this and
15380         adjust.
15381         (gdbpy_invoke_xmethod): Rename to...
15382         (python_xmethod_worker::invoke): ... this and adjust.
15383         (new_python_xmethod_worker): Rename to...
15384         (python_xmethod_worker::python_xmethod_worker): ... this and
15385         adjust.
15386         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
15387         Remove.
15388         (gdbpy_free_xmethod_worker_data): Remove.
15389         (gdbpy_get_matching_xmethod_workers): Use std::vector.
15390         (gdbpy_get_xmethod_arg_types): Remove.
15391         (gdbpy_get_xmethod_result_type): Remove.
15392         (gdbpy_invoke_xmethod): Remove.
15393         * python/python.c (python_extension_ops): Remove obsolete
15394         callbacks.
15395
15396 2018-01-05  Pedro Alves  <palves@redhat.com>
15397
15398         PR gdb/18653
15399         * common/signals-state-save-restore.c
15400         (save_original_signals_state): New parameter 'quiet'.  Warn if we
15401         find a custom handler preinstalled, instead of internal erroring.
15402         But only warn if !quiet.
15403         * common/signals-state-save-restore.h
15404         (save_original_signals_state): New parameter 'quiet'.
15405         * main.c (captured_main_1): Move save_original_signals_state call
15406         after option handling, and pass QUIET.
15407
15408 2018-01-05  Pedro Alves  <palves@redhat.com>
15409
15410         * spu-tdep.c (spu_catch_start): Pass
15411         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
15412
15413 2018-01-05  Pedro Alves  <palves@redhat.com>
15414
15415         PR gdb/22670
15416         * ada-lang.c (literal_symbol_name_matcher): New function.
15417         (ada_get_symbol_name_matcher): Use it for
15418         symbol_name_match_type::SEARCH_NAME.
15419         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
15420         it down instead of assuming symbol_name_match_type::FULL.
15421         * block.h (block_lookup_symbol): New parameter 'match_type'.
15422         * c-valprint.c (print_unpacked_pointer): Use
15423         lookup_symbol_search_name instead of lookup_symbol.
15424         * compile/compile-object-load.c (get_out_value_type): Pass down
15425         symbol_name_match_type::SEARCH_NAME.
15426         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
15427         symbol_name_match_type::FULL.
15428         * cp-support.c (cp_get_symbol_name_matcher): Handle
15429         symbol_name_match_type::SEARCH_NAME.
15430         * infrun.c (insert_exception_resume_breakpoint): Use
15431         lookup_symbol_search_name.
15432         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
15433         * psymtab.c (maintenance_check_psymtabs): Use
15434         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
15435         * stack.c (print_frame_args): Use lookup_symbol_search_name and
15436         SYMBOL_SEARCH_NAME.
15437         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
15438         if symbol_name_match_type::SEARCH_NAME.
15439         (lookup_symbol_in_language): Pass down
15440         symbol_name_match_type::FULL.
15441         (lookup_symbol_search_name): New.
15442         (lookup_language_this): Pass down
15443         symbol_name_match_type::SEARCH_NAME.
15444         (lookup_symbol_aux, lookup_local_symbol): New parameter
15445         'match_type'.  Pass it down.
15446         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
15447         (lookup_symbol_search_name): New declaration.
15448         (lookup_symbol_in_block): New 'match_type' parameter.
15449
15450 2018-01-05  Pedro Alves  <palves@redhat.com>
15451
15452         PR gdb/22670
15453         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
15454         ada_lookup_symbol.
15455         (ada_lookup_symbol): Reimplement in terms of
15456         ada_lookup_symbol_list, bits factored out from
15457         ada_lookup_encoded_symbol.
15458
15459 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15460
15461         * ada-exp.y (write_object_renaming): When subscripting an array
15462         using a symbol as the index, pass the block in call to
15463         ada_lookup_encoded_symbol when looking that symbol up.
15464
15465 2018-01-05  Jerome Guitton  <guitton@adacore.com>
15466
15467         * ada-lang.c (ada_array_length): Use ada_index_type instead of
15468         TYPE_INDEX_TYPE.
15469
15470 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15471
15472         * ada-lang.c (ada_to_fixed_value_create): Add handling of
15473         the case where VALUE_LVAL (val0) is not lval_memory.
15474
15475 2018-01-05  Xavier Roirand  <roirand@adacore.com>
15476
15477         * ada-valprint.c (print_optional_low_bound): Handle
15478         character-indexed array printing like boolean-indexed array
15479         printing.
15480
15481 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15482
15483         * NEWS: Create a new section for the next release branch.
15484         Rename the section of the current branch, now that it has
15485         been cut.
15486
15487 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15488
15489         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
15490         * version.in: Bump version to 8.1.50.DATE-git.
15491
15492 2018-01-03  Xavier Roirand  <roirand@adacore.com>
15493
15494         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
15495         Add field.
15496         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
15497         Add field.
15498         (default_exception_support_info) <catch_handlers_sym>: Add field.
15499         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
15500         (ada_exception_name_addr_1): Add "catch handlers" handling.
15501         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
15502         Update all callers.
15503         (create_excep_cond_exprs) <ex>: Add parameter.
15504         (re_set_exception): Update create_excep_cond_exprs call.
15505         (print_it_exception, print_one_exception, print_mention_exception)
15506         (print_recreate_exception): Add "catch handler" handling.
15507         (allocate_location_catch_handlers, re_set_catch_handlers)
15508         (check_status_catch_handlers, print_it_catch_handlers)
15509         (print_one_catch_handlers, print_mention_catch_handlers)
15510         (print_recreate_catch_handlers): New function.
15511         (catch_handlers_breakpoint_ops): New variable.
15512         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
15513         Add parameter.  Add "catch handler" handling.
15514         (ada_exception_sym_name, ada_exception_breakpoint_ops):
15515         Add "catch handler" handling.
15516         (ada_exception_catchpoint_cond_string): Add "catch handler"
15517         handling.
15518         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
15519         call.
15520         (catch_ada_handlers_command): New function.
15521         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
15522         operations structure.
15523         (_initialize_ada_language): Add "catch handlers" command entry.
15524         * NEWS: Document "catch handlers" feature.
15525
15526 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15527
15528         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
15529         account when creating the array type of the slice.
15530         (ada_value_slice): Likewise.
15531
15532 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15533
15534         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
15535         New enum value.
15536         (create_array_type_with_stride): Add byte_stride_prop parameter.
15537         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
15538         New parameter.  Update all callers in this file.
15539         (array_type_has_dynamic_stride): New function.
15540         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
15541         of arrays with dynamic byte strides.
15542         * dwarf2read.c (read_array_type): Add support for dynamic
15543         DW_AT_byte_stride attributes.
15544
15545 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15546
15547         * dwarf2read.c (read_unspecified_type): Treat
15548         DW_TAG_enumeration_type DIEs from Ada units as stubs.
15549
15550 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15551
15552         Update copyright year range in all GDB files.
15553
15554 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
15555
15556         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
15557         and gdb/testsuite/gdb.base/step-line.c.
15558
15559 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15560
15561         * copyright.py (main): Dump the contents of
15562         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
15563         even if BY_HAND is empty.
15564
15565 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15566
15567         * top.c (print_gdb_version): Update Copyright year in version
15568         message.
15569
15570 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15571
15572         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
15573
15574 For older changes see ChangeLog-2017.
15575 \f
15576 Local Variables:
15577 mode: change-log
15578 left-margin: 8
15579 fill-column: 74
15580 version-control: never
15581 coding: utf-8
15582 End: